/* Native disclosures remain readable without JavaScript. */
.menu-button[aria-controls="mobile-menu"] {
  min-width: 44px;
  min-height: 44px;
}
.menu-button[aria-controls="mobile-menu"] span {
  transform-origin: center;
  transition: transform 260ms cubic-bezier(.16,1,.3,1);
}
.menu-button[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-button[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
#mobile-menu {
  max-height: calc(100svh - 120px);
  overflow-y: auto;
  overscroll-behavior: contain;
  transform-origin: 50% 0;
}
#mobile-menu > a { min-height: 44px; display: flex; align-items: center; }
#mobile-menu[data-disclosure-state="opening"],
#mobile-menu[data-disclosure-state="closing"] { will-change: height, transform, clip-path; }
#mobile-menu[data-disclosure-state="closing"] { pointer-events: none; }
:is(.faq-list details, #booking-live-review)[data-disclosure-state="opening"],
:is(.faq-list details, #booking-live-review)[data-disclosure-state="closing"] {
  overflow: clip;
  will-change: height;
}
@media(max-width:700px) {
  #mobile-menu { max-height: calc(100svh - 110px); }
}
.static-motion .menu-button[aria-controls="mobile-menu"] span { transition: none; }
@media(prefers-reduced-motion:reduce) {
  .menu-button[aria-controls="mobile-menu"] span { transition: none; }
}
