/* The static SVG remains the fallback and keeps the original layout. */
.hero .signal>img{display:block}
.hero .signal>canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;opacity:0}
.hero .signal.is-interactive>canvas{opacity:1}
.hero .signal.is-interactive>img{visibility:hidden;animation:none}
@media(prefers-reduced-motion:reduce){.hero .signal>canvas{display:none}.hero .signal.is-interactive>img{visibility:visible;animation:none}}
