/* V2.2: individual light surfaces move; the original background stays still. */
.hero-scene .scene-image{animation:none!important;transform:none!important;will-change:auto}
.hero-scene .blue-scene{filter:brightness(.76) saturate(.95)}
.hero-scene .material-scene{filter:brightness(.92)}
.motion-ribbons{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden;contain:layout paint}
.motion-ribbons path{vector-effect:non-scaling-stroke}
.motion-ribbons .ribbon-edge{fill:none;stroke-width:1.2;opacity:.8}
.motion-ribbons .ribbon-fine{fill:none;stroke-width:.65;opacity:.45}
.architecture-scene .motion-ribbons .ribbon-edge{stroke-width:.9;opacity:.55}
@media(max-width:600px){.motion-ribbons{width:160%;left:-45%;max-width:none}.architecture-scene .motion-ribbons{width:135%;left:-20%}}
@media(prefers-reduced-motion:reduce){.hero-scene .motion-ribbons{display:none!important}}
