
/* Keep scrolling inexpensive and navigation clear of anchor targets. */
@font-face { font-family:'Rubik'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/fonts/rubik/rubik-latin.woff2') format('woff2'); }
html { overflow-x: clip; scrollbar-gutter:stable; }
html.landing-menu-open { overflow-y:hidden; }
body { overflow-x: clip; }
main [id] { scroll-margin-top: 9rem; }
.header.landing-header {
  background: #fff;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
@media (max-width: 59em) {
  .main-nav {
    background: #fff;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    transition: transform .2s ease-out, opacity .2s ease-out, visibility .2s;
    height:100dvh;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* Keep fixed UI separate from page painting and avoid pointer-triggered
   movement as cards pass beneath the cursor during wheel scrolling. */
.header.landing-header, .whatsapp-helper { transform: translateZ(0); }
.meal { transition: border-color .15s, background-color .15s; }
.meal:hover { transform: none; box-shadow: 0 2.4rem 4.8rem rgba(0,0,0,.075); }
.pesaby-testimonials .gallery-item img { transition: none; }
.pesaby-testimonials .gallery-item:hover img,
.pesaby-testimonials .gallery-item img:hover { transform: none; }
