/* Native video playback, with the camera pan independent of the water loop. */
.water-scene{position:absolute;inset:0;isolation:isolate;transform-origin:60% 55%;animation:cwmp-cinematic-pan 22s cubic-bezier(.35,.1,.65,.9) -4s infinite alternate both;animation-play-state:paused;will-change:transform}
.subhero>.water-scene{z-index:-2;animation-duration:28s;animation-delay:-5s}
body.motion-enabled .hero.is-in-view .water-scene,body.motion-enabled .subhero.is-in-view .water-scene{animation-play-state:running}
html.motion-paused .water-scene,body.page-hidden .water-scene{animation-play-state:paused!important}
.hero .water-scene .hero-photo,.subhero .water-scene .subhero-image{animation:none!important;transform:none!important;position:absolute;inset:0;width:100%;height:100%;z-index:0;will-change:auto}
.lake-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;z-index:1;opacity:0;transition:opacity .35s ease}
.lake-video.video-ready{opacity:1}
.hero-shade{background:linear-gradient(90deg,rgba(3,24,36,.9) 0%,rgba(5,29,42,.7) 38%,rgba(7,30,43,.13) 74%,rgba(6,27,39,.16)),linear-gradient(0deg,rgba(3,25,35,.18),transparent 60%)}
@media(max-width:700px){.water-scene{transform-origin:46% 54%}.hero-shade{background:linear-gradient(90deg,rgba(3,25,38,.80),rgba(4,28,41,.5)),linear-gradient(0deg,rgba(4,28,41,.18),transparent 70%)}}
@media(prefers-reduced-motion:reduce){.water-scene{animation:none!important;transform:scale(1.04)!important;will-change:auto}.lake-video{display:none!important}}
@media print{.water-scene{animation:none!important;transform:none!important}.lake-video{display:none!important}}
/* Preserve the text scrim while letting the foreground water remain visible. */
.hero-shade{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 62%,rgba(0,0,0,.68) 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 62%,rgba(0,0,0,.68) 100%)}
