/* Scroll triggers a complete, quiet entrance or return; it never scrubs time. */
.sd-viewport{position:fixed;left:0;top:0;width:0;height:100vh;height:100lvh;visibility:hidden;pointer-events:none}
.sd-active .conversation,.sd-active .home-stories.hs-section,.sd-active .interlude{overflow:clip}
.sd-active [data-sd]{overflow-anchor:none}
.sd-active [data-sd]:not([data-sd-photo]),.sd-active [data-sd-photo]>.sd-photo-plane{translate:var(--sd-x,0) var(--sd-y,0);opacity:0;clip-path:var(--sd-rest-clip,inset(0))}
.sd-active [data-sd].sd-shown:not([data-sd-photo]),.sd-active [data-sd-photo].sd-shown>.sd-photo-plane{translate:0 0;opacity:1;clip-path:inset(0)}
.sd-photo-plane{display:block;width:100%;overflow:clip}
.hs-feature>.sd-photo-plane{position:absolute;inset:0;height:100%}
.hs-feature>.sd-photo-plane>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:transform .9s ease}
.hs-cover>.sd-photo-plane{height:100%}
@media(hover:hover){.hs-feature:hover>.sd-photo-plane>img{transform:scale(1.025)}}
/* Existing image decoding, photograph swaps and portrait parallax keep their layers. */
.sd-active .hs-photo-reveal,.sd-active .hs-cover.hs-photo-reveal,.sd-active .hs-stage.is-photo-changing .hs-photo-reveal{transform:none;transition-property:opacity}
.sd-active .reveal[data-sd]{transform:none;transition:none}
.exp-heading h2>.exp-heading-live{color:var(--ink);display:inline-block}
.sd-active .exp-copy{animation:none}
.sd-active .exp-copy>.sd-copy-inner{animation:none}
/* Writing and keyboard navigation remain stationary and fully visible. */
.sd-active form[data-sd]:focus-within,.sd-active[data-input-mode="keyboard"] [data-sd]:focus-within,.sd-active[data-input-mode="keyboard"] [data-sd]:focus-within>.sd-photo-plane{translate:0 0!important;opacity:1!important;clip-path:inset(0)!important}
@media(max-width:600px){.exp-heading h2>.exp-heading-live{font-size:inherit;white-space:normal;margin:0}}
@media(prefers-reduced-motion:reduce){[data-sd],[data-sd]>.sd-photo-plane{animation:none!important;translate:none!important;opacity:1!important;clip-path:inset(0)!important}.sd-copy-inner{animation:none!important}}
@media print{[data-sd],[data-sd]>.sd-photo-plane{animation:none!important;translate:none!important;opacity:1!important;clip-path:inset(0)!important}.sd-copy-inner{animation:none!important}}
