/* ============================================================
   RESPONSIVE — 1200 / 1024 / 900 / 700 / 520
   ============================================================ */

/* ── ≤1200 ─────────────────────────────────────────────── */
@media (max-width:1200px){
  .cat-grid{ grid-template-columns:repeat(2,1fr); }
  .cat-card--wide{ grid-column:span 2; }
  .dish-grid{ grid-template-columns:repeat(3,1fr); }
  .steps{ grid-template-columns:repeat(2,1fr); }
  .footer__grid{ grid-template-columns:1.3fr 1fr 1fr; }
  .footer__hours{ grid-column:2 / -1; }
  .icon-btn__label{ display:none; }
  .icon-btn{ width:42px; padding:0; justify-content:center; }
}

/* ── ≤1024 : offcanvas takes over ──────────────────────── */
@media (max-width:1024px){
  :root{ --header-h:78px; }
  .nav{ display:none; }
  .burger{ display:flex; }
  .auth-menu{ display:none; }
  .brand__tag{ font-size:.58rem; letter-spacing:.18em; }

  .section__head--split{ grid-template-columns:1fr; gap:18px; align-items:start; }
  .story__grid{ grid-template-columns:1fr; gap:38px; }
  .story__art{ max-width:520px; aspect-ratio:1/.86; }
  .reserve__grid{ grid-template-columns:1fr; }
  .voices__grid{ grid-template-columns:1fr 1fr; }
  .voices__grid .voice:last-child{ grid-column:span 2; }

  .hero__inner{ padding-bottom:190px; }
  .hero__scroll{ display:none; }
  .hero__copy{ max-width:min(560px,72%); }

  .auth-card{ grid-template-columns:1fr; width:min(520px,92vw); }
  .auth-card__art{ display:none; }
}

/* ── ≤900 : single-page book, stacked hero ─────────────── */
@media (max-width:900px){
  .hero{ min-height:auto; }
  .hero__inner{
    padding-top:calc(var(--header-h) + 18px);
    padding-bottom:180px;
    min-height:100svh;
    display:flex; align-items:flex-end;
  }
  .hero__copy{ max-width:100%; width:100%; flex:1 1 100%; }
  .hero__slides{ min-height:clamp(360px,54vh,470px); }
  .hero__veil{
    background:
      linear-gradient(180deg, rgba(14,11,8,.55) 0%, rgba(14,11,8,.15) 26%, rgba(14,11,8,.86) 62%, rgba(14,11,8,.96) 100%);
  }
  .hero-slide{ justify-content:flex-end; }
  .hero-slide__desc{ max-width:100%; }

  .hero__arrow{
    top:auto; bottom:118px; transform:none;
    padding:11px 14px;
  }
  .hero__arrow--prev{ left:12px; }
  .hero__arrow--next{ right:12px; }
  .hero__arrow span{ display:none; }
  .hero__arrow--prev:hover{ transform:translateX(-4px); }
  .hero__arrow--next:hover{ transform:translateX(4px); }

  .hero__previews{ justify-content:flex-start; padding-bottom:22px; gap:9px; }
  .preview{ width:156px; padding:9px 11px 10px; }
  .preview__thumb{ width:40px; height:40px; }

  .cat-card{ min-height:300px; }
  .dish-grid{ grid-template-columns:repeat(2,1fr); }

  /* book → single page */
  .book{
    width:min(460px,94vw);
    height:min(600px, calc(100svh - 210px));
    border-radius:10px;
  }
  .menu-modal__stage{ gap:12px; justify-content:flex-start; padding-top:64px; }
  .book__controls{ width:100%; max-width:min(460px,94vw); }
  .book__tabs{ flex:1; min-width:0; }
  .book__footbar{ gap:12px; }

  .flying-card{ width:108px; height:142px; right:14px; bottom:14px; }
  .flying-card__title{ font-size:1.02rem; }
  .flying-card__cta{ font-size:.48rem; }
}

/* ── ≤700 ──────────────────────────────────────────────── */
@media (max-width:700px){
  :root{ --header-h:70px; }
  .brand__mark{ width:36px; height:36px; }
  .brand__name{ font-size:1.3rem; }
  .brand__tag{ display:none; }

  .cat-grid{ grid-template-columns:1fr; }
  .cat-card--wide{ grid-column:span 1; }
  .cat-card{ min-height:270px; padding:24px; }
  .cat-card__art{ width:62%; top:-4%; right:-6%; }

  .steps{ grid-template-columns:1fr; }
  .voices__grid{ grid-template-columns:1fr; }
  .voices__grid .voice:last-child{ grid-column:span 1; }

  .story__stats{ grid-template-columns:1fr 1fr; gap:22px 18px; }
  .reserve__info li{ grid-template-columns:1fr; gap:4px; }
  .field-row{ grid-template-columns:1fr; }

  .footer__grid{ grid-template-columns:1fr 1fr; gap:32px; }
  .footer__brand{ grid-column:span 2; }
  .footer__hours{ grid-column:span 2; }
  .footer__bottom{ flex-direction:column; gap:6px; text-align:center; justify-content:center; }

  .signature__cta{ flex-direction:column; gap:14px; }

  /* keep name · price · add on one line so more of the card fits */
  .mitem{ gap:9px; padding:10px 0; }
  .mitem__name{ font-size:.96rem; }
  .mitem__desc{ font-size:.76rem; }
  .mitem__price{ font-size:.92rem; }
  .mitem__add{ width:27px; height:27px; }
  .page__note{ font-size:.72rem; padding:11px 13px; margin-top:14px; }
}

/* ── ≤520 ──────────────────────────────────────────────── */
@media (max-width:520px){
  .hero-slide__title{ font-size:clamp(2.4rem,11vw,3.3rem); }
  .hero-slide__facts{ gap:7px; }
  .hero-slide__facts li{ font-size:.68rem; padding:.38em .8em; }
  .hero-slide__actions{ width:100%; }
  .hero-slide__actions .btn{ flex:1; }
  .hero-slide__price{ width:100%; padding-left:0; }

  .book{ width:calc(100vw - 24px); height:calc(100svh - 196px); }
  .menu-modal__stage{ padding:56px 12px 16px; }
  .book__controls{ max-width:100%; }
  .book__footbar{ flex-direction:column; gap:8px; }
  .book__footbar .btn{ width:100%; }
  .page{ padding:20px 18px; }
  .page__frame{ inset:9px }

  .preview{ width:142px; }
  .preview__name{ font-size:.84rem; }

  .toast{ font-size:.8rem; padding:11px 16px; }
  .flying-card{ width:94px; height:124px; }
  .flying-card__urdu{ font-size:.75rem; }
}

/* ── short viewports ───────────────────────────────────── */
@media (max-height:700px) and (min-width:901px){
  .book{ height:calc(100svh - 200px); }
  .hero__inner{ padding-bottom:170px; }
}

/* ── touch devices: no hover lift ──────────────────────── */
@media (hover:none){
  .cat-card:hover,.dish-card:hover,.step:hover,.voice:hover,.preview:hover{ transform:none; }
  .flying-card:hover .flying-card__body{ animation-play-state:running; }
}

/* ── print ─────────────────────────────────────────────── */
@media print{
  .site-header,.flying-card,.hero__canvas,.offcanvas,.modal,.toast-stack,.marquee{ display:none !important; }
  body{ background:#fff; color:#000; }
}
