section[id]{scroll-margin-top:110px}.walkin-helper{margin:22px 0 0;color:#bfc6d7;font-size:14px;max-width:640px;line-height:1.6}.hero-ctas{flex-wrap:wrap}.hero-ctas .btn{white-space:normal;text-align:center}a:focus-visible,button:focus-visible{outline:3px solid #68ecf3;outline-offset:5px}.visit-directions{margin-top:24px}@media(max-width:600px){.hero-ctas .btn{width:100%}.walkin-helper{font-size:13px}.site-nav .btn--sm{font-size:11px}.hero-title{overflow-wrap:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*{animation:none!important;transition:none!important}}
@media(max-width:767px){.visit-grid>div:last-child{order:-1}.visit-grid{gap:32px}}
/* Approved website audit corrections, 2026-09-07. */
.hours-list{margin:0;font-size:15px;font-variant-numeric:tabular-nums}
.hours-list>div{display:flex;justify-content:space-between;gap:14px;margin:5px 0}.hours-list dd{margin:0;white-space:nowrap}.info-cell:has(.hours-list){grid-column:1/-1}.info-cell small,.time-help{display:block;color:#bfc6d7;font-size:12px;line-height:1.6;margin-top:10px}
.rates-note{text-align:center;color:#bfc6d7;max-width:640px;margin:24px auto 0;font-size:14px}
.gallery-open{position:absolute;inset:0;z-index:5;background:transparent;border:0;cursor:zoom-in;border-radius:inherit}.gallery-open:focus-visible{outline:3px solid #68ecf3;outline-offset:-5px}
.motion-toggle{display:block;position:absolute;right:0;top:-58px;min-height:44px;padding:8px 14px;border:1px solid #64718b;border-radius:30px;color:#f4f6fc;background:#0e1120;font:12px var(--body);cursor:pointer}.motion-toggle:hover{background:#27304a}.motion-toggle[hidden]{display:none}.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation-play-state:paused!important}.motion-paused .hero-video{transform:none!important}
.status-pill.is-closed .status-dot{background:#a4adbe;box-shadow:none;animation:none}.hero-facts a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.field input,.field select,.field textarea,.stepper input{font-size:16px!important}.field-label{line-height:1.5}.time-help{font-size:12px}.chips .chip{min-height:44px}.chip:focus-within{outline:3px solid #68ecf3;outline-offset:3px}
.mobile-menu,.lightbox{overscroll-behavior:contain;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.dialog-close{top:max(20px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right))}
a,button,input,select,summary{touch-action:manipulation}h2,h3{text-wrap:balance}#main,#age-policy{scroll-margin-top:110px}
@media(max-width:600px){.visit-grid,.reserve-grid{grid-template-columns:minmax(0,1fr)}.info-grid{grid-template-columns:minmax(0,1fr)}.hero{padding-top:130px}.hero-status-row{padding-top:6px}.motion-toggle{top:-52px}.hero-helper{font-size:14px}.resv-form{min-width:0}.hero-facts{gap:12px}.hours-list>div{gap:8px}}
@media(max-width:1000px){html:not(.js) .primary-nav{display:flex;overflow:auto;gap:16px;padding:10px}html:not(.js) .site-header{position:relative;flex-wrap:wrap}html:not(.js) .header-logo{flex-shrink:0}}
.arrival-note{color:#bfc6d7;font-size:14px;max-width:48ch;margin-top:18px}.visit-grid .section-lede{margin-bottom:22px}.info-cell:has(.hours-list){order:-1}
@media(max-width:600px){.hero-split,.events-grid{grid-template-columns:minmax(0,1fr)}.stat-card{min-width:0;padding-left:12px}.stat-card dd{font-size:36px}.stat-card dt{overflow-wrap:anywhere}.hero-ctas{min-width:0}.hero-ctas .btn{padding-left:18px;padding-right:18px}}
/* Decorative full-bleed effects must not create a horizontal viewport. */
html{overflow-x:clip}.bg-stars,.bg-grain{clip-path:inset(0)}
/* Author display rules must not undo semantic hidden fields. */
[hidden]{display:none!important}

/* Menu information must stay visible when decorative motion is paused. */
#menus .menu-panel.is-active,#menus .menu-group{animation:none!important;opacity:1;transform:none}
@media(max-width:767px){#menus .menu-aside{display:none}#menus .menu-panel{gap:0}#menus .menu-groups{min-width:0;width:100%}}

/* Native closed details must not retain hidden menu content in scroll overflow. */
#menus .menu-group:not([open]) > :not(summary){display:none}
/* WebKit retains stale multicol heights when native details collapse. */
#menus .menu-groups{columns:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;align-items:start}
#menus .menu-group{margin-bottom:0}

/* Reservation review and durable receipt use the same readable, mobile-first form surface. */
.resv-review,.resv-receipt{padding:18px;border:1px solid #58617c;border-radius:12px;background:#12182a;overflow-wrap:anywhere}.resv-review h4,.resv-receipt h4{font-size:17px;margin:0 0 10px}.resv-review p,.resv-receipt p{font-size:14px;line-height:1.65;color:#e1e5f0}.resv-receipt{border-color:#68ecf3}.resv-receipt:focus{outline:3px solid #68ecf3;outline-offset:4px}.resv-actions{flex-wrap:wrap}.resv-actions .btn{white-space:normal}.native-date{margin-top:14px}
