/* Feixe de luz da capa (js/feixe.js). Mora dentro de .capa-palco, ENTRE a imagem de fundo e as peças de texto; nunca recebe clique. */
.feixe{position:absolute;inset:0;pointer-events:none;overflow:hidden;contain:layout paint size;border-radius:inherit}
.feixe-tela{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;opacity:var(--feixe-op,1)}

/* sem WebGL (ou aparelho fraco / economia de dados): uma faixa de luz bem suave que atravessa devagar, só com transform e opacity */
.feixe-css::before{content:"";position:absolute;left:0;top:-20%;width:46%;height:150%;opacity:0;will-change:transform,opacity;
  background:linear-gradient(90deg,transparent 4%,rgb(190 212 255 / .05) 22%,rgb(225 238 255 / .11) 40%,rgb(190 212 255 / .05) 58%,transparent 76%);
  transform:translate3d(10%,0,0) rotate(18deg);transform-origin:50% 0;
  animation:feixe-css 16s cubic-bezier(.4,.1,.3,1) 5.2s infinite both}
@keyframes feixe-css{
  0%{transform:translate3d(10%,0,0) rotate(18deg);opacity:0}
  16%{opacity:var(--feixe-op,1)}
  44%{opacity:var(--feixe-op,1)}
  78%{transform:translate3d(150%,0,0) rotate(18deg);opacity:0}
  100%{transform:translate3d(150%,0,0) rotate(18deg);opacity:0}}

@media (prefers-reduced-motion:reduce){.feixe-css::before{animation:none;opacity:var(--feixe-op,1);transform:translate3d(60%,0,0) rotate(18deg)}}
