:root{--display:"quiche-sans","Helvetica Neue",Arial,sans-serif;--sans:"Montserrat",Arial,sans-serif}*{border-radius:0!important}html{background:#f7f7f4}.locked{overflow:hidden}body{font-family:var(--sans);font-weight:300;letter-spacing:.01em}
.gateway{position:fixed;inset:0;z-index:1000;overflow:hidden;background:#06131c;color:#fff;transition:opacity 1s ease,visibility 1s}.gateway>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.025);transition:opacity 1.4s ease,transform 2.2s cubic-bezier(.2,.75,.15,1)}.gateway.ready>img{opacity:1}.gateway-shade{position:absolute;inset:0;background:rgba(2,11,18,.2);opacity:0;transition:opacity 1.2s .55s}.gateway.ready .gateway-shade{opacity:1}.gateway-center{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:24px;opacity:0;transform:translateY(12px);transition:opacity .9s 1.05s,transform .9s 1.05s}.gateway.ready .gateway-center{opacity:1;transform:none}.entry-mark{width:min(420px,72vw);padding:34px 46px 31px;border:1px solid rgba(255,255,255,.84);display:flex;flex-direction:column;align-items:center;text-align:center;background:rgba(3,14,22,.08);backdrop-filter:blur(2px)}.entry-mark strong{font:400 clamp(30px,4vw,54px)/1 var(--sans);letter-spacing:.22em;margin-left:.22em}.entry-mark span{margin-top:12px;font:400 9px/1 var(--sans);letter-spacing:.48em;margin-left:.48em}.enter-site{width:min(420px,72vw);padding:16px 20px;border:1px solid rgba(255,255,255,.84);background:rgba(3,14,22,.18);color:#fff;font:400 10px var(--sans);letter-spacing:.25em;text-transform:uppercase;cursor:pointer;transition:background .35s,color .35s}.enter-site b{float:right;font-size:14px;font-weight:300}.enter-site:hover{background:#fff;color:#07141d}.gateway.entered{opacity:0;visibility:hidden;pointer-events:none}.gateway.entered>img{transform:scale(1.11)}
header{background:rgba(255,255,255,.96);backdrop-filter:blur(16px);grid-template-columns:1fr auto}.logo strong,.gateway-logo strong{font-family:var(--sans);font-weight:400;letter-spacing:.08em}.header-actions{display:flex;align-items:center;gap:30px}.menu-toggle{border:0;background:none;display:flex;align-items:center;gap:12px;font:500 9px var(--sans);letter-spacing:.18em;text-transform:uppercase;cursor:pointer}.menu-toggle i{width:25px;height:9px;border-top:1px solid;border-bottom:1px solid}.enquire b{display:none}.menu-panel{position:fixed;inset:0;z-index:900;background:#07141d;color:#fff;display:flex;flex-direction:column;padding:7vh 8vw;visibility:hidden;opacity:0;transform:translateY(-18px);transition:.65s cubic-bezier(.2,.7,.2,1)}.menu-panel.open{visibility:visible;opacity:1;transform:none}.menu-close{align-self:flex-end;border:1px solid rgba(255,255,255,.55);padding:11px 18px;background:none;color:#fff;font:400 9px var(--sans);letter-spacing:.2em;text-transform:uppercase}.menu-panel nav{display:flex;flex-direction:column;margin:auto 0}.menu-panel nav a{border-bottom:1px solid rgba(255,255,255,.15);padding:16px 0;font:400 clamp(42px,6vw,88px)/1 var(--display);letter-spacing:-.025em}.menu-panel nav small{display:inline-block;width:55px;font:400 9px var(--sans);letter-spacing:.15em}.menu-panel p{font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.hero{height:145svh;overflow:visible;background:#f7f7f4;perspective:1800px}.hero-visual{position:sticky;top:0;height:100svh;overflow:hidden;color:#fff;background:#06131c;transform-origin:center;will-change:transform}.hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;will-change:transform}.hero-shade{height:100%;background:linear-gradient(90deg,rgba(2,12,20,.42),rgba(2,12,20,.03) 58%),linear-gradient(0deg,rgba(2,12,20,.22),transparent 48%)}.hero-copy{top:auto;bottom:13vh;left:8vw}.hero-copy>span{font-size:10px;letter-spacing:.24em;text-transform:uppercase}.hero h1{margin-top:24px;font-family:var(--display);font-weight:400;letter-spacing:-.035em}.hero-scroll{left:auto;right:5vw}.site-entered header{animation:headerIn .9s .55s both}.site-entered .hero-copy{animation:copyIn 1.05s .7s both}.site-entered .hero-scroll{animation:copyIn 1.05s .95s both}@keyframes headerIn{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}@keyframes copyIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.opening h2,.copy h2,.cinematic h2,.destination-intro h2,.approach-title h2,.contact h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em}.opening p,.copy p,.destination-intro p,.approach-details p,.contact p{font-weight:300}.charter{perspective:none}.media{overflow:hidden;transform:none!important}.media img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);will-change:transform}.depth-frame{clip-path:none!important}.copy{position:relative;z-index:2}
.cinematic{height:auto;min-height:0;display:grid;overflow:hidden;background:#07141d}.cinematic>img,.cinematic-wash,.cinematic-copy{grid-area:1/1}.cinematic>img{position:relative;width:100%;height:auto;min-height:0;object-fit:contain}.cinematic-wash{position:relative;background:linear-gradient(90deg,rgba(3,13,21,.34),transparent 48%)}.cinematic-copy{position:relative;left:auto;bottom:auto;align-self:end;padding:0 0 7vw 8vw}.cinematic h2{font-size:clamp(55px,8vw,122px);line-height:.9}.cinematic-copy>span{font-size:10px;letter-spacing:.22em;text-transform:uppercase}.cinematic-line{display:none}
.destinations{padding:14vh 0 10vh;overflow:hidden}.destination-intro{padding:0 8vw;display:grid;grid-template-columns:1fr 1fr;align-items:end}.destination-intro .kicker{grid-column:1/-1}.destination-intro h2{font-size:clamp(55px,7vw,108px);line-height:.93}.destination-intro p{max-width:330px;justify-self:end;margin-bottom:10px}.destination-stage{height:100svh;margin-top:10vh;position:relative}.destination-image{position:absolute;inset:5vh 7vw 5vh 31vw;overflow:hidden;transform:none!important;box-shadow:0 35px 100px rgba(5,20,30,.14)}.destination-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.06)}.destination-words{position:absolute;z-index:2;left:8vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column}.destination-words span{font:400 clamp(45px,6.4vw,102px)/1.1 var(--display);letter-spacing:-.025em;color:#07141d;opacity:.16;transform:translateX(-3vw);transition:opacity .55s,transform .55s}.destination-words span.active{opacity:1;transform:none;color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.2)}.destination-counter{position:absolute;right:8vw;bottom:1vh;display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.15em}.destination-counter i{display:block;width:70px;height:1px;background:#b8bdbc}.destination-note{margin:4vh 8vw 0;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.approach{height:auto;background:#f7f7f4;color:#07141d}.approach-visual{position:relative;display:grid;overflow:hidden}.approach-visual>img,.approach-shade,.approach-title{grid-area:1/1}.approach-visual>img{position:relative;width:100%;height:auto;object-fit:contain}.approach-shade{position:relative;background:linear-gradient(90deg,rgba(3,13,21,.44),transparent 58%)}.approach-title{position:relative;align-self:center;padding-left:8vw;color:#fff}.approach-title>span{font-size:10px;letter-spacing:.22em;text-transform:uppercase}.approach-title h2{margin:25px 0 0;font-size:clamp(58px,8vw,126px);line-height:.9}.approach-details{display:grid;grid-template-columns:1fr 1fr;gap:12vw;padding:10vh 8vw 13vh}.approach-details p{font:400 clamp(26px,3vw,44px)/1.3 var(--display);margin:0}.approach-details ul{margin:0;padding:0;list-style:none}.approach-details li{padding:20px 0;border-bottom:1px solid #cfd2d1;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.approach-details li span{display:inline-block;width:50px;color:#969e9f}
.reveal{opacity:1;transform:none;filter:none;transition:none}.motion{opacity:0;transform:translateY(46px);filter:blur(4px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1),filter 1s}.motion.motion-image{transform:scale(1.035);filter:none}.motion.in-view{opacity:1;transform:none;filter:none}.motion.out-view{opacity:.3;transform:translateY(-22px);filter:blur(1px)}.motion:nth-child(2){transition-delay:.08s}.motion:nth-child(3){transition-delay:.16s}.motion:nth-child(4){transition-delay:.24s}
@media(max-width:800px){.entry-mark,.enter-site{width:78vw}.entry-mark{padding:28px 20px}.entry-mark strong{font-size:28px}.gateway-center{gap:18px}.header-actions{gap:16px}.enquire{display:none}.hero{height:125svh}.hero-copy{left:22px;bottom:16vh}.hero h1{font-size:18vw}.destination-intro{display:block;padding:0 22px}.destination-intro p{margin-top:28px}.destination-stage{height:82svh}.destination-image{inset:5vh 22px 5vh 22vw}.destination-words{left:22px}.destination-words span{font-size:11vw}.destination-counter{right:22px}.destination-note{margin:3vh 22px}.cinematic-copy{padding:0 22px 8vw}.cinematic h2{font-size:13vw}.approach-title{padding-left:22px}.approach-title h2{font-size:13vw}.approach-details{grid-template-columns:1fr;padding:9vh 22px}.menu-panel{padding:5vh 22px}}
@media(prefers-reduced-motion:reduce){.gateway,.gateway>img,.gateway-center,.menu-panel,.motion{transition:none}.motion{opacity:1;transform:none;filter:none}}

.logo strong,.entry-mark strong,.destination-words span,.index,.destination-counter span,.approach-details li span,footer>p{font-family:var(--display);font-weight:400}
.logo strong,.entry-mark strong{letter-spacing:.16em}
.entry-mark span,.logo span,.gateway-center>span,.kicker,header,.menu-toggle,.enter-site{font-family:var(--sans);font-weight:300}
.index,.destination-counter span,.approach-details li span{letter-spacing:.16em}
footer>p{letter-spacing:.06em}

/* Full-bleed cinematic motion pass */
.hero{height:170svh;background:#07141d;perspective:none}
.hero-visual{left:0;width:100%;transform:none!important;transform-origin:center;box-shadow:none}
.hero-visual>img{transform-origin:center 42%;filter:saturate(.9) contrast(1.04)}
.hero-copy{overflow:hidden}
.hero-copy>span,.hero h1,.hero-scroll{will-change:transform,opacity,clip-path}
.hero h1,.opening h2,.copy h2,.cinematic h2,.destination-intro h2,.approach-title h2,.contact h2,.destination-words span,.menu-panel nav a,.logo strong,.entry-mark strong,.index,.destination-counter span,.approach-details li span,footer>p{font-weight:300;font-synthesis:none}
.hero h1,.opening h2,.copy h2,.cinematic h2,.destination-intro h2,.approach-title h2,.contact h2{color:inherit;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}
.motion-title{clip-path:inset(0 -.08em 100% -.08em);transform:translateY(52px);filter:blur(2px);letter-spacing:-.015em;transition-duration:1.25s}
.motion-title.in-view{clip-path:inset(-.12em -.08em -.2em -.08em);transform:none;filter:none;letter-spacing:-.045em}
.motion-title.out-view{clip-path:inset(100% -.08em -.2em -.08em);transform:translateY(-26px);opacity:.12;filter:blur(1px)}
.motion-image{clip-path:inset(0 0 100% 0);transform:none!important;transition:clip-path 1.55s cubic-bezier(.16,.72,.18,1),opacity 1s!important}
.motion-image.in-view{clip-path:inset(0);transform:none!important}
.motion-image.out-view{clip-path:inset(0);transform:none!important;opacity:.68}
@media(max-width:800px){.hero{height:145svh}.hero-visual{width:100%}}

.charter.multi .copy{padding-right:2.75vw}
.charter.multi .copy h2{width:100%;max-width:none;overflow:visible}
@media(max-width:800px){
  .charter.multi .copy{padding-right:22px}
}

/* Hero master timeline: one clock, one depth value, one seamless handoff. */
.hero-flight-active .hero-camera{animation:none!important;transition:none!important;inset:0!important}
.hero-flight-active .hero-wake,.hero-flight-active .hero-focus{animation:none!important}
.hero-camera .hero-wake{transform:translate3d(0,var(--wake-y,1.6%),34px) scale(var(--wake-scale,1.01))!important;filter:saturate(.95) contrast(1.06)!important}
.hero-camera .hero-focus{transform:translate3d(0,var(--focus-y,2.2%),76px) scale(var(--focus-scale,1.02))!important;filter:saturate(.97) contrast(1.07)!important}
.hero-visual::after{display:none!important}
.hero-camera,.hero-camera .hero-wake,.hero-camera .hero-focus{backface-visibility:hidden!important;transform-style:flat!important}
.hero-copy{will-change:auto!important}
@media(max-width:800px){.hero-flight-active .hero-camera{animation:none!important}.hero-camera .hero-focus{transform:none!important}}

/* Cinematic film hero and deliberately separated footer. */
.homepage-hero-film{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:1;filter:saturate(.9) contrast(1.055);backface-visibility:hidden}
.hero-flight-active .homepage-hero-film{opacity:1}
.site-footer.universal-footer{background:#06131c!important;color:#fff!important;border-top:14px solid #fff!important}
.universal-footer .footer-brand img{filter:none!important}.universal-footer .footer-brand p{color:#fff!important}.universal-footer .footer-brand p span{color:#99a6ac!important}.universal-footer address{color:#b0bbc0!important}.universal-footer .footer-office a{border-color:rgba(255,255,255,.55)!important}.universal-footer .footer-legal{border-color:rgba(255,255,255,.14)!important;color:#76858c!important}

/* Final full-viewport guarantees. */
.approach-visual{grid-template:1fr/1fr!important}
.approach-water-camera{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important}
.approach-water-camera .water-base{opacity:1!important;visibility:visible!important;z-index:0!important}
.approach-water-camera .water-canvas{opacity:.2!important;z-index:1!important;mix-blend-mode:soft-light!important}
.approach-water-camera .water-focus{z-index:2!important}
.approach-shade{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:3!important}
.approach-title{grid-area:1/1!important;position:relative!important;z-index:4!important}
.hero-flight-active .hero-shade{transition:background .9s cubic-bezier(.2,.7,.2,1)!important}
.hero-flight-active.hero-title-visible .hero-shade{background:radial-gradient(ellipse at 50% 46%,rgba(2,12,20,.04) 0 18%,rgba(2,12,20,.22) 56%,rgba(2,12,20,.64) 100%)!important}
.hero-flight-active.hero-title-visible .hero-wordmark strong{transition-delay:0s!important}
.hero-flight-active.hero-title-visible .hero-wordmark span{transition-delay:.08s!important}

/* Manifesto frame and uniform hero wash — keep last. */
.homepage-hero-film{filter:saturate(.82)!important}
.site-entered .hero-shade,.hero-flight-active .hero-shade,.hero-shade{animation:none!important;opacity:1!important;background:rgba(6,19,28,.38)!important;transition:background-color 1.4s cubic-bezier(.16,.72,.18,1)!important}
.hero-flight-active.hero-title-visible .hero-shade,.hero-title-visible .hero-shade{background:rgba(6,19,28,.54)!important}
.opening.opening--manifesto{min-height:100svh!important;padding:11vh 8vw 9vh!important;background:#06131c!important;color:#fff!important;display:grid!important;place-items:stretch!important;text-align:left!important;border:0!important}
.opening--manifesto .opening-statement{width:100%!important;height:100%!important;display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)!important;grid-template-rows:auto 1fr auto!important;column-gap:7vw!important;align-items:end!important}
.opening--manifesto .opening-label{grid-column:1;grid-row:1;align-self:start;margin:0!important;color:#aebbc1!important}
.opening--manifesto h2{grid-column:1;grid-row:2;width:100%!important;max-width:980px!important;margin:10vh 0 7vh!important;color:#fff!important;font-size:clamp(54px,7vw,112px)!important;line-height:.86!important;letter-spacing:.002em!important;text-align:left!important;text-transform:uppercase!important}
.opening--manifesto h2 .letter-word:nth-child(3){display:block}
.opening--manifesto .opening-rule{grid-column:1/-1;grid-row:3;width:100%;height:1px;background:rgba(255,255,255,.32);align-self:end}
.opening--manifesto p{grid-column:2;grid-row:2;width:100%!important;max-width:390px!important;margin:0 0 7vh!important;padding:0!important;border:0!important;color:#c4ced2!important;font-size:15px!important;line-height:1.8!important;text-align:left!important;justify-self:end;align-self:end}
@media(max-width:800px){.opening.opening--manifesto{min-height:86svh!important;padding:9vh 22px 7vh!important}.opening--manifesto .opening-statement{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto 1fr auto auto!important}.opening--manifesto .opening-label{grid-column:1;grid-row:1}.opening--manifesto h2{grid-column:1;grid-row:2;margin:10vh 0 5vh!important;font-size:12vw!important;line-height:.9!important}.opening--manifesto p{grid-column:1;grid-row:3;margin:0 0 6vh!important;justify-self:start}.opening--manifesto .opening-rule{grid-column:1;grid-row:4}}

/* Manifesto frame and uniform hero wash — authoritative final layer. */
.homepage-hero-film{filter:saturate(.82)!important}
.site-entered .hero-shade,.hero-flight-active .hero-shade,.hero-shade{animation:none!important;opacity:1!important;background:rgba(6,19,28,.38)!important;transition:background-color 1.4s cubic-bezier(.16,.72,.18,1)!important}
.hero-flight-active.hero-title-visible .hero-shade,.hero-title-visible .hero-shade{background:rgba(6,19,28,.54)!important}
.opening.opening--manifesto{min-height:100svh!important;padding:11vh 8vw 9vh!important;background:#06131c!important;color:#fff!important;display:grid!important;place-items:stretch!important;text-align:left!important;border:0!important}
.opening--manifesto .opening-statement{width:100%!important;height:100%!important;display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)!important;grid-template-rows:auto 1fr auto!important;column-gap:7vw!important;align-items:end!important}
.opening--manifesto .opening-label{grid-column:1;grid-row:1;align-self:start;margin:0!important;color:#aebbc1!important}
.opening--manifesto h2{grid-column:1;grid-row:2;width:100%!important;max-width:980px!important;margin:10vh 0 7vh!important;color:#fff!important;font-size:clamp(54px,7vw,112px)!important;line-height:.86!important;letter-spacing:.002em!important;text-align:left!important;text-transform:uppercase!important}
.opening--manifesto h2 .letter-word:nth-child(3){display:block}
.opening--manifesto .opening-rule{grid-column:1/-1;grid-row:3;width:100%;height:1px;background:rgba(255,255,255,.32);align-self:end}
.opening--manifesto p{grid-column:2;grid-row:2;width:100%!important;max-width:390px!important;margin:0 0 7vh!important;padding:0!important;border:0!important;color:#c4ced2!important;font-size:15px!important;line-height:1.8!important;text-align:left!important;justify-self:end;align-self:end}
@media(max-width:800px){.opening.opening--manifesto{min-height:86svh!important;padding:9vh 22px 7vh!important}.opening--manifesto .opening-statement{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto 1fr auto auto!important}.opening--manifesto .opening-label{grid-column:1;grid-row:1}.opening--manifesto h2{grid-column:1;grid-row:2;margin:10vh 0 5vh!important;font-size:12vw!important;line-height:.9!important}.opening--manifesto p{grid-column:1;grid-row:3;margin:0 0 6vh!important;justify-self:start}.opening--manifesto .opening-rule{grid-column:1;grid-row:4}}

/* Final hero grade and manifesto frame */
.homepage-hero-film{filter:saturate(.82)!important}
.site-entered .hero-shade,.hero-flight-active .hero-shade,.hero-shade{animation:none!important;opacity:1!important;background:rgba(6,19,28,.38)!important;transition:background-color 1.4s cubic-bezier(.16,.72,.18,1)!important}
.hero-flight-active.hero-title-visible .hero-shade,.hero-title-visible .hero-shade{background:rgba(6,19,28,.54)!important}
.opening.opening--manifesto{min-height:100svh!important;padding:11vh 8vw 9vh!important;background:#06131c!important;color:#fff!important;display:grid!important;place-items:stretch!important;text-align:left!important;border:0!important}
.opening--manifesto .opening-statement{width:100%!important;height:100%!important;display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)!important;grid-template-rows:auto 1fr auto!important;column-gap:7vw!important;align-items:end!important}
.opening--manifesto .opening-label{grid-column:1;grid-row:1;align-self:start;margin:0!important;color:#aebbc1!important}
.opening--manifesto h2{grid-column:1;grid-row:2;width:100%!important;max-width:980px!important;margin:10vh 0 7vh!important;color:#fff!important;font-size:clamp(54px,7vw,112px)!important;line-height:.86!important;letter-spacing:.002em!important;text-align:left!important;text-transform:uppercase!important}
.opening--manifesto h2>span{display:block}
.opening--manifesto .opening-rule{grid-column:1/-1;grid-row:3;width:100%;height:1px;background:rgba(255,255,255,.32);align-self:end}
.opening--manifesto p{grid-column:2;grid-row:2;width:100%!important;max-width:390px!important;margin:0 0 7vh!important;padding:0!important;border:0!important;color:#c4ced2!important;font-size:15px!important;line-height:1.8!important;text-align:left!important;justify-self:end;align-self:end}
@media(max-width:800px){.opening.opening--manifesto{min-height:86svh!important;padding:9vh 22px 7vh!important}.opening--manifesto .opening-statement{grid-template-columns:1fr!important;grid-template-rows:auto 1fr auto auto!important}.opening--manifesto .opening-label{grid-column:1;grid-row:1}.opening--manifesto h2{grid-column:1;grid-row:2;margin:10vh 0 5vh!important;font-size:12vw!important;line-height:.9!important}.opening--manifesto p{grid-column:1;grid-row:3;margin:0 0 6vh!important;justify-self:start}.opening--manifesto .opening-rule{grid-column:1;grid-row:4}}

/* Final homepage direction */
.hero-flight-active .hero-shade,.hero-shade{background:linear-gradient(180deg,rgba(6,19,28,.3),rgba(6,19,28,.42))!important}
.hero-flight-active.hero-title-visible .hero-shade,.hero-title-visible .hero-shade{background:linear-gradient(180deg,rgba(6,19,28,.4),rgba(6,19,28,.64))!important}
.opening{min-height:86svh!important;padding:11vh 8vw!important;background:#06131c!important;color:#fff!important;border:0!important;place-items:center!important;text-align:center!important}
.opening-statement{width:min(980px,100%)!important;display:flex!important;flex-direction:column!important;align-items:center!important}
.opening .kicker{margin:0 0 4vh!important;color:#aebbc1!important}
.opening h2{width:100%!important;max-width:900px!important;margin:0!important;color:#fff!important;font-size:clamp(48px,5.7vw,86px)!important;line-height:.94!important;text-align:center!important}
.opening p{width:min(570px,100%)!important;margin:5vh auto 0!important;padding-top:4vh!important;border-top:1px solid rgba(255,255,255,.24)!important;color:#c4ced2!important;font-size:16px!important;line-height:1.78!important;text-align:center!important}
.site-footer.universal-footer{min-height:0!important;padding:52px 6vw 24px!important;background:#06131c!important;color:#fff!important;display:grid!important;grid-template-columns:1.05fr 1.25fr 1fr!important;gap:38px 5vw!important;align-items:start!important;border-top:14px solid #fff!important}
.site-footer.universal-footer>div{grid-column:auto!important;border-top:0!important;padding-top:0!important;display:block!important}
.site-footer.universal-footer .footer-brand{display:flex!important;align-items:center!important;gap:18px!important}
.site-footer.universal-footer .footer-legal{grid-column:1/-1!important;border-top:1px solid rgba(255,255,255,.14)!important;padding-top:18px!important}
@media(max-width:800px){.opening{min-height:78svh!important;padding:10vh 22px!important}.opening h2{font-size:11.5vw!important}.site-footer.universal-footer{grid-template-columns:1fr!important}.site-footer.universal-footer .footer-legal{grid-column:1!important}}

/* Refined collection footer */
.home-footer{padding:9vh 8vw 4vh!important;background:#07141d;color:#fff;display:grid!important;grid-template-columns:1.1fr .9fr 1fr!important;gap:5vw!important;align-items:start}.home-footer__brand{display:flex;align-items:flex-start;gap:22px}.home-footer__brand img{width:58px;height:58px;object-fit:contain}.home-footer__brand p{margin:5px 0 0!important;font:300 18px/1.15 var(--display,quiche-sans,sans-serif)!important;letter-spacing:.05em;text-transform:uppercase;color:#fff!important}.home-footer__brand p span{display:block;margin-top:10px;font:400 8px/1.5 Montserrat,Arial,sans-serif;letter-spacing:.18em;color:#9ba8ae}.home-footer__office>span{display:block;margin-bottom:16px;font:500 9px Montserrat,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}.home-footer__office address{margin:0 0 17px;font-style:normal;font-size:12px;line-height:1.8;color:#aeb9be}.home-footer__office a{font-size:11px;border-bottom:1px solid currentColor;padding-bottom:5px}.home-footer nav{display:grid!important;grid-template-columns:1fr 1fr;gap:16px 30px}.home-footer nav a,.home-footer__collection a{font-size:9px;text-transform:uppercase;letter-spacing:.15em}.home-footer__collection{display:grid!important;grid-template-columns:1fr!important;gap:13px!important;border:0!important;padding:0!important}.home-footer__legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.16);padding-top:22px;font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:#829097}
@media(max-width:800px){.home-footer{padding:8vh 22px 4vh!important;grid-template-columns:1fr!important;gap:7vh!important}.home-footer nav{display:grid!important;grid-template-columns:1fr 1fr}.home-footer__legal{grid-column:1!important}}

/* Same compact footer across every page */
.site-footer.universal-footer{min-height:0!important;padding:52px 6vw 24px!important;background:#06131c!important;color:#fff!important;display:grid!important;grid-template-columns:1.05fr 1.25fr 1fr!important;gap:38px 5vw!important;align-items:start!important;border-top:14px solid #fff!important}.universal-footer .footer-brand{display:flex;align-items:center;gap:18px}.universal-footer .footer-brand img{width:48px;height:48px;object-fit:contain}.universal-footer .footer-brand p{justify-self:auto!important;margin:0!important;font:300 16px/1.15 var(--display,quiche-sans,sans-serif)!important;letter-spacing:.045em;text-transform:uppercase;color:#fff!important}.universal-footer .footer-brand p span{display:block;margin-top:7px;font:400 8px/1.4 Montserrat,Arial,sans-serif;letter-spacing:.18em;color:#99a6ac}.universal-footer .footer-office>span{display:block;margin-bottom:11px;font:500 8px Montserrat,Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}.universal-footer address{margin:0 0 11px;font-style:normal;font-size:11px;line-height:1.6;color:#b0bbc0}.universal-footer .footer-office a{font-size:10px;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:4px}.universal-footer nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:13px 24px!important}.universal-footer nav a{font:400 8px Montserrat,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}.universal-footer .footer-legal{grid-column:1/-1;margin:0;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:7px;letter-spacing:.16em;text-transform:uppercase;color:#76858c}
@media(max-width:800px){.site-footer.universal-footer{padding:46px 22px 22px!important;grid-template-columns:1fr!important;gap:30px!important}.universal-footer nav{grid-template-columns:1fr 1fr!important}.universal-footer .footer-legal{grid-column:1!important}}

/* White footer prevents dark content sections from visually merging */

/* Body system trial: Montserrat for copy, menus, labels and actions. */
.menu-panel nav a{font-family:var(--display)!important;font-weight:300!important;letter-spacing:.008em!important;font-synthesis:none!important}
.menu-panel nav small,.menu-panel p,.menu-close,.menu-toggle,.kicker,.copy a,.contact-inner>a,.home-destinations__intro>a,.destination-card>span{font-family:var(--sans)!important}

/* Refined menu legibility: retain the fine typography with greater presence. */
.menu-panel nav a{font-size:clamp(36px,4.25vw,64px)!important;font-weight:300!important;line-height:1.02!important}
.menu-panel.open nav a:nth-child(5){animation-delay:.56s!important}
.menu-panel nav small{width:64px!important;font-size:11px!important;font-weight:400!important;letter-spacing:.14em!important}
.menu-panel p{font-size:11px!important;font-weight:400!important;letter-spacing:.16em!important}
.menu-close,.menu-toggle{font-size:10px!important;font-weight:400!important}
@media(max-width:800px){
  .menu-panel nav a{font-size:10vw!important}
  .menu-panel nav small{width:44px!important;font-size:10px!important}
  .menu-panel p{font-size:11px!important;line-height:1.5!important}
}

/* Homepage destination chapter. */
.home-destinations{padding:13vh 8vw 15vh;background:#fff;border-top:1px solid rgba(7,20,29,.12)}
.home-destinations__intro{display:grid;grid-template-columns:.7fr 1.35fr auto;gap:4vw;align-items:end;margin-bottom:8vh}
.home-destinations__intro h2{margin:0;font:300 clamp(46px,5.4vw,84px)/.94 var(--display);letter-spacing:.005em;text-transform:uppercase}
.home-destinations__intro>a{padding-bottom:12px;border-bottom:1px solid;font:400 11px var(--sans);letter-spacing:.17em;text-transform:uppercase;white-space:nowrap}
.home-destinations__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#07141d}
.destination-card{position:relative;min-height:78vh;overflow:hidden;color:#fff;background:#07141d;padding:5vw;display:flex;flex-direction:column;justify-content:flex-end}
.destination-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.8s cubic-bezier(.16,.72,.18,1),filter 1s ease;filter:saturate(.86) brightness(.72)}
.destination-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,13,21,.78),transparent 68%)}
.destination-card>*:not(img){position:relative;z-index:2}
.destination-card>span{font:400 10px var(--sans);letter-spacing:.18em}
.destination-card h3{margin:18px 0 12px;font:300 clamp(38px,4vw,66px)/.95 var(--display);text-transform:uppercase}
.destination-card p{margin:0;max-width:330px;font:300 16px/1.65 var(--sans)}
.destination-card:hover img{transform:scale(1.045);filter:saturate(.92) brightness(.78)}
@media(max-width:800px){.home-destinations{padding:10vh 22px}.home-destinations__intro{display:block;margin-bottom:6vh}.home-destinations__intro h2{font-size:11vw;margin:3vh 0 4vh}.home-destinations__intro>a{display:inline-block}.home-destinations__grid{grid-template-columns:1fr}.destination-card{min-height:68svh;padding:34px 24px}.destination-card h3{font-size:12vw}}

/* Product hierarchy: day charter remains the principal homepage experience. */
.charter.day{min-height:112svh}
.charter.day .media{min-height:112svh}
.charter .copy h2{font-size:clamp(54px,6.4vw,96px)}
@media(max-width:800px){
  .charter.day,.charter.day .media{min-height:auto}
}

/* Rebuilt cinematic signature chapter — isolated from every legacy approach rule. */
.signature-scene{position:relative!important;height:100svh!important;min-height:720px!important;overflow:hidden!important;background-image:url('assets/superyacht-charter.png')!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important;background-color:#07141d!important;color:#fff!important;isolation:isolate!important}
.signature-scene::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(2,12,20,.05) 0%,rgba(2,12,20,.02) 46%,rgba(2,12,20,.22) 100%);pointer-events:none}
.signature-scene::after{content:"";position:absolute;z-index:3;left:8vw;bottom:8vh;width:0;height:1px;background:rgba(255,255,255,.78);transition:width 1.6s .75s cubic-bezier(.16,.72,.18,1);pointer-events:none}
.signature-scene:has(.impact-title.in-view)::after{width:min(240px,18vw)}
.signature-wash{position:absolute!important;inset:0!important;z-index:2!important;background:linear-gradient(90deg,rgba(2,12,20,.56) 0%,rgba(2,12,20,.2) 43%,rgba(2,12,20,0) 74%)!important;pointer-events:none!important}
.signature-copy{position:absolute!important;z-index:4!important;left:8vw!important;right:8vw!important;top:50%!important;transform:translateY(-48%)!important;background:transparent!important;color:#fff!important;overflow:visible!important}
.signature-copy>.kicker{display:block;color:rgba(255,255,255,.88);font-size:10px;letter-spacing:.38em;text-transform:uppercase}
.signature-copy h2{margin:3.2vh 0 0!important;max-width:1050px!important;font-family:var(--display)!important;font-size:clamp(54px,6.6vw,100px)!important;font-weight:300!important;line-height:.88!important;letter-spacing:-.018em!important;color:#fff!important;text-transform:uppercase!important;background:transparent!important;text-wrap:balance}
.signature-copy .impact-title>span{display:block;width:max-content;max-width:100%;clip-path:inset(0 100% 0 0);transform:translateY(28px);opacity:0;transition:clip-path 1.35s cubic-bezier(.16,.72,.18,1),transform 1.35s cubic-bezier(.16,.72,.18,1),opacity .65s ease}
.signature-copy .impact-title.in-view>span{clip-path:inset(0);transform:none;opacity:1}
.signature-copy .impact-title>span:nth-child(2){transition-delay:.2s}
.signature-rule{display:block;width:52px;height:1px;margin-top:4.5vh;background:rgba(255,255,255,.8);transform-origin:left;transform:scaleX(0);transition:transform 1.2s 1s cubic-bezier(.16,.72,.18,1)}
.signature-copy:has(.impact-title.in-view) .signature-rule{transform:scaleX(1)}
@media(max-width:800px){.signature-scene{height:100svh!important;min-height:620px!important;background-position:58% center!important}.signature-copy{left:22px!important;right:22px!important}.signature-copy h2{font-size:12vw!important;line-height:.92!important}.signature-scene::after{left:22px;bottom:7vh}.signature-scene:has(.impact-title.in-view)::after{width:34vw}}

/* Isolated approach scene: one photographic layer, one transform, no global image effects. */
.approach-visual{position:sticky!important;top:0!important;height:100svh!important;display:grid!important;grid-template:1fr/1fr!important;overflow:hidden!important;background:#07141d!important;contain:paint!important}
.approach-scene-image{position:absolute!important;inset:-1.5%!important;width:103%!important;height:103%!important;z-index:0!important;background-image:url('assets/superyacht-charter.png')!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;transform:translate3d(0,0,0) scale(1.01);transform-origin:center!important;will-change:transform}
.approach-shade{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:1!important;background:linear-gradient(90deg,rgba(2,12,20,.5),rgba(2,12,20,.06) 65%)!important}
.approach-title{grid-area:1/1!important;position:relative!important;z-index:2!important;align-self:center!important;padding:0 8vw!important}
.hero-wordmark strong{transition-duration:.75s!important}
.hero-wordmark span{transition-duration:.7s!important}

/* Safari-safe photographic plate. Animation can never replace or crop this layer. */
.approach-backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;z-index:0!important;opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}
.approach-water-camera{z-index:1!important;background:transparent!important}
.approach-water-camera .water-base{opacity:0!important}
.approach-water-camera .water-canvas{opacity:.16!important;background:transparent!important}
.approach-water-camera .water-focus{opacity:.2!important}
.approach-visual{background:#07141d!important;contain:paint!important}

/* Final viewport guarantees. */
.approach-visual{grid-template:1fr/1fr!important}
.approach-water-camera{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important}
.approach-water-camera .water-base{opacity:1!important;visibility:visible!important;z-index:0!important}
.approach-water-camera .water-canvas{opacity:.2!important;z-index:1!important;mix-blend-mode:soft-light!important}
.approach-water-camera .water-focus{z-index:2!important}
.approach-shade{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:3!important}
.approach-title{grid-area:1/1!important;position:relative!important;z-index:4!important}
.hero-flight-active .hero-shade{transition:background .9s cubic-bezier(.2,.7,.2,1)!important}
.hero-flight-active.hero-title-visible .hero-shade{background:radial-gradient(ellipse at 50% 46%,rgba(2,12,20,.04) 0 18%,rgba(2,12,20,.22) 56%,rgba(2,12,20,.64) 100%)!important}
.hero-flight-active.hero-title-visible .hero-wordmark strong{transition-delay:0s!important}
.hero-flight-active.hero-title-visible .hero-wordmark span{transition-delay:.08s!important}

/* Full-bleed approach safety layer: the photograph always owns the frame. */
.approach-visual{grid-template:1fr/1fr!important}
.approach-water-camera{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;background:#07141d;overflow:hidden}
.approach-water-camera .water-base{opacity:1!important;visibility:visible!important;z-index:0!important}
.approach-water-camera .water-canvas{opacity:.2!important;z-index:1!important;mix-blend-mode:soft-light}
.approach-water-camera .water-focus{z-index:2!important}
.approach-shade{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:3!important;background:linear-gradient(90deg,rgba(3,13,21,.48),rgba(3,13,21,.04) 66%)!important}
.approach-title{grid-area:1/1!important;position:relative!important;z-index:4!important}

/* Identity arrives during the flight, not after it. */
.hero-flight-active .hero-shade{transition:background .9s cubic-bezier(.2,.7,.2,1)!important}
.hero-flight-active.hero-title-visible .hero-shade{background:radial-gradient(ellipse at 50% 46%,rgba(2,12,20,.04) 0 18%,rgba(2,12,20,.22) 56%,rgba(2,12,20,.64) 100%)!important}
.hero-flight-active.hero-title-visible .hero-wordmark strong{transition-delay:0s!important}
.hero-flight-active.hero-title-visible .hero-wordmark span{transition-delay:.08s!important}

/* Centred cinematic identity and refined editorial pacing. */
header{grid-template-columns:1fr!important;background:transparent!important;backdrop-filter:none!important;color:#fff;padding:18px 4vw!important}
.site-entered header{opacity:1!important;transform:none!important;pointer-events:auto!important}
header.header-visible{background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px)!important;color:#07141d;box-shadow:0 1px 0 rgba(7,20,29,.06)}
.monogram-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px}
.monogram-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .6s ease}
.monogram-black{opacity:0}.monogram-white{opacity:1}
header.header-visible .monogram-black{opacity:1}header.header-visible .monogram-white{opacity:0}
.header-actions{justify-self:end;margin-left:auto}.menu-toggle{color:inherit}.enquire{display:none!important}

.hero-camera{backface-visibility:hidden;transform:translateZ(0);contain:paint;will-change:transform}
.entry-flight .hero-camera{animation:centredLuxuryFlight 5.8s both!important}
@keyframes centredLuxuryFlight{
  0%{transform:translateZ(0) scale(1.68) rotate(-126deg);animation-timing-function:cubic-bezier(.1,.7,.14,1)}
  24%{transform:translateZ(0) scale(1.42) rotate(-31deg);animation-timing-function:cubic-bezier(.2,.08,.18,1)}
  70%{transform:translateZ(0) scale(1.14) rotate(0deg);animation-timing-function:cubic-bezier(.16,.72,.18,1)}
  100%{transform:translateZ(0) scale(1.28) rotate(0deg)}
}
.hero-copy{bottom:10vh!important}
.hero-wordmark{display:flex;flex-direction:column;align-items:center;color:#fff;text-align:center;text-shadow:0 2px 28px rgba(2,12,20,.28)}
.hero-wordmark strong{font:300 clamp(42px,5.6vw,82px)/1 var(--display);letter-spacing:.2em;margin-left:.2em}
.hero-wordmark span{margin-top:15px;font:300 11px/1 var(--sans);letter-spacing:.6em;margin-left:.6em}

.opening{min-height:78svh!important;padding:12vh 8vw!important}
.opening .kicker{margin-bottom:3.5vh!important}
.opening h2{max-width:900px!important;font-size:clamp(48px,5.8vw,88px)!important;line-height:.94!important;letter-spacing:.005em!important}
.opening p{margin-top:4vh!important;max-width:490px;font-size:17px!important;line-height:1.75!important}
.opening h2 .letter-word{margin-right:.08em}
.opening h2 .letter{transform:translateY(.32em);filter:blur(3px);transition-duration:.72s,.9s,.7s}

.contact h2{max-width:980px!important;font-size:clamp(54px,6.8vw,104px)!important;line-height:.92!important}

@media(max-width:800px){
  header{padding:13px 20px!important}.monogram-logo{width:43px;height:43px}.menu-toggle span{display:none}
  .hero-wordmark strong{font-size:12vw}.hero-wordmark span{font-size:8px;letter-spacing:.42em;margin-left:.42em}
  .opening{min-height:72svh!important;padding:10vh 22px!important}.opening h2{font-size:12vw!important}.opening p{font-size:16px!important;margin-top:3.5vh!important}
  .contact h2{font-size:12.5vw!important}
}

/* Final typography correction: clean Quiche rendering, no artificial outlines. */
.hero h1,.opening h2,.copy h2,.cinematic h2,.destination-intro h2,
.approach-title h2,.contact h2,.menu-panel nav a,.logo strong,
.entry-mark strong,.index,.destination-counter span,.approach-details li span{
  font-family:"quiche-sans","Helvetica Neue",Arial,sans-serif;
  font-weight:400;
  -webkit-text-stroke:0 transparent;
  text-shadow:none;
  font-synthesis:none;
}
.hero h1,.opening h2,.copy h2,.cinematic h2,.destination-intro h2,
.approach-title h2,.contact h2{
  letter-spacing:-.045em;
  line-height:.88;
}
.hero h1{font-size:clamp(76px,8.8vw,148px);opacity:.96}
.opening h2{font-size:clamp(66px,8.2vw,132px);color:#13232d}
.opening h2 em,.copy h2 em,.destination-intro h2 em,.contact h2 em{color:#75848a}
.copy h2{font-size:clamp(60px,6.9vw,108px);color:#13232d}
.cinematic h2{font-size:clamp(58px,7.4vw,112px);max-width:900px;color:#fff;opacity:.95;text-shadow:0 2px 22px rgba(2,12,20,.16)}
.destination-intro h2{font-size:clamp(58px,7vw,108px);color:#13232d}
.approach-title h2{font-size:clamp(58px,7vw,108px);max-width:920px;color:#fff;opacity:.95;text-shadow:0 2px 22px rgba(2,12,20,.16)}
.contact h2{font-size:clamp(68px,8.6vw,138px);color:#13232d}
.contact h2,.contact h2 em{padding-bottom:.16em}
.contact h2{margin-bottom:calc(30px - .16em)}
.contact h2 em{display:inline-block;padding-left:.035em;margin-left:-.035em}
.menu-panel nav a{font-size:clamp(40px,5.2vw,76px);line-height:1.05;letter-spacing:-.025em;color:#fff}
.cinematic-copy{max-width:min(1050px,84vw)}
.approach-title{max-width:min(1050px,84vw)}
.cinematic-wash{background:linear-gradient(90deg,rgba(3,13,21,.44),rgba(3,13,21,.06) 62%)}
.approach-shade{background:linear-gradient(90deg,rgba(3,13,21,.5),rgba(3,13,21,.04) 68%)}
.logo strong,.entry-mark strong{opacity:1}
.motion.kicker,.motion.index,.motion.destination-note{transform:translateX(-32px);filter:none;transition-duration:1.05s}
.motion.kicker.in-view,.motion.index.in-view,.motion.destination-note.in-view{transform:none}
.motion.kicker.out-view,.motion.index.out-view,.motion.destination-note.out-view{transform:translateX(20px);opacity:.18}
.copy p.motion,.destination-intro p.motion,.contact p.motion,.approach-details p.motion{transition-delay:.16s}
.copy a.motion,.contact>a.motion{transition-delay:.28s}
@media(max-width:800px){
  .hero h1{font-size:18vw}
  .opening h2{font-size:15vw}
  .copy h2{font-size:16.5vw}
  .cinematic h2,.approach-title h2{font-size:12.5vw}
  .destination-intro h2{font-size:13.5vw}
  .contact h2{font-size:16vw}
  .menu-panel nav a{font-size:11vw}
}

/* Refined scale, full-bleed hero chrome and animated menu. */
header{opacity:0;transform:translateY(-100%);pointer-events:none;transition:opacity .75s ease,transform .85s cubic-bezier(.2,.75,.18,1),padding .45s,background .45s,color .45s}
.site-entered header{animation:none!important}
header.header-visible{opacity:1;transform:none;pointer-events:auto}
.hero h1{font-size:clamp(66px,7.4vw,122px);opacity:.94}
.opening h2{font-size:clamp(56px,6.8vw,108px);color:#263740}
.opening h2 em,.copy h2 em,.destination-intro h2 em,.contact h2 em{color:#89969a}
.copy h2{font-size:clamp(52px,5.9vw,92px);color:#263740}
.cinematic h2{font-size:clamp(50px,6.2vw,94px);max-width:800px;opacity:.92}
.destination-intro h2{font-size:clamp(50px,6vw,90px);color:#263740}
.approach-title h2{font-size:clamp(50px,6vw,92px);max-width:820px;opacity:.92}
.contact h2{font-size:clamp(56px,7vw,110px);color:#263740}
.menu-panel{transition:.7s cubic-bezier(.2,.7,.2,1)}
.menu-panel nav a{font-family:var(--sans);font-weight:300;font-size:clamp(36px,4.5vw,66px);line-height:1.08;letter-spacing:.025em;opacity:0;transform:translateY(28px);filter:blur(3px)}
.menu-panel.open nav a{animation:menuItemIn .85s cubic-bezier(.2,.75,.18,1) both}
.menu-panel.open nav a:nth-child(2){animation-delay:.08s}
.menu-panel.open nav a:nth-child(3){animation-delay:.16s}
.menu-panel.open nav a:nth-child(4){animation-delay:.24s}
@keyframes menuItemIn{to{opacity:1;transform:none;filter:none}}
@media(max-width:800px){
  .hero h1{font-size:15.5vw}
  .opening h2{font-size:13vw}
  .copy h2{font-size:14.5vw}
  .cinematic h2,.approach-title h2{font-size:11vw}
  .destination-intro h2{font-size:12vw}
  .contact h2{font-size:14vw}
  .menu-panel nav a{font-size:9.5vw}
}

/* Luxury motion refinement: slower entrances and softly damped scroll imagery. */
.hero-visual>img,.media img,.destination-image img,.cinematic>img,.approach-visual>img{
  transition:transform .42s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.motion{transition-duration:1.35s;transition-timing-function:cubic-bezier(.16,.72,.18,1)}
.motion-title{transition-duration:1.55s;filter:none;transform:translateY(40px)}
.motion-image{transition:clip-path 1.9s cubic-bezier(.16,.72,.18,1),opacity 1.35s ease!important}
header{transition:opacity 1s ease,transform 1.15s cubic-bezier(.16,.72,.18,1),padding .6s,background .6s,color .6s}
.menu-panel{transition:opacity 1s ease,transform 1.1s cubic-bezier(.16,.72,.18,1),visibility 1s}
.menu-panel nav a{font-family:var(--display);font-weight:400;letter-spacing:-.018em;transform:translateY(22px);filter:none}
.menu-panel.open nav a{animation-duration:1.2s;animation-timing-function:cubic-bezier(.16,.72,.18,1)}
.menu-panel.open nav a:nth-child(2){animation-delay:.14s}
.menu-panel.open nav a:nth-child(3){animation-delay:.28s}
.menu-panel.open nav a:nth-child(4){animation-delay:.42s}
.hero h1{max-width:1100px;line-height:.9}
@media(prefers-reduced-motion:reduce){.hero-visual>img,.media img,.destination-image img,.cinematic>img,.approach-visual>img{transition:none}}

/* Stable photographic reveals: opacity only, with no competing scroll transforms. */
.hero-visual>img,.media img,.destination-image img,.cinematic>img,.approach-visual>img{
  transition:none;
}
.media img,.destination-image img{
  transform:scale(1.01);
}
.cinematic>img,.approach-visual>img{
  transform:none;
}
.image-fade{
  opacity:0;
  transition:opacity 1.55s cubic-bezier(.16,.72,.18,1)!important;
  will-change:opacity;
}
.image-fade.in-view,.image-fade.out-view{
  opacity:1;
}
@media(prefers-reduced-motion:reduce){
  .image-fade{opacity:1;transition:none!important}
}

/* Editorial restraint and seamless orbital chapters. */
.gateway-center::before{display:none!important}
.hero{height:190svh}
.hero-visual{position:sticky;top:0;height:100svh;overflow:hidden;background:#07141d}
.hero-camera{inset:-38%;transform-origin:50% 49%}
.hero-copy{left:0;right:0;top:auto;bottom:11vh;text-align:center;opacity:0;z-index:5;padding:0 6vw;pointer-events:none}
.hero-copy h1{margin:0 auto;font-size:clamp(54px,7.2vw,112px);line-height:.88;letter-spacing:-.03em;text-transform:uppercase;text-shadow:0 2px 30px rgba(0,0,0,.24)}
.hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.48),transparent 47%)}
.hero-scroll{display:none!important}
.entry-flight .hero-camera{transform-origin:50% 49%}
@keyframes droneFlight{
  0%{transform:scale(1.68) rotate(-145deg);filter:blur(8px);animation-timing-function:cubic-bezier(.08,.76,.12,1)}
  20%{transform:scale(1.42) rotate(-38deg);filter:blur(1.4px);animation-timing-function:cubic-bezier(.22,.06,.2,1)}
  78%{transform:scale(1.25) rotate(-13deg);filter:blur(.25px);animation-timing-function:cubic-bezier(.14,.84,.18,1)}
  100%{transform:scale(1.12) rotate(0);filter:blur(0)}
}
.site-entered .hero-copy{animation:none}

.opening{min-height:112svh;padding:15vh 8vw;display:grid;place-items:center;text-align:center}
.opening-statement{width:min(1180px,100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;margin:0}
.opening .kicker{margin-bottom:5vh}
.opening h2{margin:0;max-width:1100px;font-size:clamp(62px,8vw,128px);line-height:.9;text-transform:uppercase;color:#07141d}
.opening p{width:min(520px,100%);margin:6vh auto 0;font-size:18px;line-height:1.7;color:#536068}
.letter-word{display:inline-block;white-space:nowrap}
.letter{display:inline-block;opacity:0;transform:translateY(.58em);filter:blur(7px);transition:opacity .8s cubic-bezier(.16,.72,.18,1),transform 1.05s cubic-bezier(.16,.72,.18,1),filter .9s ease;transition-delay:var(--letter-delay)}
.letter-title.in-view .letter{opacity:1;transform:none;filter:blur(0)}

.cinematic{height:175svh;background:#07141d;overflow:visible}
.cinematic-pin{isolation:isolate}
.fleet-water-camera{position:absolute;inset:-18%;z-index:0;transform-origin:50% 50%;will-change:transform}
.fleet-water-camera .water-canvas,.fleet-water-camera .water-base,.fleet-water-camera .water-focus{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fleet-water-camera .water-base{z-index:0}
.fleet-water-camera .water-canvas{z-index:1;opacity:0;transition:opacity 1.4s ease}
.fleet-water-camera .water-focus{z-index:2;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 15% 42% at 50% 50%,#000 0 50%,rgba(0,0,0,.94) 68%,transparent 100%);mask-image:radial-gradient(ellipse 15% 42% at 50% 50%,#000 0 50%,rgba(0,0,0,.94) 68%,transparent 100%)}
.fleet-water-camera.water-ready .water-canvas{opacity:1}
.fleet-water-camera.water-ready .water-base{opacity:0;transition:opacity 1.4s ease}
.cinematic-wash{z-index:2;background:linear-gradient(90deg,rgba(2,12,20,.5),rgba(2,12,20,.03) 64%)}
.cinematic-copy{z-index:3}

.approach{height:215svh;overflow:hidden}
.approach-water-camera{inset:-16%;transform-origin:50% 31%}
.approach-title{align-self:center;padding:0 8vw}
.approach-details{position:absolute;left:0;right:0;bottom:0;min-height:58svh;margin:0;padding:11vh 8vw 12vh;background:#fff;color:#07141d}

.contact{min-height:105svh;padding:14vh 8vw;text-align:center;display:grid;place-items:center}
.contact-inner{width:min(1180px,100%);display:flex;flex-direction:column;align-items:center}
.contact h2{max-width:1080px;margin:4vh auto 5vh;font-size:clamp(58px,7.6vw,116px);line-height:.9;text-transform:uppercase;color:#07141d}
.contact p{margin:0 auto;max-width:540px}
.contact>a,.contact-inner>a{margin-top:4vh}
.contact::before{content:"";position:absolute;left:50%;top:0;width:1px;height:9vh;background:#cbd0d1;transform-origin:top;transform:scaleY(0);transition:transform 1.2s cubic-bezier(.16,.72,.18,1)}
.contact:has(.in-view)::before{transform:scaleY(1)}

@media(max-width:800px){
  .hero{height:165svh}.hero-camera{inset:-46%}.hero-copy{bottom:12vh}.hero-copy h1{font-size:13vw}
  .opening{min-height:100svh;padding:13vh 22px}.opening h2{font-size:14vw}.opening p{font-size:16px}
  .fleet-water-camera{inset:-28%}.cinematic{height:145svh}
  .approach{height:190svh}.approach-water-camera{inset:-24%}.approach-title{padding:0 22px}.approach-details{min-height:68svh;padding:9vh 22px 11vh}
  .contact{padding:13vh 22px}.contact h2{font-size:13vw}
}
@media(prefers-reduced-motion:reduce){
  .hero{height:100svh}.hero-visual{position:relative}.hero-camera,.fleet-water-camera,.approach-water-camera{transform:none!important}
  .hero-copy{opacity:1}.letter{opacity:1;transform:none;filter:none}
}

/* Finer Quiche treatment for editorial headings and the navigation. */
.hero h1,.opening h2,.copy h2,.cinematic h2,.destination-intro h2,
.approach-title h2,.contact h2,.menu-panel nav a{
  font-family:"quiche-sans","Helvetica Neue",Arial,sans-serif;
  font-weight:300;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.opening h2,.copy h2,.destination-intro h2,.contact h2{
  color:#536169;
}
.opening h2 em,.copy h2 em,.destination-intro h2 em,.contact h2 em{
  color:#929da1;
}
.cinematic h2,.approach-title h2,.hero h1{
  opacity:.88;
}
.menu-panel nav a{
  font-weight:300;
  color:rgba(255,255,255,.86);
  letter-spacing:-.012em;
}

/* Cinematic production pass */
.gateway.entered{transition:opacity 1.35s cubic-bezier(.16,.72,.18,1),visibility 1.35s}
.gateway.entered>img{transform:scale(1.075);filter:blur(1.5px)}
.site-entered .hero-visual>img{animation:heroResolve 2.2s cubic-bezier(.16,.72,.18,1) both}
.site-entered .hero-shade{animation:shadeResolve 2.4s cubic-bezier(.16,.72,.18,1) both}
@keyframes heroResolve{0%{clip-path:inset(0 0 100% 0);filter:saturate(.72) contrast(1.08) blur(5px)}100%{clip-path:inset(0);filter:saturate(.9) contrast(1.04) blur(0)}}
@keyframes shadeResolve{0%{opacity:0}100%{opacity:1}}

.cinematic-frame{position:relative;isolation:isolate;overflow:hidden}
.cinematic-frame::after{content:"";position:absolute;z-index:8;inset:-2px;background:#f7f7f4;pointer-events:none;transition:transform 1.75s cubic-bezier(.16,.72,.18,1)}
.cinematic-frame.reveal-left::after{transform-origin:right;transform:scaleX(1)}
.cinematic-frame.reveal-right::after{transform-origin:left;transform:scaleX(1)}
.cinematic-frame.scene-in::after{transform:scaleX(0)}
.cinematic-frame img{backface-visibility:hidden;transform-origin:center;will-change:transform,opacity}

.cinematic{height:155svh;position:relative;display:block;background:#07141d}
.cinematic-pin{position:sticky;top:0;height:100svh;display:grid;overflow:hidden;color:#fff;background:#07141d}
.cinematic-pin>img,.cinematic-pin>.cinematic-wash,.cinematic-pin>.cinematic-copy,.cinematic-pin>.film-edge{grid-area:1/1}
.cinematic-pin>img{width:100%;height:100%;object-fit:cover;position:relative}
.cinematic-pin>.cinematic-wash{position:relative;z-index:2}
.cinematic-pin>.cinematic-copy{position:relative;z-index:3;left:auto;bottom:auto;align-self:end;padding:0 0 9vh 8vw}
.film-edge{position:relative;z-index:4;pointer-events:none;box-shadow:inset 0 0 120px rgba(1,9,15,.16);background:linear-gradient(90deg,rgba(255,255,255,.035),transparent 18%,transparent 82%,rgba(1,9,15,.05));mix-blend-mode:soft-light}

.image-fade{transition:opacity 1.8s cubic-bezier(.16,.72,.18,1)!important}
.motion{transition-duration:1.6s}
.motion-title{transition-duration:1.85s}
.destination-words span{transition:opacity .85s cubic-bezier(.16,.72,.18,1),transform .95s cubic-bezier(.16,.72,.18,1)}

@media(max-width:800px){
  .cinematic{height:120svh}
  .cinematic-pin>.cinematic-copy{padding:0 22px 12vh}
  .cinematic-frame::after{transition-duration:1.25s}
}
@media(prefers-reduced-motion:reduce){
  .site-entered .hero-visual>img,.site-entered .hero-shade{animation:none}
  .cinematic-frame::after{display:none}
  .cinematic{height:auto}.cinematic-pin{position:relative;height:auto;min-height:75svh}
}

/* Living Aegean hero: moving water beneath a sharply held yacht. */
.hero{height:230svh}
.hero-camera{position:absolute;inset:-10%;z-index:0;overflow:hidden;transform-origin:50% 49%;will-change:transform}
.hero-water,.hero-fallback,.hero-focus{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-water{z-index:1;opacity:0;transition:opacity 1.4s ease}
.hero-fallback{z-index:0;filter:saturate(.9) contrast(1.04)}
.hero-focus{z-index:2;pointer-events:none;filter:saturate(.92) contrast(1.04);-webkit-mask-image:radial-gradient(ellipse 8% 26% at 50% 49%,#000 0 52%,rgba(0,0,0,.96) 63%,rgba(0,0,0,.55) 77%,transparent 100%);mask-image:radial-gradient(ellipse 8% 26% at 50% 49%,#000 0 52%,rgba(0,0,0,.96) 63%,rgba(0,0,0,.55) 77%,transparent 100%)}
.water-ready .hero-water{opacity:1}
.water-ready .hero-fallback{opacity:0;transition:opacity 1.4s ease}
.hero-shade{z-index:2}.hero-copy,.hero-scroll{z-index:4}
.site-entered .hero-camera{animation:cameraResolve 2.6s cubic-bezier(.16,.72,.18,1) both}
.site-entered .hero-focus{animation:yachtResolve 2.35s .2s cubic-bezier(.16,.72,.18,1) both}
@keyframes cameraResolve{0%{clip-path:inset(0 0 100% 0);filter:blur(7px)}100%{clip-path:inset(0);filter:blur(0)}}
@keyframes yachtResolve{0%{opacity:0;filter:saturate(.65) blur(4px)}100%{opacity:1;filter:saturate(.92) contrast(1.04) blur(0)}}
@media(max-width:800px){.hero{height:175svh}.hero-camera{inset:-7%}.hero-focus{-webkit-mask-image:radial-gradient(ellipse 13% 24% at 50% 49%,#000 0 50%,rgba(0,0,0,.9) 67%,transparent 100%);mask-image:radial-gradient(ellipse 13% 24% at 50% 49%,#000 0 50%,rgba(0,0,0,.9) 67%,transparent 100%)}}
@media(prefers-reduced-motion:reduce){.hero{height:145svh}.hero-camera{inset:0;transform:none!important}.hero-water{display:none}.hero-focus{display:none}.hero-fallback{opacity:1}.site-entered .hero-camera,.site-entered .hero-focus{animation:none}}

/* Extreme entry handoff and seamless pinned-scene exit. */
.gateway{transition:opacity 1.85s cubic-bezier(.16,.72,.18,1),visibility 1.85s}
.gateway.entered>img{transform:scale(1.42) rotate(-6deg);filter:blur(8px) saturate(.75);transition:transform 2.25s cubic-bezier(.16,.72,.18,1),filter 1.6s ease,opacity 1.8s ease}
.gateway.entered .gateway-center{opacity:0;transform:scale(.88);filter:blur(8px);transition:opacity .65s ease,transform 1.2s cubic-bezier(.16,.72,.18,1),filter .8s ease}
.site-entered .hero-camera{animation:extremeCameraResolve 2.8s cubic-bezier(.16,.72,.18,1) both}
@keyframes extremeCameraResolve{0%{clip-path:inset(0 0 100% 0);filter:blur(12px)}100%{clip-path:inset(0);filter:blur(0)}}
.cinematic{margin-bottom:-55svh}
.destinations{position:relative;z-index:5;box-shadow:0 -45px 100px rgba(4,17,26,.14)}

/* Second living-water orbit. */
.destination-image{background:#07141d}
.destination-water-camera{position:absolute;inset:-8%;transform-origin:50% 48%;will-change:transform}
.destination-water-camera .water-canvas,.destination-water-camera .water-base,.destination-water-camera .water-focus{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.destination-water-camera .water-canvas{z-index:1;opacity:0;transition:opacity 1.5s ease}
.destination-water-camera .water-base{z-index:0}
.destination-water-camera .water-focus{z-index:2;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 13% 38% at 50% 49%,#000 0 50%,rgba(0,0,0,.94) 67%,transparent 100%);mask-image:radial-gradient(ellipse 13% 38% at 50% 49%,#000 0 50%,rgba(0,0,0,.94) 67%,transparent 100%)}
.destination-water-camera.water-ready .water-canvas{opacity:1}
.destination-water-camera.water-ready .water-base{opacity:0;transition:opacity 1.5s ease}
@media(max-width:800px){.cinematic{margin-bottom:-20svh}.destination-water-camera{inset:-5%}.destination-water-camera .water-focus{-webkit-mask-image:radial-gradient(ellipse 19% 36% at 50% 49%,#000 0 48%,rgba(0,0,0,.9) 66%,transparent 100%);mask-image:radial-gradient(ellipse 19% 36% at 50% 49%,#000 0 48%,rgba(0,0,0,.9) 66%,transparent 100%)}}
@media(prefers-reduced-motion:reduce){.cinematic{margin-bottom:0}.destination-water-camera{inset:0;transform:none!important}.destination-water-camera .water-canvas,.destination-water-camera .water-focus{display:none}.destination-water-camera .water-base{opacity:1}.gateway.entered>img{transform:none;filter:none}}

/* Refined aerial-flight direction: fast rotation, slow-motion settle. */
.gateway-shade{background:linear-gradient(180deg,rgba(2,10,16,.46),rgba(2,10,16,.62))}
.gateway-center{gap:18px}
.gateway-center::before{content:"PRIVATE YACHT CHARTER  ·  THE CYCLADES";font:300 10px/1 var(--sans);letter-spacing:.34em;margin:0 0 12px .34em;color:rgba(255,255,255,.82)}
.entry-mark{width:min(520px,78vw);padding:44px 54px 40px;background:rgba(3,14,22,.14);border-color:rgba(255,255,255,.92);backdrop-filter:blur(4px)}
.entry-mark strong{font-size:clamp(44px,5.4vw,78px);font-weight:300;letter-spacing:.18em;margin-left:.18em}
.entry-mark span{font-size:10px;letter-spacing:.56em;margin-left:.56em;margin-top:16px}
.enter-site{width:min(520px,78vw);padding:18px 22px;background:rgba(3,14,22,.38);border-color:rgba(255,255,255,.92)}
.gateway{transition:opacity .95s cubic-bezier(.16,.72,.18,1),visibility .95s}
.gateway.entered>img{transform:scale(1.12);filter:blur(3px) saturate(.82);opacity:.2;transition:transform 1.2s cubic-bezier(.16,.72,.18,1),filter .8s ease,opacity .75s ease}
.gateway.entered .gateway-center{opacity:0;transform:scale(.94);filter:blur(5px);transition:opacity .4s ease,transform .7s ease,filter .55s ease}
.hero-camera{inset:-22%;transform-origin:50% 49%}
.entry-flight .hero-camera{animation:droneFlight 4.4s both}
.flight-complete .hero-camera{animation:none!important}
@keyframes droneFlight{
  0%{transform:scale(1.48) rotate(-112deg);filter:blur(10px);animation-timing-function:cubic-bezier(.08,.7,.16,1)}
  20%{transform:scale(1.23) rotate(-19deg);filter:blur(2px);animation-timing-function:cubic-bezier(.14,.62,.12,1)}
  52%{transform:scale(1.1) rotate(5deg);filter:blur(.5px);animation-timing-function:cubic-bezier(.18,.72,.2,1)}
  100%{transform:scale(1.04) rotate(0);filter:blur(0)}
}
.site-entered .hero-copy{animation:flightCopyIn 1.45s 3.15s both}
.site-entered .hero-scroll{animation:flightCopyIn 1.35s 3.55s both}
@keyframes flightCopyIn{from{opacity:0;transform:translateY(38px);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}

/* Camera entrances replace directional slide panels. */
.cinematic-frame::after{display:none!important}
.cinematic-frame{opacity:.14;filter:blur(10px) saturate(.72);transition:opacity 1.5s cubic-bezier(.16,.72,.18,1),filter 1.8s cubic-bezier(.16,.72,.18,1)}
.cinematic-frame.scene-in{opacity:1;filter:blur(0) saturate(1)}

/* Stronger monochrome editorial typography with selective capitals. */
.opening h2,.copy h2,.destination-intro h2,.contact h2,
.opening h2 em,.copy h2 em,.destination-intro h2 em,.contact h2 em{color:#07141d}
.copy h2,.destination-intro h2,.cinematic h2,.approach-title h2{text-transform:uppercase;letter-spacing:-.025em}
.menu-panel nav a{text-transform:uppercase;letter-spacing:.015em}
.kicker,.cinematic-copy>span,.approach-title>span{font-weight:400;letter-spacing:.28em}
@media(max-width:800px){.hero-camera{inset:-18%}.gateway-center::before{font-size:8px;letter-spacing:.2em;margin-left:.2em}.entry-mark{padding:34px 24px 31px}.entry-mark strong{font-size:38px}.entry-mark span{letter-spacing:.38em;margin-left:.38em}.entry-flight .hero-camera{animation-duration:3.8s}}
@media(prefers-reduced-motion:reduce){.entry-flight .hero-camera{animation:none}.site-entered .hero-copy,.site-entered .hero-scroll{animation:none}}

/* Continuous cinematic journey: one direction, full-screen chapters, living horizon. */
em{font-style:normal!important}
.entry-flight .hero-camera{animation:droneFlight 4.4s both!important}
@keyframes droneFlight{
  0%{transform:scale(1.52) rotate(-145deg);filter:blur(9px);animation-timing-function:cubic-bezier(.08,.76,.12,1)}
  20%{transform:scale(1.25) rotate(-38deg);filter:blur(1.8px);animation-timing-function:cubic-bezier(.22,.06,.2,1)}
  78%{transform:scale(1.1) rotate(-13deg);filter:blur(.35px);animation-timing-function:cubic-bezier(.14,.84,.18,1)}
  100%{transform:scale(1.04) rotate(0);filter:blur(0)}
}

.charters{border:0;background:#07141d}
.charter,.charter.multi{position:relative;display:block;min-height:150svh;overflow:visible;color:#fff;background:#07141d}
.charter .media{position:sticky;top:0;width:100%;height:100svh;overflow:hidden;background:#07141d}
.charter .media img{width:100%;height:100%;object-fit:cover;transform-origin:50% 50%}
.charter .copy,.charter.multi .copy{position:absolute;z-index:3;inset:0 0 auto 0;width:100%;height:100svh;padding:0 8vw 10vh;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;background:linear-gradient(90deg,rgba(2,12,20,.7),rgba(2,12,20,.12) 58%,transparent 82%);pointer-events:none}
.charter.multi .copy{background:linear-gradient(90deg,rgba(2,12,20,.66),rgba(2,12,20,.1) 62%,transparent 84%)}
.charter .copy>*{pointer-events:auto}
.charter .copy h2,.charter .copy h2 em{color:#fff;margin:20px 0 18px;font-size:clamp(56px,6.4vw,98px);line-height:.88}
.charter .copy p{max-width:430px;margin:0;color:rgba(255,255,255,.88)}
.charter .index{top:auto;right:8vw;bottom:9vh;color:rgba(255,255,255,.52)}
.charter .kicker{color:rgba(255,255,255,.82)}

.cinematic{margin-bottom:0;height:150svh}
.cinematic-pin>img{transform-origin:50% 46%}
.destinations{box-shadow:none}

.approach{height:175svh;position:relative;background:#07141d;color:#fff}
.approach-visual{position:sticky;top:0;height:100svh;display:grid;overflow:hidden;background:#07141d}
.approach-water-camera,.approach-shade,.approach-title{grid-area:1/1}
.approach-water-camera{position:absolute;inset:-5%;transform-origin:50% 34%;will-change:transform}
.approach-water-camera .water-canvas,.approach-water-camera .water-base,.approach-water-camera .water-focus{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.approach-water-camera .water-base{z-index:0}
.approach-water-camera .water-canvas{z-index:1;opacity:0;transition:opacity 1.5s ease}
.approach-water-camera .water-focus{z-index:2;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,#000 0 18%,transparent 31% 68%,#000 84% 100%);mask-image:linear-gradient(to bottom,#000 0 18%,transparent 31% 68%,#000 84% 100%)}
.approach-water-camera.water-ready .water-canvas{opacity:1}
.approach-water-camera.water-ready .water-base{opacity:0;transition:opacity 1.5s ease}
.approach-shade{position:relative;z-index:3;background:linear-gradient(90deg,rgba(3,13,21,.52),rgba(3,13,21,.02) 66%)}
.approach-title{position:relative;z-index:4;align-self:end;padding:0 8vw 12vh;color:#fff}
.approach-details{position:relative;z-index:6;margin-top:0;background:#fff;color:#07141d}

@media(max-width:800px){
  .entry-flight .hero-camera{animation-duration:3.8s!important}
  .charter,.charter.multi{display:block;min-height:125svh}
  .charter .media{height:100svh}
  .charter .copy,.charter.multi .copy{height:100svh;padding:0 22px 11vh}
  .charter .copy h2{font-size:14vw}
  .charter .copy p{font-size:14px;max-width:86%}
  .charter .index{right:22px;bottom:10vh}
  .cinematic{height:125svh;margin-bottom:0}
  .approach{height:150svh}
  .approach-title{padding:0 22px 12vh}
  .approach-water-camera{inset:-3%}
}
@media(prefers-reduced-motion:reduce){
  .charter,.charter.multi,.cinematic,.approach{min-height:0;height:auto}
  .charter .media,.approach-visual{position:relative;height:78svh}
  .charter .copy,.charter.multi .copy{position:absolute;height:78svh}
  .approach-water-camera{inset:0;transform:none!important}
  .approach-water-camera .water-canvas,.approach-water-camera .water-focus{display:none}
  .approach-water-camera .water-base{opacity:1}
}

/* Final cascade: seamless hero, aerial wake chapter, clean horizon exit. */
.gateway-center::before{display:none!important}
.hero{height:190svh!important}
.hero-visual{position:sticky;top:0;height:100svh;overflow:hidden;background:#07141d}
.hero-camera{inset:-38%!important;transform-origin:50% 49%}
.hero-copy{left:0!important;right:0;top:auto!important;bottom:11vh!important;text-align:center;opacity:0;padding:0 6vw}
.hero-copy h1{margin:0 auto;font-size:clamp(54px,7.2vw,112px);line-height:.88;letter-spacing:-.03em;text-transform:uppercase}
.hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.48),transparent 47%)}
.hero-scroll{display:none!important}.site-entered .hero-copy{animation:none!important}
.entry-flight .hero-camera{animation:finalDroneFlight 4.4s both!important}
@keyframes finalDroneFlight{0%{transform:scale(1.68) rotate(-145deg);filter:blur(8px);animation-timing-function:cubic-bezier(.08,.76,.12,1)}20%{transform:scale(1.42) rotate(-38deg);filter:blur(1.4px);animation-timing-function:cubic-bezier(.22,.06,.2,1)}78%{transform:scale(1.25) rotate(-13deg);filter:blur(.25px);animation-timing-function:cubic-bezier(.14,.84,.18,1)}100%{transform:scale(1.12) rotate(0);filter:blur(0)}}
.opening{min-height:112svh;padding:15vh 8vw;display:grid;place-items:center;text-align:center}
.opening-statement{width:min(1180px,100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;margin:0}
.opening .kicker{margin-bottom:5vh}.opening h2{margin:0;max-width:1100px;font-size:clamp(62px,8vw,128px);line-height:.9;text-transform:uppercase;color:#07141d}.opening p{width:min(520px,100%);margin:6vh auto 0;font-size:18px;line-height:1.7;color:#536068}
.letter-word{display:inline-block;white-space:nowrap}.letter{display:inline-block;opacity:0;transform:translateY(.58em);filter:blur(7px);transition:opacity .8s cubic-bezier(.16,.72,.18,1),transform 1.05s cubic-bezier(.16,.72,.18,1),filter .9s ease;transition-delay:var(--letter-delay)}.letter-title.in-view .letter{opacity:1;transform:none;filter:blur(0)}
.cinematic{height:175svh!important;margin-bottom:0!important;overflow:visible;background:#07141d}.cinematic-pin{isolation:isolate}.fleet-water-camera{position:absolute;inset:-18%;z-index:0;transform-origin:50% 50%;will-change:transform}.fleet-water-camera .water-canvas,.fleet-water-camera .water-base,.fleet-water-camera .water-focus{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fleet-water-camera .water-base{z-index:0}.fleet-water-camera .water-canvas{z-index:1;opacity:0;transition:opacity 1.4s ease}.fleet-water-camera .water-focus{z-index:2;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 15% 42% at 50% 50%,#000 0 50%,rgba(0,0,0,.94) 68%,transparent 100%);mask-image:radial-gradient(ellipse 15% 42% at 50% 50%,#000 0 50%,rgba(0,0,0,.94) 68%,transparent 100%)}.fleet-water-camera.water-ready .water-canvas{opacity:1}.fleet-water-camera.water-ready .water-base{opacity:0}.cinematic-wash{z-index:2}.cinematic-copy{z-index:3}
.approach{height:215svh!important;overflow:hidden}.approach-water-camera{inset:-16%!important;transform-origin:50% 31%}.approach-title{align-self:center!important;padding:0 8vw!important}.approach-details{position:absolute!important;left:0;right:0;bottom:0;min-height:58svh;margin:0!important;padding:11vh 8vw 12vh!important;background:#fff;color:#07141d}
.contact{min-height:105svh;padding:14vh 8vw;text-align:center;display:grid;place-items:center}.contact-inner{width:min(1180px,100%);display:flex;flex-direction:column;align-items:center}.contact h2{max-width:1080px;margin:4vh auto 5vh;font-size:clamp(58px,7.6vw,116px);line-height:.9;text-transform:uppercase;color:#07141d}.contact p{margin:0 auto;max-width:540px}.contact-inner>a{margin-top:4vh}
@media(max-width:800px){.hero{height:165svh!important}.hero-camera{inset:-46%!important}.hero-copy{bottom:12vh!important}.hero-copy h1{font-size:13vw}.opening{min-height:100svh;padding:13vh 22px}.opening h2{font-size:14vw}.opening p{font-size:16px}.fleet-water-camera{inset:-28%}.cinematic{height:145svh!important}.approach{height:190svh!important}.approach-water-camera{inset:-24%!important}.approach-title{padding:0 22px!important}.approach-details{min-height:68svh;padding:9vh 22px 11vh!important}.contact{padding:13vh 22px}.contact h2{font-size:13vw}}
@media(prefers-reduced-motion:reduce){.hero{height:100svh!important}.hero-visual{position:relative}.hero-camera,.fleet-water-camera,.approach-water-camera{transform:none!important}.hero-copy{opacity:1}.letter{opacity:1;transform:none;filter:none}}

/* Dark-room entrance and clean final flight. */
.gateway{background:#06131c!important;transition:opacity 1.25s cubic-bezier(.16,.72,.18,1),visibility 1.25s!important}
.gateway>img,.gateway-shade{display:none!important}
.entry-mark{width:min(620px,82vw);padding:0!important;border:0!important;background:transparent!important;backdrop-filter:none!important}
.entry-mark strong{font-size:clamp(48px,6vw,88px);letter-spacing:.2em;margin-left:.2em}
.entry-mark span{margin-top:19px;letter-spacing:.62em;margin-left:.62em;color:rgba(255,255,255,.72)}
.enter-site{width:min(300px,70vw);margin-top:34px;padding:16px 18px;background:transparent!important;border:0!important;border-top:1px solid rgba(255,255,255,.5)!important;border-bottom:1px solid rgba(255,255,255,.5)!important}
.gateway.entered .gateway-center{transform:scale(1.035);filter:blur(8px);transition:opacity .7s ease,transform 1.2s cubic-bezier(.16,.72,.18,1),filter .9s ease}
.entry-flight .hero-camera{animation:ultraSmoothFlight 5.2s both!important}
@keyframes ultraSmoothFlight{0%{transform:scale(1.72) rotate(-132deg);filter:blur(7px);animation-timing-function:cubic-bezier(.08,.72,.12,1)}24%{transform:scale(1.43) rotate(-34deg);filter:blur(1px);animation-timing-function:cubic-bezier(.2,.08,.18,1)}78%{transform:scale(1.23) rotate(-11deg);filter:blur(.2px);animation-timing-function:cubic-bezier(.12,.82,.18,1)}100%{transform:scale(1.14) rotate(0);filter:blur(0)}}

.cinematic{display:none!important}
.approach{height:auto!important;min-height:0!important;overflow:visible!important;background:#fff!important;color:#07141d}
.approach-flight{position:relative;height:210svh;background:#07141d;overflow:clip}
.approach-visual{position:sticky!important;top:0;height:100svh;overflow:hidden;background:#07141d}
.approach-water-camera{inset:-18%!important;transform-origin:50% 30%}
.approach-title{z-index:5;align-self:center!important;padding:0 8vw!important;color:#fff;overflow:hidden}
.approach-title>.kicker{display:block;opacity:0;transform:translateY(18px);letter-spacing:.36em;transition:opacity .8s ease,transform 1s cubic-bezier(.16,.72,.18,1)}
.approach-title>.kicker.in-view{opacity:1;transform:none}
.impact-title{margin:3vh 0 0!important;overflow:visible}
.impact-title>span{display:block;width:max-content;max-width:100%;opacity:0;filter:blur(5px);clip-path:inset(0 100% 0 0);transform:translateX(-7vw);transition:opacity .65s ease,clip-path 1.15s cubic-bezier(.16,.72,.18,1),transform 1.2s cubic-bezier(.16,.72,.18,1);will-change:transform,clip-path}
.impact-title>span+span{transform:translateX(7vw);transition-delay:.16s}
.impact-title.in-view>span{opacity:1;filter:blur(0);clip-path:inset(0);transform:translateX(0)}
.approach-details{position:relative!important;inset:auto!important;min-height:58svh;margin:0!important;padding:11vh 8vw 12vh!important;background:#fff!important;color:#07141d!important;z-index:8}

@media(max-width:800px){.entry-mark{width:86vw}.entry-mark strong{font-size:39px}.entry-mark span{font-size:8px;letter-spacing:.42em;margin-left:.42em}.approach-flight{height:180svh}.approach-water-camera{inset:-28%!important}.approach-title{padding:0 22px!important}.impact-title{font-size:13vw!important}.approach-details{min-height:68svh;padding:9vh 22px 11vh!important}}
@media(prefers-reduced-motion:reduce){.entry-flight .hero-camera{animation:none!important}.approach-flight{height:auto}.approach-visual{position:relative!important}.impact-title>span,.approach-title>.kicker{opacity:1;filter:none;clip-path:none;transform:none}}

/* Monogram identity, centred hero lock, alternating charter direction. */
.monogram-logo{width:46px;height:46px;display:block}
.monogram-logo img{width:100%;height:100%;object-fit:contain;display:block}
header{padding-block:18px}
.opening h2 .letter-word,.opening h2 .letter{font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;color:inherit!important}
.opening h2{width:min(1180px,100%)}

.entry-flight .hero-camera{animation:centerThenZoom 5.2s both!important}
@keyframes centerThenZoom{
  0%{transform:scale(1.72) rotate(-132deg);filter:blur(6px);animation-timing-function:cubic-bezier(.08,.72,.12,1)}
  23%{transform:scale(1.43) rotate(-34deg);filter:blur(.8px);animation-timing-function:cubic-bezier(.18,.06,.18,1)}
  70%{transform:scale(1.14) rotate(0deg);filter:blur(0);animation-timing-function:cubic-bezier(.16,.72,.18,1)}
  100%{transform:scale(1.28) rotate(0deg);filter:blur(0)}
}
.hero-copy h1{font-size:clamp(62px,8.4vw,132px);letter-spacing:.015em;line-height:.82}

.charter.multi .copy{align-items:flex-end;text-align:right;background:linear-gradient(270deg,rgba(2,12,20,.72),rgba(2,12,20,.12) 58%,transparent 82%)}
.charter.multi .copy p{margin-left:auto}
.charter.multi .index{right:auto;left:8vw}
.charter.multi .media img{transform-origin:50% 50%}

.copy a,.contact-inner>a{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;margin-top:32px;padding:0 0 10px;border-bottom:1px solid currentColor;font:300 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.copy a b,.contact-inner>a b{font-size:18px;line-height:.6;font-weight:200;margin-left:4px;transition:transform .45s cubic-bezier(.16,.72,.18,1)}
.copy a:hover b,.contact-inner>a:hover b{transform:translateX(7px)}
.contact-inner>a{margin-top:4vh;color:#07141d}
.approach{background:#07141d!important}
.approach-flight{height:205svh}

@media(max-width:800px){
  .monogram-logo{width:38px;height:38px}
  header{padding-block:14px}
  .hero-copy h1{font-size:14vw}
  .charter.multi .copy{align-items:flex-end;text-align:right}
  .charter.multi .copy p{max-width:82%}
  .charter.multi .index{left:22px;right:auto}
  .copy a,.contact-inner>a{font-size:10px;gap:22px}
}

/* Final identity and motion overrides. */
header{grid-template-columns:1fr!important;background:transparent!important;backdrop-filter:none!important;color:#fff;padding:18px 4vw!important}
.site-entered header{opacity:1!important;transform:none!important;pointer-events:auto!important}
header.header-visible{background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px)!important;color:#07141d;box-shadow:0 1px 0 rgba(7,20,29,.06)}
.monogram-logo{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px}
.monogram-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .6s ease}.monogram-black{opacity:0}.monogram-white{opacity:1}header.header-visible .monogram-black{opacity:1}header.header-visible .monogram-white{opacity:0}
.header-actions{justify-self:end;margin-left:auto}.menu-toggle{color:inherit}.enquire{display:none!important}
.hero-camera{backface-visibility:hidden;transform:translateZ(0);contain:paint;will-change:transform}.entry-flight .hero-camera{animation:centredLuxuryFlight 5.8s both!important}
@keyframes centredLuxuryFlight{0%{transform:translateZ(0) scale(1.68) rotate(-126deg);animation-timing-function:cubic-bezier(.1,.7,.14,1)}24%{transform:translateZ(0) scale(1.42) rotate(-31deg);animation-timing-function:cubic-bezier(.2,.08,.18,1)}70%{transform:translateZ(0) scale(1.14) rotate(0deg);animation-timing-function:cubic-bezier(.16,.72,.18,1)}100%{transform:translateZ(0) scale(1.28) rotate(0deg)}}
.hero-copy{bottom:10vh!important}.hero-wordmark{display:flex;flex-direction:column;align-items:center;color:#fff;text-align:center;text-shadow:0 2px 28px rgba(2,12,20,.28)}.hero-wordmark strong{font:300 clamp(42px,5.6vw,82px)/1 var(--display);letter-spacing:.2em;margin-left:.2em}.hero-wordmark span{margin-top:15px;font:300 11px/1 var(--sans);letter-spacing:.6em;margin-left:.6em}
.opening{min-height:78svh!important;padding:12vh 8vw!important}.opening .kicker{margin-bottom:3.5vh!important}.opening h2{width:min(900px,100%)!important;max-width:900px!important;font-size:clamp(48px,5.8vw,88px)!important;line-height:.94!important;letter-spacing:.005em!important}.opening p{margin-top:4vh!important;max-width:490px;font-size:17px!important;line-height:1.75!important}.opening h2 .letter-word,.opening h2 .letter{font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;color:inherit!important}.opening h2 .letter-word{margin-right:.08em}.opening h2 .letter{transform:translateY(.32em);filter:blur(3px);transition-duration:.72s,.9s,.7s}
.contact h2{max-width:980px!important;font-size:clamp(54px,6.8vw,104px)!important;line-height:.92!important}
@media(max-width:800px){header{padding:13px 20px!important}.monogram-logo{width:43px;height:43px}.menu-toggle span{display:none}.hero-wordmark strong{font-size:12vw}.hero-wordmark span{font-size:8px;letter-spacing:.42em;margin-left:.42em}.opening{min-height:72svh!important;padding:10vh 22px!important}.opening h2{font-size:12vw!important}.opening p{font-size:16px!important;margin-top:3.5vh!important}.contact h2{font-size:12.5vw!important}}

/* Crisp-motion pass: never rasterise photography through blur filters. */
header.header-visible{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important}
.gateway-center,.gateway.entered .gateway-center,.hero-camera,.hero-camera img,.hero-camera canvas,
.media img,.cinematic-frame,.cinematic-frame img,.destination-water-camera,
.fleet-water-camera,.approach-water-camera,.image-fade,.motion,.motion-title,
.letter,.impact-title>span{filter:none!important}

/* The entry flight uses one high-resolution photographic plate. The live water
   layer joins only once the camera is locked, avoiding WebGL rotation shimmer. */
.entry-flight .hero-water{opacity:0!important}
.entry-flight .hero-fallback{opacity:1!important}
.entry-flight .hero-focus{opacity:0!important}
.flight-complete .hero-water{opacity:1!important;transition:opacity 1.35s ease!important}
.flight-complete .hero-fallback{opacity:0!important;transition:opacity 1.35s ease!important}
.flight-complete .hero-focus{opacity:1!important;transition:opacity 1.35s ease!important}

.entry-flight .hero-camera{animation:crispHeroFlight 5.8s linear both!important}
@keyframes crispHeroFlight{
  0%{transform:translate3d(0,0,0) scale(1.68) rotate(-126deg)}
  18%{transform:translate3d(0,0,0) scale(1.46) rotate(-45deg)}
  38%{transform:translate3d(0,0,0) scale(1.25) rotate(-9deg)}
  68%{transform:translate3d(0,0,0) scale(1.14) rotate(0deg)}
  100%{transform:translate3d(0,0,0) scale(1.28) rotate(0deg)}
}

/* Opacity and movement remain, but every reveal stays optically sharp. */
.motion,.motion-title,.motion.out-view,.motion-title.out-view,
.letter,.impact-title>span,.menu-panel nav a{filter:none!important}
.image-fade,.cinematic-frame{filter:none!important}

@media(max-width:800px){.entry-flight .hero-camera{animation-duration:5.2s!important}}

/* Final hero timing: restrained scale, continuous direction, deliberate speed ramp. */
.hero-camera{inset:-6%!important;transform-origin:50% 49%!important}
.entry-flight .hero-camera{animation:precisionHeroFlight 5.8s both!important}
@keyframes precisionHeroFlight{
  0%{transform:translate3d(0,0,0) scale(1.16) rotate(-7deg);animation-timing-function:cubic-bezier(.12,.62,.18,1)}
  28%{transform:translate3d(0,0,0) scale(1.095) rotate(-1.8deg);animation-timing-function:cubic-bezier(.28,.02,.22,1)}
  72%{transform:translate3d(0,0,0) scale(1.045) rotate(0deg);animation-timing-function:cubic-bezier(.22,.58,.24,1)}
  100%{transform:translate3d(0,0,0) scale(1.08) rotate(0deg)}
}

.hero-shade{transition:background 1.35s cubic-bezier(.16,.72,.18,1)!important;background:linear-gradient(0deg,rgba(2,12,20,.16),rgba(2,12,20,.02) 56%)!important}
.hero-title-visible .hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.56),rgba(2,12,20,.1) 64%)!important}
.entry-flight .hero-copy{opacity:0!important;transform:translate3d(0,24px,0)!important;transition:opacity 1.25s ease,transform 1.45s cubic-bezier(.16,.72,.18,1)!important}
.entry-flight.hero-title-visible .hero-copy{opacity:1!important;transform:translate3d(0,0,0)!important}
.hero-wordmark{text-shadow:0 2px 22px rgba(2,12,20,.42)!important}

@media(max-width:800px){.hero-camera{inset:-8%!important}.entry-flight .hero-camera{animation-duration:5.8s!important}}

/* One uninterrupted hero timeline. Scroll remains locked until this completes. */
.entry-flight .hero-camera{animation:continuousHeroFlight 6.4s linear both!important}
@keyframes continuousHeroFlight{
  0%{transform:translate3d(0,0,0) scale(1.16) rotate(-7deg)}
  15%{transform:translate3d(0,0,0) scale(1.13) rotate(-4.7deg)}
  30%{transform:translate3d(0,0,0) scale(1.1) rotate(-2.8deg)}
  45%{transform:translate3d(0,0,0) scale(1.075) rotate(-1.5deg)}
  60%{transform:translate3d(0,0,0) scale(1.055) rotate(-.7deg)}
  72%{transform:translate3d(0,0,0) scale(1.045) rotate(-.25deg)}
  82%{transform:translate3d(0,0,0) scale(1.045) rotate(0deg)}
  90%{transform:translate3d(0,0,0) scale(1.052) rotate(0deg)}
  100%{transform:translate3d(0,0,0) scale(1.07) rotate(0deg)}
}
@media(max-width:800px){.entry-flight .hero-camera{animation-duration:6.4s!important}}

/* Hero motion is owned by one Web Animations timeline in script.js. */
.entry-flight .hero-camera{animation:none!important}

/* Immediate, seamless gateway-to-hero handoff. */
.gateway{transition:opacity .58s cubic-bezier(.16,.72,.18,1),visibility .58s!important}
.gateway.entered .gateway-center{opacity:0!important;transform:scale(.985)!important;transition:opacity .34s ease,transform .58s cubic-bezier(.16,.72,.18,1)!important}
.entry-flight.hero-title-visible .hero-copy{opacity:1!important;transform:translate3d(0,0,0)!important}
.entry-flight.hero-title-visible .hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.56),rgba(2,12,20,.1) 64%)!important}

/* Restored known-working CSS flight. This final rule supersedes experimental timelines. */
.entry-flight .hero-camera{animation:restoredHeroFlight 5.8s both!important}
@keyframes restoredHeroFlight{
  0%{transform:translate3d(0,0,0) scale(1.34) rotate(-42deg);animation-timing-function:cubic-bezier(.1,.7,.14,1)}
  26%{transform:translate3d(0,0,0) scale(1.2) rotate(-12deg);animation-timing-function:cubic-bezier(.2,.08,.18,1)}
  72%{transform:translate3d(0,0,0) scale(1.08) rotate(0deg);animation-timing-function:cubic-bezier(.16,.72,.18,1)}
  100%{transform:translate3d(0,0,0) scale(1.07) rotate(0deg)}
}

/* Single deterministic hero flight. JavaScript owns the camera transform so
   legacy animation declarations cannot restart or compete with the sequence. */
.hero-flight-active .hero-camera{animation:none!important;transition:none!important}
.hero-flight-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;z-index:1;opacity:0;pointer-events:none;transition:opacity .18s linear;background:#06131c}
.hero-flight-active .hero-flight-video{opacity:1}
.flight-complete .hero-flight-video{opacity:0;transition:opacity .7s ease}
.hero-flight-active .hero-water{opacity:0!important}
.hero-flight-active .hero-fallback{opacity:1!important}
.hero-flight-active .hero-focus{opacity:0!important}
.hero-copy{opacity:0!important;transform:translate3d(0,22px,0)!important;transition:opacity 1.15s ease,transform 1.35s cubic-bezier(.16,.72,.18,1)!important}
.hero-title-visible .hero-copy{opacity:1!important;transform:translate3d(0,0,0)!important}
.hero-flight-active .hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.18),rgba(2,12,20,.025) 58%)!important}
.hero-flight-active.hero-title-visible .hero-shade,.hero-title-visible .hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.58),rgba(2,12,20,.12) 66%)!important}
.flight-complete .hero-camera{animation:none!important}
@media(max-width:800px){.hero-flight-active .hero-camera{inset:-12%!important}}

/* Final composition polish. */
.monogram-logo{width:44px!important;height:44px!important}
.opening{min-height:64svh!important;padding:8vh 8vw!important}
.opening .kicker{margin-bottom:2.8vh!important}
.opening h2{max-width:940px!important}
.opening p{margin-top:3vh!important}
.opening h2 .letter{transition:opacity 1.05s cubic-bezier(.16,.72,.18,1),transform 1.35s cubic-bezier(.16,.72,.18,1),filter 1.15s ease!important;transition-delay:var(--letter-delay)!important}
.approach-water-camera{inset:0!important;transform-origin:50% 50%!important}
.enter-site.preparing{opacity:.72;cursor:wait}
@media(max-width:800px){.monogram-logo{width:38px!important;height:38px!important}.opening{min-height:70svh!important;padding:9vh 22px!important}.approach-water-camera{inset:0!important}}

/* Cinematic entry: sharp split-screen reveal and one uninterrupted push. */
.gateway{opacity:1!important;visibility:visible!important;background:transparent!important;transition:none!important}
.gateway::before,.gateway::after{content:"";position:absolute;z-index:1;left:0;width:100%;height:50.1%;background:#06131c;transition:transform 1.15s cubic-bezier(.76,0,.24,1);will-change:transform}
.gateway::before{top:0;transform-origin:top}.gateway::after{bottom:0;transform-origin:bottom}
.gateway-center{z-index:3}
.gateway.entered::before{transform:translate3d(0,-100%,0)}
.gateway.entered::after{transform:translate3d(0,100%,0)}
.gateway.released{visibility:hidden!important;pointer-events:none!important}
.gateway.entered .gateway-center{opacity:0!important;transform:translate3d(0,-10px,0)!important;transition:opacity .38s ease,transform .6s cubic-bezier(.16,.72,.18,1)!important}
.hero-flight-video{display:none!important}
.hero-flight-active .hero-camera{animation:yceHeroPush 4.8s both!important;transition:none!important;inset:-6%!important;transform-origin:50% 49%!important}
@keyframes yceHeroPush{
  0%{transform:translate3d(0,0,0) scale(1.13);animation-timing-function:cubic-bezier(.12,.68,.16,1)}
  34%{transform:translate3d(0,-.35%,0) scale(1.075);animation-timing-function:cubic-bezier(.28,.04,.22,1)}
  76%{transform:translate3d(0,-.65%,0) scale(1.045);animation-timing-function:cubic-bezier(.2,.62,.22,1)}
  100%{transform:translate3d(0,0,0) scale(1.07)}
}
.approach-water-camera{inset:0!important;background:#07141d}
.approach-water-camera .water-base,.approach-water-camera .water-focus{object-fit:cover!important}
@media(max-width:800px){.hero-flight-active .hero-camera{inset:-8%!important}.gateway::before,.gateway::after{transition-duration:1s}}

/* Audited hero master — the only active entrance and scroll behaviour. */
.hero{height:135svh!important;background:#06131c!important}
.hero-visual{height:100svh!important}
.hero-camera{inset:-6%!important;transform-origin:50% 49%!important}
.hero-camera img{filter:saturate(.94) contrast(1.07)!important}
.gateway::before,.gateway::after{transition-duration:.74s!important;transition-timing-function:cubic-bezier(.78,0,.22,1)!important}
.gateway.entered .gateway-center{transition-duration:.3s,.48s!important}
.gateway-shade{display:block!important;position:absolute!important;z-index:2!important;left:0!important;right:0!important;top:50%!important;bottom:auto!important;height:1px!important;background:rgba(255,255,255,.78)!important;opacity:0!important;transform:scaleX(0)!important;transform-origin:center!important}
.gateway.entered .gateway-shade{animation:yceEntryFlash .82s cubic-bezier(.16,.72,.18,1) both!important}
@keyframes yceEntryFlash{0%{opacity:0;transform:scaleX(0)}28%{opacity:.9;transform:scaleX(.5)}70%{opacity:.5;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
.hero-flight-active .hero-camera{animation:yceHeroPushFast 2.6s both!important;inset:-6%!important}
@keyframes yceHeroPushFast{
  0%{transform:translate3d(0,0,0) scale(1.005);animation-timing-function:cubic-bezier(.12,.68,.16,1)}
  32%{transform:translate3d(0,-.25%,0) scale(1.04);animation-timing-function:cubic-bezier(.24,.05,.2,1)}
  72%{transform:translate3d(0,-.45%,0) scale(1.062);animation-timing-function:cubic-bezier(.2,.62,.22,1)}
  100%{transform:translate3d(0,0,0) scale(1.07)}
}
.hero-copy{bottom:11vh!important;transition:opacity .72s ease,transform .9s cubic-bezier(.16,.72,.18,1)!important}
.hero-wordmark strong,.hero-wordmark span{opacity:0;transform:translate3d(0,14px,0);will-change:transform,opacity,letter-spacing}
.hero-wordmark strong{letter-spacing:.31em!important;margin-left:.31em!important;transition:opacity .72s ease,transform .88s cubic-bezier(.16,.72,.18,1),letter-spacing 1.15s cubic-bezier(.16,.72,.18,1),margin-left 1.15s cubic-bezier(.16,.72,.18,1)}
.hero-wordmark span{letter-spacing:.72em!important;margin-left:.72em!important;transition:opacity .65s .12s ease,transform .9s .12s cubic-bezier(.16,.72,.18,1),letter-spacing 1.1s .12s cubic-bezier(.16,.72,.18,1),margin-left 1.1s .12s cubic-bezier(.16,.72,.18,1)}
.hero-title-visible .hero-wordmark strong,.hero-title-visible .hero-wordmark span{opacity:1;transform:translate3d(0,0,0)}
.hero-title-visible .hero-wordmark strong{letter-spacing:.2em!important;margin-left:.2em!important}
.hero-title-visible .hero-wordmark span{letter-spacing:.6em!important;margin-left:.6em!important}
.hero-flight-active header{opacity:0!important;transform:translate3d(0,-18px,0)!important;pointer-events:none!important}
.hero-flight-active.hero-title-visible header{opacity:1!important;transform:translate3d(0,0,0)!important;pointer-events:auto!important;transition:opacity .7s .18s ease,transform .8s .18s cubic-bezier(.16,.72,.18,1)!important}
.flight-complete .hero-water{transition:opacity .72s ease!important}
.flight-complete .hero-fallback,.flight-complete .hero-focus{transition:opacity .72s ease!important}
@media(max-width:800px){.hero{height:125svh!important}.hero-flight-active .hero-camera{animation-duration:2.35s!important}.hero-copy{bottom:12vh!important}.hero-wordmark strong{font-size:11.5vw!important}.hero-wordmark span{letter-spacing:.5em!important;margin-left:.5em!important}}

/* Extend the deliberate, pinned pacing from the approach sequence. */
.hero{height:165svh!important}
.charter{min-height:120svh!important}
.charter .media{height:92svh!important}
.charter .copy .index{transition-delay:0ms!important}
.charter .copy .kicker{transition-delay:110ms!important}
.charter .copy h2{transition-delay:210ms!important}
.charter .copy p{transition-delay:330ms!important}
.charter .copy a{transition-delay:440ms!important}
.charter .motion{transition-duration:1.05s!important;transition-timing-function:cubic-bezier(.16,.72,.18,1)!important}
.charter .motion-title{transition-duration:1.22s!important}
.charter .media::after{transition-duration:1.55s!important}
@media(max-width:800px){.hero{height:145svh!important}.charter{min-height:auto!important}.charter .media{height:72svh!important}.charter .copy h2{transition-delay:150ms!important}.charter .copy p{transition-delay:250ms!important}.charter .copy a{transition-delay:340ms!important}}

/* 3D direction master: one forward camera, separated photographic planes. */
.hero{height:205svh!important;perspective:1400px!important}
.hero-visual{perspective:1400px;transform-style:preserve-3d;isolation:isolate}
.hero-camera{inset:-7%!important;transform-style:preserve-3d;will-change:transform;backface-visibility:hidden}
.hero-camera .hero-fallback,.hero-camera .hero-water{transform:translateZ(0) scale(1.002);transform-origin:50% 49%;backface-visibility:hidden}
.hero-camera .hero-focus{transform:translate3d(0,calc(var(--hero-depth,0) * -1.8%),55px) scale(calc(1.015 + var(--hero-depth,0) * .055));transform-origin:50% 49%;filter:saturate(.96) contrast(1.08) drop-shadow(0 18px 24px rgba(1,10,17,.18))!important;will-change:transform}
.hero-visual::after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(112deg,transparent 24%,rgba(255,255,255,.11) 44%,transparent 61%);transform:translate3d(calc(-42% + var(--hero-light,0) * 84%),0,90px);mix-blend-mode:soft-light;opacity:.55}
.hero-title-visible .hero-visual::after{animation:yceLightPass 2.8s .25s cubic-bezier(.16,.72,.18,1) both}
@keyframes yceLightPass{from{transform:translate3d(-48%,0,90px);opacity:0}25%{opacity:.48}to{transform:translate3d(48%,0,90px);opacity:0}}
.hero-copy{transform-style:preserve-3d;backface-visibility:hidden}
.hero-shade{z-index:2!important}

.charter{perspective:1500px}
.charter .media{perspective:1500px;transform-style:preserve-3d;isolation:isolate;background:#06131c}
.charter .media img{backface-visibility:hidden;will-change:transform;filter:saturate(.92) contrast(1.055)}
.charter .media::before{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(110deg,rgba(255,255,255,.08),transparent 31%,transparent 68%,rgba(3,14,22,.16));opacity:calc(.22 + var(--scene-progress,0) * .5);transition:opacity .25s linear}
.charter .copy{transform:translateZ(45px)}

.approach-visual{perspective:1500px;transform-style:preserve-3d;isolation:isolate}
.approach-water-camera{transform-style:preserve-3d;backface-visibility:hidden}
.approach-water-camera .water-focus{transform:translate3d(0,calc(var(--scene-progress,0) * -1.4%),60px) scale(calc(1.01 + var(--scene-progress,0) * .045));filter:contrast(1.06) drop-shadow(0 20px 28px rgba(1,10,17,.2));will-change:transform}
.approach-title{transform:translateZ(110px);text-shadow:0 12px 34px rgba(0,0,0,.28)}
.approach-shade{transform:translateZ(80px)}

@media(max-width:800px){
  .hero{height:170svh!important}
  .hero-camera{inset:-9%!important}
  .hero-camera .hero-focus,.approach-water-camera .water-focus{transform:none}
  .charter .copy,.approach-title,.approach-shade{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .hero-visual::after{display:none}
  .hero-camera .hero-focus,.approach-water-camera .water-focus{transform:none!important}
}

/* Director's cut: approach, deceleration, suspension, identity. */
.hero{height:220svh!important}
.hero-camera{inset:0!important;transform-origin:50% 49%!important}
.hero-water,.hero-fallback,.hero-wake,.hero-focus{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-wake{z-index:2;pointer-events:none;transform:translate3d(0,calc(var(--hero-depth,0) * -2.8%),34px) scale(calc(1.006 + var(--hero-depth,0) * .035));filter:saturate(.95) contrast(1.07)!important;-webkit-mask-image:radial-gradient(ellipse 24% 56% at 50% 68%,#000 0 38%,rgba(0,0,0,.88) 55%,rgba(0,0,0,.35) 74%,transparent 100%);mask-image:radial-gradient(ellipse 24% 56% at 50% 68%,#000 0 38%,rgba(0,0,0,.88) 55%,rgba(0,0,0,.35) 74%,transparent 100%);will-change:transform}
.hero-camera .hero-focus{z-index:3;transform:translate3d(0,calc(var(--hero-depth,0) * -4.1%),76px) scale(calc(1.012 + var(--hero-depth,0) * .065));filter:saturate(.98) contrast(1.09) drop-shadow(0 20px 30px rgba(1,10,17,.2))!important}
.hero-flight-active .hero-camera.water-ready .hero-water{opacity:1!important}
.hero-flight-active .hero-camera.water-ready .hero-fallback{opacity:0!important}
.hero-flight-active .hero-camera:not(.water-ready) .hero-fallback{opacity:1!important}
.hero-flight-active .hero-wake,.hero-flight-active .hero-focus{opacity:1!important}
.hero-flight-active .hero-camera{animation:yceAwardApproach 4.55s both!important;inset:0!important;transition:none!important}
@keyframes yceAwardApproach{
  0%{transform:translate3d(0,0,0) scale(1);animation-timing-function:cubic-bezier(.12,.66,.16,1)}
  24%{transform:translate3d(0,-.45%,0) scale(1.105);animation-timing-function:cubic-bezier(.18,.02,.16,1)}
  72%{transform:translate3d(0,-.9%,0) scale(1.165);animation-timing-function:cubic-bezier(.16,.72,.18,1)}
  100%{transform:translate3d(0,0,0) scale(1.18)}
}
.hero-flight-active .hero-wake{animation:yceWakeArrival 4.55s both}
.hero-flight-active .hero-focus{animation:yceYachtArrival 4.55s both}
@keyframes yceWakeArrival{0%{transform:translate3d(0,1.8%,34px) scale(1.006)}24%{transform:translate3d(0,.5%,34px) scale(1.018)}72%{transform:translate3d(0,-.5%,34px) scale(1.029)}100%{transform:translate3d(0,-.8%,34px) scale(1.035)}}
@keyframes yceYachtArrival{0%{transform:translate3d(0,2.8%,76px) scale(1.012)}24%{transform:translate3d(0,.7%,76px) scale(1.035)}72%{transform:translate3d(0,-.65%,76px) scale(1.063)}100%{transform:translate3d(0,-1.1%,76px) scale(1.077)}}
.hero-flight-active .hero-shade{background:linear-gradient(0deg,rgba(2,12,20,.08),transparent 60%)!important;transition:background 1.25s ease!important}
.hero-flight-active.hero-title-visible .hero-shade{background:radial-gradient(ellipse at 50% 46%,transparent 0 20%,rgba(2,12,20,.16) 56%,rgba(2,12,20,.58) 100%)!important}
.hero-copy{bottom:10.5vh!important}
.hero-wordmark strong{transition-duration:1.1s,1.25s,1.65s,1.65s!important}
.hero-wordmark span{transition-duration:1s,1.25s,1.55s,1.55s!important}
.hero-title-visible .hero-visual::after{animation:yceLightPass 3.2s cubic-bezier(.16,.72,.18,1) both}
@media(max-width:800px){
  .hero{height:175svh!important}
  .hero-flight-active .hero-camera{inset:0!important;animation-duration:4.25s!important}
  .hero-wake{display:none}
  .hero-camera .hero-focus{transform:none}
}
@media(prefers-reduced-motion:reduce){.hero-flight-active .hero-camera,.hero-flight-active .hero-wake,.hero-flight-active .hero-focus{animation:none!important}}

/* Final pacing and editorial composition pass. */
.opening{min-height:72svh!important;padding:9vh 8vw 10vh!important;text-align:left!important;place-items:stretch!important;border-bottom:1px solid rgba(7,20,29,.12)}
.opening-statement{width:100%!important;display:grid!important;grid-template-columns:minmax(180px,.72fr) minmax(0,1.45fr);grid-template-rows:auto 1fr auto;column-gap:6vw;align-items:start!important}
.opening .kicker{grid-column:1;grid-row:1;margin:0!important;padding-top:.65em}
.opening h2{grid-column:2;grid-row:1/3;width:100%!important;max-width:860px!important;margin:0!important;font-size:clamp(48px,5.4vw,84px)!important;line-height:.92!important;text-align:left!important}
.opening p{grid-column:2;grid-row:3;width:min(500px,100%)!important;margin:4.5vh 0 0 auto!important;padding-top:3vh;border-top:1px solid rgba(7,20,29,.2);font-size:16px!important;line-height:1.72!important;text-align:left}
.opening{min-height:78svh!important;display:grid!important;place-items:center!important;text-align:center!important}.opening-statement{width:min(980px,100%)!important;display:flex!important;flex-direction:column!important;align-items:center!important}.opening .kicker{margin:0 0 4vh!important;padding:0!important}.opening h2{width:100%!important;max-width:920px!important;text-align:center!important}.opening p{width:min(580px,100%)!important;margin:5vh auto 0!important;padding-top:4vh!important;text-align:center!important}

.approach-flight{height:190svh!important;overflow:hidden!important}
.approach-visual{perspective:none!important;transform-style:flat!important;isolation:isolate!important}
.approach-water-camera{inset:0!important;transform-style:flat!important;transform-origin:50% 50%!important}
.approach-water-camera .water-canvas,.approach-water-camera .water-base,.approach-water-camera .water-focus{inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 50%!important}
.approach-water-camera .water-focus{transform:none!important;filter:contrast(1.04)!important}
.approach-title,.approach-shade{transform:none!important}

.contact{min-height:82svh!important;padding:11vh 8vw 12vh!important;border-top:1px solid rgba(7,20,29,.12)}
.contact::before{display:none!important}
.contact-inner{max-width:980px!important}
.contact h2{max-width:820px!important;margin:3.5vh auto 4vh!important;font-size:clamp(44px,5vw,78px)!important;line-height:.94!important;letter-spacing:.015em!important}
.contact p{max-width:500px!important;font-size:16px!important;line-height:1.72!important}
.contact-inner>a{margin-top:4.5vh!important}

@media(max-width:800px){
  .opening{min-height:auto!important;padding:10vh 22px 11vh!important}
  .opening-statement{display:block!important}
  .opening .kicker{display:block;margin-bottom:4vh!important}
  .opening h2{font-size:11.5vw!important;line-height:.94!important}
  .opening p{margin:5vh 0 0!important;padding-top:3vh!important}
  .approach-flight{height:155svh!important}
  .contact{min-height:76svh!important;padding:10vh 22px 11vh!important}
  .contact h2{font-size:11vw!important;line-height:.96!important}
}

/* Authoritative hero motion layer — keep last in the cascade. */
.hero-flight-active .hero-camera{animation:none!important;transition:none!important;inset:0!important}
.hero-flight-active .hero-wake,.hero-flight-active .hero-focus{animation:none!important}
.hero-camera .hero-wake{transform:translate3d(0,var(--wake-y,1.6%),34px) scale(var(--wake-scale,1.01))!important;filter:saturate(.95) contrast(1.06)!important}
.hero-camera .hero-focus{transform:translate3d(0,var(--focus-y,2.2%),76px) scale(var(--focus-scale,1.02))!important;filter:saturate(.97) contrast(1.07)!important}
.hero-visual::after{display:none!important}
.hero-camera,.hero-camera .hero-wake,.hero-camera .hero-focus{backface-visibility:hidden!important;transform-style:flat!important}
.hero-copy{will-change:auto!important}
@media(max-width:800px){.hero-flight-active .hero-camera{animation:none!important}.hero-camera .hero-focus{transform:none!important}}

/* Final full-viewport guarantees. */
.approach-visual{grid-template:1fr/1fr!important}
.approach-water-camera{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important}
.approach-water-camera .water-base{opacity:1!important;visibility:visible!important;z-index:0!important}
.approach-water-camera .water-canvas{opacity:.2!important;z-index:1!important;mix-blend-mode:soft-light!important}
.approach-water-camera .water-focus{z-index:2!important}
.approach-shade{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:3!important}
.approach-title{grid-area:1/1!important;position:relative!important;z-index:4!important}
.hero-flight-active .hero-shade{transition:background .9s cubic-bezier(.2,.7,.2,1)!important}
.hero-flight-active.hero-title-visible .hero-shade{background:radial-gradient(ellipse at 50% 46%,rgba(2,12,20,.04) 0 18%,rgba(2,12,20,.22) 56%,rgba(2,12,20,.64) 100%)!important}
.hero-flight-active.hero-title-visible .hero-wordmark strong{transition-delay:0s!important}
.hero-flight-active.hero-title-visible .hero-wordmark span{transition-delay:.08s!important}
