/* ==============================
   RESPONSIVE STYLES
   ============================== */

/* Tablet */
@media (max-width: 1024px) {
    :root {
        --fs-5xl: 3.25rem;
        --fs-4xl: 2.5rem;
        --fs-3xl: 2rem;
    }

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

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

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

    .footer__grid {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-2xl);
    }

    .footer__brand {
        grid-column: span 2;
    }

    .hero__stats {
        gap: var(--space-2xl);
    }
}

/* Mobile Large */
@media (max-width: 768px) {
    :root {
        --fs-5xl: 2.5rem;
        --fs-4xl: 2rem;
        --fs-3xl: 1.75rem;
        --header-height: 64px;
    }

    .container {
        padding: 0 var(--space-md);
    }

    .section {
        padding: var(--space-3xl) 0;
    }

    /* Header Mobile */
    .header__nav {
        position: fixed;
        top: 0;
        right: -100%;
        width: 80%;
        max-width: 320px;
        height: 100vh;
        background: var(--clr-surface);
        border-left: 1px solid var(--clr-border);
        flex-direction: column;
        align-items: flex-start;
        padding: calc(var(--header-height) + var(--space-xl)) var(--space-xl) var(--space-xl);
        gap: var(--space-md);
        transition: right var(--transition-base);
        z-index: calc(var(--z-sticky) - 1);
        box-shadow: var(--shadow-xl);
    }

    .header__nav.open {
        right: 0;
    }

    .header__nav .nav-link {
        font-size: var(--fs-md);
        padding: var(--space-sm) 0;
        width: 100%;
    }

    .hamburger {
        display: flex;
    }

    .header-cta {
        display: none;
    }

    /* Hero Mobile */
    .hero__title {
        font-size: var(--fs-4xl);
    }

    .hero__subtitle {
        font-size: var(--fs-base);
    }

    .hero__cta-group {
        flex-direction: column;
    }

    .hero__cta-group .btn {
        width: 100%;
    }

    .hero__stats {
        flex-direction: column;
        gap: var(--space-lg);
    }

    /* Grids */
    .about__grid {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-md);
    }

    .tours__grid,
    .activities__grid {
        grid-template-columns: 1fr;
        max-width: 480px;
        margin: 0 auto;
    }

    .testimonials__slider {
        grid-template-columns: 1fr;
    }

    /* Booking */
    .booking__container {
        padding: var(--space-lg);
    }

    .form-row {
        grid-template-columns: 1fr;
    }

    .radio-group {
        grid-template-columns: 1fr;
    }

    .payment-options {
        grid-template-columns: 1fr;
    }

    .progress-step span {
        display: none;
    }

    .booking__progress {
        gap: 0;
    }

    /* Footer */
    .footer__grid {
        grid-template-columns: 1fr;
        gap: var(--space-xl);
    }

    .footer__brand {
        grid-column: auto;
    }

    /* Modal */
    .modal {
        padding: var(--space-xl);
    }

    .modal__actions {
        flex-direction: column;
    }

    .modal__actions .btn {
        width: 100%;
    }
}

/* Mobile Small */
@media (max-width: 480px) {
    :root {
        --fs-5xl: 2rem;
        --fs-4xl: 1.75rem;
        --fs-3xl: 1.5rem;
    }

    .about__grid {
        grid-template-columns: 1fr;
    }

    .form-btn-row {
        flex-direction: column;
    }

    .lang-code {
        display: none;
    }
}