/* fixes-mobile.css — Restaurant mobile adjustments */

html,
body {
  overflow-x: hidden;
  max-width: 100vw;
}

body.nav-open {
  overflow: hidden;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

@media (max-width: 1080px) {
  .header__nav,
  .header__cta {
    display: none !important;
  }

  .header__mobile-toggle {
    display: inline-flex !important;
  }

  .hero__grid,
  .story-grid,
  .contact-layout,
  .location-card,
  .booking-layout,
  .feature-detail,
  .footer__grid {
    grid-template-columns: 1fr !important;
  }

  .pricing-grid,
  .gallery-grid,
  .features-grid,
  .services-grid,
  .values-grid,
  .team-grid,
  .reviews-grid,
  .blog-grid,
  .menu-grid,
  .metrics-row,
  .steps-row,
  .testimonials-grid {
    grid-template-columns: 1fr !important;
  }

  .hero__media {
    order: -1;
  }

  .location-card__map iframe {
    min-height: 260px;
  }
}

@media (max-width: 767px) {
  .header {
    position: sticky !important;
    top: 0;
  }

  #main-content {
    padding-top: 0 !important;
  }

  .container {
    padding-inline: var(--space-4) !important;
  }

  .section,
  .page-hero,
  .hero {
    padding-block: var(--space-12) !important;
  }

  .hero--parallax {
    min-height: calc(100vh - 72px) !important;
    min-height: calc(100dvh - 72px) !important;
    background-attachment: scroll !important;
  }

  .hero__actions,
  .page-hero__actions,
  .cta-actions,
  .contact-quicklinks {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .btn,
  .form-button,
  .booking-card .btn,
  .cta-section .btn {
    width: 100%;
    justify-content: center;
  }

  .menu-item,
  .price-item,
  .contact-info__item {
    grid-template-columns: 1fr !important;
  }

  .menu-item__price,
  .price-item__value {
    justify-self: start !important;
  }

  .trust-bar__grid,
  .logo-cloud,
  .badge-row {
    grid-template-columns: 1fr 1fr !important;
  }

  .footer__bottom {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: var(--space-3) !important;
  }

  .mobile-nav__panel {
    width: min(88vw, 360px) !important;
  }

  .table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 479px) {
  .trust-bar__grid,
  .logo-cloud,
  .badge-row {
    grid-template-columns: 1fr !important;
  }

  .hero__stats,
  .metrics-row {
    gap: var(--space-4) !important;
  }

  .section__header--split,
  .page-hero__meta {
    grid-template-columns: 1fr !important;
  }

  .card,
  .feature-card,
  .service-card,
  .testimonial-card,
  .review-card,
  .team-card,
  .value-card,
  .plan-card,
  .blog-card,
  .gallery-card {
    padding: var(--space-5) !important;
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .hero--parallax {
    min-height: auto !important;
  }

  .mobile-nav__panel {
    width: min(72vw, 420px) !important;
  }
}