.ml-menu[hidden]{display:none}
.ml-menu,.ml-menu-toggle{display:none}
@media(max-width:700px){
  .mobile-topbar .mobile-topbar-book{right:100px}
  .ml-menu-toggle{display:flex;align-items:center;gap:8px;position:absolute;right:16px;top:calc(3px + env(safe-area-inset-top,0px));min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;font-size:11px;letter-spacing:.02em}
  .ml-menu-toggle span{font-size:17px}
  body.ml-menu-active .mobile-topbar-book{visibility:hidden}
  .ml-menu{display:block;position:fixed;inset:0;width:100%;height:100dvh;z-index:100;isolation:isolate;overscroll-behavior:contain;font-family:'L2 Plex',monospace}
  .ml-menu-panel{position:absolute;inset:0;transform:translateY(-100%);will-change:transform;pointer-events:none}
  .ml-menu-chalk{background:#f2efe5;z-index:0}
  .ml-menu-dark{background:#191a1c;z-index:1}
  .ml-menu-dark:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / 6 - 1px),rgba(245,245,243,.065) calc(100% / 6 - 1px),rgba(245,245,243,.065) calc(100% / 6))}
  .ml-menu-header{position:absolute;inset:0 0 auto;z-index:3;display:flex;align-items:center;justify-content:space-between;min-height:calc(50px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 16px 0}
  .ml-menu-header .mobile-topbar-identity{color:inherit}
  .ml-menu-close{display:flex;align-items:center;gap:9px;min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;font-size:11px}
  .ml-menu-close span{font-size:24px;font-weight:400}
  .ml-menu-nav{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;overflow-y:auto;overscroll-behavior:contain;padding:calc(100px + env(safe-area-inset-top,0px)) 24px calc(52px + env(safe-area-inset-bottom,0px));color:#f5f5f3}
  .ml-menu-nav ol{list-style:none;padding:0;margin:auto 0;display:grid;gap:clamp(12px,3dvh,28px)}
  .ml-menu-nav li{opacity:0;transform:translateY(18px)}
  .ml-menu-nav a{display:flex;align-items:center;gap:20px;width:fit-content;min-height:44px;padding:3px 0}
  .ml-menu-label{font-size:clamp(38px,11.6vw,54px);line-height:1.1;font-weight:400;letter-spacing:-.045em}
  .ml-menu-accent{color:#b8774e}
  .ml-menu-number{color:#969b96;font-size:12px;letter-spacing:.02em}
  .ml-menu a:focus-visible,.ml-menu button:focus-visible{outline:2px solid currentColor;outline-offset:6px}
  #mobile-warmth-entry,#window,#mobile-booking,#mobile-coastline,#mobile-stay{scroll-margin-top:70px}
  .mobile-layout .ml-section-eyebrow{display:block;position:relative;font-family:'L2 Plex',monospace;font-size:10px;line-height:1.4;letter-spacing:.09em;font-weight:400}
  .mobile-layout .ml-section-eyebrow:before{content:'';position:absolute;left:0;right:0;top:-11px;height:1px;background:#262b2740}
  .mobile-layout .ml-eyebrow-sauna,.mobile-layout .ml-eyebrow-swim{position:absolute;z-index:4;left:calc(26*100cqw/414);top:calc(270*100cqw/414);color:#292824}
  .mobile-layout .ml-eyebrow-sauna:before{display:none}
  .mobile-layout .l2-montage:before{content:'';position:absolute;z-index:0;top:0;left:calc(19.25*100cqw/414);width:calc(380.5*100cqw/414);height:calc((1220 + 380.5*1350/1080)*100cqw/414);border-left:1px solid #262b2726;border-right:1px solid #262b2726;background:linear-gradient(#262b2726,#262b2726) center top/1px 100% no-repeat;pointer-events:none}
  .mobile-layout .ml-eyebrow-swim{left:calc(157.77*100cqw/414);top:calc(var(--scene)*.58 - 22px);color:#fff;text-shadow:0 1px 8px #14201680}
  .mobile-layout .ml-eyebrow-swim:before{display:none}
  .mobile-layout .l2-booking{padding-top:calc(25*100cqw/414)}
  .mobile-layout .ml-eyebrow-book{margin:0 0 6px;text-align:left}
  .mobile-layout .ml-day{padding-top:calc(55*100cqw/414)}
  .mobile-layout .ml-eyebrow-coastline{margin:0 calc(30*100cqw/414) calc(6*100cqw/414)}
  .mobile-layout .ml-stay{height:calc(1156.35*100cqw/414)}
  .mobile-layout .ml-stay-lake{left:5%;top:calc(777*100cqw/414);width:90%}
  .mobile-layout .ml-stay-lake video{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
  .mobile-layout .dive-words{inset:0;height:100%}
  @media(max-width:374px){.mobile-topbar-identity{font-size:17px}.mobile-topbar .mobile-topbar-book{width:96px;font-size:10px;right:92px}.ml-menu-toggle{font-size:10px;gap:6px}}
  @media(max-height:520px){.ml-menu-nav{padding-top:75px;padding-bottom:20px}.ml-menu-nav ol{gap:2px}.ml-menu-label{font-size:32px}}
}

/* Mobile map refinement, matching the approved tablet wash. */
@media (max-width:700px) {
  .mobile-layout .ml-day-map{position:relative;left:5%}
  .mobile-layout .ml-day-map #map-park-north,
  .mobile-layout .ml-day-map #map-park-east{display:none}
  .mobile-layout .ml-day-map #map-park-wash{display:none}
}
