/* One local gradient behind content; mobile motion never touches the field. */
@media(pointer:coarse),(max-width:650px){
 .mobile-sweep-section{position:relative;overflow:clip;isolation:isolate}
 .mobile-sweep-section>:not(.spectral-wave){position:relative;z-index:1}
 .mobile-sweep-section::after{content:'';position:absolute;right:-10vw;top:0;width:105vw;height:min(80svh,100%);z-index:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse closest-side at 50% 50%,rgba(234,204,254,.13) 0%,rgba(244,137,255,.2) 38%,rgba(234,204,254,.08) 66%,transparent 100%);transform:translate3d(80%,-75%,0)}
 .mobile-sweep-running::after{animation:spectral-mobile-light-pass 1.35s cubic-bezier(.22,1,.36,1) both}
 .is-scrolling .mobile-sweep-running::after{animation-play-state:paused}
}
@keyframes spectral-mobile-light-pass{0%{opacity:0;transform:translate3d(80%,-75%,0)}18%{opacity:1}72%{opacity:1}100%{opacity:0;transform:translate3d(-150%,125%,0)}}
@media(prefers-reduced-motion:reduce){.mobile-sweep-section::after{display:none!important;animation:none!important}}
