/* FREIRE // OS v0.6.1 — neural connection paths only.
   Keeps portraits, layout, and all other styling unchanged. */
.neural-stage .neural-edge-track { fill:none; stroke:#91a6ed; stroke-width:1.6; opacity:.22; vector-effect:non-scaling-stroke; }
.neural-stage .neural-edge-energy { fill:none; stroke:#7fe9c8; stroke-width:2.7; stroke-linecap:round; opacity:.19; stroke-dasharray:2 42; stroke-dashoffset:0; vector-effect:non-scaling-stroke; animation:energyTravel var(--speed,4s) linear infinite; animation-delay:var(--delay,0s); filter:url(#neural-pulse-glow); }
.neural-stage .neural-edge.is-route .neural-edge-track { opacity:.52; stroke:#b2acef; stroke-width:1.9; }
.neural-stage .neural-edge.is-route .neural-edge-energy { opacity:.85; stroke-width:3.3; stroke-dasharray:5 38; }
.neural-stage .neural-edge.is-lit .neural-edge-track { opacity:.85; stroke:#b5f7e2; stroke-width:2.3; }
.neural-stage .neural-edge.is-lit .neural-edge-energy { opacity:1; stroke:#e8fff7; stroke-width:4; stroke-dasharray:6 28; }
.neural-stage.is-paused .neural-edge-energy { animation-play-state:paused!important; }
@keyframes energyTravel { to { stroke-dashoffset:-180; } }
@media (max-width:600px) { .neural-stage .neural-edge-energy { stroke-width:3.1; filter:none; } }
@media (prefers-reduced-motion:reduce) {
 .experience-v2:not(.motion-override) .neural-stage .neural-edge-energy { animation:none!important; opacity:.24; }
 .experience-v2.motion-override .neural-stage .neural-edge-energy { animation:energyTravel var(--speed,4s) linear infinite!important; animation-delay:var(--delay,0s)!important; }
}
