
/* V44 | Reator neón real, no fondo de imagen. Las cuatro tarjetas son interactivas. */
.hero-scene{background:none!important;transform:none!important;opacity:1!important;
 background-image:radial-gradient(circle at 64% 56%,rgba(23,92,224,.32) 0,rgba(13,36,110,.16) 21%,transparent 46%),
 radial-gradient(ellipse at 91% 35%,rgba(100,48,194,.13),transparent 45%),
 linear-gradient(112deg,#020816 8%,#051132 63%,#070b24 100%)!important;
}
.hero-scene::before{content:"";position:absolute;inset:0;opacity:.44;background-image:linear-gradient(rgba(73,133,255,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(73,133,255,.075) 1px,transparent 1px);background-size:65px 65px;mask-image:linear-gradient(90deg,transparent 8%,black 45%,black 90%);}
.hero-atmosphere{background:linear-gradient(90deg,rgba(2,7,22,.96) 0%,rgba(2,7,22,.72) 27%,rgba(2,7,22,.02) 49%,transparent 68%),linear-gradient(180deg,transparent 68%,rgba(4,10,32,.4) 86%,#07122e 100%)!important;}
.reactor-core{--reactor-cyan:#3dcaff;position:absolute;left:65.8%;top:51%;height:79%;aspect-ratio:1;z-index:2;transform:translate(-50%,-50%);pointer-events:none;isolation:isolate;filter:drop-shadow(0 0 29px rgba(28,143,255,.36));}
.reactor-radiance{position:absolute;inset:1%;border-radius:50%;background:radial-gradient(circle,rgba(107,32,255,.36) 0%,rgba(18,104,255,.26) 34%,rgba(10,23,85,.19) 55%,transparent 73%);animation:reactor-breathe 5s ease-in-out infinite alternate;}
.reactor-column{position:absolute;z-index:3;inset:21% 23%;transform:perspective(720px) rotateX(-5deg);filter:drop-shadow(0 0 24px #2167ff);animation:reactor-float 6s ease-in-out infinite;}
.reactor-column-face{position:absolute;inset:0;border-radius:22%;clip-path:polygon(50% 0%,94% 22%,94% 76%,50% 100%,6% 77%,6% 22%);}
.reactor-column-back{inset:-9%;border:0;background:linear-gradient(132deg,#3fe5ff,#245dff 38%,#c36dff 70%,#02ceff);filter:blur(2px);opacity:.68;animation:reactor-pulse 4s ease-in-out infinite alternate;}
.reactor-column-front{display:grid;place-items:center;border:1px solid #54d7ff;background:radial-gradient(circle at 50% 42%,rgba(45,89,231,.44),rgba(6,18,67,.96) 66%),repeating-linear-gradient(90deg,rgba(134,109,255,.06) 0 2px,transparent 2px 14px);box-shadow:inset 0 0 38px rgba(51,158,255,.56),0 0 32px rgba(111,55,255,.55);}
.reactor-column-front::before{content:"";position:absolute;inset:6px;clip-path:inherit;border:2px solid rgba(103,197,255,.63);border-radius:20%;filter:drop-shadow(0 0 10px #66dfff);}
.reactor-logo-frame{position:relative;z-index:2;width:52%;aspect-ratio:1;display:grid;place-items:center;filter:drop-shadow(0 0 15px rgba(151,91,255,.72));}
.reactor-logo-frame img{display:block;width:100%;height:auto;object-fit:contain;mix-blend-mode:screen;animation:reactor-logo-glow 4s ease-in-out infinite alternate;}
.reactor-inner-stars{position:absolute;inset:2%;background-image:radial-gradient(circle,#82f8ff 1px,transparent 1.7px),radial-gradient(circle,#b88cff 1px,transparent 1.7px);background-size:29px 43px,37px 31px;background-position:0 0,16px 9px;opacity:.6;animation:reactor-sparks 12s linear infinite;clip-path:inherit;}
.reactor-scanline{position:absolute;inset:0;border-radius:22%;background:linear-gradient(180deg,transparent 0%,rgba(97,193,255,.18) 49%,transparent 54%);background-size:100% 210%;animation:reactor-scan 4s linear infinite;clip-path:inherit;}
.reactor-floor{position:absolute;z-index:0;left:10%;right:10%;bottom:5%;height:21%;border-radius:50%;border:3px solid rgba(64,195,255,.72);transform:rotateX(65deg);box-shadow:0 0 20px #0479ff,inset 0 0 25px rgba(103,64,255,.51);animation:reactor-rotate-floor 14s linear infinite;}
.reactor-floor-inner{left:22%;right:22%;bottom:11%;height:16%;border-color:rgba(189,95,255,.86);animation-direction:reverse;animation-duration:8s;}
.reactor-ring{position:absolute;inset:12%;border:2px dashed rgba(78,174,255,.5);border-radius:50%;box-shadow:0 0 17px rgba(10,146,255,.3),inset 0 0 21px rgba(88,68,251,.19);animation:reactor-ring-spin 14s linear infinite;}
.reactor-ring-2{inset:6%;border:1px solid rgba(113,99,255,.43);border-top:3px solid #6ae8ff;border-bottom:3px solid #9c63ff;animation-duration:9s;animation-direction:reverse;}
.reactor-ring-3{inset:1%;border:1px dotted rgba(79,131,255,.35);border-left:3px solid #40caff;border-right:3px solid #ca6aff;animation-duration:18s;}
.reactor-energy-stream{position:absolute;left:49.5%;width:1.2%;height:20%;z-index:1;filter:drop-shadow(0 0 7px #3aa8ff);background:linear-gradient(180deg,transparent,rgba(93,232,255,.89),#fff,rgba(170,74,255,.65),transparent);animation:reactor-stream 3s ease-in-out infinite alternate;}
.reactor-stream-top{top:1%;}.reactor-stream-bottom{bottom:0%;animation-delay:-1.6s;}
.reactor-orbit-particle{position:absolute;z-index:7;width:7px;height:7px;border-radius:50%;background:white;box-shadow:0 0 11px 4px #42d3ff;top:50%;left:50%;}
.reactor-particle-a{animation:reactor-orbit-a 6s linear infinite;}
.reactor-particle-b{animation:reactor-orbit-a 8s linear infinite reverse;box-shadow:0 0 11px 4px #be69ff;}
.reactor-particle-c{animation:reactor-orbit-a 11s linear infinite;animation-delay:-4s;}
@keyframes reactor-breathe{to{transform:scale(1.08);opacity:.72}}
@keyframes reactor-float{50%{transform:perspective(720px) rotateX(-5deg) translateY(-7px)}}
@keyframes reactor-pulse{to{opacity:1;filter:blur(6px)}}
@keyframes reactor-sparks{to{background-position:93px 68px,-69px 116px}}
@keyframes reactor-scan{to{background-position:0 210%}}
@keyframes reactor-logo-glow{to{filter:brightness(1.4) drop-shadow(0 0 11px #8c8eff)}}
@keyframes reactor-rotate-floor{to{transform:rotateX(65deg) rotate(360deg)}}
@keyframes reactor-ring-spin{to{transform:rotate(360deg)}}
@keyframes reactor-stream{to{opacity:.42;transform:scaleY(1.2)}}
@keyframes reactor-orbit-a{from{transform:rotate(0deg) translateX(min(17vw,174px)) rotate(0deg)}to{transform:rotate(360deg) translateX(min(17vw,174px)) rotate(-360deg)}}
/* Carousel: identical gaps within each group AND at the seam between the duplicated groups.
   Highlight by neon only, not by expanding into neighbors. */
.clients-track,.clients-group{gap:64px!important;}
.clients-group{padding:5px 0!important;}
.clients-marquee .client-logo,.clients-marquee .client-logo.is-center{transform:none!important;flex:0 0 252px!important;box-sizing:border-box;transition:border-color .35s ease,box-shadow .35s ease,opacity .35s ease!important;}
.clients-marquee .client-logo.is-center{border-color:#81d8ff!important;box-shadow:0 0 0 1px rgba(135,214,255,.28) inset,0 0 32px rgba(44,153,255,.4),0 0 40px rgba(123,75,243,.17)!important;}
.clients-marquee{padding-block:28px!important;}
@media(max-width:1100px){.clients-track,.clients-group{gap:48px!important;}.clients-marquee .client-logo,.clients-marquee .client-logo.is-center{flex-basis:220px!important;}}
@media(max-width:650px){.clients-track,.clients-group{gap:32px!important;}.clients-marquee .client-logo,.clients-marquee .client-logo.is-center{flex-basis:184px!important;}}
/* Reuse existing text reveal engine on the finale (outside <main>). */
#tunnelClosingTitle.headline-typing .type-char{animation-duration:.34s;}
@media(max-width:1050px){.reactor-core{left:66%;top:54%;height:55%;}.reactor-floor{bottom:4%;}}
@media(max-width:760px){.hero-scene{background-image:radial-gradient(ellipse at 50% 50%,rgba(29,105,245,.23),transparent 55%),linear-gradient(180deg,#020816,#071336 74%,#040b20)!important;}.reactor-core{left:50%;top:44%;height:clamp(245px,62vw,370px);}.hero-holograms{isolation:isolate;}.hero-holograms .reactor-core{z-index:0;}.hero-holograms .holo-energy-network{opacity:.4;}}
@media (prefers-reduced-motion:reduce){.reactor-core,.reactor-core *, .reactor-core *::before,.reactor-core *::after{animation:none!important;}}
@media(max-width:760px){.reactor-core{top:178px;height:clamp(235px,63vw,290px);}.reactor-radiance{opacity:.8;}}
