/* NOVA · página. Misma identidad que el video: cabina de vuelo oscura, superficies planas con un borde fino,
   la única luz es NOVA (turquesa). Ámbar solo para radiación, magenta solo para alertas. */
@font-face{font-family:SG;src:url(motor/fonts/space-grotesk-300-latin.woff2);font-weight:300;font-display:swap}
@font-face{font-family:SG;src:url(motor/fonts/space-grotesk-400-latin.woff2);font-weight:400;font-display:swap}
@font-face{font-family:SG;src:url(motor/fonts/space-grotesk-500-latin.woff2);font-weight:500;font-display:swap}
@font-face{font-family:SG;src:url(motor/fonts/space-grotesk-600-latin.woff2);font-weight:600;font-display:swap}
@font-face{font-family:PM;src:url(motor/fonts/ibm-plex-mono-400-latin.woff2);font-weight:400;font-display:swap}
@font-face{font-family:PM;src:url(motor/fonts/ibm-plex-mono-500-latin.woff2);font-weight:500;font-display:swap}
:root{--bg:#04070b;--s1:#080d13;--s2:#0c131b;--l1:rgba(150,185,215,.1);--l2:rgba(150,185,215,.2);
  --ink:#e8eef5;--ink2:#a9b5c3;--ink3:#6a7787;--c:#46c8e8;--c2:#8fe6f5;--amb:#f2b457;--mag:#e2589b;--ok:#6fd6b0;
  --ease:cubic-bezier(.22,1,.36,1)}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-tap-highlight-color:transparent;overflow-x:clip;scroll-behavior:smooth;background:var(--bg)}
body{background:var(--bg);color:var(--ink);font-family:SG,system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1;line-height:1.5}
a{color:inherit;text-decoration:none}
a,button,summary,canvas,svg{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.wrap{width:min(1200px,100% - 32px);margin:0 auto}
.g{background:linear-gradient(95deg,#c4f4fb 0%,#8fe6f5 35%,#46c8e8 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.rot{display:inline-block;font:500 13px PM;letter-spacing:.18em;color:var(--c2);text-transform:uppercase;margin-bottom:18px}
.oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--c2);outline-offset:3px;border-radius:8px}

/* nav */
#nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:14px 0;transition:background .4s var(--ease),border-color .4s var(--ease);border-bottom:1px solid transparent}
#nav.solido{background:rgba(4,7,11,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom-color:var(--l1)}
#nav .wrap{display:flex;align-items:center;gap:28px}
.marca{display:flex;align-items:center;gap:8px;font:600 18px SG;letter-spacing:.14em}
.marca svg{width:34px;height:34px;overflow:visible}
.links{display:flex;gap:26px;margin-left:auto;font-size:14.5px;color:var(--ink2)}
.links a:hover{color:var(--ink)}
.evento{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border:1px solid var(--l2);border-radius:999px;font:500 12.5px PM;color:var(--ink2)}
.evento i{width:7px;height:7px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}
.idioma{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--l2);border-radius:999px;font:500 11.5px PM;letter-spacing:.06em}
.idioma a{padding:4px 8px;border-radius:999px;color:var(--ink2);transition:color .2s,background .2s}
.idioma a:hover{color:var(--ink)}
.idioma a[aria-current]{background:rgba(255,255,255,.08);color:var(--ink)}

/* héroe */
.heroe{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:110px 0 70px;overflow:hidden;isolation:isolate}
.h-foto{position:absolute;inset:0;z-index:-1}
.h-foto img{position:absolute;right:-6%;bottom:-18%;width:78%;max-width:1200px;opacity:.5;mask-image:radial-gradient(60% 60% at 60% 55%,#000 30%,transparent 72%);-webkit-mask-image:radial-gradient(60% 60% at 60% 55%,#000 30%,transparent 72%);transform:scale(calc(1 + var(--hs,0)*.08)) translateY(calc(var(--hs,0)*40px))}
.h-foto::after{content:"";position:absolute;inset:0;background:radial-gradient(50% 55% at 70% 45%,rgba(15,74,92,.45),transparent 70%),linear-gradient(180deg,transparent 70%,var(--bg))}
.h-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 11px;border:1px solid var(--l2);border-radius:999px;background:rgba(8,13,19,.6);font:500 12.5px PM;color:var(--ink2);letter-spacing:.02em}
.badge i{width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 0 0 rgba(70,200,232,.6);animation:pulso 2s infinite}
@keyframes pulso{70%{box-shadow:0 0 0 8px rgba(70,200,232,0)}100%{box-shadow:0 0 0 0 rgba(70,200,232,0)}}
h1{font-weight:500;font-size:clamp(44px,4.9vw,76px);line-height:.98;letter-spacing:-.05em;margin:26px 0 22px}
h2{font-weight:500;font-size:clamp(34px,4.6vw,64px);line-height:1.02;letter-spacing:-.045em;margin-bottom:18px}
.sub{font-size:clamp(17px,1.35vw,19.5px);color:var(--ink2);max-width:600px;line-height:1.55}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.btn{display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;font-weight:600;font-size:16px;transition:transform .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease)}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.btn-p{background:var(--c2);color:#032029;box-shadow:0 10px 40px -10px rgba(70,200,232,.6)}
.btn-p:hover{transform:translateY(-2px);box-shadow:0 14px 50px -10px rgba(70,200,232,.8)}
.btn-g{border:1px solid var(--l2);color:var(--ink)}
.btn-g:hover{background:rgba(255,255,255,.05)}
.in-1,.in-2,.in-3,.in-4{opacity:0;transform:translateY(18px);animation:entra .9s var(--ease) forwards}
.in-1{animation-delay:1.9s}.in-2{animation-delay:2.05s}.in-3{animation-delay:2.2s}.in-4{animation-delay:2.35s}
@keyframes entra{to{opacity:1;transform:none}}
.h-vis{position:relative;aspect-ratio:1/1;width:100%;max-width:600px;justify-self:center}
#hNova{position:absolute;inset:0;width:100%;height:100%;overflow:visible;cursor:pointer}
.hc{position:absolute;padding:13px 16px;border-radius:16px;background:rgba(8,13,19,.72);border:1px solid var(--l2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-width:170px;opacity:0;transform:translateY(14px);animation:entra 1s var(--ease) forwards}
.hc .k{display:block;font:500 11.5px PM;color:var(--ink3);letter-spacing:.06em;margin-bottom:4px}
.hc .k.amb{color:var(--amb)}.hc .k.nv{color:var(--c2)}
.hc b{font-weight:300;font-size:30px;letter-spacing:-.04em;line-height:1.1}
.hc b small{font-size:13px;font-weight:400;color:var(--ink2);letter-spacing:0;margin:0 3px 0 4px}
.hc svg{display:block;width:150px;height:30px;margin-top:6px;overflow:visible}
.hc svg path{fill:none;stroke:var(--c);stroke-width:2;stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(70,200,232,.6))}
.hc .barra{display:block;height:4px;border-radius:4px;background:rgba(255,255,255,.08);margin-top:10px;width:150px}
.hc .barra i{display:block;height:100%;border-radius:4px;background:var(--c)}.hc .barra.amb i{background:var(--amb)}
.hc p{font-size:14px;line-height:1.45;color:var(--ink);max-width:230px}
.hc1{left:-14%;top:16%;animation-delay:2.6s}.hc2{right:-8%;top:2%;animation-delay:2.8s}.hc3{right:-12%;bottom:16%;animation-delay:3s}.hc4{left:-10%;bottom:0;animation-delay:3.2s;border-color:rgba(143,230,245,.35)}
.h-hud{display:flex;gap:28px;margin-top:40px;font:500 12px PM;letter-spacing:.12em;color:var(--ink3);text-transform:uppercase;border-top:1px solid var(--l1);padding-top:16px}
.h-hud .demo{margin-left:auto;color:var(--ink3)}

/* historia */
#historia{position:relative}
.h-pin{position:relative;height:100svh;display:flex;flex-direction:column;padding-top:64px;overflow:hidden}
.h-escena{flex:1;min-height:0;display:grid;place-items:center;padding:14px 16px}
.h-marco{width:min(100% - 32px,calc((100svh - 170px) * 1.7778));aspect-ratio:16/9;position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--l2);box-shadow:0 40px 120px -40px rgba(70,200,232,.35);background:#04070b}
.h-ven{position:absolute;inset:0;overflow:hidden}
.h-marco iframe{position:absolute;left:0;top:0;width:1920px;height:1080px;border:0;transform-origin:0 0;pointer-events:none}
.h-carga{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;font:500 13px PM;letter-spacing:.12em;color:var(--ink3);text-transform:uppercase;background:#04070b;transition:opacity .6s}
.h-carga img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 14%;opacity:.55;filter:saturate(.9)}
.h-carga div{position:relative;display:flex;align-items:center;gap:12px;padding:10px 18px;border-radius:999px;background:rgba(4,7,11,.7);backdrop-filter:blur(8px)}
.h-aviso{position:absolute;top:17px;right:144px;z-index:4;padding:8px 14px;border-radius:14px 14px 4px 14px;background:var(--c2);color:#032029;font:600 13.5px SG;opacity:0;transform:translateX(8px);transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none;white-space:nowrap}
.h-aviso.on{opacity:1;transform:none}
.h-carga span{width:10px;height:10px;border-radius:50%;background:var(--c);animation:pulso 1.4s infinite}
.h-carga.fuera{opacity:0;pointer-events:none}
.h-sub{display:none}
.h-ctl3{position:absolute;top:14px;right:14px;z-index:4;display:flex;gap:8px}
.h-ctl3 button{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(4,7,11,.62);border:1px solid rgba(255,255,255,.14);color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .25s,border-color .25s,transform .25s var(--ease)}
.h-ctl3 button:hover{background:rgba(4,7,11,.85);border-color:rgba(143,230,245,.5)}
.h-ctl3 button:active{transform:scale(.92)}
.h-ctl3 svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
#hPlay .p2{display:none;fill:currentColor}#hPlay.pausa .p1{display:none}#hPlay.pausa .p2{display:inline}
#hSon .on{display:none}#hSon[aria-pressed="true"] .on{display:inline}#hSon[aria-pressed="true"] .off{display:none}
#hSon[aria-pressed="true"]{background:var(--c2);color:#032029;border-color:var(--c2)}
#hFull .co{display:none}#hFull.dentro .ex{display:none}#hFull.dentro .co{display:inline}
.h-escena.full{position:fixed!important;inset:0;z-index:300;background:#000;padding:0!important}
.h-escena.full .h-ctl3 button{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(4,7,11,.75)}
.h-escena.full .h-marco{position:absolute!important;left:50%;top:50%;border:0;border-radius:0;box-shadow:none}
.h-escena:fullscreen{background:#000;padding:0;display:grid!important;place-items:center}.h-escena:fullscreen .h-marco{border:0;border-radius:0}
.h-pie{display:flex;align-items:center;gap:16px;height:46px;flex:none;font:500 12px PM;color:var(--ink3);letter-spacing:.08em}
.h-prog{flex:1;height:14px;cursor:pointer;background:linear-gradient(var(--l1),var(--l1)) center/100% 2px no-repeat;position:relative}
.h-prog i{position:absolute;left:0;top:6px;display:block;height:2px;width:0;background:var(--c)}
.h-prog:hover{background-size:100% 4px}.h-prog:hover i{top:5px;height:4px}
.h-marco{cursor:pointer}

/* secciones */
.sec{padding:140px 0}
.estrecho{max-width:820px}
.rev{opacity:0;transform:translateY(26px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.rev.in{opacity:1;transform:none}
.mod-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:56px;border-top:1px solid var(--l1)}
.mod-grid>div{position:relative;padding:28px 28px 30px 0;border-bottom:1px solid var(--l1)}
.mod-grid>div:not(:nth-child(3n+1)){padding-left:28px;border-left:1px solid var(--l1)}
.mod-grid .sig{position:absolute;top:30px;right:28px;width:128px;height:40px}
.mod-grid>div:nth-child(3n+1) .sig{right:28px}
.mod-grid .ic{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;border:1px solid rgba(143,230,245,.3);color:var(--c2);margin-bottom:18px}
.mod-grid .amb .ic{border-color:rgba(242,180,87,.35);color:var(--amb)}
.mod-grid svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mod-grid b{display:block;font-size:20px;font-weight:500;letter-spacing:-.02em}
.mod-grid p{color:var(--ink2);margin:6px 0 12px;font-size:15.5px}
.mod-grid small{font:500 12px PM;color:var(--ink3)}
.bucle{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:18px;margin-top:80px}
.paso{padding:24px;border:1px solid var(--l1);border-radius:20px;background:var(--s1)}
.paso .n{font:500 12px PM;color:var(--c2);letter-spacing:.1em;text-transform:uppercase}
.paso b{display:block;font-size:20px;font-weight:500;margin:8px 0 6px;letter-spacing:-.02em}
.paso p{color:var(--ink2);font-size:15px}
.flecha{position:relative;width:120px;display:flex;flex-direction:column;align-items:center;gap:10px}
.flecha i{position:relative;display:block;width:100%;height:1px;background:repeating-linear-gradient(90deg,var(--l2) 0 4px,transparent 4px 10px)}
.flecha i::after{content:"";position:absolute;top:-3px;left:0;width:7px;height:7px;border-radius:50%;background:var(--c2);box-shadow:0 0 12px var(--c);animation:viaja 2.6s linear infinite}
.flecha.vuelta i::after{animation-delay:-1.3s}
@keyframes viaja{from{left:0}to{left:calc(100% - 7px)}}
.flecha span{font:500 11px PM;color:var(--ink3);text-align:center;letter-spacing:.04em}
.cifras{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:56px 0 64px;border-top:1px solid var(--l1)}
.cifras>div{padding:28px 24px 0 0}
.cifras>div+div{padding-left:24px;border-left:1px solid var(--l1)}
.cifras b{display:block;font-weight:300;font-size:clamp(34px,4.4vw,62px);letter-spacing:-.05em;line-height:1;white-space:nowrap}
.cifras b small{font-size:16px;font-weight:400;color:var(--ink2);letter-spacing:0;margin-left:6px}
.cifras .amb b{color:var(--amb)}
.cifras p{color:var(--ink2);font-size:15px;margin-top:10px;max-width:240px}
.fuentes{list-style:none;display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
.fuentes li{display:grid;grid-template-columns:240px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--l1)}
.fuentes b{font-weight:500}
.fuentes span{color:var(--ink2);font-size:15px}
.ruta{position:relative;display:grid;grid-template-columns:repeat(5,1fr);margin-top:90px}
.r-linea{position:absolute;left:10%;right:10%;top:6px;height:2px;background:var(--l1)}
.r-linea i{display:block;height:100%;width:calc(var(--rp,0) * 100%);background:linear-gradient(90deg,var(--c),var(--c2));box-shadow:0 0 12px var(--c)}
.r-paso{position:relative;text-align:center;padding-top:30px}
.r-paso::before{content:"";position:absolute;top:0;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--bg);border:2px solid var(--l2)}
.r-paso.hecho::before{background:var(--c2);border-color:var(--c2);box-shadow:0 0 14px var(--c)}
.r-paso::before{transition:background .4s,border-color .4s,box-shadow .4s}
.r-paso{opacity:.45;transition:opacity .5s}.r-paso.hecho{opacity:1}
.r-paso span{display:block;font:500 11.5px PM;color:var(--ink3);letter-spacing:.1em;text-transform:uppercase}
.r-paso b{display:block;font-size:19px;font-weight:500;margin:6px 0 4px}
.r-paso small{color:var(--ink2);font-size:14px}
.faq{margin-top:40px;border-top:1px solid var(--l1)}
.faq details{border-bottom:1px solid var(--l1)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:19px;font-weight:500;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{position:relative;width:14px;height:14px;flex:none}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:0;top:6px;width:14px;height:2px;background:var(--c2);transition:transform .3s var(--ease)}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i::after{transform:none}
.faq p{color:var(--ink2);padding:0 0 24px;max-width:680px}
.cierre{text-align:center;padding-bottom:100px}
.cierre .wrap{display:flex;flex-direction:column;align-items:center}
#finNova{width:min(300px,70vw);height:auto;overflow:visible;margin-bottom:10px;cursor:pointer}
.cierre .sub{margin:0 auto}
footer{border-top:1px solid var(--l1);padding:36px 0 48px}
footer .wrap{display:flex;gap:28px;align-items:center}
.f-logo{height:30px;opacity:.85;flex:none}
footer p{font-size:13px;color:var(--ink3);max-width:760px}

/* radiación interactiva */
.rd{display:grid;grid-template-columns:1fr 330px;gap:18px;margin-top:48px}
.rd-vis{position:relative;border:1px solid var(--l1);border-radius:24px;background:radial-gradient(80% 70% at 30% 20%,rgba(15,74,92,.25),transparent 70%),var(--s1);overflow:hidden}
#rdCv{display:block;width:100%;height:clamp(420px,46vw,560px);touch-action:pan-y;cursor:ew-resize}
.rd-panel{border:1px solid var(--l1);border-radius:24px;background:var(--s1);padding:24px;display:flex;flex-direction:column;gap:6px}
.rd-k{font:500 11.5px PM;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-top:10px}
.rd-n{display:flex;align-items:baseline;gap:8px}.rd-n b{font-weight:300;font-size:42px;letter-spacing:-.05em;line-height:1}.rd-n.big b{font-size:64px}.rd-n small{color:var(--ink2);font-size:14px}
#radiacion.sobre .rd-n.big b{color:var(--amb)}
.rd-f{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 0;border-bottom:1px solid var(--l1);font-size:15px}.rd-f small{color:var(--ink2);font-size:13px;white-space:nowrap}.rd-f small b{color:var(--c2);font-weight:500}
.rd-barra{position:relative;height:8px;border-radius:8px;background:rgba(255,255,255,.07);margin:8px 0 4px}
.rd-barra i{position:absolute;left:0;top:0;bottom:0;border-radius:8px;background:linear-gradient(90deg,var(--c),var(--c2));transition:background .4s}
#radiacion.sobre .rd-barra i{background:linear-gradient(90deg,var(--amb),#ffd59a)}
.rd-barra span{position:absolute;right:0;top:14px;font:500 12px PM;color:var(--ink2)}
.rd-nova{display:flex;gap:10px;align-items:flex-start;margin-top:26px;padding:12px;border-radius:16px;background:var(--s2);border:1px solid rgba(143,230,245,.18);min-height:92px}
.rd-nova svg{width:40px;height:40px;flex:none;overflow:visible}.rd-nova p{font-size:14.5px;line-height:1.45}.rd-nova b{color:var(--c2);font-weight:600}
.rd-ctl{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:16px}
.rd-ctl button{width:44px;height:44px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--c2);color:#032029}
.rd-ctl svg{width:16px;height:16px;fill:currentColor;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
#rdPlay .p1{display:none;fill:none}#rdPlay.on .p1{display:inline}#rdPlay.on .p2{display:none}
.rd-ctl input{flex:1;accent-color:var(--c2);height:28px}
.btn-tor{margin-top:12px;justify-content:center;height:46px;border:1px solid rgba(236,106,168,.5);color:#ffb3d4;background:rgba(236,106,168,.08)}
.btn-tor:hover{background:rgba(236,106,168,.16)}
.btn-tor svg{width:18px;height:18px}
.rd-pie{margin-top:16px;font-size:13px;color:var(--ink3);max-width:820px}

/* equipo en vivo */
.eq-vivo{position:relative;overflow:hidden;padding:110px 0 90px;background:radial-gradient(ellipse 70% 55% at 50% 38%,#0b0e14 0%,#06080c 55%,#030406 100%)}
#eqMalla{position:absolute;inset:0;pointer-events:none}
.eq-in{position:relative}
.eq-top{display:flex;justify-content:space-between;align-items:flex-start}
.eq-top img{height:clamp(40px,4.4vw,64px)}
.ev{font:400 13px/1.9 PM;letter-spacing:.3em;text-align:right;color:rgba(255,255,255,.75)}.ev b{font-weight:500;color:#fff}
.eq-g{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:70px}
.mb{text-align:center}
.anillo{position:relative;width:min(100%,300px);aspect-ratio:1;margin:0 auto;cursor:grab;touch-action:none}
.anillo:active{cursor:grabbing}
.anillo canvas{position:absolute;inset:0;width:100%;height:100%}
.anillo .br{filter:blur(14px);opacity:.6;transition:opacity .4s}
.mb.on .anillo .br{opacity:.95}
.anillo .tics{position:absolute;inset:-4%;width:108%;height:108%;overflow:visible;transition:transform 1.2s var(--ease)}
.mb.on .tics{transform:rotate(18deg)}
.anillo,.mb .txt{opacity:0;transition:opacity 1s var(--ease)}
.mb.listo .anillo,.mb.listo .txt{opacity:1}
.delta{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);font:500 12px PM;color:#fff;letter-spacing:.06em;white-space:nowrap;text-shadow:0 0 8px rgba(0,0,0,.9)}
.mb .txt{margin-top:34px}
.nom{font-size:clamp(19px,1.6vw,26px);font-weight:600;letter-spacing:.005em}
.rol{margin-top:9px;font:500 11.5px PM;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.mb .eq{margin-top:10px;font:500 11.5px PM;letter-spacing:.05em;color:var(--c)}
.eq-pie{text-align:center;margin-top:90px}
.eq-pie .tit{font-size:clamp(34px,4vw,58px);font-weight:700;letter-spacing:-.01em;line-height:1}
.eq-pie .tit span{color:rgba(255,255,255,.5);font-weight:500}
.sub2{margin-top:14px;font:500 13px PM;letter-spacing:.28em;color:rgba(255,255,255,.72)}
.pista{margin-top:22px;font-size:14.5px;color:var(--ink3)}

/* NOVA flotante + chat */
.fab{position:fixed;right:34px;bottom:30px;z-index:60;width:124px;height:124px;opacity:0;transform:scale(.4);pointer-events:none;transition:opacity .45s var(--ease),transform .6s cubic-bezier(.3,1.6,.5,1)}
.fab.on{opacity:1;transform:none;pointer-events:auto}
.fab svg{width:100%;height:100%;overflow:visible;pointer-events:none}
.globo{position:absolute;right:calc(100% + 4px);top:50%;transform:translateY(-50%) translateX(8px);white-space:nowrap;padding:10px 15px;border-radius:16px 16px 4px 16px;background:#0f151d;border:1px solid rgba(143,230,245,.35);font:600 14px SG;color:var(--ink);opacity:0;transition:opacity .4s,transform .4s var(--ease);pointer-events:none}
.globo.on{opacity:1;transform:translateY(-50%)}
.velo{position:fixed;inset:0;z-index:70;background:rgba(2,4,7,.5);opacity:0;pointer-events:none;transition:opacity .35s}
.velo.on{opacity:1;pointer-events:auto}
.chat{position:fixed;right:24px;bottom:24px;z-index:80;width:400px;max-height:min(640px,calc(100svh - 48px));display:flex;flex-direction:column;border-radius:24px;background:#080d13;border:1px solid var(--l2);box-shadow:0 30px 90px -20px rgba(0,0,0,.8),0 0 60px -30px rgba(70,200,232,.5);opacity:0;transform:translateY(20px) scale(.97);transform-origin:bottom right;pointer-events:none;transition:opacity .35s var(--ease),transform .45s var(--ease)}
.chat.on{opacity:1;transform:none;pointer-events:auto}
.c-asa{display:none}
.c-cab{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--l1)}
.c-cab svg{width:40px;height:40px;overflow:visible}
.c-cab b{display:block;font-size:16px}.c-cab small{color:var(--ok);font:500 12px PM}
.c-cab button{margin-left:auto;width:34px;height:34px;border-radius:50%;color:var(--ink2);font-size:15px}
.c-cab button:hover{background:rgba(255,255,255,.06)}
.c-msgs{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:10px;min-height:180px}
.m{max-width:85%;padding:11px 14px;border-radius:16px;font-size:15px;line-height:1.45;animation:entra .4s var(--ease) both}
.m.n{background:var(--s2);border:1px solid var(--l1);border-bottom-left-radius:5px;opacity:0;transform:translateY(8px)}
.m.u{align-self:flex-end;background:var(--c2);color:#032029;border-bottom-right-radius:5px;font-weight:500;opacity:0;transform:translateY(8px)}
.m.esc{display:flex;gap:5px;padding:14px}
.m.esc i{width:6px;height:6px;border-radius:50%;background:var(--ink3);animation:pt 1s infinite}
.m.esc i:nth-child(2){animation-delay:.15s}.m.esc i:nth-child(3){animation-delay:.3s}
@keyframes pt{50%{transform:translateY(-4px);background:var(--c2)}}
.c-chips{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--l1)}
.c-chips button{padding:8px 13px;border-radius:999px;border:1px solid rgba(143,230,245,.3);font-size:13.5px;color:var(--c2)}
.c-chips button:hover{background:rgba(143,230,245,.08)}

@media(max-width:1320px) and (min-width:921px){.hc1{left:-8%}.hc2{right:0}.hc3{right:-2%}.hc4{left:-6%}}
@media(max-width:920px){
  .rd{grid-template-columns:1fr;gap:12px;margin-top:32px}
  #rdCv{height:380px}
  .rd-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;padding:16px}
  .rd-a,.rd-b{min-width:0}
  .rd-k{margin-top:0}
  .rd-n b{font-size:34px}.rd-n.big b{font-size:34px}
  .rd-f{flex-direction:column;gap:2px;padding:6px 0 0;border:0;font-size:13px}
  .rd-ctl{grid-column:1/-1;order:3;padding-top:14px}
  .btn-tor{grid-column:1/-1;order:4}
  .rd-nova{grid-column:1/-1;order:5;margin-top:12px;min-height:0}
  .rd-barra span{top:12px;font-size:11px}
  .eq-g{grid-template-columns:1fr;gap:0;margin-top:36px;border-top:1px solid rgba(255,255,255,.08)}
  .mb{display:grid;grid-template-columns:112px 1fr;align-items:center;gap:18px;text-align:left;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .anillo{width:112px;cursor:default;touch-action:pan-y;pointer-events:none}
  .mb .txt{margin-top:0}
  .nom{font-size:20px}
  .pista{display:none}
  .eq-top{flex-direction:column;gap:14px}.ev{text-align:left;font-size:11px;letter-spacing:.22em}
  .rol{font-size:10px;letter-spacing:.16em;margin-top:6px}.mb .eq{font-size:10.5px;margin-top:8px}
  .sub2{font-size:10.5px;letter-spacing:.18em}.eq-pie{margin-top:64px}
  .links{display:none}
  .evento{margin-left:auto;white-space:nowrap}
  #nav .wrap{gap:12px}
  .idioma a{padding:4px 7px}
  .heroe{padding:92px 0 40px;justify-content:flex-start}
  .h-grid{grid-template-columns:1fr;gap:0}
  .h-vis{order:-1;width:min(100%,420px);margin:-10px auto -20px}
  .hc{min-width:0;padding:10px 12px;border-radius:13px}
  .hc b{font-size:22px}.hc svg,.hc .barra{width:100px}
  .hc p{font-size:12.5px;max-width:170px}
  .hc1{left:0;top:6%}.hc2{right:0;top:2%}.hc3,.hc4{display:none}
  .h-txt{text-align:left}
  h1{margin-top:20px}
  .h-hud{flex-wrap:wrap;gap:8px 18px;font-size:11px}
  .h-hud .demo{margin-left:0}
  .h-pin{padding-top:62px}
          .h-pin{padding-top:58px}
  .h-escena{flex:1;min-height:0;padding:0;display:block}
  .h-marco{border:0;box-shadow:none;background:#04070b;width:100%;height:100%;aspect-ratio:auto}
  .h-escena:not(.full) .h-carga{top:56px;bottom:auto;height:min(calc(100% - 174px),calc(100vw * 1080 / 700))}
  .h-escena:not(.full) .h-ven{top:56px;bottom:118px}
  /* bordes suaves con degradados encima (sin máscara: las máscaras sobre un iframe parpadean en el teléfono) */
  .h-escena:not(.full) .h-ven::before,.h-escena:not(.full) .h-ven::after{content:"";position:absolute;top:0;bottom:0;width:22px;z-index:2;pointer-events:none}
  .h-escena:not(.full) .h-ven::before{left:0;background:linear-gradient(90deg,#04070b,rgba(4,7,11,0))}
  .h-escena:not(.full) .h-ven::after{right:0;background:linear-gradient(270deg,#04070b,rgba(4,7,11,0))}
  /* nada de desenfoque detrás de lo que va sobre el video: en el teléfono hace parpadear el iframe */
  .h-sub,.h-ctl3 button,.h-carga div,.h-aviso{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .h-sub{background:rgba(5,8,12,.94)}.h-ctl3 button{background:rgba(4,7,11,.85)}
  .h-marco{border-radius:0;border-left:0;border-right:0}
    .h-sub{display:flex;align-items:center;gap:10px;position:absolute;left:50%;bottom:44px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);padding:7px 16px 7px 7px;border-radius:30px;background:rgba(5,8,12,.82);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font:400 15px/1.35 SG;color:#eef3f8;letter-spacing:-.01em;opacity:0;z-index:4;pointer-events:none}
  .h-sub svg{width:40px;height:40px;flex:none;overflow:visible}
  .h-sub b{font-weight:600;color:#a898ff;margin-right:7px}
  .h-pie{position:absolute;left:0;right:0;bottom:0;margin:0;padding:0 16px 8px;height:34px;width:auto;z-index:4;background:linear-gradient(transparent,rgba(4,7,11,.9))}
  .h-sub b{color:var(--c2);font-weight:600;margin-right:6px}
  .sec{padding:96px 0}
  .mod-grid{grid-template-columns:1fr}
  .mod-grid>div,.mod-grid>div:not(:nth-child(3n+1)){padding:22px 0;border-left:0}
  .mod-grid .sig,.mod-grid>div:nth-child(3n+1) .sig{right:0;top:24px;width:110px}
  .bucle{grid-template-columns:1fr;gap:10px}
  .flecha{width:auto;flex-direction:row;justify-content:center;padding:6px 0}
  .flecha i{width:1px;height:34px;background:repeating-linear-gradient(180deg,var(--l2) 0 4px,transparent 4px 10px)}
  .flecha i::after{left:-3px;animation-name:viajaV}
  .cifras{grid-template-columns:1fr 1fr}
  .cifras b small{font-size:13px;margin-left:3px}
  .cifras>div,.cifras>div+div{padding:22px 16px 22px 0;border-left:0;border-bottom:1px solid var(--l1)}
  .cifras>div:nth-child(even){padding-left:16px;border-left:1px solid var(--l1)}
  .fuentes{grid-template-columns:1fr}
  .fuentes li{grid-template-columns:1fr;gap:4px}
  .ruta{grid-template-columns:1fr;gap:26px;margin-top:60px}
  .r-linea{left:6px;right:auto;top:6px;bottom:6px;width:2px;height:auto}
  .r-linea i{width:100%;height:calc(var(--rp,0) * 100%)}
  .r-paso{text-align:left;padding:0 0 0 34px}
  .r-paso::before{left:0;margin-left:0}
  footer .wrap{flex-direction:column;align-items:flex-start}
  .fab{right:14px;bottom:calc(18px + env(safe-area-inset-bottom));width:84px;height:84px}
  .chat{left:0;right:0;bottom:0;width:auto;height:64svh;max-height:none;border-radius:26px 26px 0 0;opacity:1;transform:translateY(105%);transition:transform .5s cubic-bezier(.22,1,.36,1),height .45s cubic-bezier(.22,1,.36,1);border-bottom:0}
  .chat.on{transform:none}
  .chat.grande{height:calc(100svh - 56px)}
  .chat.arr{transition:none}
  .c-asa{display:block;padding:10px 0 2px;touch-action:none;cursor:grab}
  .c-asa i{display:block;width:42px;height:5px;border-radius:5px;background:rgba(255,255,255,.22);margin:0 auto}
  .c-cab{touch-action:none;padding-top:8px}
  .c-msgs{min-height:0}
}
@keyframes viajaV{from{top:0}to{top:calc(100% - 7px)}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .in-1,.in-2,.in-3,.in-4,.hc{animation:none;opacity:1;transform:none}
  .rev{opacity:1;transform:none;transition:none}
  .badge i,.flecha i::after,.h-carga span{animation:none}
}

/* ── héroe con video real ── */
#hVid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#04070b;display:block}
.h-marco .h-pie{position:absolute;left:0;right:0;top:calc(100% + 8px);height:28px;padding:0;background:none;z-index:4}
.h-escena.full .h-marco .h-pie,.h-escena:fullscreen .h-marco .h-pie{top:auto;bottom:6px;padding:0 16px}
.h-escena.full #hVid,.h-escena:fullscreen #hVid{object-fit:contain}
@media(max-width:920px){
  .h-escena:not(.full) .h-marco{width:100%;height:100%}
  .h-escena:not(.full) #hVid{object-fit:contain;object-position:50% 0}
  .h-escena:not(.full) .h-marco .h-pie{top:calc(min(100%, 100vw * 1.7778) - 30px);padding:0 16px}
}
@media(min-width:921px){.h-escena:not(.full) .h-marco{overflow:visible}.h-escena:not(.full) #hVid{border-radius:22px}}
/* teléfono: el video vertical siempre a todo el ancho, pegado abajo; arriba sobra fondo del mismo color (o se recorta su margen superior) */
@media(max-width:920px){
  .h-escena:not(.full) #hVid{top:auto;bottom:0;height:auto;aspect-ratio:9/16;object-fit:cover;object-position:50% 100%}
  .h-escena:not(.full) .h-marco .h-pie{top:auto;bottom:4px}
}

/* banda de la Tierra lejana */
.banda{position:relative;min-height:min(86svh,760px);display:flex;align-items:center;overflow:hidden;isolation:isolate;border-top:1px solid var(--l1);border-bottom:1px solid var(--l1)}
.b-foto{position:absolute;inset:0;z-index:-2}
.b-foto img{position:absolute;right:-4%;top:50%;height:118%;width:auto;max-width:none;transform:translateY(calc(-50% + var(--bp,0) * 60px)) scale(calc(1.04 + var(--bp,0) * .04));opacity:.9}
.banda::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--bg) 0%,rgba(4,7,11,.92) 30%,rgba(4,7,11,.35) 62%,rgba(4,7,11,.1) 100%),linear-gradient(180deg,var(--bg),transparent 18%,transparent 82%,var(--bg))}
.b-viaje{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.b-viaje path{fill:none;stroke:rgba(143,230,245,.28);stroke-width:1.2;stroke-dasharray:3 7;vector-effect:non-scaling-stroke}
.b-pk{fill:#c4f4fb;filter:drop-shadow(0 0 6px #46c8e8)}
.b-txt h2{font-size:clamp(38px,5.2vw,74px);max-width:820px}
.b-cred{position:absolute;right:24px;bottom:18px;font:500 10.5px PM;letter-spacing:.18em;color:rgba(197,207,219,.45)}
.sec-bucle{padding-top:90px}
@media(max-width:920px){
  .banda{min-height:620px;align-items:flex-end;padding-bottom:64px}
  .b-foto img{right:-35%;top:34%;height:76%}
  .banda::before{background:linear-gradient(180deg,var(--bg) 0%,rgba(4,7,11,.2) 22%,rgba(4,7,11,.15) 45%,rgba(4,7,11,.9) 68%,var(--bg) 100%)}
  .b-viaje{display:none}
  .sec-bucle{padding-top:64px}
}
@media(prefers-reduced-motion:reduce){.b-viaje{display:none}}

.estado{display:flex;gap:12px;align-items:flex-start;margin-top:22px;padding:14px 18px;border:1px solid var(--l1);border-radius:16px;background:var(--s1)}
.estado i{width:8px;height:8px;border-radius:50%;background:var(--amb);margin-top:8px;flex:none}
.estado p{font-size:14px;color:var(--ink2);line-height:1.55}
@media(max-width:920px){.estado{margin-top:14px}.estado p{font-size:13.5px}}
/* parallax más marcado: la Tierra baja más lento que la página, el texto sube un poco y la ruta va a su propio ritmo */
.b-foto img{height:118%;transform:translate3d(0,calc(-50% + var(--bp,0) * 240px),0) scale(calc(1 + var(--bp,0) * .08));will-change:transform}
.b-txt{transform:translate3d(0,calc(var(--bp,0) * -70px),0)}
.b-viaje{transform:translate3d(0,calc(var(--bp,0) * 140px),0)}
@media(max-width:920px){.b-foto img{height:76%;top:34%;transform:translate3d(0,calc(-50% + var(--bp,0) * 170px),0) scale(calc(1 + var(--bp,0) * .08))}.b-txt{transform:translate3d(0,calc(var(--bp,0) * -40px),0)}}
@media(prefers-reduced-motion:reduce){.b-foto img,.b-txt,.b-viaje{transform:none!important}}

/* videos */
.gal{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:40px}
.vc{display:block;text-align:left;border:0;background:none;cursor:pointer;color:inherit;font:inherit}
.vc .po{position:relative;display:block;border-radius:20px;overflow:hidden;aspect-ratio:4/5;background:#0a1017;border:1px solid var(--l1);transition:border-color .4s,box-shadow .4s}
.vc .po img,.vc .po video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vc .po img{transition:transform .8s var(--ease)}
.vc .po video{opacity:0;transition:opacity .45s}.vc .po video.on{opacity:1}
.vc:hover .po{border-color:rgba(143,230,245,.5);box-shadow:0 20px 50px -20px rgba(70,200,232,.5)}
.vc:hover .po img{transform:scale(1.05)}
.vc .pl{position:absolute;left:12px;bottom:12px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--c2);color:#032029;box-shadow:0 10px 24px -8px rgba(70,200,232,.8);transition:transform .3s var(--ease);z-index:2}
.vc:hover .pl{transform:scale(1.12)}
.vc .pl svg{width:16px;height:16px;fill:currentColor;margin-left:2px}
.vc .du{position:absolute;right:12px;bottom:14px;padding:3px 9px;border-radius:999px;background:rgba(4,7,11,.6);font:500 12px PM;color:#fff;z-index:2}
.vc .bar{position:absolute;left:0;right:0;bottom:0;height:3px;z-index:3}.vc .bar i{display:block;height:100%;width:100%;background:var(--c2);transform:scaleX(0);transform-origin:0 50%}
.vc b{display:block;margin-top:12px;font-size:15.5px;font-weight:600;letter-spacing:-.01em}
.vc small{display:block;color:var(--ink3);font:500 12px PM;margin-top:3px;letter-spacing:.04em}
.vmod{position:fixed;inset:0;z-index:200;background:rgba(2,4,7,.86);backdrop-filter:blur(10px);display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .35s}
.vmod.on{opacity:1;pointer-events:auto}
.vmod-in{position:relative;width:min(92vw,calc(86vh * .8));transform:scale(.96);transition:transform .45s var(--ease)}.vmod.on .vmod-in{transform:none}
.vmod-in.ancho{width:min(92vw,calc(80vh * 1.7778))}
.vmod video{width:100%;display:block;border-radius:18px;background:#000;border:1px solid var(--l2)}
.vmod b{display:block;margin-top:12px;font-weight:600}
#vcer{position:absolute;top:-48px;right:0;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:16px}
@media(max-width:920px){.gal{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:62%;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;margin:30px -16px 0;padding:0 16px 6px;scrollbar-width:none}.gal::after{content:"";width:1px}.gal::-webkit-scrollbar{display:none}.vc{scroll-snap-align:start}.vmod-in,.vmod-in.ancho{width:94vw}#vcer{top:-46px}}

/* ═══ ciclo de aprendizaje simulado ═══ */
#lpCv{display:block;width:100%;height:clamp(500px,48vw,600px)}
.lp-panel{gap:4px}
.lp-top{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lp-top .rd-k{margin-top:0}
#lpVer.nuevo{animation:lpNuevo 1.4s var(--ease)}
@keyframes lpNuevo{0%{color:#c3b8ff;text-shadow:0 0 18px rgba(168,152,255,.8)}100%{color:var(--ink);text-shadow:none}}
.lp-pasos{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:18px 0 0;padding:0}
.lp-pasos li{position:relative;padding-top:12px;font:500 10.5px PM;letter-spacing:.04em;color:var(--ink3);line-height:1.25;transition:color .3s}
.lp-pasos li::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:3px;background:rgba(255,255,255,.07);transition:background .3s,box-shadow .3s}
.lp-pasos li.hecho::before{background:rgba(143,230,245,.35)}
.lp-pasos li.on{color:var(--ink)}.lp-pasos li.on::before{background:var(--c2);box-shadow:0 0 10px var(--c)}
.lp-pasos li.alto{color:var(--amb)}.lp-pasos li.alto::before{background:var(--amb);box-shadow:0 0 10px rgba(242,180,87,.6)}
.lp-panel .rd-nova{margin-top:18px;min-height:112px}
.lp-dist{display:block;margin-top:14px}
.lp-dist .rd-k{display:flex;justify-content:space-between}.lp-dist .rd-k b{color:var(--c2);font-weight:500}
.lp-dist input{width:100%;accent-color:var(--c2);height:28px;margin-top:4px}
.lp-ctl{padding-top:10px}
.lp-ctl .lp-b{width:auto;flex:1;display:inline-flex;border-radius:999px;color:#ffd59a;background:rgba(242,180,87,.07)}
.lp-b svg{width:16px;height:16px;fill:none!important;stroke:currentColor;stroke-width:2}
.lp-b{flex:1;justify-content:center;height:44px;padding:0 14px;font-size:14px;border:1px solid rgba(242,180,87,.45);color:#ffd59a;background:rgba(242,180,87,.07)}
.lp-b:hover{background:rgba(242,180,87,.14)}.lp-b:disabled{opacity:.55;cursor:default}
.lp-b.mal{flex:none;margin-top:10px;border-color:rgba(226,88,155,.45);color:#ffb3d4;background:rgba(226,88,155,.07)}
.lp-b.mal:hover,.lp-b.mal.on{background:rgba(226,88,155,.18)}
.lp-b.mal.on{border-color:#e2589b}
#lpPlay .p1{display:none;fill:none}#lpPlay.on .p1{display:inline}#lpPlay.on .p2{display:none}
@media(max-width:920px){
  #lpCv{height:560px}
  .lp-panel{display:flex;padding:16px}
  .lp-panel>*{order:0!important}
  .lp-pasos li{font-size:9.5px}
  .lp-panel .rd-nova{min-height:0}
}
