/* LIVE v3.2 - cursor light on the intro text block (all text lit from one light: subtle white highlight
   nearest the cursor + long soft cast shadow away from it), understated lens flare near the side edges,
   and the COLLECTIVE CAPABILITIES panels. Classes are only added by bejo-linefx.js.
   Descender fix: .bejo-lfx-face has .3em padding + matching negative margin so background-clip:text covers g/p/y.
   The block background is a flat, very dark "deep space" tone (#0b0c0f, no cursor glow) so the dark shadows can read. */
.bejo-lfx{position:relative;isolation:isolate}
span.bejo-lfx{display:block}
.bejo-lfx::before{content:attr(data-lfx);content:attr(data-lfx) / "";position:absolute;inset:0;z-index:-1;white-space:pre-line;color:transparent;-webkit-text-fill-color:transparent;text-shadow:var(--lfx-sh,none);pointer-events:none;-webkit-user-select:none;user-select:none}
.bejo-lfx .bejo-lfx-face{display:block;padding:.3em 0;margin:-.3em 0;background-image:radial-gradient(circle var(--lfx-r,240px) at var(--lfx-x,70%) var(--lfx-y,0),rgba(255,255,255,var(--lfx-h,0)) 0%,rgba(255,255,255,calc(var(--lfx-h,0) * .5)) 38%,rgba(255,255,255,0) 100%),linear-gradient(var(--lc,#0ccacd),var(--lc,#0ccacd));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.bejo-lfx .bejo-lfx-face::selection,.bejo-lfx .bejo-lfx-face ::selection{-webkit-text-fill-color:#fff;background:rgba(12,202,205,.35)}
.bejo-lfx-sec{background-image:linear-gradient(180deg,#000 0,#0b0c0f 14%,#0b0c0f 86%,#000 100%)}
.bejo-flare{position:fixed;left:0;top:0;width:100vw;height:100vh;pointer-events:none;z-index:99990;opacity:0;overflow:hidden;mix-blend-mode:screen;contain:strict}
.bejo-flare i{position:absolute;left:0;top:0;display:block;will-change:transform}
.bejo-flare__streak{width:72vw;height:3px;border-radius:50%;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.12) 30%,rgba(255,255,255,.42) 50%,rgba(255,255,255,.12) 70%,rgba(255,255,255,0) 100%);box-shadow:0 0 6px rgba(255,255,255,.12)}
.bejo-flare__g{border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.035) 0%,rgba(255,255,255,.075) 58%,rgba(255,255,255,0) 71%)}
.bejo-flare__g:nth-child(4){background:radial-gradient(circle,rgba(255,255,255,0) 60%,rgba(255,255,255,.07) 66%,rgba(255,255,255,0) 71%)}
.bejo-cap .bejo-cap-shade{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none;z-index:0}
.bejo-cap>*:not(.bejo-cap-shade){position:relative;z-index:1}
@media (forced-colors:active){.bejo-lfx::before,.bejo-flare{display:none}.bejo-lfx .bejo-lfx-face{background:none;-webkit-text-fill-color:currentColor}}
