@media (max-width: 1024px) {
    :root {
        --container-padding: 20px;
        --font-size-hero: 46px;
        --font-size-5xl: 44px;
        --font-size-4xl: 40px;
        --font-size-2xl: 24px;
    }
    .casino-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 992px) {
    .header-inner { flex-wrap: wrap; }
    .nav {
        display: none;
        width: 100%;
        flex-direction: column;
        padding-top: var(--spacing-md);
        border-top: 1px solid var(--color-border);
        margin-top: var(--spacing-sm);
        order: 3;
        max-height: calc(100vh - 90px);
        overflow-y: auto;
    }
    .nav.active { display: flex; }
    .nav-link { width: 100%; justify-content: flex-start; padding: 12px 0; }
    .menu-toggle { display: flex; position: relative; z-index: 1001; }
    .header-auth { display: none; }
    .nav-dropdown { width: 100%; }
    .nav-dropdown-header {
        width: 100%;
        justify-content: space-between;
    }
    .nav-sub-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        background: none;
        color: var(--color-text-dark);
        flex-shrink: 0;
        border-radius: var(--radius-sm);
        transition: background var(--transition-fast);
    }
    .nav-sub-toggle:active {
        background: var(--color-bg-hover, #f0f0f0);
    }
    .nav-dropdown.open .nav-sub-toggle .nav-arrow {
        transform: rotate(180deg);
    }
    .nav-dropdown-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        border: none;
        padding: 0 0 0 20px;
        display: none;
    }
    .nav-dropdown.open .nav-dropdown-menu { display: block; }
    .nav-dropdown-link { padding: 8px 0; }

    /* Sections */
    .slots-grid { grid-template-columns: repeat(2, 1fr); }
    .leaderboard-grid { grid-template-columns: 1fr; }
    .cta-images { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
    :root {
        --container-padding: 15px;
        --font-size-hero: 36px;
        --font-size-5xl: 32px;
        --font-size-4xl: 30px;
        --font-size-3xl: 24px;
        --font-size-2xl: 20px;
        --spacing-4xl: 60px;
    }

    .page-title { font-size: var(--font-size-3xl); }

    .casino-grid { grid-template-columns: repeat(2, 1fr); }
    .category-grid { grid-template-columns: 1fr; }
    .article-grid { grid-template-columns: 1fr; }
    .article-card-icon { width: 70px; }
    .article-card-icon svg { width: 28px; height: 28px; }
    .article-card-body { padding: 16px; min-height: 90px; }

    .footer-inner {
        flex-direction: column;
        text-align: center;
    }
    .footer-links { align-items: center; }

    .hero-description { font-size: var(--font-size-base); }

    /* Sections */
    .slots-grid { grid-template-columns: 1fr; }
    .slot-card { height: 260px; }
    .lb-card { flex-wrap: wrap; }
    .lb-card-btn { width: 100%; margin-top: 4px; }
    .jackpot-layout { grid-template-columns: 1fr; }
    .section-jackpot { padding: 60px 0; }
    .jackpot-counter { font-size: 80px; }

    /* Category home */
    .category-home-grid { grid-template-columns: 1fr; }
    .category-home-card { padding: 20px 22px; }

    /* About / Games */
    .about-grid { grid-template-columns: 1fr; gap: 30px; }
    .games-layout { grid-template-columns: 1fr; gap: 30px; }

    /* Carousel */
    .carousel-section { padding: var(--spacing-3xl) 0; }
}

@media (max-width: 480px) {
    :root {
        --font-size-hero: 28px;
        --font-size-4xl: 24px;
        --font-size-3xl: 22px;
        --spacing-4xl: 48px;
    }

    .casino-grid { grid-template-columns: 1fr 1fr; gap: var(--spacing-sm); }
    .casino-card-icon { padding: 16px; }
    .casino-name { font-size: var(--font-size-sm); }
    .article-content { padding: var(--spacing-md); }
    .btn { padding: 12px 20px; font-size: var(--font-size-base); }

    /* Hero */
    .hero { padding: 120px 0 50px; }
    .hero-cta { width: 100%; }

    /* Sections */
    .section-cta { padding: 60px 0; }
    .lb-card { padding: 14px 16px; gap: 10px; flex-wrap: wrap; }
    .lb-card-btn { width: 100%; padding: 8px 14px; font-size: var(--font-size-sm); margin-top: 4px; }
    .lb-card-name { font-size: var(--font-size-base); }
    .lb-card-rank { width: 40px; height: 40px; font-size: var(--font-size-xs); }

    /* Contact */
    .contact-form-wrap { padding: 24px; }
    .contact-form-row { grid-template-columns: 1fr; }
    .contact-heading { font-size: var(--font-size-3xl); }
}

@media (pointer: coarse) {
    .nav-link, .btn, .casino-btn, .pagination a, .pagination span, .tag, .carousel-item {
        min-height: 44px;
        min-width: 44px;
    }
}
