/* Tablet */
@media (max-width: 1024px) {
  .container { padding: 0 2rem; }
  .nav { padding: 1.2rem 2rem; }
  .nav.scrolled { padding: 1rem 2rem; }
  .nav-menu, .nav-cta { display: none; }
  .nav-burger {
    display: flex; flex-direction: column; gap: 6px; padding: .5rem;
  }
  .nav-burger span {
    width: 28px; height: 1.5px; background: var(--ink);
    transition: transform .3s, opacity .3s;
  }
  .nav-burger.open span:nth-child(1) { transform: translateY(4px) rotate(45deg); }
  .nav-burger.open span:nth-child(2) { transform: translateY(-3.5px) rotate(-45deg); }

  .story-grid { grid-template-columns: 1fr; gap: 3rem; }
  .story-img.small { display: none; }
  .chef-grid { grid-template-columns: 1fr; }
  .chef-image { aspect-ratio: 4/3; }
  .chef-content { padding: 3rem 2rem; }
  .visit-grid { grid-template-columns: 1fr 1fr; }
  .visit-card:last-child { grid-column: span 2; }
  .footer-top { grid-template-columns: 1fr; gap: 3rem; }
  .footer-cols { grid-template-columns: repeat(3, 1fr); }
  .form-row { grid-template-columns: 1fr; }
}

/* Mobile */
@media (max-width: 640px) {
  .container { padding: 0 1.2rem; }
  .nav { padding: 1rem 1.2rem; }
  .hero { padding: 6rem 1.2rem 3rem; }
  .hero-actions { flex-direction: column; width: 100%; }
  .hero-actions .btn { width: 100%; justify-content: center; }
  .section-head { padding: 5rem 0 2rem; }
  .story { padding: 2rem 0 5rem; }
  .menu { padding: 2rem 0 5rem; }
  .menu-row {
    grid-template-columns: 50px 1fr; gap: 1rem; padding: 1.5rem 0;
  }
  .menu-meta { display: none; }
  .menu-num { font-size: 1.8rem; }
  .menu-body h3 { font-size: 1.2rem; }
  .menu-body p { font-size: .8rem; }
  .menu-footer { flex-direction: column; align-items: stretch; }
  .menu-footer .btn { width: 100%; justify-content: center; }
  .chef { padding: 5rem 0; }
  .chef-stats { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
  .chef-stats > div:last-child { grid-column: span 2; }
  .visit-grid { grid-template-columns: 1fr; }
  .visit-card:last-child { grid-column: span 1; }
  .visit { padding: 2rem 0 5rem; }
  .reserve { padding: 5rem 0; }
  .footer-cols { grid-template-columns: 1fr; gap: 2rem; }
  .footer-bottom { flex-direction: column; }
  .ticker-track { font-size: 1.2rem; gap: 2rem; }
}

@media (max-width: 380px) {
  .hero-title { font-size: 2.8rem; }
  .title { font-size: 2.2rem; }
}

/* iOS safe areas */
@supports (padding: max(0px)) {
  .nav { padding-left: max(1.2rem, env(safe-area-inset-left)); padding-right: max(1.2rem, env(safe-area-inset-right)); }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
  .hero-media img { animation: none; }
}
