/* ============================================
   RESPONSIVE - Mobile-first breakpoints
   ============================================ */

/* Tablet (< 1024px) */
@media (max-width: 1024px) {
    .sw-features__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sw-split {
        grid-template-columns: 1fr;
        gap: var(--space-10);
    }

    .sw-split__content {
        max-width: 100%;
        order: 2;
    }

    .sw-split__image {
        order: 1;
    }

    .sw-gallery__grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .sw-gallery__item:nth-child(1) {
        grid-column: span 2;
        grid-row: span 1;
        aspect-ratio: 16/9;
    }

    .sw-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .sw-footer__top {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-8);
    }

    .sw-footer__brand {
        grid-column: span 2;
    }

    .sw-activities {
        grid-template-columns: 1fr;
    }

    /* Post grid */
    [id^="post-grid-"] .grid-items {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--space-6);
    }
}

/* Mobile (< 768px) */
@media (max-width: 768px) {
    /* Hide desktop nav links completely */
    .sw-nav__links {
        display: none;
    }

    /* Show hamburger */
    .sw-nav__hamburger {
        display: block;
        right: 0;
    }

    /* Nav: justify between logo and hamburger */
    .sw-nav__inner {
        justify-content: space-between;
    }

    .sw-nav__logo {
        position: relative;
    }

    /* Hide topbar */
    .sw-topbar {
        display: none;
    }

    /* Mobile: nav overlays hero — no space, no white bar */
    .sw-nav {
        background: transparent !important;
        box-shadow: none !important;
    }

    .sw-nav::before,
    .sw-nav.is-scrolled::before,
    .sw-nav.sw-nav--scrolled::before {
        display: none !important;
    }

    /* Logo: completely hidden on mobile */
    .sw-nav__logo {
        display: none !important;
    }

    /* Hero */
    .sw-hero__mobile-logo {
        display: block;
        width: 96px;
        height: 96px;
        object-fit: contain;
        margin-bottom: var(--space-6);
    }

    .sw-hero {
        min-height: 80vh;
    }

    .sw-hero__title {
        font-size: clamp(2.5rem, 1.5rem + 4vw, 3.5rem);
    }

    .sw-hero__subtitle {
        font-size: var(--text-base);
        max-width: 100%;
    }

    .sw-hero__content {
        padding: 0 var(--space-5);
    }

    .sw-hero__actions {
        flex-direction: column;
        width: 100%;
    }

    .sw-hero__actions .sw-btn {
        width: 100%;
        justify-content: center;
    }

    .sw-hero__scroll {
        display: none;
    }

    /* Features */
    .sw-features__grid {
        grid-template-columns: 1fr;
    }

    .sw-feature-card {
        padding: var(--space-5) 0;
    }

    .sw-features__cta .sw-btn {
        width: 100%;
        justify-content: center;
    }

    /* Split */
    .sw-split {
        gap: var(--space-8);
    }

    .sw-split__stat {
        position: relative;
        bottom: auto;
        left: auto;
        margin-top: var(--space-4);
    }

    /* Gallery */
    .sw-gallery__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sw-gallery__item:nth-child(1) {
        grid-column: span 2;
    }

    /* Stats */
    .sw-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--space-4);
    }

    .sw-stat__number {
        font-size: var(--text-4xl);
    }

    /* Footer */
    .sw-footer__top {
        grid-template-columns: 1fr;
        gap: var(--space-8);
    }

    .sw-footer__brand {
        grid-column: auto;
    }

    .sw-footer__bottom {
        flex-direction: column;
        gap: var(--space-4);
        text-align: center;
    }

    /* Page content — add top padding for fixed nav */
    .sw-post-content {
        padding: calc(var(--space-4) + 48px + var(--space-4)) var(--space-5) var(--space-10) var(--space-5);
    }

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

    /* Post grid */
    [id^="post-grid-"] .grid-items {
        grid-template-columns: 1fr;
        gap: var(--space-6);
    }

    [id^="post-grid-"] .element-media img {
        height: 180px;
    }

    /* Tables scroll horizontally */
    .post-content table,
    .entry-content table,
    .page-content table,
    article table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
    }

    /* Section padding */
    .sw-section {
        padding-left: var(--space-5);
        padding-right: var(--space-5);
    }

    /* Back to top: align with hamburger */
    .sw-back-to-top {
        right: 0.125rem;
        width: 40px;
        height: 40px;
    }
}

/* Small mobile (< 480px) */
@media (max-width: 480px) {
    .sw-hero__title {
        font-size: clamp(2rem, 1.2rem + 3vw, 2.75rem);
    }

    .sw-hero {
        min-height: 75vh;
    }

    .sw-gallery__grid {
        grid-template-columns: 1fr;
    }

    .sw-gallery__item:nth-child(1) {
        grid-column: auto;
    }

    .sw-section-header {
        margin-bottom: var(--space-10);
    }

    .sw-stat {
        padding: var(--space-5) var(--space-2);
    }

    .sw-footer__links-inline {
        flex-direction: column;
        gap: var(--space-3);
    }
}

/* Large screens */
@media (min-width: 1400px) {
    .sw-features__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
