html{scroll-behavior:auto}
.video-journey{height:650svh;isolation:isolate}
.video-journey .hero-stage{height:100vh;height:100dvh;min-height:0;background:#17333a;overflow:hidden}
.villa-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.film-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.3),transparent 35%,transparent 80%,rgba(0,0,0,.08));pointer-events:none}
.film-captions{position:absolute;inset:0;pointer-events:none}
.film-caption{position:absolute;left:6vw;right:6vw;top:58%;opacity:0;visibility:hidden;transition:opacity .22s;color:#fff;text-shadow:0 1px 22px #0006}
.film-caption.is-visible{opacity:1;visibility:visible}
.film-caption h1,.film-caption h2{font-size:clamp(40px,6.4vw,94px);line-height:1.04;font-weight:500!important;letter-spacing:-.05em;margin:0}
.film-caption p{font-size:clamp(14px,1.3vw,18px);margin:20px 0 0;line-height:1.5}
.film-caption--final{left:50%;right:auto;top:50%;width:min(88vw,1100px);transform:translate(-50%,-50%);text-align:center;transition:none}
.film-caption--final p{margin-left:auto;margin-right:auto}
.film-tools{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));left:6vw;right:6vw;display:flex;align-items:center;gap:28px;color:white;font-size:13px;text-shadow:0 1px 12px #0007}
.film-tools a,.film-tools button{padding:12px 0;min-height:44px;line-height:1.35;font-size:inherit;color:inherit;text-align:left;touch-action:manipulation}
.film-tools #film-mode{margin-left:auto}
.film-tools a:hover,.film-tools button:hover{text-decoration:underline;text-underline-offset:5px}
.film-tools #film-hint{max-width:155px;transition:opacity .2s}
.video-journey.is-underway #film-hint{opacity:0}
.video-journey.is-playing{height:100vh;height:100dvh}
.video-journey.is-playing .film-captions,.video-journey.is-playing .film-shade,.video-journey.is-playing #film-hint{display:none}
.video-journey.is-playing .film-tools{bottom:auto;top:105px}
.video-journey.is-playing .villa-film{object-fit:cover;background:#17333a}
.video-journey.is-playing .film-tools{color:#fff;text-shadow:0 1px 12px #0007}
#film-error{position:absolute;left:6vw;right:6vw;bottom:110px;padding:18px;background:#fff;color:#172529;font-size:14px;line-height:1.5}
body:has(.video-journey) .header .brand{background:#ffffffbd;border-radius:3px}
body:has(.video-journey) .header.is-solid{background:#ffffffed}
body:has(.video-journey) .header .cta-arrow{display:none}
@media(max-width:760px){
 .video-journey{height:600svh}
 .villa-film{object-fit:cover;object-position:var(--film-focus-x,50%) center}
 .film-shade{background:linear-gradient(0deg,rgba(0,0,0,.52),transparent 52%,transparent 80%,rgba(0,0,0,.12))}
 .film-caption:not(.film-caption--final){left:24px;right:24px;top:56%}
 .film-caption{color:#fff;text-shadow:0 2px 22px #0007}
 .film-caption h1,.film-caption h2{font-size:clamp(38px,10.5vw,62px);max-width:90vw}
 .film-caption p{font-size:14px;margin-top:12px}
 .film-tools{left:24px;right:24px;color:#fff;text-shadow:0 1px 12px #0007;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;bottom:max(24px,env(safe-area-inset-bottom))}
 .film-tools #film-hint{grid-column:1/-1;font-size:12px;color:#fff}
 .film-tools #film-mode{margin-left:0}
 .film-tools a{margin-left:auto}
 .video-journey.is-playing .film-tools{top:auto;bottom:max(24px,env(safe-area-inset-bottom))}
}
@media(max-height:650px) and (max-width:760px){.film-caption:not(.film-caption--final){top:50%}.film-caption h1,.film-caption h2{font-size:30px}.film-caption p{font-size:13px;margin-top:12px}.film-tools #film-hint{display:none}}
@media(prefers-reduced-motion:reduce){.video-journey{height:100vh;height:100dvh}.film-caption{transition:none}.film-tools #film-hint{display:none}}
