
@media (max-width: 767px) {
    .game-card,
    .provider-logo-item,
    .btn-auth,
    .progress-fill,
    .banner-swiper {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        will-change: transform;
        backface-visibility: hidden;
    }

    .fade-in {
        animation-duration: 0.3s !important;
        animation-delay: 0s !important;
    }
    
    .play-btn-hover,
    .btn-pola,
    .dropdown-item,
    .load-more-btn {
        min-height: 44px;
        min-width: 44px;
    }

    .load-more-btn.loading {
        opacity: 0.8;
        pointer-events: none;
    }
    
    .game-card:hover,
    .btn-auth:hover,
    .footer-social a:hover,
    .game-card:active,
    .btn-auth:active,
    .footer-social a:active {
        transform: none !important;
        box-shadow: var(--card-shadow) !important;
    }

    .game-card:hover .game-img,
    .game-card:hover .game-img-placeholder,
    .provider-logo-item:hover .provider-logo {
        transform: none !important;
    }
 
    .game-card::before {
        display: none !important;
    }

    .game-card {
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
    }

    .progress-fill {
        animation: none !important;
        background-size: 100% 100% !important;
    }
    
    .progress-fill::after,
    .rtp-progress-container::before,
    .footer-line::after {
        display: none !important;
    }
    
    .count-up, .count-down {
        animation: none !important;
        transition: color 0.3s ease;
    }

    .online-players {
        transition: color 0.3s ease;
    }

    .game-img-placeholder {
        background-image: none !important;
        background-color: #1a1a1a !important;
    }
    
    .progress-time, .progress-label {
        animation: none !important;
    }

    .footer-waves {
        height: 5px;
    }
    
    .wave {
        animation-duration: 60s !important;
        height: 5px;
    }

    .play-btn-hover {
        animation: none !important;
        box-shadow: none !important;
    }

    .play-button-overlay {
        opacity: 0.6 !important;
    }

    .section-title::before,
    .section-title::after,
    .btn-pola::before,
    .btn-auth::before {
        display: none !important;
    }
    
    .col-4 {
        flex: 0 0 33.333% !important;
        max-width: 33.333% !important;
    }
}

@media (max-width: 400px) {
    .col-4 {
        flex: 0 0 33.333% !important;
        max-width: 33.333% !important;
    }
    
    .swiper-button-next, 
    .swiper-button-prev {
        display: none;
    }
}

.lazy-loading {
    opacity: 0;
    transition: opacity 0.3s ease;
}

.lazy-loaded {
    opacity: 1;
}

.loading-placeholder {
    background: #151515;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.7;
}

@media (prefers-reduced-motion: reduce) {
    * {
        animation: none !important;
        transition: none !important;
    }
    
    .wave, .firefly {
        display: none !important;
    }
}

.batch-processed {
    transition: none !important;
}

button:focus, a:focus, .game-card:focus {
    outline: 2px solid var(--primary-color);
}

@supports (-webkit-touch-callout: none) {
    .game-card, .provider-logo-item {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    
    .banner-img {
        -webkit-transform: none !important;
        transform: none !important;
    }
}

@media (max-width: 767px) {
    .warning-icon {
        animation: none !important;
    }
    
    .provider-swiper {
        height: auto !important;
    }
    
    .btn-pola:hover, .btn-auth:hover, .badge-item:hover {
        transform: none !important;
    }
    
    .load-more-btn:hover {
        transform: none !important;
        box-shadow: none !important;
    }
    
    .footer-social a:hover {
        transform: none !important;
        box-shadow: none !important;
    }
    
    .game-img-container:hover .play-button-overlay {
        opacity: 0.9 !important;
    }
    
    .modal-content {
        box-shadow: none !important;
    }
}

.load-more-btn.loading {
    position: relative;
}

.load-more-btn.loading::after {
    content: "...";
    position: absolute;
    right: 10px;
}

.banner-container,
#games-container {
    min-height: 120px;
}

.footer-section {
    content-visibility: auto;
    contain-intrinsic-size: 0 500px;
}

.game-img {
    aspect-ratio: 1;
}



@media (max-width: 1199px) {
    .banner-container {
        height: 251.11px !important; /* Adjusted height for tablets */
    }
    
    .banner-swiper {
        height: 271.11px !important;
    }
    .swiper-slide{
        width: 100% !important;
        height: 251.11px !important;
    }
}

@media (max-width: 991px) {
    .banner-container {
        height: 200px !important; /* Adjusted height for tablets */
    }
    
    .banner-swiper {
        height: 220px !important;
    }
    .swiper-slide{
        width: 100% !important;
        height: 200px !important;
    }
}

@media (max-width: 576px) {
    .col-4 {
        flex: 0 0 33.333% !important;
        max-width: 33.333% !important;
    }

    .pola-header {
        padding: 3px 0 !important;
        font-size: 10px !important;
        letter-spacing: 0px !important;
    }
    
    .pola-patterns {
        padding: 2px !important;
    }
    
    .pola-pattern-row {
        margin-bottom: 1px !important;
    }
    
    .pattern-name {
        font-size: 8px !important;
        font-weight: 400 !important;
    }
    
    .pattern-indicators {
        gap: 1px !important;
    }
    
    .indicator {
        width: 12px !important;
        height: 12px !important;
        font-size: 7px !important;
        min-width: 12px !important;
    }
    .banner-container {
        height: 80px !important; /* Adjusted height for mobile */
    }
    
    .banner-swiper {
        height: 10px !important;
    }

    .swiper-slide{
        width: 100% !important;
        height: 150px !important;
    }
}

@media (max-width: 400px) {
    .pola-header {
        font-size: 9px !important;
    }
    
    .pattern-name {
        font-size: 7px !important;
    }
    
    .indicator {
        width: 10px !important;
        height: 10px !important;
        font-size: 6px !important;
        min-width: 10px !important;
    }
}

@media (max-width: 767px) {

    .provider-tag, .online-players {
        font-size: 8px !important;   
        padding: 3px 5px !important;  
        border-radius: 4px !important;
        border-width: 0.5px !important;
        line-height: 1 !important;
    }
    
    .provider-tag {
        top: 5px !important;
        left: 5px !important;
    }
    
    .online-players {
        top: 5px !important;
        right: 5px !important;
    }

    .provider-tag i, .online-players i {
        font-size: 8px !important;
        margin-right: 2px !important;
    }
}

@media (max-width: 420px) {
    .provider-tag, .online-players {
        font-size: 7.5px !important;
        padding: 2px 4px !important;
    }
}



/* Banner responsive fixes */
@media (max-width: 767px) {
    .banner-container {
        height: 150px !important; /* Adjusted height for tablets */
    }
    
    .banner-swiper {
        height: 170px !important;
    }
    .swiper-slide{
        width: 100% !important;
        height: 150px !important;
    }
}

@media (max-width: 480px) {
    .banner-container {
        height: 100px !important; /* Adjusted height for mobile */
    }
    
    .banner-swiper {
        height: 140px !important;
    }
    .swiper-slide{
        width: 100% !important;
        height: 120px !important;
    }
}

