/* ==========================================================================
   CASA MIA Coffee & Brunch — Responsive
   ========================================================================== */

@media (max-width: 1080px){
  .footer-top{ grid-template-columns: 1.2fr 1fr 1fr; }
  .footer-col.is-hide-tablet{ display: none; }
}

@media (max-width: 900px){
  .main-nav ul{ display: none; }
  .main-nav .btn{ display: none; }
  .nav-toggle{ display: inline-flex; }

  .hero{ grid-template-columns: 1fr; }
  .hero-visual{ position: absolute; inset: 0; z-index: 1; }
  .hero-copy{ position: relative; z-index: 3; min-height: 100svh; padding-top: 8rem; }
  .hero-visual::after{ background: linear-gradient(0deg, var(--cm-walnut-dark) 5%, rgba(30,23,18,.35) 55%, rgba(30,23,18,.15) 100%); }
  .hero-badge{ display: none; }

  .split .container,
  .split.reverse .container{ grid-template-columns: 1fr; }
  .split.reverse .split-media{ order: 0; }
  .split-media{ max-width: 420px; margin-inline: auto; }
  .split-media .floating-card{ left: .8rem; right: auto; bottom: -1.2rem; }
  .split.reverse .split-media .floating-card{ right: .8rem; left: auto; }

  .location .container{ grid-template-columns: 1fr; }
  .location-visual{ min-height: 280px; order: -1; }

  .footer-top{ grid-template-columns: 1fr 1fr; row-gap: 2.4rem; }

  .moment, .moment.is-reverse{ grid-template-columns: 1fr; }
  .moment.is-reverse .moment-media,
  .moment.is-reverse .moment-copy{ order: 0; }
  .moment-media{ max-width: 480px; margin-inline: auto; }
}

@media (max-width: 900px){
  .contact-layout{ grid-template-columns: 1fr; }
  .values-grid{ grid-template-columns: 1fr 1fr; }
  .gallery-mosaic{ grid-template-columns: repeat(4, 1fr); grid-auto-rows: 110px; }
  .gallery-mosaic .g-a, .gallery-mosaic .g-b, .gallery-mosaic .g-c,
  .gallery-mosaic .g-d, .gallery-mosaic .g-e, .gallery-mosaic .g-f{ grid-column: span 4; grid-row: span 2; }
}

@media (max-width: 640px){
  .pillars{ grid-template-columns: 1fr; }
  .menu-board-head, .social-head{ flex-direction: column; align-items: flex-start; }
  .location-visual{ order: 0; }
  .footer-top{ grid-template-columns: 1fr; }
  .footer-bottom{ flex-direction: column; align-items: flex-start; }
  .testimonial blockquote br{ display: none; }
  .menu-items{ grid-template-columns: 1fr; }
  .values-grid{ grid-template-columns: 1fr; }
  .form-row{ grid-template-columns: 1fr; }
  .gallery-mosaic{ grid-template-columns: repeat(2, 1fr); }
  .gallery-mosaic .g-a, .gallery-mosaic .g-b, .gallery-mosaic .g-c, .gallery-mosaic .g-d, .gallery-mosaic .g-e, .gallery-mosaic .g-f{ grid-column: span 2; grid-row: span 2; }
  .lightbox{ padding: 4rem 1rem; }
  .lightbox-close, .lightbox-nav{ width: 38px; height: 38px; }
  .lightbox-close svg, .lightbox-nav svg{ width: 15px; height: 15px; }
  .lightbox-prev{ left: .4rem; }
  .lightbox-next{ right: .4rem; }
}
