/* =====================================================
   RESPONSIVE BREAKPOINTS
   ===================================================== */

/* Tablet — 1024px and below */
@media (max-width: 1024px) {
    :root {
        --section-padding: 60px 0;
        --container-width: 960px;
    }

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

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

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

    /* Header */
    .main-nav { display: none; }
    .header-call { display: none; }
    .mobile-menu-toggle { display: flex; }
}

/* Mobile Large — 768px and below */
@media (max-width: 768px) {
    :root {
        --section-padding: 48px 0;
    }

    .container { padding: 0 16px; }

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

    h1 { font-size: 2rem; }
    h2 { font-size: 1.6rem; }
    h3 { font-size: 1.2rem; }

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .gallery-item.tall { grid-row: span 1; }

    .header-whatsapp span { display: none; }

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

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

    .btn-lg {
        padding: 14px 28px;
        font-size: 0.95rem;
    }

    /* Hero */
    .hero-section { min-height: 90vh; }
    .hero-content { text-align: center; }
    .hero-cta-group {
        flex-direction: column;
        align-items: center;
    }

    /* Menu tabs */
    .menu-tabs-wrapper {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .menu-tabs {
        flex-wrap: nowrap;
        min-width: max-content;
    }
}

/* Mobile Small — 480px and below */
@media (max-width: 480px) {
    .grid-4 { grid-template-columns: 1fr; }

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

    .header-inner { height: 64px; }
    .mobile-nav { top: 64px; }

    .page-banner { padding: 80px 0 60px; }

    .section-subtitle { font-size: 0.95rem; }

    .btn {
        padding: 12px 24px;
        font-size: 0.875rem;
    }

    .offer-card-img { height: 160px; }

    .testimonial-card { padding: 20px; }

    .info-box { flex-direction: column; gap: 10px; }

    .party-feature { flex-direction: column; }
}

/* Print */
@media print {
    .site-header,
    .site-footer,
    .mobile-menu-toggle,
    .hero-scroll-hint { display: none !important; }

    body { color: #000; }
    a { color: #000; text-decoration: underline; }
}


@media (max-width: 1024px) {
    .header-inner {
        padding: 0 16px;
        gap: 12px;
    }

    .logo-name {
        font-size: 0.98rem;
    }

    .header-actions {
        gap: 8px;
    }
}

@media (max-width: 768px) {
    [style*="grid-template-columns:1fr 1fr"],
    [style*="grid-template-columns:1.2fr 1fr"],
    [style*="grid-template-columns:1fr 1.2fr"],
    [style*="grid-template-columns:1fr 1.4fr"],
    [style*="grid-template-columns:1.4fr 1fr"],
    [style*="grid-template-columns:repeat(3,1fr)"],
    [style*="grid-template-columns:repeat(4,1fr)"] {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    [style*="height:480px"],
    [style*="height:460px"],
    [style*="height:420px"],
    [style*="height:400px"] {
        height: 320px !important;
    }

    [style*="bottom:-20px;right:-20px"] {
        right: 10px !important;
        bottom: 10px !important;
    }

    .site-header {
        width: 100vw;
    }

    .header-whatsapp {
        padding: 8px 12px;
    }

    .logo-tagline {
        display: none;
    }

    .hero-section .container {
        padding-top: 110px !important;
        padding-bottom: 56px !important;
    }

    .hero-section [style*="font-size:clamp(2.2rem,5vw,4rem)"] {
        font-size: clamp(2rem, 10vw, 3rem) !important;
    }

    .hero-section [style*="display:flex;gap:14px;flex-wrap:wrap;"] {
        width: 100%;
    }

    .hero-section .btn {
        width: 100%;
        justify-content: center;
    }

    .menu-tabs {
        justify-content: flex-start;
    }

    .page-banner {
        padding-top: 92px;
    }
}

@media (max-width: 480px) {
    .header-whatsapp, .mobile-nav-actions .btn {
        font-size: 0.82rem;
    }

    .hero-section [style*="display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap;"] {
        gap: 8px !important;
    }

    .hero-section [style*="display:flex;gap:10px;margin-top:28px;flex-wrap:wrap;"] {
        justify-content: flex-start;
    }

    [style*="grid-auto-rows:240px"] {
        grid-auto-rows: 190px !important;
    }
}


/* =====================================================
   PREMIUM RESPONSIVE IMPROVEMENTS
   ===================================================== */
@media (max-width: 1200px) {
    .fnft-menu-board-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 1024px) {
    .header-book {
        display: none;
    }
    .fnft-premium-grid,
    .fnft-feature-grid {
        grid-template-columns: 1fr !important;
    }
    .fnft-dish-card img {
        height: 220px;
    }
}
@media (max-width: 768px) {
    .header-inner {
        height: 70px;
    }
    .header-whatsapp {
        padding: 9px 12px;
    }
    .header-whatsapp span {
        display: none;
    }
    .section-padding {
        padding-top: 54px;
        padding-bottom: 54px;
    }
    .fnft-premium-hero .container {
        padding-top: 122px !important;
        padding-bottom: 62px !important;
    }
    .fnft-premium-badges {
        gap: 10px;
    }
    .fnft-chip {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
    .fnft-glass-card,
    .fnft-dark-panel,
    .fnft-offer-panel,
    .fnft-menu-board,
    .fnft-soft-card,
    .footer-col {
        border-radius: 22px;
    }
    .fnft-stat-grid {
        grid-template-columns: 1fr !important;
    }
    .fnft-feature-grid {
        gap: 12px !important;
    }
    .fnft-menu-quicknav {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
    }
    .fnft-menu-quicknav a {
        white-space: nowrap;
    }
    .fnft-menu-board-head,
    .fnft-menu-list,
    .fnft-dish-card-body,
    .fnft-soft-card,
    .fnft-dark-panel,
    .fnft-offer-panel {
        padding-left: 18px;
        padding-right: 18px;
    }
}
@media (max-width: 480px) {
    .container {
        padding-left: 14px;
        padding-right: 14px;
    }
    .section-title {
        font-size: clamp(1.7rem, 8vw, 2.35rem);
    }
    .btn,
    .btn-lg {
        width: 100%;
        justify-content: center;
    }
    .fnft-premium-hero h1 {
        font-size: clamp(2rem, 11vw, 2.8rem) !important;
    }
    .fnft-dish-card img {
        height: 200px;
    }
    .fnft-soft-card-lg {
        min-height: 0;
    }
    .footer-col {
        padding: 20px;
    }
    .page-banner {
        padding-top: 98px;
        padding-bottom: 52px;
    }
}
