/* Targeted accessibility improvements; preserve the approved brand and layout. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
html{scroll-padding-bottom:120px}
[id],a,button,input,textarea,summary{scroll-margin-block:24px 120px}
.luxury-page :is(a,button,input,textarea,summary,[tabindex]):focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #121214}
.luxury-page .skip-link{position:fixed;z-index:1000;max-width:calc(100% - 24px)}
.luxury-page .menu-toggle{min-width:44px;min-height:44px}
.luxury-page .button.white:hover{color:#fff}
.luxury-page .footer-legal{display:flex;flex-wrap:wrap;gap:8px 20px}
.luxury-page .footer-legal a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.luxury-page .field-instructions{font-size:14px;color:#e5dde2;line-height:1.6;margin-bottom:18px}
.luxury-page .form-feedback{font-size:15px;line-height:1.6;color:#fff;border-left:3px solid #ff8e9a;padding:12px 16px;margin-block:18px;background:#211b20}
.luxury-home .video-hero .motion-controls{grid-column:2;grid-row:1;align-self:end;justify-self:end;position:relative;z-index:4;margin:12px}
.luxury-home .video-hero .motion-toggle{position:relative;isolation:isolate;min-height:44px;min-width:88px;padding:10px;border:0;border-radius:999px;background:transparent;color:#fff;font:12px/1.5 var(--sans);cursor:pointer;white-space:normal}
.luxury-home .video-hero .motion-toggle::before{content:"";position:absolute;inset:6px 0;z-index:-1;border:1px solid #c5bac1a6;border-radius:inherit;background:#19171be6;pointer-events:none}
.luxury-home .video-hero .motion-toggle:hover::before{background:#302c32}
.luxury-home .video-hero .motion-toggle:disabled{cursor:default}
.luxury-home .video-hero .hero-message h1 .booking-season{white-space:normal}
.luxury-page .accessibility-content{max-width:860px;margin-inline:auto;padding-block:60px 80px}
.luxury-page .accessibility-content h1{font-size:clamp(36px,5vw,60px);overflow-wrap:anywhere}
.luxury-page .accessibility-content h2{font-size:30px;margin-top:38px;line-height:1.3}
.luxury-page .accessibility-content p,.luxury-page .accessibility-content ul{margin-top:20px;color:#ded6dc;font-size:17px;line-height:1.8}
.luxury-page .accessibility-content a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
@media(max-width:760px){
 /* Keep the dropdown above the isolated video layer. */
 .luxury-home .site-header{position:relative;z-index:20}
 .luxury-home .video-hero .motion-controls{grid-column:1;grid-row:1;margin:8px 16px;justify-self:end}
 .luxury-home .video-hero .hero-message h1 .booking-title{white-space:normal}
 .luxury-home .site-header .nav-row nav{top:100%;max-height:min(70svh,calc(100svh - 220px));overflow-y:auto;z-index:20}
 .luxury-page .footer-bottom{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media(forced-colors:active){
 .luxury-home .video-hero .motion-toggle{border:2px solid ButtonText}
 .luxury-page :focus-visible{outline-color:Highlight;box-shadow:none}
}
