@media (max-width: 1200px) {
    .container {
        max-width: 960px;
    }
}

@media (max-width: 992px) {
    .container {
        max-width: 720px;
    }

    .hero-content h1 {
        font-size: 3rem;
    }

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

    .reservation-split {
        flex-direction: column;
    }

    .reservation-info {
        display: none;
    }

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

@media (max-width: 768px) {
    .container {
        max-width: 540px;
    }

    .nav-links {
        display: none; /* Handled by JS for mobile menu */
    }

    .menu-toggle {
        display: block;
    }

    .hero-content h1 {
        font-size: 2.5rem;
    }

    .features-grid, .menu-grid, .testimonials-grid {
        grid-template-columns: 1fr;
    }

    .section-title h2 {
        font-size: 2.5rem;
    }

    .stats-bar {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}

@media (max-width: 480px) {
    .container {
        max-width: 100%;
    }

    .hero-btns {
        flex-direction: column;
        gap: 10px;
    }

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

    .logo {
        font-size: 1.5rem;
    }

    .btn-reserve-nav {
        display: none;
    }
}

/* Mobile Menu Active State */
.nav-links.mobile-active {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: var(--dark-bg);
    padding: 20px;
    border-bottom: 1px solid var(--glass-border);
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from { transform: translateY(-10px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}
