/* Exact first-frame fallback. No old image, CSS pan or brightness fade on load. */
.brand-backdrop{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;pointer-events:none;opacity:0;transition:opacity .6s ease}
.brand-atmosphere>.brand-backdrop,.hero-native>.brand-backdrop{transition:none}
.brand-atmosphere.video-ready>.brand-backdrop,.hero-native>.brand-backdrop{opacity:var(--brand-opacity,.22)}
.brand-atmosphere.video-ready::before{opacity:0;animation:none;will-change:auto}
:is(.hero-inner,.venue-copy,.topics,.footer,.help-panel-head)::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#04142680,#04142640)}
.hero-native::before{opacity:0}
.hero-native.brand-video-failed>.brand-backdrop{display:none}
.hero-native.brand-video-failed::before{opacity:var(--brand-opacity,.22)}
.help-orb.video-ready>.brand-backdrop{opacity:.85;border-radius:50%;object-position:30% center}
.help-orb.video-ready::before{opacity:0;animation:none;will-change:auto}
.help-orb.video-ready::after{z-index:0}
.help-orb-label{z-index:2}
@media(prefers-reduced-motion:reduce){.brand-backdrop{display:none;transition:none}.hero-native::before,.hero-native.brand-atmosphere::before{opacity:var(--brand-opacity,.22)}}
