/* Homepage video, October 2026. Static poster is the default, not a JS fallback. */
body[data-revision=warm] .warm-hero.video-hero{min-height:780px;height:calc(100svh - 44px);max-height:1000px;justify-content:flex-end;overflow:hidden}
.video-hero .scene-window{position:absolute;inset:0;height:100%;overflow:hidden}
.video-hero .scene-image,.scene-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.scene-video{opacity:0;pointer-events:none}
.video-playing .scene-video{opacity:1}
body[data-revision=warm] .warm-hero.video-hero .scene-content{padding:230px 7.5% 105px;max-width:none}
body[data-revision=warm] .warm-hero.video-hero h1{font-size:clamp(44px,4.1vw,66px);line-height:1.1;max-width:20ch;letter-spacing:-.035em;margin-bottom:22px}
.warm-hero.video-hero .scene-intro{max-width:46ch;font-size:18px;line-height:1.65}
.warm-hero.video-hero .scene-shade{background:linear-gradient(90deg,rgba(24,24,29,.92),rgba(24,24,29,.84) 39%,rgba(24,24,29,.23) 72%,rgba(24,24,29,.10)),linear-gradient(0deg,rgba(24,24,29,.62),transparent 55%)}
.video-hero .scene-bottom{left:7.5%;right:auto;bottom:26px;gap:30px}
.video-hero .scene-bottom p{font-size:12px}
.video-hero .scroll-cue{position:static;width:auto;white-space:nowrap}
.video-toggle{position:absolute;right:5%;bottom:24px;z-index:3;border:1px solid #ffffffa6;border-radius:8px;padding:10px 17px;min-height:44px;background:rgba(24,24,29,.86);color:#fff;font:500 13px var(--cfs-font);cursor:pointer}
.video-toggle[hidden]{display:none}
.video-toggle:hover{background:var(--cfs-violet-hover)}
.video-toggle:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(min-width:801px) and (max-width:1100px){
 body[data-revision=warm] .warm-hero.video-hero{min-height:760px}
 body[data-revision=warm] .warm-hero.video-hero .scene-content{padding-inline:6%}
 body[data-revision=warm] .warm-hero.video-hero h1{font-size:48px;max-width:19ch}
 .video-hero .scene-bottom{left:6%;max-width:60%}.video-hero .scroll-cue{display:none}
}
@media(max-width:800px){
 body[data-revision=warm] .warm-hero.video-hero{height:auto;min-height:0;max-height:none;overflow:visible}
 body[data-revision=warm] .warm-hero.video-hero .scene-content{padding:36px 24px 38px}
 body[data-revision=warm] .warm-hero.video-hero h1{font-size:40px;line-height:1.12;max-width:19ch}
 .warm-hero.video-hero .scene-intro{font-size:17px;max-width:48ch}
 .video-hero .scene-window{position:relative;inset:auto;aspect-ratio:16/9;max-height:none;height:auto}
 .video-hero .scene-image{position:static;width:100%;height:auto;object-fit:contain}
 .video-hero .scene-bottom{padding:16px 24px 22px;margin:0;max-width:none}
 .video-hero .scene-bottom p{font-size:11px}
 .warm-hero.video-hero .scene-anchor{order:0}
 .warm-hero.video-hero .scene-content{order:1}
 .warm-hero.video-hero .scene-window{aspect-ratio:16/9;max-height:none}
 .video-hero .scene-video{display:block;object-fit:contain}
 .video-hero .video-toggle{right:12px;top:calc(56.25vw - 56px);bottom:auto;padding:8px 12px;font-size:12px}
}
@media(max-width:380px){
 body[data-revision=warm] .warm-hero.video-hero .scene-content{padding:28px 16px 32px}
 body[data-revision=warm] .warm-hero.video-hero h1{font-size:35px}
 .warm-hero.video-hero .scene-intro{font-size:16px}
 .video-hero .scene-bottom{padding-inline:16px}
}
@media(prefers-reduced-motion:reduce){.scene-video,.video-toggle{display:none!important}}
