@media (min-width: 1025px) {
    .article-layout { grid-template-columns: 1fr 380px; }
    .article-sidebar { display: block; }
    .article-hero h1 { font-size: 2.5rem; }
}

@media (max-width: 1024px) {
    .logo-top { font-size: 22px; }
    .logo-bottom { font-size: 9px; letter-spacing: 1.5px; }
    .hero-image img { max-width: 340px; }
    .hero-title { font-size: 2.5rem; }
    .categories-grid { grid-template-columns: repeat(2, 1fr); }
    .articles-grid { grid-template-columns: repeat(2, 1fr); }
    .casino-cards-grid { grid-template-columns: repeat(4, 1fr); }
    .footer-grid { grid-template-columns: repeat(2, 1fr); }
    .subcat-grid { grid-template-columns: repeat(2, 1fr); }
    .subcat-layout { grid-template-columns: 1fr 260px; }
    .articles-grid-2col { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
    :root { --header-height: 70px; }
    .logo-icon { width: 48px; height: 48px; }
    .logo-top { font-size: 18px; }
    .logo-bottom { font-size: 8px; letter-spacing: 1px; }

    .hero { padding: 4rem 0 3.5rem; }
    .hero-content {
        position: relative;
        flex-direction: column;
        text-align: center;
        gap: 0;
        align-items: center;
    }
    .hero-image {
        position: absolute;
        bottom: -1rem;
        left: 50%;
        transform: translateX(-50%);
        width: 100%;
        opacity: 0.15;
        pointer-events: none;
        z-index: 0;
    }
    .hero-image img { max-width: 380px; margin: 0 auto; }
    .hero-text {
        text-align: center;
        position: relative;
        z-index: 1;
    }
    .hero-actions { justify-content: center; }
    .hero-title { font-size: var(--font-size-3xl); }
    .hero-subtitle { font-size: var(--font-size-lg); margin-left: auto; margin-right: auto; }
    .hero-stats { gap: var(--spacing-xl); }
    .hero-stat-value { font-size: var(--font-size-3xl); }
    .hero-glow-1 { width: 300px; height: 300px; }
    .hero-glow-2 { width: 250px; height: 250px; }

    .page-hero { padding: 2.5rem 0 2rem; }
    .page-hero-title { font-size: var(--font-size-2xl); }
    .page-hero-icon { width: 56px; height: 56px; }
    .page-hero-icon svg { width: 28px; height: 28px; }

    .subcat-grid { grid-template-columns: 1fr; }
    .subcat-layout { grid-template-columns: 1fr; }
    .subcat-sidebar {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .subcat-sidebar .sidebar-block { flex: 1 1 280px; }

    .main-nav {
        all: unset;
        display: flex !important;
        position: fixed;
        top: var(--header-height);
        left: 0;
        right: 0;
        height: calc(100vh - var(--header-height));
        height: calc(100dvh - var(--header-height));
        background: var(--color-bg);
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: var(--spacing-lg) 0;
        overflow: hidden;
        z-index: 999;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-20px);
        transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
    }
    .main-nav.active {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .main-nav a {
        display: block;
        padding: var(--spacing-lg) var(--spacing-xl);
        font-size: var(--font-size-xl);
        font-weight: 600;
        border-bottom: 1px solid var(--color-border);
        border-radius: 0;
        white-space: nowrap;
        color: var(--color-text);
        text-decoration: none;
        transition: background 0.2s, color 0.2s;
    }
    .main-nav a:first-child {
        border-top: 1px solid var(--color-border);
    }
    .main-nav a:hover,
    .main-nav a:active {
        background: rgba(139, 92, 246, 0.12);
        color: var(--color-accent);
    }
    body.menu-open { overflow: hidden; }

    .mobile-toggle { display: flex; }

    .categories-grid { grid-template-columns: 1fr; }
    .articles-grid { grid-template-columns: 1fr; }
    .casino-cards-grid { grid-template-columns: repeat(2, 1fr); }

    .section-header h1, .section-header h2 { font-size: var(--font-size-2xl); }

    .footer-grid { grid-template-columns: 1fr; }
    .footer-bottom { flex-direction: column; gap: var(--spacing-sm); text-align: center; }

    .article-content { padding: var(--spacing-md); }
    .description-box { padding: var(--spacing-md); }
}

@media (max-width: 480px) {
    .casino-cards-grid { grid-template-columns: 1fr; }
    .pagination { gap: var(--spacing-xs); }
    .pagination a, .pagination span { min-width: 40px; padding: var(--spacing-xs) var(--spacing-sm); }
}

/* Article image responsiveness */
.article-content img, .art-content img, .art-img img { max-width: 100%; height: auto; }
