/* ============================================================
   Responsive — mobile-first adjustments
   ============================================================ */

/* Tablet */
@media (max-width: 960px) {
  .site-footer__inner { grid-template-columns: 1fr 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
  .editorial-grid { grid-template-columns: 1fr; }
  .hero { min-height: 80vh; }
}

/* Mobile */
@media (max-width: 720px) {
  :root { --space-6: 4rem; --space-7: 5rem; }

  .site-header__desktop { display: none; }
  .nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
  .mobile-nav:not([hidden]) { display: block; }
  .site-header__actions .btn--primary { display: none; }
  .site-header__actions .btn { padding: 0.5rem 0.875rem; font-size: 0.8125rem; }

  .brand__name { display: none; }

  .hero { min-height: 78vh; padding: var(--space-5) 0 var(--space-4); }
  .hero__title { font-size: clamp(2rem, 10vw, 3rem); }
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { width: 100%; }

  .menu-filters { top: 57px; }

  .pizza-grid, .menu-grid { grid-template-columns: 1fr; }

  .site-footer__inner { grid-template-columns: 1fr; }
  .page-head { padding: var(--space-5) 0 var(--space-3); }
}

/* Small mobile */
@media (max-width: 400px) {
  .menu-filter { font-size: 0.6875rem; padding: 0.375rem 0.625rem; }
  .menu-card__footer { flex-direction: column; align-items: stretch; gap: 0.5rem; }
  .menu-card__footer .btn { width: 100%; }
}