
:root{--motion-editorial:cubic-bezier(.22,1,.36,1)}
.home-page .hero-title span{animation-duration:520ms;animation-delay:calc(var(--hero-i,0)*45ms)}
.home-page .hero .eyebrow,.home-page .hero-bottom{animation-duration:320ms;animation-delay:60ms}
.motion-reveal{transition-duration:400ms;transition-delay:min(var(--reveal-delay,0ms),80ms)}
.motion-reveal.split-lines .split-word>span{transition-duration:400ms;transition-delay:calc(min(var(--reveal-delay,0ms),80ms) + min(var(--word-i,0)*12ms,60ms))}
.motion-media{transition-duration:500ms}
.mobile-menu[open]>div{animation-duration:180ms}
.mobile-menu[open]>div>a{animation-duration:180ms;animation-delay:0ms}
:root:has(.site-header) :is(.nav-cta,.menu-cta,.hero-primary,.hero-secondary,.booking-cta,.footer-cta-link,.sent-dialog button,:is(.contact,.contact-page) button[type=submit]){transition:color 160ms ease,border-color 160ms ease,scale 180ms var(--motion-editorial)}
:root:has(.site-header) :is(.nav-cta,.menu-cta,.hero-primary,.hero-secondary,.booking-cta,.footer-cta-link,.sent-dialog button,:is(.contact,.contact-page) button[type=submit])::before{transition-duration:220ms}
.btn-label>span,.btn-arrow>span{transition-duration:220ms}
:root:has(.site-header) .media-teaser i{transition:color 160ms ease}
:root:has(.site-header) .media-teaser i::before{transition-duration:220ms}
.sent-dialog .sent-line>span,.sent-dialog>p,.sent-dialog form,.sent-dialog button{animation:none!important;opacity:1;translate:none}
@media(prefers-reduced-motion:no-preference){
 :root:has(.site-header) .sent-dialog[open]{animation:public-confirm-enter 220ms var(--motion-editorial) both}
 :root:has(.site-header) .sent-dialog[open]::backdrop{animation:public-confirm-ground 180ms ease both}
 .sent-dialog[open] .sent-tick rect{stroke-dasharray:1;stroke-dashoffset:1;animation:public-confirm-write 180ms var(--motion-editorial) forwards}
 .sent-dialog[open] .sent-tick path{stroke-dasharray:1;stroke-dashoffset:1;animation:public-confirm-write 220ms var(--motion-editorial) 40ms forwards}
}
@keyframes public-confirm-enter{from{opacity:.85;translate:0 8px}to{opacity:1;translate:0 0}}
@keyframes public-confirm-ground{from{opacity:0}to{opacity:1}}
@keyframes public-confirm-write{to{stroke-dashoffset:0}}
@media(max-width:800px){.motion-reveal,.motion-reveal.split-lines .split-word>span{transition-duration:320ms;transition-delay:0ms}.home-page .hero-title span{animation-duration:400ms;animation-delay:calc(var(--hero-i,0)*30ms)}}
@media(prefers-reduced-motion:reduce){
 .motion-reveal,.motion-media,.motion-reveal.split-lines .split-word>span,.btn-label>span,.btn-arrow>span{transition:none!important}
 .home-page .hero-title span,.home-page .hero .eyebrow,.home-page .hero-bottom,.mobile-menu[open]>div,.mobile-menu[open]>div>a,.sent-dialog[open],.sent-dialog[open]::backdrop,.sent-dialog[open] .sent-tick rect,.sent-dialog[open] .sent-tick path{animation:none!important;translate:none;transform:none;opacity:1;stroke-dashoffset:0}
 :root:has(.site-header) :is(.nav-cta,.menu-cta,.hero-primary,.hero-secondary,.booking-cta,.footer-cta-link,.sent-dialog button,:is(.contact,.contact-page) button[type=submit]),:root:has(.site-header) :is(.nav-cta,.menu-cta,.hero-primary,.hero-secondary,.booking-cta,.footer-cta-link,.sent-dialog button,:is(.contact,.contact-page) button[type=submit])::before,:root:has(.site-header) .media-teaser i,:root:has(.site-header) .media-teaser i::before{transition:none!important}
}
