

:root { --section-y: 75px; }

  body.has-sticky { padding-bottom: var(--sticky-bar, 80px); }

  .sticky-cta {
    background: #d3d3cf;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  .site-header--overlay .hamburger { display: none; }

  .site-header--overlay .header-fix .btn { display: none; }

  .gr-oc .oc-list {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: 100%;
    gap: 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding-bottom: .4rem;
  }
  .gr-oc .oc-list::-webkit-scrollbar { display: none; }
  .gr-oc .oc-item { scroll-snap-align: start; }
  .gr-oc .carousel { container-type: inline-size; }
  .gr-oc .carousel-prev,
  .gr-oc .carousel-next { top: calc(2rem + 37.5cqw); font-size: 1.5rem; line-height: 1; }
  .gr-oc .carousel-prev { left: .5rem; }
  .gr-oc .carousel-next { right: .5rem; }

.site-header--overlay { padding-block: 14px; align-items: center; }
.site-header--overlay .logo { display: flex; align-items: center; margin-right: auto; }
.site-header--overlay .logo-img { width: 56px; height: 56px; object-fit: contain; }

.hero-brand .logo-img { width: 176px; max-width: none; }

.gr-oc .oc-ttl { font-size: 1.25rem; }

#reserve h3 { margin: 48px 0 16px; font-size: 16px; }

.drawer-brand-img { display: block; width: 96px; height: auto; }
.drawer-menu { padding-top: 172px; }

:root { --footer-brand-img-h: 96px; }
