/* V10 spotlights only. No persistent horizontal flare or central floor glow. */
.stage-light { position: absolute; overflow: hidden; pointer-events: none; opacity: .8; }
.stage-light--hero { inset: 0; z-index: -2; }
.stage-light--mobile { display: none; }
.stage-light__beam {
  position: absolute;
  bottom: 4%; width: 66%; height: 92%;
  transform-origin: 50% 100%;
  transform: rotate(var(--beam-angle));
  opacity: .5;
  background: conic-gradient(from -20deg at 50% 100%,
    transparent 0deg, #ffda8f03 3deg, #ffdb9d25 9deg, #fff0c87a 18deg,
    #ffe7b17a 22deg, #ffcf8925 31deg, #ffda8f03 37deg, transparent 40deg);
  -webkit-mask-image: linear-gradient(transparent, #0009 28%, #000 72%);
  mask-image: linear-gradient(transparent, #0009 28%, #000 72%);
  filter: blur(5px);
}
.stage-light__beam--left { left: -14%; --beam-angle: 24deg; }
.stage-light__beam--right { right: -14%; --beam-angle: -24deg; }
.js[data-motion="on"] .stage-light { animation: stage-light-rise 2.4s .3s ease-out both; }
.js[data-motion="on"] .stage-light__beam { animation: stage-light-sway 17s ease-in-out infinite alternate; }
.js[data-motion="on"] .stage-light__beam--right { animation-duration: 21s; animation-delay: -8s; }
@keyframes stage-light-rise { from { opacity: .05; } to { opacity: .8; } }
@keyframes stage-light-sway {
  from { transform: rotate(calc(var(--beam-angle) - 5deg)); opacity: .32; }
  to { transform: rotate(calc(var(--beam-angle) + 5deg)); opacity: .65; }
}
@media (max-width: 767px) {
  .stage-light--hero { display: none; }
  .stage-light--mobile { display: block; left: 0; right: 0; top: 0; height: 108px; z-index: -1; }
  .stage-light--mobile .stage-light__beam {
    width: 150%; height: 180px; bottom: -2px; left: -25%; right: auto; filter: blur(3px);
  }
  .stage-light--mobile .stage-light__beam--left { --beam-angle: -29deg; }
  .stage-light--mobile .stage-light__beam--right { --beam-angle: 29deg; }
}
@media (prefers-reduced-motion: reduce) {
  .stage-light, .stage-light__beam { animation: none !important; }
}
@media print { .stage-light { display: none !important; } }
