/* =========================================================================
   Grupo RA · Experiencia v3
   Concepto: un solo recorrido por capítulos. Las franjas del símbolo RA son
   el hilo conductor: viven en un lienzo fijo y cambian de forma en cada etapa.
   Tema: alterna azul profundo, papel y azul corporativo (elección deliberada).
   ========================================================================= */
@font-face{font-family:"Archivo Variable";font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url("../fonts/archivo-wdth.woff2") format("woff2-variations"),url("../fonts/archivo-wdth.woff2") format("woff2")}

:root{
  --azul:#1E1499; --azul-900:#0C0944; --azul-800:#140E6B; --azul-600:#3B31B8; --azul-100:#ECEBFA; --azul-50:#F5F5FC;
  --amarillo:#E59900; --amarillo-claro:#FFD27A; --verde:#00AA35;
  --papel:#F6F6FB; --blanco:#FFFFFF; --tinta:#13113A; --tinta-2:#4B4970; --tinta-3:#8C8AA8; --linea:#DEDDEE;
  --error:#B42318; --exito:#0B7A3B;
  --fondo:var(--azul-900);
  --f-display:"Archivo Variable","Archivo","Arial Black",system-ui,sans-serif;
  --f-body:"Archivo Variable","Archivo",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-mono:"Archivo Variable","Archivo",system-ui,sans-serif;
  --ease:cubic-bezier(.2,.7,.1,1);
  --r:28px;
  --gl:max(16px,env(safe-area-inset-left,0px)); --gr:max(16px,env(safe-area-inset-right,0px));
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;background:var(--fondo);color:var(--tinta);font-stretch:100%;font-family:var(--f-body);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background-color .8s var(--ease)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--fondo)}
img,svg{display:block;max-width:100%;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--amarillo);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:12px;top:-80px;z-index:200;background:var(--amarillo);color:var(--azul-900);padding:.6rem 1rem;border-radius:8px;font-weight:700;text-decoration:none}
.skip:focus{top:12px}
[hidden]{display:none!important}
.marco{width:100%;max-width:1360px;margin-inline:auto;padding-left:max(var(--gl),min(56px,5vw));padding-right:max(var(--gr),min(56px,5vw))}

/* ---------- Tipografía ---------- */
.titular{font-family:var(--f-display);font-stretch:122%;font-weight:800;letter-spacing:-.04em;line-height:.95;font-size:clamp(2.3rem,1.1rem + 4.2vw,5.6rem);text-wrap:balance}
.bajada{font-size:clamp(1.02rem,.95rem + .35vw,1.25rem);line-height:1.55;max-width:52ch;opacity:.78}
.etiqueta{display:inline-flex;align-items:center;gap:.8rem;font-family:var(--f-mono);font-size:.74rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.etiqueta span{display:inline-grid;place-items:center;min-width:2.4rem;height:1.6rem;padding:0 .5rem;border-radius:999px;border:1px solid currentColor;font-size:.7rem;opacity:.9}
.cabeza{display:grid;gap:1.3rem;margin-bottom:clamp(2.5rem,2rem + 3vw,5rem)}
.cabeza--centro{justify-items:center;text-align:center}
.cabeza--centro .bajada{margin-inline:auto}
.palabra{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.palabra > span{display:inline-block}

/* ---------- Botones ---------- */
.btn{--bg:var(--azul);--fg:#fff;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:48px;padding:.75rem 1.35rem;border-radius:999px;background:var(--bg);color:var(--fg);border:1.5px solid var(--bg);font-weight:650;font-size:.95rem;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .25s,color .25s,border-color .25s,box-shadow .35s var(--ease)}
.btn svg{width:18px;height:18px;flex:none;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(3px)}
.btn--amarillo{--bg:var(--amarillo);--fg:var(--azul-900)}
.btn--amarillo:hover{box-shadow:0 12px 30px -10px rgba(229,153,0,.75)}
.btn--azul{--bg:var(--azul);--fg:#fff}
.btn--azul:hover{box-shadow:0 12px 30px -10px rgba(30,20,153,.6)}
.btn--blanco{--bg:#fff;--fg:var(--azul-900)}
.btn--vidrio{--bg:rgba(255,255,255,.08);--fg:#fff;border-color:rgba(255,255,255,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.btn--vidrio:hover{background:#fff;color:var(--azul-900);border-color:#fff}
.btn--sm{min-height:40px;padding:.5rem 1.05rem;font-size:.875rem}
.btn--xl{min-height:62px;padding:1rem 1.9rem;font-size:1.05rem}
[data-magnetic]{will-change:transform}
.enlace{display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;padding:0;font-weight:650;color:var(--azul);cursor:pointer;font-size:.95rem}
.enlace svg{width:18px;height:18px;transition:transform .35s var(--ease)}
.enlace:hover{text-decoration:underline}
.enlace:hover svg{transform:translateX(4px)}

/* ---------- Lienzo global de cintas ---------- */
.cintas-global{position:fixed;inset:0;width:100vw;height:100vh;height:100lvh;z-index:0;pointer-events:none}
main{position:relative;z-index:1}

/* ---------- Barra superior ---------- */
.barra{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;height:76px;padding-left:max(var(--gl),min(56px,5vw));padding-right:max(var(--gr),min(56px,5vw));color:#fff;transition:color .5s}
.barra__logo img{height:36px;width:auto}
.logo-c{display:none}
.tema-claro .barra{color:var(--tinta)}
.tema-claro .barra .logo-b{display:none}
.tema-claro .barra .logo-c{display:block}
.barra__cap{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:.7rem;align-items:center;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase}
.barra__cap [data-cap-n]{color:var(--amarillo)}
.barra__acc{display:flex;align-items:center;gap:.6rem}
.barra__menu{width:46px;height:46px;border-radius:50%;border:1.5px solid currentColor;background:transparent;display:grid;place-content:center;gap:5px;cursor:pointer;color:inherit;opacity:.9}
.barra__menu span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .3s var(--ease)}
.barra__menu:hover span:first-child{transform:translateX(-3px)}
.barra__menu:hover span:last-child{transform:translateX(3px)}
@media (max-width:760px){.barra__cap{display:none}.barra{height:66px}.barra__logo img{height:30px}}
.barra--fija{position:sticky;background:#fff;color:var(--tinta);border-bottom:1px solid var(--linea)}

/* Progreso lateral */
.progreso{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);z-index:40;color:#fff;transition:color .5s}
.tema-claro .progreso{color:var(--tinta)}
.progreso ol{display:grid;gap:.85rem}
.progreso a{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;text-decoration:none}
.progreso i{width:8px;height:8px;border-radius:50%;border:1.5px solid currentColor;opacity:.55;transition:all .4s var(--ease)}
.progreso b{font-family:var(--f-mono);font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;opacity:0;transform:translateX(8px);transition:opacity .3s,transform .3s;white-space:nowrap}
.progreso a:hover b,.progreso a:focus-visible b{opacity:.9;transform:none}
.progreso a.activo i{background:var(--amarillo);border-color:var(--amarillo);opacity:1;height:28px;border-radius:6px}
@media (max-width:900px){.progreso{display:none}}

/* Capas (índice, ficha) */
.capa{position:fixed;inset:0;z-index:90}
.capa--indice{background:var(--azul-900);color:#fff;overflow-y:auto}
.indice{min-height:100%;display:flex;flex-direction:column;justify-content:center;padding:calc(90px + env(safe-area-inset-top,0px)) max(var(--gr),min(56px,5vw)) calc(40px + env(safe-area-inset-bottom,0px)) max(var(--gl),min(56px,5vw));max-width:1360px;margin-inline:auto;position:relative}
.indice__lista{display:grid;gap:.2rem;counter-reset:x}
.indice__lista a{display:flex;align-items:baseline;gap:1.4rem;text-decoration:none;font-family:var(--f-display);font-stretch:122%;font-weight:800;letter-spacing:-.04em;font-size:clamp(2rem,1.2rem + 3.6vw,4.4rem);line-height:1.08;color:rgba(255,255,255,.55);transition:color .3s,transform .45s var(--ease)}
.indice__lista a span{font-family:var(--f-mono);font-size:.8rem;font-weight:500;letter-spacing:.1em;color:var(--amarillo-claro)}
.indice__lista a:hover,.indice__lista a:focus-visible{color:#fff;transform:translateX(12px)}
.indice__pie{margin-top:3rem;display:grid;gap:.8rem;font-size:.95rem;color:rgba(255,255,255,.8)}
.indice__pie span{display:block;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo-claro);margin-bottom:.15rem}
.cerrar{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:max(var(--gr),min(56px,5vw));width:48px;height:48px;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer;z-index:3;transition:transform .4s var(--ease)}
.cerrar:hover{transform:rotate(90deg)}
.cerrar svg{width:20px;height:20px}

/* ---------- Capítulos: colores por defecto (sin JS) ---------- */
.cap{position:relative}
.cap[data-tema="oscuro"]{background:var(--azul-900);color:#fff}
.cap[data-tema="medio"]{background:#120D63;color:#fff}
.cap[data-tema="azul"]{background:var(--azul);color:#fff}
.vivo .cap{background:transparent}

/* 00 · Inicio */
.cap--inicio{min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;isolation:isolate}
.cap--inicio::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 70% 80% at 18% 70%,rgba(12,9,68,.85),rgba(12,9,68,0) 70%)}
@media (max-width:760px){.cap--inicio::before{background:linear-gradient(0deg,rgba(12,9,68,.85) 20%,rgba(12,9,68,.35))}}
.inicio__pin{width:100%;padding-top:110px;padding-bottom:clamp(2rem,1rem + 4vh,4rem)}
.sello{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:.45rem .95rem .45rem .7rem;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.punto{width:8px;height:8px;border-radius:50%;background:var(--amarillo);animation:pulso 2.4s infinite}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(229,153,0,.6)}70%{box-shadow:0 0 0 10px rgba(229,153,0,0)}100%{box-shadow:0 0 0 0 rgba(229,153,0,0)}}
.inicio__t{font-family:var(--f-display);font-stretch:122%;font-weight:800;letter-spacing:-.05em;line-height:.88;font-size:clamp(3rem,.4rem + 6.3vw,8.6rem);margin:1.6rem 0 2.2rem}
.fila{display:block;overflow:hidden;padding-bottom:.07em}
.fila > span{display:inline-block}
.inicio__t em{font-style:normal;color:var(--amarillo)}
.fila--trazo > span{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.9);background:linear-gradient(90deg,#fff 0 50%,transparent 50% 100%);background-size:200% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;animation:rellena 1.6s 1.2s var(--ease) forwards}
.fila--trazo + .fila--trazo > span{animation-delay:1.45s}
@keyframes rellena{to{background-position:0 0}}
.inicio__pie{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem}
.inicio__pie p{max-width:40ch;font-size:clamp(1rem,.95rem + .3vw,1.2rem);color:rgba(255,255,255,.8)}
.rueda{display:inline-flex;align-items:center;gap:1rem;text-decoration:none;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase}
.rueda__ico{width:30px;height:50px;border-radius:999px;border:1.5px solid rgba(255,255,255,.5);display:grid;justify-items:center;padding-top:9px}
.rueda__ico i{width:4px;height:10px;border-radius:2px;background:var(--amarillo);animation:baja 1.8s infinite}
@keyframes baja{0%{transform:none;opacity:1}70%{transform:translateY(16px);opacity:0}100%{opacity:0}}
@media (max-width:600px){.inicio__t{font-size:11.2vw;font-stretch:108%;letter-spacing:-.035em}.sello{font-size:.64rem;letter-spacing:.1em}}

/* 01 · Manifiesto */
.cap--manifiesto{min-height:100vh;display:flex;align-items:center}
.manifiesto__pin{width:100%;padding-block:clamp(6rem,4rem + 6vw,10rem)}
.manifiesto__txt{font-family:var(--f-display);font-stretch:112%;font-weight:700;letter-spacing:-.03em;line-height:1.08;font-size:clamp(1.9rem,1rem + 3.4vw,4.4rem);margin:2rem 0 clamp(3rem,2rem + 4vw,6rem);max-width:22ch}
.w{display:inline;transition:opacity .2s}
.vivo .w{opacity:.14}
.w--acento{color:var(--azul)}
.cifras{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px solid currentColor}
.cifra{padding:1.4rem 1.2rem 0 0}
.cifra + .cifra{padding-left:1.4rem;border-left:1px solid var(--linea)}
.cifra b{display:block;font-family:var(--f-display);font-stretch:125%;font-weight:800;font-size:clamp(2.8rem,1.6rem + 4vw,6.4rem);line-height:.9;letter-spacing:-.05em;font-variant-numeric:tabular-nums;color:var(--azul)}
.cifra span{display:block;margin-top:.7rem;font-family:var(--f-mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-2)}
@media (max-width:760px){.cifras{grid-template-columns:repeat(2,minmax(0,1fr))}.cifra:nth-child(3){padding-left:0;border-left:0}.cifra{padding-bottom:1.4rem}}

/* 02 · Camino */
.cap--camino{padding-block:clamp(6rem,4rem + 6vw,10rem)}
.ruta{position:relative;display:grid;gap:clamp(3rem,2rem + 6vw,8rem);padding-block:2rem}
.ruta__svg{position:absolute;left:50%;top:0;width:min(46%,520px);height:100%;transform:translateX(-50%);overflow:visible;pointer-events:none}
.ruta__base{fill:none;stroke:var(--linea);stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-dasharray:2 7}
.ruta__trazo{fill:none;stroke:var(--amarillo);stroke-width:6;stroke-linecap:round;vector-effect:non-scaling-stroke}
.ruta__svg.px .ruta__base,.ruta__svg.px .ruta__trazo{vector-effect:none}
.ruta__svg.px .ruta__base{stroke-width:1.5}
.ruta__punta{position:absolute;left:0;top:0;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--amarillo);box-shadow:0 0 0 8px rgba(229,153,0,.18);opacity:0;pointer-events:none;z-index:2}
.estacion{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;z-index:1}
.estacion__card{grid-column:1 / span 5;background:#fff;border:1px solid var(--linea);border-radius:var(--r);padding:clamp(1.4rem,1rem + 1.5vw,2.4rem);display:grid;gap:.9rem;box-shadow:0 30px 60px -40px rgba(19,17,58,.4)}
.estacion--der .estacion__card{grid-column:8 / span 5}
.estacion__n{position:absolute;top:50%;transform:translateY(-50%);font-family:var(--f-display);font-stretch:125%;font-weight:800;font-size:clamp(6rem,3rem + 10vw,16rem);line-height:.8;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:2px var(--azul);opacity:.9;pointer-events:none}
.estacion--izq .estacion__n{right:0}
.estacion--der .estacion__n{left:0}
.estacion__eta{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--azul)}
.estacion h3{font-family:var(--f-display);font-stretch:118%;font-weight:800;letter-spacing:-.035em;font-size:clamp(1.8rem,1.2rem + 2vw,3rem);line-height:1}
.estacion p{color:var(--tinta-2)}
.chips{display:flex;flex-wrap:wrap;gap:.4rem}
.chips li{font-size:.8rem;padding:.3rem .75rem;border-radius:999px;background:var(--azul-50);border:1px solid var(--azul-100);color:var(--azul-800)}
.meta{margin-top:clamp(3rem,2rem + 4vw,6rem);display:grid;justify-items:center;gap:1.4rem;text-align:center}
.meta__t{font-family:var(--f-display);font-stretch:115%;font-weight:700;font-size:clamp(1.4rem,1rem + 1.5vw,2.2rem);letter-spacing:-.02em}
@media (max-width:820px){
  .ruta__svg{left:22px;width:40px;transform:none}
  .estacion__card,.estacion--der .estacion__card{grid-column:1 / -1;margin-left:48px}
  .estacion__n{display:none}
}

/* 03 · Ecosistema */
.cap--eco{padding-block:clamp(6rem,4rem + 5vw,9rem);overflow:hidden}
.eco__pin{width:100%}
.eco__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:2rem;align-items:center}
.eco__txt{display:grid;gap:1.3rem;align-content:center}
.leyenda{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.ley{display:inline-flex;align-items:center;gap:.55rem;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.04);cursor:pointer;font-size:.86rem;transition:background-color .25s,border-color .25s}
.ley i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.ley span{font-family:var(--f-mono);font-size:.72rem;opacity:.65}
.ley:hover{border-color:rgba(255,255,255,.5)}
.ley[aria-pressed="true"]{background:#fff;color:var(--azul-900);border-color:#fff}
.orbita{--r:min(36vw,290px);position:relative;width:100%;max-width:640px;aspect-ratio:1;margin-inline:auto}
.orbita__anillo{position:absolute;inset:50%;width:calc(var(--r) * 2);height:calc(var(--r) * 2);margin:calc(var(--r) * -1);border-radius:50%;border:1px dashed rgba(255,255,255,.22)}
.orbita__anillo--2{width:calc(var(--r) * 1.3);height:calc(var(--r) * 1.3);margin:calc(var(--r) * -.65);border-style:solid;border-color:rgba(255,255,255,.08)}
.orbita__nucleo{position:absolute;inset:0;margin:auto;width:calc(var(--r) * .78);height:calc(var(--r) * .78);border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--azul-600),var(--azul) 60%,var(--azul-800));display:grid;place-content:center;justify-items:center;gap:.4rem;box-shadow:0 0 0 14px rgba(59,49,184,.18),0 40px 80px -30px rgba(0,0,0,.6)}
.orbita__nucleo img{width:52%;margin-inline:auto}
.orbita__nucleo span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo-claro)}
.orbita__giro{position:absolute;inset:0;--giro:0deg}
.nodo{position:absolute;left:50%;top:50%;width:92px;margin:-46px 0 0 -46px;background:none;border:0;padding:0;cursor:pointer;display:grid;justify-items:center;gap:.4rem;color:#fff;transform:rotate(calc(var(--a) + var(--giro))) translateX(var(--r)) rotate(calc(-1 * (var(--a) + var(--giro))));transition:opacity .35s,filter .35s}
.nodo__disco{width:92px;height:92px;border-radius:50%;background:#fff;display:grid;place-items:center;padding:14px;box-shadow:0 0 0 3px var(--c),0 18px 40px -16px rgba(0,0,0,.6);transition:box-shadow .35s}
.nodo__disco img{transition:transform .45s var(--ease)}
.nodo__disco img{max-height:42px;width:auto;object-fit:contain}
.nodo__nom{font-size:.78rem;font-weight:600;white-space:nowrap;padding:.15rem .55rem;border-radius:999px;background:rgba(12,9,68,.7);backdrop-filter:blur(4px)}
.nodo:hover .nodo__disco img,.nodo:focus-visible .nodo__disco img{transform:scale(1.15)}
.nodo:hover .nodo__disco,.nodo:focus-visible .nodo__disco{box-shadow:0 0 0 5px var(--c),0 24px 50px -16px rgba(0,0,0,.7)}
.orbita.filtrando .nodo:not(.destacado){opacity:.22;filter:grayscale(1)}
@media (max-width:900px){.eco__grid{grid-template-columns:1fr}.orbita{--r:min(37vw,250px)}}
@media (max-width:560px){.orbita{--r:37vw;margin-top:1rem}.orbita__nucleo{width:calc(var(--r) * .62);height:calc(var(--r) * .62)}.nodo{width:58px;margin:-29px 0 0 -29px}.nodo__disco{width:58px;height:58px;padding:8px}.nodo__disco img{max-height:26px}.nodo__nom{font-size:.62rem}}
.lista-plats{margin-top:clamp(2rem,1.5rem + 2vw,3.5rem);color:#fff}
.lista-plats summary{cursor:pointer;font-family:var(--f-mono);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo-claro);display:inline-block;padding:.4rem 0}
.lista-plats__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:1rem;margin-top:1.2rem}
.lista-plats article{border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:1.1rem;display:grid;gap:.5rem}
.lista-plats h4{font-family:var(--f-display);font-stretch:112%;font-size:1.2rem}
.lista-plats h4 small{display:block;font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--amarillo-claro);font-weight:400}
.lista-plats p{font-size:.9rem;color:rgba(255,255,255,.75)}
.pend{display:inline-block;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:#7A4E00;background:#FFF6E3;border:1px dashed #E8B54D;border-radius:999px;padding:.25rem .65rem}

/* 04 · Formación */
.cap--formacion{overflow:hidden;padding-block:clamp(5rem,3rem + 5vw,8rem)}
.cinta-texto{white-space:nowrap;font-family:var(--f-display);font-stretch:125%;font-weight:800;font-size:clamp(3rem,2rem + 6vw,8rem);letter-spacing:-.05em;line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.35);margin-bottom:clamp(2rem,1.5rem + 3vw,4rem)}
.cinta-texto > div{display:inline-block;will-change:transform}
.formacion__cabeza{display:grid;gap:1.2rem;margin-bottom:clamp(2rem,1.5rem + 2vw,3rem)}
.formacion__pista{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1.25rem;width:100%;max-width:1360px;margin-inline:auto;padding-left:max(var(--gl),min(56px,5vw));padding-right:max(var(--gr),min(56px,5vw))}
.formato{position:relative;border-radius:var(--r);padding:clamp(1.5rem,1rem + 1.5vw,2.4rem);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:.8rem;min-height:320px;overflow:hidden;transition:background-color .35s,transform .5s var(--ease)}
.formato:hover{background:rgba(255,255,255,.14);transform:translateY(-6px)}
.formato__n{position:absolute;right:1.2rem;top:.6rem;font-family:var(--f-display);font-stretch:125%;font-weight:800;font-size:5.5rem;line-height:1;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1.5px rgba(255,210,122,.6)}
.formato__mod{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo-claro);margin-top:auto}
.formato h3{font-family:var(--f-display);font-stretch:116%;font-weight:800;font-size:clamp(1.5rem,1.1rem + 1.2vw,2.2rem);letter-spacing:-.03em;line-height:1.02}
.formato p{color:rgba(255,255,255,.8)}
.formato--cta{background:var(--amarillo);color:var(--azul-900);border-color:var(--amarillo);justify-content:flex-end}
.formato--cta:hover{background:#F2A80F}
.formato--cta h3{color:var(--azul-900)}
.formato--cta .btn{align-self:flex-start}
.formacion__pin.es-horizontal .formacion__pista{display:flex;width:max-content;max-width:none;margin:0;padding-left:max(var(--gl),calc((100vw - 1360px) / 2 + 56px))}
.formacion__pin.es-horizontal .formato{width:min(420px,32vw);min-height:460px}

/* 05 · Red de aliados */
.cap--red{padding-block:clamp(6rem,4rem + 6vw,10rem)}
.mosaico{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1rem}
.pieza{aspect-ratio:3/2;background:#fff;border:1px solid var(--linea);border-radius:20px;display:grid;place-items:center;padding:1rem 1.2rem;box-shadow:0 20px 40px -30px rgba(19,17,58,.35);transition:transform .45s var(--ease),border-color .3s}
.pieza:hover{transform:translateY(-6px) scale(1.04);border-color:var(--azul)}
.pieza img{max-height:64px;width:auto;object-fit:contain}
@media (max-width:1100px){.mosaico{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:560px){.mosaico{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 06 · Conectados */
.cap--con{padding-block:clamp(6rem,4rem + 6vw,10rem)}
.red-canales{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;gap:1.5rem;min-height:440px}
.red-canales__svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.linea{fill:none;stroke:rgba(255,255,255,.25);stroke-width:2;stroke-dasharray:6 8;vector-effect:non-scaling-stroke}
.pulso--a{fill:var(--amarillo)}
.pulso--b{fill:#fff}
.canal-nodo{position:absolute;left:50%;top:50%;width:110px;height:110px;margin:-55px;border-radius:50%;background:var(--azul);display:grid;place-items:center;box-shadow:0 0 0 12px rgba(30,20,153,.35),0 0 0 26px rgba(30,20,153,.15);animation:late 3s infinite}
.canal-nodo img{width:58%}
@keyframes late{50%{box-shadow:0 0 0 16px rgba(30,20,153,.3),0 0 0 34px rgba(30,20,153,.08)}}
.canal{position:relative;z-index:1;border-radius:var(--r);padding:clamp(1.4rem,1rem + 1.5vw,2.2rem);display:grid;gap:.8rem;align-content:start;max-width:440px}
.canal--a{grid-column:1 / span 5;grid-row:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.canal--b{grid-column:8 / span 5;grid-row:2;justify-self:end;background:#fff;color:var(--tinta)}
.canal__eti{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo-claro)}
.canal--b .canal__eti{color:var(--azul)}
.canal h3{font-family:var(--f-display);font-stretch:115%;font-weight:800;font-size:clamp(1.4rem,1.1rem + 1vw,2rem);letter-spacing:-.03em;line-height:1.05}
.canal p a{font-weight:600;text-decoration:none}
.canal p a:hover{text-decoration:underline}
.canal .btn{justify-self:start;margin-top:.4rem}
.pasos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(2.5rem,2rem + 3vw,4rem);border-top:1px solid rgba(255,255,255,.18)}
.pasos li{padding-top:1.1rem;display:grid;gap:.4rem}
.pasos b{font-family:var(--f-mono);font-size:.78rem;color:var(--amarillo-claro);font-weight:500}
.pasos span{color:rgba(255,255,255,.82)}
@media (max-width:820px){.red-canales{grid-template-columns:1fr;min-height:0}.canal--a,.canal--b{grid-column:1;grid-row:auto;justify-self:stretch;max-width:none}.canal-nodo,.red-canales__svg{display:none}.pasos{grid-template-columns:1fr}}

/* 07 · Final */
.cap--fin{padding-top:clamp(6rem,4rem + 6vw,10rem);min-height:100vh;display:flex;flex-direction:column;justify-content:space-between}
.fin{display:grid;gap:1.6rem}
.fin__t{font-family:var(--f-display);font-stretch:122%;font-weight:800;letter-spacing:-.06em;line-height:.85;font-size:min(13.2vw,15rem)}
.fin__sub{font-size:clamp(1.05rem,.95rem + .5vw,1.4rem);max-width:44ch;color:rgba(255,255,255,.82)}
.fin__acc{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.6rem}
.pie{display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;padding-block:3rem calc(2rem + env(safe-area-inset-bottom,0px));margin-top:clamp(4rem,3rem + 4vw,7rem);border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.75);font-size:.88rem}
.pie img{height:34px;width:auto}
.pie a{text-decoration:none}
.pie a:hover{color:#fff;text-decoration:underline}
.pie__redes{display:flex;gap:.5rem}
.pie__redes a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.22);display:grid;place-items:center;transition:background-color .2s}
.pie__redes a:hover{background:var(--amarillo);color:var(--azul-900);border-color:var(--amarillo)}
.pie__redes svg{width:18px;height:18px}
.pie__legal{grid-column:1 / -1;font-size:.8rem;color:rgba(255,255,255,.55)}
@media (max-width:760px){.pie{grid-template-columns:1fr}}

/* Hoja del formulario: sin JS es un bloque normal; con JS es un panel */
.hoja{margin-top:2rem}
.hoja__panel{position:relative;background:#fff;color:var(--tinta);border-radius:var(--r);padding:clamp(1.4rem,1rem + 2vw,2.6rem);max-width:820px}
.hoja__panel h3{font-family:var(--f-display);font-stretch:120%;font-weight:800;font-size:clamp(2rem,1.4rem + 2vw,3rem);letter-spacing:-.04em;margin:.6rem 0 1.4rem}
.hoja__panel .etiqueta{color:var(--azul)}
.hoja .cerrar{display:none}
.vivo .hoja{position:fixed;inset:0;z-index:95;margin:0;display:flex;justify-content:flex-end;background:rgba(12,9,68,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s}
.vivo .hoja.abierta{opacity:1;visibility:visible;transition:opacity .35s}
.vivo .hoja__panel{width:min(640px,100%);max-width:none;height:100%;overflow-y:auto;border-radius:0;padding-top:calc(clamp(1.4rem,1rem + 2vw,2.6rem) + env(safe-area-inset-top,0px));padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px));transform:translateX(40px);transition:transform .5s var(--ease)}
.vivo .hoja.abierta .hoja__panel{transform:none}
.vivo .hoja .cerrar{display:grid;color:var(--tinta)}

/* Formulario */
.form{display:grid;gap:1rem}
.form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.campo{display:grid;gap:.35rem;min-width:0}
.campo--full{grid-column:1 / -1}
.campo label{font-size:.84rem;font-weight:600}
.req{color:var(--error)}
.campo input,.campo select,.campo textarea{width:100%;min-height:48px;padding:.7rem .9rem;border:1.5px solid var(--linea);border-radius:10px;background:var(--papel);transition:border-color .2s,box-shadow .2s,background-color .2s}
.campo textarea{min-height:120px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:0;border-color:var(--azul);background:#fff;box-shadow:0 0 0 4px var(--azul-100)}
.campo.is-error input,.campo.is-error select,.campo.is-error textarea{border-color:var(--error);background:#FFF7F6}
.campo__error{font-size:.78rem;color:var(--error)}
.check{display:flex;gap:.7rem;align-items:flex-start;font-size:.85rem;color:var(--tinta-2)}
.check input{width:20px;height:20px;margin-top:.1rem;accent-color:var(--azul);flex:none}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form__destino{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--azul)}
.form__estado{border-radius:14px;padding:1rem 1.2rem;font-size:.92rem}
.form__estado--ok{background:#ECF8F0;color:var(--exito);border:1px solid #B5E3C4}
.form__estado--error{background:#FDF0EF;color:var(--error);border:1px solid #F3C2BD}
.form__pie{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.form__pie small{color:var(--tinta-3);font-size:.78rem}
.btn[disabled]{opacity:.6;cursor:progress}
@media (max-width:600px){.form__grid{grid-template-columns:1fr}}

/* Ficha de plataforma */
.capa--ficha{display:flex;justify-content:flex-end;background:rgba(12,9,68,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ficha{position:relative;width:min(560px,100%);height:100%;overflow-y:auto;background:#fff;color:var(--tinta);padding:calc(2.4rem + env(safe-area-inset-top,0px)) clamp(1.4rem,1rem + 2vw,2.6rem) calc(2rem + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:1rem;animation:entraDer .5s var(--ease)}
@keyframes entraDer{from{transform:translateX(40px);opacity:.4}}
.ficha .cerrar{color:var(--tinta)}
.ficha__logo{height:150px;border-radius:22px;border:1px solid var(--linea);display:grid;place-items:center;padding:1.2rem;margin-top:2.2rem;position:relative;overflow:hidden}
.ficha__logo::after{content:"";position:absolute;inset:auto 0 0;height:6px;background:var(--c,var(--amarillo))}
.ficha__logo img{max-height:90px;width:auto}
.ficha__cat{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--azul)}
.ficha h3{font-family:var(--f-display);font-stretch:120%;font-weight:800;font-size:clamp(2.2rem,1.6rem + 2vw,3.2rem);letter-spacing:-.045em;line-height:.95}
.ficha__marca{color:var(--tinta-3);font-size:.9rem;margin-top:-.4rem}
.ficha__desc{font-size:1.08rem;line-height:1.6;color:var(--tinta-2)}
.ficha__ben{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.ficha__ben li{border-top:2px solid var(--azul);padding-top:.7rem;font-weight:600;font-size:.94rem}
.ficha__ben li b{display:block;font-family:var(--f-mono);font-size:.7rem;color:var(--azul);font-weight:500}
.ficha__pub{font-size:.9rem;color:var(--tinta-2)}
.ficha__pub span{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-3)}
.ficha__acc{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:auto;padding-top:1rem}
.ficha .btn--linea{--bg:transparent;--fg:var(--azul);border-color:var(--azul)}
.ficha .btn--linea:hover{background:var(--azul);color:#fff}

/* Cursor que acompaña (solo escritorio) */
.cursor{position:fixed;left:0;top:0;z-index:120;pointer-events:none;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;border:1.5px solid var(--amarillo);opacity:0;transition:width .3s var(--ease),height .3s var(--ease),margin .3s var(--ease),background-color .3s,opacity .3s;mix-blend-mode:normal}
.cursor.visible{opacity:.9}
.cursor.sobre{width:70px;height:70px;margin:-35px 0 0 -35px;background:rgba(229,153,0,.15)}

/* Aviso de vista previa */
.aviso-previa{position:fixed;left:calc(12px + env(safe-area-inset-left,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:45;max-width:min(300px,calc(100vw - 32px));background:#FFF6E3;color:#6B4400;border:1px solid #F4D79A;border-radius:12px;padding:.5rem .8rem;font-size:.74rem;box-shadow:0 10px 30px -15px rgba(0,0,0,.4)}

/* Páginas simples (política, 404) */
.pagina-simple{--fondo:var(--papel)}
.simple{padding-block:clamp(3rem,2rem + 4vw,6rem)}
.simple__marco{max-width:860px}
.simple h1{font-family:var(--f-display);font-stretch:120%;font-weight:800;letter-spacing:-.045em;font-size:clamp(2.4rem,1.5rem + 4vw,4.6rem);line-height:.95;margin:1.2rem 0 1rem}
.simple h2{font-family:var(--f-display);font-stretch:112%;font-weight:750;font-size:1.3rem;margin:2.2rem 0 .6rem}
.simple p{color:var(--tinta-2);max-width:68ch}
.simple .etiqueta{color:var(--azul)}
.simple__fecha{font-size:.9rem}

@media (prefers-reduced-motion:reduce){
  .fila--trazo > span{animation:none;background-position:0 0}
  .punto,.rueda__ico i,.canal-nodo{animation:none}
  .vivo .w{opacity:1}
  .cursor{display:none}
  .pulso{display:none}
}

/* =========================================================================
   Ajustes: una sola familia (Archivo) y toda la experiencia en azul
   ========================================================================= */
/* Etiquetas y textos de apoyo: Archivo en ancho normal, mayúsculas espaciadas */
.etiqueta,.sello,.rueda,.estacion__eta,.ley span,.lista-plats summary,.lista-plats h4 small,.pend,.cifra span,.formato__mod,
.canal__eti,.pasos b,.form__destino,.ficha__cat,.ficha__ben li b,.ficha__pub span,.indice__pie span,.progreso b,.orbita__nucleo span{font-family:var(--f-display);font-stretch:100%;font-weight:600}
.etiqueta{gap:.7rem;color:var(--amarillo-claro)}
.etiqueta::before{content:"";width:28px;height:2px;background:var(--amarillo)}
.indice__lista a{font-stretch:122%}
body,.bajada,p,.campo label,.btn{font-stretch:100%}
/* Manifiesto sobre azul */
.manifiesto__txt{color:#fff}
.vivo .w{opacity:.16}
.w--acento{color:var(--amarillo)}
.cifras{border-top-color:rgba(255,255,255,.3)}
.cifra + .cifra{border-left-color:rgba(255,255,255,.14)}
.cifra b{color:var(--amarillo)}
.cifra span{color:rgba(255,255,255,.7)}
/* Camino sobre azul */
.ruta__base{stroke:rgba(255,255,255,.28)}
.estacion__n{-webkit-text-stroke:2px rgba(255,255,255,.4)}
.cap--camino .bajada,.cap--red .bajada{color:#fff}
.estacion__card{border-color:transparent;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
/* Aliados sobre azul */
.pieza{border-color:transparent;box-shadow:0 24px 50px -30px rgba(0,0,0,.6)}
.pieza:hover{border-color:var(--amarillo)}
/* Barra siempre clara sobre azul */
.tema-claro .barra{color:#fff}
.tema-claro .barra .logo-b{display:block}
.tema-claro .barra .logo-c{display:none}
.tema-claro .progreso{color:#fff}

.estacion__card{color:var(--tinta)}
.estacion__card .estacion__eta{color:var(--azul)}

/* =========================================================================
   V4 · Ecosistema educativo
   ========================================================================= */
.cifra b span{display:inline;margin:0;font:inherit;letter-spacing:inherit;text-transform:none;color:inherit}
.equipo{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin:-1rem 0 clamp(2.5rem,2rem + 3vw,4.5rem)}
.equipo p{font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo-claro)}
.equipo ul{display:flex;flex-wrap:wrap;gap:.45rem}
.equipo li{padding:.4rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.25);font-size:.88rem;color:rgba(255,255,255,.88)}

/* Tu desafío: tarjetas que se voltean como una página */
.cap--desafio{padding-block:clamp(6rem,4rem + 5vw,9rem)}
.desafio__pin{width:100%}
.tri{display:inline}
.tri--2{color:var(--amarillo)}
.tri--3{color:#2BD167}
.volteos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem;perspective:1600px}
.volteo{position:relative;min-height:340px;cursor:pointer;outline-offset:6px;border-radius:var(--r)}
.volteo__in{position:relative;height:100%;min-height:inherit;display:grid;gap:1rem}
.volteo__cara{border-radius:var(--r);padding:clamp(1.3rem,1rem + 1vw,1.8rem);display:flex;flex-direction:column;gap:1rem}
.volteo__frente{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:#fff}
.volteo__dorso{background:#fff;color:var(--tinta)}
.volteo__ico{width:64px;height:64px;border-radius:18px;background:var(--amarillo);color:var(--azul-900);display:grid;place-items:center}
.volteo__ico svg{width:32px;height:32px}
.volteo__reto{font-family:var(--f-display);font-stretch:116%;font-weight:800;font-size:clamp(1.35rem,1.1rem + .8vw,1.75rem);line-height:1.08;letter-spacing:-.025em;margin-top:auto}
.volteo__pista{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--amarillo-claro)}
.volteo__ok{width:52px;height:52px;border-radius:50%;background:#E3F7EA;color:#0B7A3B;display:grid;place-items:center}
.volteo__ok svg{width:28px;height:28px}
.volteo__resp{font-size:1.06rem;line-height:1.5;font-weight:500;margin-top:auto}
.volteo__marca{font-family:var(--f-display);font-stretch:118%;font-weight:800;font-size:.85rem;color:var(--azul)}
.vivo .volteo__in{display:block;transform-style:preserve-3d;transition:transform .9s var(--ease)}
.vivo .volteo__cara{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.vivo .volteo__dorso{transform:rotateY(180deg)}
.vivo .volteo.volteado .volteo__in{transform:rotateY(180deg)}
.vivo .volteo:hover .volteo__frente{border-color:var(--amarillo)}
@media (max-width:1100px){.volteos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.volteos{grid-template-columns:1fr}.volteo{min-height:250px}}

/* El libro del ecosistema */
.cap--libro{padding-block:clamp(6rem,4rem + 5vw,9rem)}
.libro__pin{width:100%}
.libro__cabeza{margin-bottom:clamp(2rem,1.5rem + 2vw,3.5rem)}
.pilares{display:grid;gap:1.25rem}
.pilar{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);border-radius:20px;overflow:hidden;background:#FBFAF7;color:var(--tinta);box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.pilar__visual{padding:clamp(1.4rem,1rem + 2vw,2.6rem);display:flex;flex-direction:column;justify-content:flex-end;gap:.6rem;color:#fff;min-height:240px;position:relative;overflow:hidden}
.pilar__visual::after{content:"";position:absolute;right:-20%;top:-30%;width:70%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.18)}
.pilar--verde .pilar__visual{background:#0A8F35}
.pilar--azul .pilar__visual{background:var(--azul)}
.pilar--amarillo .pilar__visual{background:var(--amarillo);color:var(--azul-900)}
.pilar__ico{width:78px;height:78px;border-radius:22px;background:rgba(255,255,255,.18);display:grid;place-items:center;margin-bottom:auto}
.pilar__ico svg{width:40px;height:40px}
.pilar h3{font-family:var(--f-display);font-stretch:122%;font-weight:800;letter-spacing:-.04em;font-size:clamp(2rem,1.4rem + 2vw,3.2rem);line-height:.95}
.pilar__lema{font-weight:600;font-size:1.02rem;opacity:.9}
.pilar__texto{padding:clamp(1.4rem,1rem + 2vw,2.6rem);display:flex;flex-direction:column;justify-content:center;gap:1.2rem}
.pilar__cabeza{font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--azul)}
.pilar__puntos{display:grid;gap:.9rem}
.pilar__puntos li{position:relative;padding-left:1.6rem;font-size:1.02rem;line-height:1.45;color:var(--tinta)}
.pilar__puntos li::before{content:"";position:absolute;left:0;top:.55em;width:.8rem;height:2px;background:var(--amarillo)}
@media (max-width:700px){.pilar{grid-template-columns:1fr}.pilar__visual{min-height:200px}}
/* Libro armado (escritorio) */
.libro--armado .pilares{display:none}
.libro__escena{position:relative;width:min(1080px,100%,104vh);aspect-ratio:2 / 1.12;margin:0 auto;perspective:2600px}
.libro__escena::before{content:"";position:absolute;left:3%;right:3%;bottom:-6%;height:12%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 70%);filter:blur(10px);z-index:-1}
.libro__lomo{position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:rgba(0,0,0,.18);z-index:60;pointer-events:none}
.pag{position:absolute;top:0;width:50%;height:100%;overflow:hidden}
.pag--izq{left:0;border-radius:16px 0 0 16px}
.pag--der{left:50%;border-radius:0 16px 16px 0}
.folio{position:absolute;top:0;left:50%;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;will-change:transform}
.folio__cara{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.folio__frente{border-radius:0 16px 16px 0}
.folio__dorso{transform:rotateY(180deg);border-radius:16px 0 0 16px}
.papel{background:#FBFAF7;color:var(--tinta);height:100%;display:flex;flex-direction:column;padding:clamp(1.6rem,1rem + 2.4vw,3.2rem)}
.papel--der{background-image:linear-gradient(90deg,rgba(0,0,0,.16),rgba(0,0,0,0) 9%)}
.papel--izq{background-image:linear-gradient(270deg,rgba(0,0,0,.16),rgba(0,0,0,0) 9%)}
.papel .pilar__texto{padding:0;height:100%;justify-content:center}
.papel__pie{margin-top:auto;padding-top:1rem;font-family:var(--f-display);font-stretch:112%;font-weight:700;font-size:.72rem;letter-spacing:.06em;color:var(--tinta-3)}
.portada{height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:.7rem;padding:clamp(1.6rem,1rem + 2.4vw,3.2rem);color:#fff;position:relative;overflow:hidden}
.portada::before{content:"";position:absolute;inset:0;background-image:linear-gradient(270deg,rgba(0,0,0,.25),rgba(0,0,0,0) 10%)}
.portada::after{content:"";position:absolute;right:-25%;top:-25%;width:80%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.2);box-shadow:0 0 0 30px rgba(255,255,255,.04)}
.portada--verde{background:#0A8F35}.portada--azul{background:var(--azul)}.portada--amarillo{background:var(--amarillo);color:var(--azul-900)}
.portada--cierre{background:var(--azul-900);justify-content:center;align-items:flex-start}
.portada .pilar__ico{margin-bottom:auto}
.portada h3{font-family:var(--f-display);font-stretch:122%;font-weight:800;letter-spacing:-.045em;font-size:clamp(2.2rem,1.4rem + 2.6vw,3.8rem);line-height:.92}
.portada p{font-weight:600;font-size:1.05rem;opacity:.92;max-width:28ch}
.portada img{width:120px;margin-bottom:1.2rem}
.folio__sombra{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,0));opacity:0}
.libro__ayuda{margin-top:1.6rem;text-align:center;font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--amarillo-claro)}
.libro__ayuda b{color:#fff}

/* Innovación y tecnología */
.cap--inno{padding-block:clamp(6rem,4rem + 5vw,9rem);overflow:hidden;isolation:isolate}
.circuito{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.circuito path{fill:none;stroke:rgba(255,255,255,.13);stroke-width:1.5;vector-effect:non-scaling-stroke}
.circuito circle{fill:var(--amarillo)}
.inno__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:1.4rem;align-items:stretch}
.ia{border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:0 0 clamp(1.4rem,1rem + 1.5vw,2rem);display:flex;flex-direction:column;gap:1.2rem;overflow:hidden}
.ia__barra{display:flex;align-items:center;gap:.45rem;padding:1rem 1.4rem;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04)}
.ia__barra span{width:11px;height:11px;border-radius:50%;background:rgba(255,255,255,.25)}
.ia__barra span:first-child{background:var(--amarillo)}
.ia__barra span:nth-child(2){background:#2BD167}
.ia__barra b{margin-left:.8rem;font-weight:600;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.ia__pedido,.ia__resp,.ia__nota{margin-inline:clamp(1.2rem,1rem + 1vw,1.8rem)}
.ia__pedido{align-self:flex-end;max-width:85%;background:#fff;color:var(--tinta);border-radius:18px 18px 4px 18px;padding:.9rem 1.1rem}
.ia__pedido small,.ia__resp small{display:block;font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--azul);margin-bottom:.25rem}
.ia__pedido p{font-size:1.02rem;font-weight:500;min-height:1.5em}
.ia__pedido p.escribiendo::after{content:"";display:inline-block;width:2px;height:1.05em;margin-left:2px;background:var(--azul);vertical-align:-2px;animation:parpadeo .8s steps(1) infinite}
@keyframes parpadeo{50%{opacity:0}}
.ia__resp small{color:var(--amarillo-claro);display:flex;align-items:center;gap:.5rem}
.ia__punto{width:8px;height:8px;border-radius:50%;background:#2BD167;box-shadow:0 0 0 0 rgba(43,209,103,.6);animation:pulso 2s infinite}
.ia__lista{display:grid;gap:.55rem}
.ia__lista li{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);font-weight:600}
.ia__check{width:28px;height:28px;border-radius:50%;background:#2BD167;color:var(--azul-900);display:grid;place-items:center;flex:none}
.ia__check svg{width:18px;height:18px}
.ia__nota{font-size:.95rem;color:rgba(255,255,255,.75);margin-top:auto}
.labs{display:grid;gap:1rem}
.lab{display:grid;grid-template-columns:120px minmax(0,1fr);gap:1.1rem;align-items:center;padding:1.1rem;border-radius:22px;background:#fff;color:var(--tinta)}
.lab__anim{width:120px;height:90px;border-radius:14px;background:var(--azul-900);display:grid;place-items:center;overflow:hidden}
.lab__anim svg{width:100%;height:100%}
.lab h3{font-family:var(--f-display);font-stretch:114%;font-weight:800;font-size:1.2rem;letter-spacing:-.02em;margin-bottom:.25rem}
.lab p{font-size:.88rem;color:var(--tinta-2);line-height:1.45}
.engrane{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;transform-box:fill-box;transform-origin:center}
.engrane--a{stroke:var(--amarillo);animation:gira 6s linear infinite}
.engrane--b{animation:gira 4s linear infinite reverse}
@keyframes gira{to{transform:rotate(360deg)}}
.imp__marco{fill:none;stroke:rgba(255,255,255,.3);stroke-width:2}
.imp__cabezal{fill:var(--amarillo);stroke:var(--amarillo);stroke-width:2;animation:cabezal 2.4s ease-in-out infinite alternate}
@keyframes cabezal{from{transform:translateX(40px)}to{transform:translateX(80px)}}
.imp__capas rect{fill:#fff;transform-box:fill-box;transform-origin:bottom;animation:capa 6s ease-out infinite}
.imp__capas rect:nth-child(2){animation-delay:.5s;fill:#ECEBFA}.imp__capas rect:nth-child(3){animation-delay:1s}.imp__capas rect:nth-child(4){animation-delay:1.5s;fill:#ECEBFA}.imp__capas rect:nth-child(5){animation-delay:2s;fill:var(--amarillo)}
@keyframes capa{0%{transform:scaleY(0);opacity:0}8%,85%{transform:scaleY(1);opacity:1}100%{opacity:0}}
.matraz{fill:none;stroke:#fff;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.liquido{fill:#2BD167;opacity:.85}
.burbuja{fill:#fff;animation:sube 2.4s ease-in infinite;opacity:0}
.b2{animation-delay:.8s}.b3{animation-delay:1.5s}
@keyframes sube{0%{transform:translateY(0);opacity:0}20%{opacity:1}100%{transform:translateY(-46px);opacity:0}}
.incluye{margin-top:clamp(2rem,1.5rem + 2vw,3rem);display:grid;gap:.9rem}
.incluye p{font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo-claro)}
.incluye ul{display:flex;flex-wrap:wrap;gap:.5rem}
.incluye li{padding:.5rem 1rem;border-radius:999px;border:1px solid rgba(255,255,255,.22);font-size:.9rem}
.incluye small{color:rgba(255,255,255,.55);font-size:.8rem}
@media (max-width:980px){.inno__grid{grid-template-columns:1fr}}
@media (max-width:460px){.lab{grid-template-columns:1fr}.lab__anim{width:100%}}

/* Áreas en movimiento */
.areas{margin-top:clamp(3rem,2rem + 4vw,5rem);display:grid;gap:1rem}
.areas__t{text-align:center;font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo-claro)}
.areas__marco{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.areas__pista{display:flex;gap:.7rem;width:max-content;animation:desliza 45s linear infinite}
.areas__pista li{padding:.7rem 1.3rem;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);font-family:var(--f-display);font-stretch:112%;font-weight:700;font-size:1.05rem;white-space:nowrap}
@keyframes desliza{to{transform:translateX(-50%)}}

/* Resultados */
.cap--resultados{padding-block:clamp(6rem,4rem + 5vw,9rem)}
.logros{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.logros__union{position:absolute;left:50%;top:6%;bottom:6%;width:2px;margin-left:-1px;background:linear-gradient(var(--amarillo),rgba(229,153,0,0));transform-origin:top}
.logro{background:#fff;color:var(--tinta);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.logro h3{padding:1.2rem clamp(1.3rem,1rem + 1vw,1.8rem);font-family:var(--f-display);font-stretch:118%;font-weight:800;font-size:clamp(1.3rem,1.1rem + .8vw,1.7rem);letter-spacing:-.025em;color:#fff}
.logro--azul h3{background:var(--azul)}
.logro--verde h3{background:#0A8F35}
.logro--amarillo h3{background:var(--amarillo);color:var(--azul-900)}
.logro ul{display:grid;gap:.85rem;padding:1.3rem clamp(1.3rem,1rem + 1vw,1.8rem) 1.6rem}
.logro li{display:flex;gap:.75rem;align-items:flex-start;font-weight:500;line-height:1.4}
.tick{width:22px;height:22px;flex:none;fill:none;stroke:#0A8F35;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;margin-top:.05rem}
.vivo .tick path{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .6s var(--ease)}
.vivo .logro.visto .tick path{stroke-dashoffset:0}
.vivo .logro.visto li:nth-child(2) .tick path{transition-delay:.15s}
.vivo .logro.visto li:nth-child(3) .tick path{transition-delay:.3s}
.vivo .logro.visto li:nth-child(4) .tick path{transition-delay:.45s}
@media (max-width:760px){.logros{grid-template-columns:1fr}.logros__union{display:none}}

/* Por qué elegirnos */
.porque{overflow:hidden;padding-bottom:clamp(3rem,2rem + 4vw,6rem)}
.porque__fila{display:flex;align-items:center;gap:clamp(1rem,.5rem + 2vw,2.5rem);width:max-content;white-space:nowrap;will-change:transform}
.porque__fila span{font-family:var(--f-display);font-stretch:125%;font-weight:800;letter-spacing:-.045em;font-size:clamp(2.4rem,1.2rem + 4.5vw,6rem);line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.55)}
.porque__fila span:nth-of-type(2n){color:#fff;-webkit-text-stroke:0}
.porque__fila i{font-style:normal;color:var(--amarillo);font-size:clamp(1.6rem,1rem + 2vw,3rem)}
.cap--fin{padding-top:clamp(4rem,3rem + 4vw,7rem)}
.fin__frase{margin:0;font-family:var(--f-display);font-stretch:108%;font-weight:600;font-size:clamp(1.15rem,1rem + .6vw,1.5rem);line-height:1.35;color:var(--amarillo-claro);max-width:40ch;border-left:3px solid var(--amarillo);padding-left:1.1rem}

@media (prefers-reduced-motion:reduce){
  .areas__pista,.engrane,.imp__cabezal,.imp__capas rect,.burbuja,.ia__punto{animation:none}
  .imp__capas rect{opacity:1}
  .vivo .volteo__in{transition:none}
}

.vivo .cap--libro{padding-block:0}
.vivo .libro__pin{padding-top:96px;padding-bottom:2.5rem;min-height:100vh;display:flex;align-items:center}
.vivo .libro__cabeza{margin-bottom:1.6rem;gap:.8rem}
.vivo .libro__cabeza .titular{font-size:clamp(2rem,1rem + 3vw,4rem)}
.libro__escena .pilar__puntos li{font-size:clamp(.9rem,.8rem + .3vw,1.02rem)}

.formato{min-height:280px;justify-content:flex-start}
.formato__mod{margin-top:0;order:-1}
.formato h3{margin-top:auto}
.formacion__pin.es-horizontal .formato{min-height:340px}

/* =========================================================================
   Escala tipográfica unificada: textos fuertes, legibles y proporcionados
   Títulos de sección · subtítulos · cuerpo · etiquetas
   ========================================================================= */
.cinta-texto{display:none}
.titular{font-size:clamp(2.1rem,1.3rem + 2.6vw,3.9rem);line-height:1}
.inicio__t{font-size:clamp(2.8rem,.8rem + 5.6vw,7.4rem)}
.manifiesto__txt{font-size:clamp(1.8rem,1.1rem + 2.1vw,3.1rem);line-height:1.12;max-width:26ch}
.fin__t{font-size:min(11vw,10.5rem)}
.vivo .libro__cabeza .titular{font-size:clamp(2rem,1.2rem + 2.2vw,3.4rem)}
/* Subtítulos y cuerpo */
.bajada,.inicio__pie p,.fin__sub{font-size:clamp(1.12rem,1rem + .4vw,1.32rem);opacity:1;color:rgba(255,255,255,.9)}
.formato p,.canal p,.lab p,.estacion p,.pilar__puntos li,.logro li,.lista-plats p,.ia__nota,.ficha__desc,.volteo__resp{font-size:clamp(1rem,.96rem + .2vw,1.1rem);line-height:1.5}
.formato p{color:rgba(255,255,255,.9)}
.ia__nota{color:rgba(255,255,255,.88)}
.ia__lista li,.ia__pedido p{font-size:1.05rem}
.lab h3{font-size:1.35rem}
/* Etiquetas, chips y textos de apoyo: nunca diminutos */
.etiqueta,.sello,.rueda,.equipo p,.incluye p,.areas__t,.volteo__pista,.estacion__eta,.formato__mod,.canal__eti,.pilar__cabeza,.ficha__cat,.form__destino,.ia__barra b,.ia__pedido small,.ia__resp small{font-size:clamp(.86rem,.82rem + .15vw,.95rem);letter-spacing:.1em}
.cifra span{font-size:clamp(.9rem,.85rem + .2vw,1rem);letter-spacing:.06em;color:rgba(255,255,255,.88)}
.cifra b{font-size:clamp(2.8rem,1.9rem + 2.8vw,5rem)}
.chips li,.equipo li,.incluye li,.ley,.lista-plats summary{font-size:.95rem}
.nodo__nom{font-size:.9rem}
.areas__pista li{font-size:1.1rem}
.pasos span{font-size:1.05rem;color:#fff}
.pasos b{font-size:.95rem}
.campo label,.check{font-size:.95rem}
.pie,.pie__legal{font-size:.95rem}
.pie__legal{color:rgba(255,255,255,.75)}
.volteo__reto{font-size:clamp(1.4rem,1.15rem + .7vw,1.8rem)}
.estacion h3,.canal h3,.formato h3,.logro h3{font-size:clamp(1.5rem,1.2rem + 1vw,2.1rem)}
.pilar h3,.portada h3{font-size:clamp(2rem,1.4rem + 1.8vw,3.2rem)}
.fin__frase{font-size:clamp(1.2rem,1.05rem + .5vw,1.5rem)}
@media (max-width:600px){.inicio__t{font-size:11vw}.fin__t{font-size:17vw}}

/* ¿Por qué elegirnos? (lista clara en lugar de texto en movimiento) */
.porque{padding-bottom:clamp(3rem,2rem + 4vw,6rem);display:grid;gap:1.4rem}
.porque__lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:1rem}
.porque__lista li{display:flex;flex-direction:column;gap:.9rem;padding:1.3rem;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);font-family:var(--f-display);font-stretch:112%;font-weight:800;font-size:clamp(1.2rem,1.05rem + .5vw,1.5rem);line-height:1.15;letter-spacing:-.02em}
.porque__ico{width:40px;height:40px;border-radius:50%;background:var(--amarillo);color:var(--azul-900);display:grid;place-items:center}
.porque__ico svg{width:22px;height:22px}
.manifiesto__pin{padding-top:clamp(96px,8vh,120px);padding-bottom:2.5rem}
.manifiesto__txt{font-size:clamp(1.7rem,1rem + 1.9vw,2.8rem);margin:1.4rem 0 2rem}
.equipo{margin:0 0 2rem}
.cifra{padding-top:1.1rem}
.cifra b{font-size:clamp(2.6rem,1.8rem + 2.4vw,4.4rem)}

/* =========================================================================
   V5 · Objetos flotantes del inicio, mapa del Ecuador y sello nacional
   ========================================================================= */
.cap--inicio{overflow:hidden}
.flota{position:absolute;inset:0;z-index:0;pointer-events:none}
.inicio__pin .marco{position:relative;z-index:2}
.obj{position:absolute;left:var(--x);top:var(--y);width:clamp(64px,calc(var(--s) * 1vw),calc(var(--s) * 15px));transform:translate(-50%,-50%) translate(var(--px,0px),var(--py,0px)) translateY(var(--sy,0px)) rotate(var(--rot));filter:drop-shadow(0 26px 30px rgba(4,2,30,.55))}
.obj__mov{animation:flotar var(--dur,6s) ease-in-out infinite alternate;animation-delay:calc(var(--i) * -.7s)}
.obj svg{width:100%;height:auto;overflow:visible}
@keyframes flotar{from{transform:translateY(-12px) rotate(-3deg)}to{transform:translateY(12px) rotate(3deg)}}
.ojo{animation:parpadea 4s infinite}
@keyframes parpadea{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
.ojo{transform-box:fill-box;transform-origin:center}
.gira-f{transform-box:fill-box;transform-origin:center;animation:gira 12s linear infinite}
.burbuja-f{animation:sube 2.6s ease-in infinite}
@media (max-width:900px){
  .flota{top:70px;bottom:auto;height:42%}
  .obj{left:var(--xm);width:clamp(48px,calc(var(--s) * 1.7vw),110px)}
  .cap--inicio{align-items:flex-end}
  .inicio__pin{padding-top:46vh}
}

/* Presencia nacional */
.cap--presencia{padding-block:clamp(6rem,4rem + 5vw,9rem);overflow:hidden}
.presencia{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:2rem;align-items:center}
.presencia__txt{display:grid;gap:1.3rem;align-content:center}
.presencia__datos{display:grid;gap:.9rem;margin-top:.4rem}
.presencia__datos li{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap;padding-bottom:.9rem;border-bottom:1px solid rgba(255,255,255,.14)}
.presencia__datos b{font-family:var(--f-display);font-stretch:118%;font-weight:800;font-size:clamp(1.3rem,1.1rem + .7vw,1.7rem);color:var(--amarillo);letter-spacing:-.02em}
.presencia__datos span{font-size:1.05rem;color:rgba(255,255,255,.9)}
.mapa{position:relative;aspect-ratio:1;max-width:680px;width:100%;justify-self:end}
.mapa__svg{width:100%;height:100%}
.prov{fill:#2C22C2;transition:fill .3s}
.prov:hover{fill:#3B31D8}
.pin{fill:#E59900;transform-box:fill-box;transform-origin:50% 100%}
.vivo .mapa .prov{opacity:0}
.vivo .mapa .pin{opacity:0}
.vivo .mapa.visto .prov{animation:aparece .7s calc(var(--n) * .035s) var(--ease) forwards}
.vivo .mapa.visto .pin{animation:cae .8s calc(.9s + var(--i) * .13s) cubic-bezier(.3,1.5,.5,1) forwards,late-pin 2.6s calc(2.6s + var(--i) * .13s) ease-in-out infinite}
@keyframes aparece{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
@keyframes cae{from{opacity:0;transform:translateY(-60px) scale(.6)}to{opacity:1;transform:none}}
@keyframes late-pin{0%,100%{filter:none}50%{filter:drop-shadow(0 0 10px rgba(255,210,122,.9))}}
@media (max-width:900px){.presencia{grid-template-columns:1fr}.mapa{justify-self:center;max-width:520px}}

/* Sello "Empresa ecuatoriana" */
.sello-ec{width:clamp(130px,11vw,170px);aspect-ratio:1;margin-top:.6rem}
.sello-ec svg{width:100%;height:100%;filter:drop-shadow(0 20px 30px rgba(0,0,0,.45))}
.sello-ec__giro{transform-origin:100px 100px;animation:gira 22s linear infinite}
@media (prefers-reduced-motion:reduce){
  .obj__mov,.ojo,.gira-f,.burbuja-f,.sello-ec__giro{animation:none}
  .vivo .mapa .prov,.vivo .mapa .pin{opacity:1;animation:none}
}

.mapa__svg{filter:drop-shadow(0 30px 60px rgba(0,0,0,.45))}

/* =========================================================================
   V6 · Inicio profesional: red de módulos del ecosistema
   ========================================================================= */
.cap--inicio::before{-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.obj.tile,.obj.nucleo{width:auto;filter:none}
.flota__red{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.flota__red line{stroke:rgba(255,255,255,.22);stroke-width:1.2;stroke-dasharray:3 7;animation:flujo 1.6s linear infinite}
.flota__red circle{fill:var(--amarillo)}
@keyframes flujo{to{stroke-dashoffset:-20}}
.tile__in{display:flex;align-items:center;gap:.8rem;padding:.75rem 1.1rem .75rem .75rem;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 24px 50px -24px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.1);white-space:nowrap}
.tile__ico{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;flex:none}
.tile__ico svg{width:24px;height:24px}
.tile--amarillo .tile__ico{background:var(--amarillo);color:var(--azul-900)}
.tile--verde .tile__ico{background:#14B44A;color:#fff}
.tile--blanco .tile__ico{background:#fff;color:var(--azul)}
.tile__txt{display:grid;gap:.1rem}
.tile__txt b{font-family:var(--f-display);font-stretch:110%;font-weight:700;font-size:1.02rem;color:#fff;letter-spacing:-.01em}
.tile__txt small{font-size:.86rem;color:rgba(255,255,255,.72)}
.tile--L .tile__in{padding:1rem 1.4rem 1rem 1rem;gap:1rem}
.tile--L .tile__ico{width:58px;height:58px;border-radius:16px}
.tile--L .tile__ico svg{width:30px;height:30px}
.tile--L .tile__txt b{font-size:1.18rem}
.tile--S .tile__in{opacity:.92}
.nucleo__in{width:clamp(120px,11vw,160px);aspect-ratio:1;border-radius:50%;display:grid;place-content:center;justify-items:center;gap:.4rem;background:radial-gradient(circle at 30% 30%,#3B31B8,#1E1499 60%,#140E6B);box-shadow:0 0 0 12px rgba(59,49,184,.18),0 0 0 26px rgba(59,49,184,.08),0 40px 80px -30px rgba(0,0,0,.7)}
.nucleo__in img{width:56%;height:auto;margin-inline:auto}
.nucleo__in span{font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo-claro)}
@media (max-width:900px){
  .tile__txt{display:none}
  .tile__in,.tile--L .tile__in{padding:.55rem;border-radius:14px}
  .tile__ico,.tile--L .tile__ico{width:44px;height:44px}
  .nucleo__in{width:96px}
  .nucleo__in span{display:none}
}

/* Insignia: empresa ecuatoriana (bandera circular minimalista) */
.ec-badge{display:inline-flex;align-items:center;gap:.8rem;padding:.55rem 1.1rem .55rem .55rem;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);justify-self:start;margin-top:.4rem}
.ec-badge__bandera{width:42px;height:42px;flex:none}
.ec-badge span{display:grid;line-height:1.2}
.ec-badge b{font-family:var(--f-display);font-stretch:110%;font-weight:700;font-size:1.02rem;color:#fff}
.ec-badge small{font-size:.86rem;color:rgba(255,255,255,.75)}
.sello-ec{display:none}
@media (min-width:901px) and (max-height:820px){
  .tile__txt small{display:none}
  .tile__in,.tile--L .tile__in{padding:.55rem .9rem .55rem .55rem;gap:.65rem}
  .tile__ico,.tile--L .tile__ico{width:40px;height:40px;border-radius:11px}
  .tile__ico svg,.tile--L .tile__ico svg{width:21px;height:21px}
  .tile__txt b,.tile--L .tile__txt b{font-size:.98rem}
  .nucleo__in{width:118px}
}
.porque__lista li{gap:.6rem}
.porque__lista li b{font:inherit}
.porque__d{font-family:var(--f-body);font-stretch:100%;font-weight:400;font-size:1rem;line-height:1.45;letter-spacing:0;color:rgba(255,255,255,.85)}

/* V7 · Iconos flotantes del inicio */
.obj.ico-f{width:auto;filter:none}
.ico-f__in{display:grid;place-items:center;border-radius:28%;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 30px 60px -26px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.18)}
.ico-f--L .ico-f__in{width:clamp(74px,6.6vw,104px);aspect-ratio:1}
.ico-f--M .ico-f__in{width:clamp(58px,5vw,80px);aspect-ratio:1}
.ico-f--S .ico-f__in{width:clamp(46px,3.8vw,60px);aspect-ratio:1}
.ico-f__in svg{width:46%;height:46%;stroke-width:1.6}
.ico-f--amarillo .ico-f__in{color:var(--amarillo)}
.ico-f--verde .ico-f__in{color:#2BD167}
.ico-f--blanco .ico-f__in{color:#fff}
.ico-f--azul .ico-f__in{color:#9C95FF}
.ico-f--L .ico-f__in{background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(255,255,255,.06))}
@media (max-width:900px){.ico-f--L .ico-f__in{width:64px}.ico-f--M .ico-f__in{width:52px}.ico-f--S .ico-f__in{width:42px}}

.porque__lista li{font-stretch:100%;font-size:clamp(1.05rem,.98rem + .3vw,1.22rem);hyphens:auto;overflow-wrap:anywhere}
.porque__lista li b{overflow-wrap:normal;word-break:normal}

/* ===== V8 · Propuesta: escenario educativo, proceso, CTA de inicio ===== */
.inicio__acc{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.4rem}
.inicio__lead p{max-width:58ch}
.datos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:clamp(1rem,.8rem + 1vw,1.6rem)}
.dato{position:relative;display:grid;align-content:start;gap:.8rem;padding:clamp(1.5rem,1.2rem + 1vw,2.2rem);border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(6px)}
.dato::before{content:"";position:absolute;left:0;top:1.6rem;bottom:1.6rem;width:3px;border-radius:3px;background:var(--amarillo)}
.dato__ico{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:14px;background:rgba(229,153,0,.16);color:var(--amarillo-claro)}
.dato__ico svg{width:24px;height:24px}
.dato__n{font-family:var(--f-display);font-weight:800;font-size:clamp(2.2rem,1.7rem + 2vw,3.4rem);line-height:1;letter-spacing:-.02em;color:#fff}
.dato__t{font-size:1.06rem;line-height:1.5;color:rgba(255,255,255,.9)}
.dato__f{font-size:.82rem;color:rgba(255,255,255,.6);margin-top:auto}
.dato__f a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.contexto__cierre{margin-top:clamp(2rem,1.5rem + 2vw,3.5rem);max-width:60ch;font-size:clamp(1.12rem,1rem + .4vw,1.32rem);line-height:1.55;color:rgba(255,255,255,.88)}
.contexto__cierre b{color:#fff;font-weight:700}

.proceso{position:relative;--p:0}
.proceso__linea{position:absolute;left:4%;right:4%;top:31px;height:2px;background:rgba(255,255,255,.14);border-radius:2px;overflow:hidden}
.proceso__linea i{position:absolute;inset:0;background:linear-gradient(90deg,var(--amarillo),var(--verde));transform-origin:left;transform:scaleX(var(--p))}
.proceso__pasos{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1.2rem}
.paso{display:grid;justify-items:center;text-align:center;gap:.7rem;color:#fff;opacity:.5;transition:opacity .5s var(--ease)}
.paso.activo{opacity:1}
.paso__ico{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--azul-900);border:2px solid rgba(255,255,255,.24);color:#fff;transition:border-color .5s,background .5s,color .5s}
.paso.activo .paso__ico{border-color:var(--amarillo);background:var(--amarillo);color:var(--azul-900)}
.paso__ico svg{width:26px;height:26px}
.paso h3{font-family:var(--f-display);font-weight:700;font-size:1.15rem;line-height:1.2}
.paso p{font-size:.98rem;line-height:1.5;color:rgba(255,255,255,.85);max-width:24ch}
.proceso__cta{display:flex;justify-content:center;margin-top:clamp(2.5rem,2rem + 2vw,4rem)}
@media (max-width:860px){
  .proceso__linea{left:31px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .proceso__linea i{transform-origin:top;transform:scaleY(var(--p))}
  .proceso__pasos{grid-template-columns:1fr;gap:1.8rem}
  .paso{grid-template-columns:64px 1fr;justify-items:start;text-align:left;column-gap:1.1rem;row-gap:.3rem}
  .paso__ico{grid-row:span 2}
  .paso p{max-width:none}
}
@media (prefers-reduced-motion:reduce){.paso{opacity:1}.proceso__linea i{transform:none}}
@media (max-width:760px){.flota .ico-f:nth-child(8),.flota .ico-f:nth-child(9){display:none}}

/* ===== V9 · Flujo de atención y soporte ===== */
.btn--verde{background:var(--verde);color:#fff}
.btn--verde:hover{background:#00922d}
.flujo-sel{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:clamp(2rem,1.5rem + 2vw,3.2rem)}
.flujo-sel span{font-weight:600;color:rgba(255,255,255,.75);margin-right:.4rem}
.flujo-sel button{font:inherit;font-weight:600;font-size:.98rem;padding:.7rem 1.2rem;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.flujo-sel button[data-ver="com"][aria-selected="true"]{background:var(--amarillo);border-color:var(--amarillo);color:var(--azul-900)}
.flujo-sel button[data-ver="sop"][aria-selected="true"]{background:var(--verde);border-color:var(--verde);color:#fff}
.flujo{display:grid;grid-template-columns:auto minmax(28px,70px) auto minmax(50px,110px) 1fr;align-items:center}
.flujo__origen{display:grid;justify-items:center;gap:.6rem;text-align:center;color:#fff}
.flujo__origen b{font-family:var(--f-display);font-weight:700;font-size:1.02rem}
.flujo__ico{display:grid;place-items:center;width:76px;height:76px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22)}
.flujo__ico svg{width:32px;height:32px}
.flujo__hub{width:118px;height:118px;border-radius:50%;background:var(--azul);display:grid;place-items:center;box-shadow:0 0 0 10px rgba(59,49,184,.3),0 0 0 22px rgba(59,49,184,.12)}
.flujo__hub img{width:60%;height:auto}
.flujo__union{width:100%;overflow:visible}
.flujo__union--a{height:10px}
.flujo__union--b{height:100%;align-self:stretch}
.flujo__union path{fill:none;stroke:rgba(255,255,255,.3);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:6 8;animation:fluye 1.2s linear infinite}
.flujo__union--b .rama{stroke:rgba(255,255,255,.18);transition:stroke .4s}
.flujo[data-activo="com"] .rama--com{stroke:var(--amarillo);stroke-width:3}
.flujo[data-activo="sop"] .rama--sop{stroke:var(--verde);stroke-width:3}
@keyframes fluye{to{stroke-dashoffset:-28}}
.flujo__carriles{display:grid;gap:1.2rem}
.carril{position:relative;padding:clamp(1.2rem,1rem + 1vw,1.8rem);border-radius:22px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);transition:opacity .45s,background .45s,border-color .45s,transform .45s}
.flujo[data-activo="com"] .carril--verde,.flujo[data-activo="sop"] .carril--amarillo{opacity:.55}
.flujo[data-activo="com"] .carril--amarillo{background:rgba(229,153,0,.1);border-color:rgba(229,153,0,.55)}
.flujo[data-activo="sop"] .carril--verde{background:rgba(0,170,53,.1);border-color:rgba(0,170,53,.6)}
.carril__eti{font-family:var(--f-display);font-weight:600;font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}
.carril--amarillo .carril__eti{color:var(--amarillo-claro)}
.carril--verde .carril__eti{color:#5CE08A}
.carril__via{position:relative}
.carril__linea{position:absolute;left:24px;right:calc(33.3% - 24px);top:23px;height:2px;background:rgba(255,255,255,.15);overflow:hidden}
.carril__linea i{position:absolute;top:0;bottom:0;width:30%;left:-30%;background:linear-gradient(90deg,transparent,currentColor,transparent)}
.carril--amarillo .carril__linea i{color:var(--amarillo)}
.carril--verde .carril__linea i{color:var(--verde)}
.flujo[data-activo="com"] .carril--amarillo .carril__linea i,.flujo[data-activo="sop"] .carril--verde .carril__linea i{animation:recorre 1.8s linear infinite}
@keyframes recorre{to{left:100%}}
.carril__pasos{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.fpaso{display:grid;gap:.35rem;align-content:start;color:#fff}
.fpaso__ico{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--azul-900);border:2px solid rgba(255,255,255,.25);margin-bottom:.4rem;transition:background .4s,border-color .4s,color .4s}
.fpaso__ico svg{width:22px;height:22px}
.flujo[data-activo="com"] .carril--amarillo .fpaso__ico{background:var(--amarillo);border-color:var(--amarillo);color:var(--azul-900)}
.flujo[data-activo="sop"] .carril--verde .fpaso__ico{background:var(--verde);border-color:var(--verde);color:#fff}
.fpaso b{font-family:var(--f-display);font-weight:700;font-size:1.08rem}
.fpaso small{font-size:.95rem;line-height:1.45;color:rgba(255,255,255,.82)}
.carril__acc{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.4rem;margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.14)}
.carril__acc a:not(.btn){color:#fff;font-weight:600;text-decoration:none}
.carril__acc a:not(.btn):hover{text-decoration:underline}
.carril__acc .btn{margin-left:auto}
.flujo:not(.visto) .carril{transform:translateX(40px);opacity:0}
.flujo:not(.visto) .flujo__hub{transform:scale(.6);opacity:0}
.flujo__hub{transition:transform .8s var(--ease),opacity .8s}
@media (max-width:980px){
  .flujo{grid-template-columns:1fr;justify-items:center;gap:0}
  .flujo__union--a{width:10px;height:40px;transform:none}
  .flujo__union--a path{d:path("M5 0 V10")}
  .flujo__union--b{display:none}
  .flujo__hub{margin:0 0 2rem}
  .flujo__carriles{width:100%}
  .carril__pasos{grid-template-columns:1fr;gap:1rem}
  .fpaso{grid-template-columns:48px 1fr;column-gap:1rem;row-gap:.15rem}
  .fpaso__ico{grid-row:span 2;margin:0}
  .carril__linea{left:23px;right:auto;top:10px;bottom:10px;width:2px;height:auto}
  .carril__linea i{width:auto;height:30%;left:0;right:0;top:-30%;background:linear-gradient(180deg,transparent,currentColor,transparent)}
  @keyframes recorre{to{top:100%}}
  .carril__acc .btn{margin-left:0}
}
@media (prefers-reduced-motion:reduce){.flujo__union path,.carril__linea i{animation:none!important}}

/* ===== V10 · Sin puntos decorativos amarillos; tarjetas de formación alineadas ===== */
.circuito circle,.ruta__punta,.cursor{display:none!important}
.formato{min-height:0;justify-content:flex-start;gap:.9rem;overflow:hidden;transform:none}
.formato:hover{transform:none}
.formato__mod{order:-1;margin:0;min-height:2.9em;display:flex;align-items:flex-start;line-height:1.45}
.formato h3{margin-top:0;font-size:clamp(1.3rem,1.1rem + .7vw,1.75rem);line-height:1.1;overflow-wrap:break-word;hyphens:auto}
.formacion__pista{align-items:stretch}
.formacion__pin.es-horizontal .formato{min-height:340px}
.formato--cta{justify-content:flex-end}

/* ===== V11 · Un solo azul con difuminados suaves ===== */
:root{--fondo:#0C0944}
.cap[data-tema="medio"]::after,.cap[data-tema="azul"]::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 55% 45% at 75% 35%,rgba(30,20,153,.42),rgba(30,20,153,0) 72%),radial-gradient(ellipse 45% 40% at 15% 80%,rgba(30,20,153,.3),rgba(30,20,153,0) 72%)}
.cap[data-tema="azul"]::after{background:radial-gradient(ellipse 60% 50% at 50% 45%,rgba(30,20,153,.5),rgba(30,20,153,0) 74%)}

/* ===== V11 · Tarjetas de retos ===== */
.volteos{gap:1.2rem}
.volteo{min-height:330px;cursor:pointer}
.volteo__cara{padding:clamp(1.4rem,1.1rem + .8vw,1.9rem);gap:1.1rem}
.volteo__frente{justify-content:flex-start}
.volteo__reto{margin-top:.3rem;font-size:clamp(1.2rem,1.05rem + .5vw,1.5rem)!important;line-height:1.15;overflow-wrap:break-word;hyphens:auto}
.volteo__ico{width:56px;height:56px;border-radius:16px}
.volteo__ico svg{width:28px;height:28px}
.volteo__btn{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:.6rem;font:inherit;font-weight:700;font-size:.95rem;padding:.65rem .7rem .65rem 1.1rem;border-radius:999px;border:1.5px solid var(--amarillo);background:rgba(229,153,0,.12);color:#fff;cursor:pointer;transition:background .3s,color .3s}
.volteo__btn span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--amarillo);color:var(--azul-900);transition:transform .5s var(--ease)}
.volteo__btn span svg{width:16px;height:16px}
.volteo:hover .volteo__frente .volteo__btn,.volteo__btn:focus-visible{background:var(--amarillo);color:var(--azul-900)}
.volteo:hover .volteo__btn span{transform:rotate(-180deg)}
.volteo:hover .volteo__frente .volteo__btn span{background:var(--azul-900);color:var(--amarillo)}
.vivo .volteo:not(.volteado) .volteo__frente .volteo__btn{animation:invita 2.6s ease-in-out infinite}
@keyframes invita{0%,100%{box-shadow:0 0 0 0 rgba(229,153,0,.45)}50%{box-shadow:0 0 0 9px rgba(229,153,0,0)}}
.vivo .volteo:not(.volteado):hover .volteo__in{transform:rotateY(-7deg)}
.volteo__dorso{background:#fff;color:var(--tinta);gap:.9rem}
.volteo__sol{display:flex;align-items:center;gap:.8rem}
.volteo__ico2{flex:none;width:48px;height:48px;border-radius:14px;background:#E3F7EA;color:#0B7A3B;display:grid;place-items:center}
.volteo__ico2 svg{width:24px;height:24px}
.volteo__tit{font-family:var(--f-display);font-weight:800;font-size:1.18rem;line-height:1.15;color:var(--azul-900)}
.volteo__resp{margin-top:0!important;font-size:1rem!important;line-height:1.5;font-weight:500;color:var(--tinta-2)}
.volteo__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.volteo__chips li{font-size:.82rem;font-weight:600;padding:.35rem .7rem;border-radius:999px;background:var(--azul-50);color:var(--azul);border:1px solid var(--azul-100)}
.volteo__btn--volver{border-color:var(--linea);background:transparent;color:var(--azul-900);font-size:.88rem}
.volteo__btn--volver span{background:var(--azul);color:#fff}
.volteo__marca,.volteo__pista,.volteo__ok{display:none}
@media (prefers-reduced-motion:reduce){.vivo .volteo .volteo__btn{animation:none!important}}
.volteo{min-height:350px}
.volteo__dorso{padding-right:clamp(1.4rem,1.1rem + .8vw,1.9rem)}
.volteo__sol{padding-right:2.6rem}
.volteo__volver{position:absolute;top:1rem;right:1rem;width:38px;height:38px;border-radius:50%;border:1px solid var(--linea);background:#fff;color:var(--azul);display:grid;place-items:center;cursor:pointer;transition:background .3s,color .3s,transform .5s var(--ease)}
.volteo__volver svg{width:18px;height:18px}
.volteo__volver:hover,.volteo__volver:focus-visible{background:var(--azul);color:#fff;transform:rotate(-180deg)}
.volteo__chips{margin-top:auto}
@media (max-width:1100px){.volteo{min-height:300px}}
@media (max-width:560px){.volteo{min-height:290px}}
.volteo__tit{font-size:clamp(1rem,.95rem + .25vw,1.12rem)}
.volteo__sol{padding-right:2.9rem}
.ec-badge__img{border-radius:50%;object-fit:cover;box-shadow:0 0 0 1.5px rgba(255,255,255,.35)}

/* ===== V12 · Barra superior tipo vidrio líquido ===== */
.barra{background:linear-gradient(180deg,rgba(18,13,99,.55),rgba(12,9,68,.42));-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 30px -12px rgba(5,3,30,.55)}
.barra::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,rgba(255,255,255,.07),rgba(255,255,255,0) 35%,rgba(255,255,255,0) 65%,rgba(255,255,255,.05));z-index:-1}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.barra{background:rgba(12,9,68,.94)}}
.flota{z-index:1}

/* ===== V13 · Flujo de atención: en pantallas compactas, un solo rectángulo ===== */
@media (max-width:980px){
  .flujo-sel{justify-content:center}
  .flujo-sel span{width:100%;text-align:center;margin:0 0 .2rem}
  .flujo__carriles{display:grid;gap:0}
  .flujo__carriles .carril{grid-area:1 / 1;transition:opacity .45s var(--ease),transform .45s var(--ease),visibility 0s linear .45s,background .45s,border-color .45s}
  .flujo[data-activo="com"] .carril--verde,.flujo[data-activo="sop"] .carril--amarillo{opacity:0;visibility:hidden;transform:translateY(14px) scale(.98);pointer-events:none}
  .flujo[data-activo="com"] .carril--amarillo,.flujo[data-activo="sop"] .carril--verde{opacity:1;visibility:visible;transform:none;transition-delay:0s}
  .flujo.visto .carril{transform:none}
  .flujo[data-activo] .carril{will-change:opacity}
  .flujo__hub{margin-bottom:1.6rem}
}
@media (max-width:980px){
  .flujo{grid-template-columns:auto 56px auto;justify-content:center;justify-items:center;row-gap:1.4rem}
  .flujo__union--a{width:100%;height:10px}
  .flujo__union--a path{d:path("M0 5 H100")}
  .flujo__origen{grid-template-columns:auto;gap:.4rem}
  .flujo__ico{width:60px;height:60px;border-radius:18px}
  .flujo__hub{width:84px;height:84px;margin:0;box-shadow:0 0 0 7px rgba(59,49,184,.3),0 0 0 15px rgba(59,49,184,.12)}
  .flujo__carriles{grid-column:1 / -1}
  .flujo-sel{order:3;grid-column:1 / -1;justify-self:stretch;flex-wrap:nowrap;gap:0;padding:4px;margin:0;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
  .flujo-sel span{display:none}
  .flujo-sel button{flex:1;border:0;padding:.75rem .5rem;font-size:.92rem}
  .flujo__carriles{order:4}
}

.flujo .flujo-sel{grid-column:1 / -1;justify-self:start}
@media (max-width:980px){.flujo .flujo-sel{justify-self:stretch;width:100%;max-width:520px;margin-inline:auto}.flujo-sel button{white-space:nowrap;font-size:clamp(.8rem,3.4vw,.95rem)}}

/* ===== V14 · Capas sobre la barra y menú rediseñado ===== */
.vivo .hoja{z-index:200}
.capa{z-index:190}
.vivo .hoja .cerrar{position:sticky;top:0;margin-left:auto;margin-bottom:-48px;z-index:2;background:#fff;border-color:var(--linea)}
.vivo .hoja .cerrar:hover{background:var(--azul-50)}
.capa--indice{background:rgba(8,6,48,.72);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);overflow-y:auto}
.capa--indice:not([hidden]){animation:menu-in .45s var(--ease)}
@keyframes menu-in{from{opacity:0}to{opacity:1}}
.menu{min-height:100%;display:flex;flex-direction:column;padding:0 max(var(--gr),min(56px,5vw)) calc(2.5rem + env(safe-area-inset-bottom,0px)) max(var(--gl),min(56px,5vw));max-width:1360px;margin:0 auto}
.menu__cab{display:flex;align-items:center;justify-content:space-between;height:calc(76px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px)}
.menu__cab .cerrar{position:static}
.menu__cuerpo{flex:1;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:clamp(2rem,1rem + 4vw,5rem);align-items:start;padding-top:clamp(1.5rem,1rem + 3vh,4rem)}
.menu__nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 3rem}
.menu__t{font-family:var(--f-display);font-weight:600;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amarillo-claro);padding-bottom:.9rem;margin-bottom:.4rem;border-bottom:1px solid rgba(255,255,255,.14)}
.menu__lista{list-style:none;margin:0;padding:0}
.menu__lista a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.62rem 0;text-decoration:none;color:rgba(255,255,255,.82);font-family:var(--f-display);font-weight:700;font-size:clamp(1.15rem,1rem + .5vw,1.45rem);letter-spacing:-.01em;border-bottom:1px solid rgba(255,255,255,.06);transition:color .25s,padding .35s var(--ease)}
.menu__lista a svg{width:18px;height:18px;opacity:0;transform:translateX(-8px);transition:opacity .25s,transform .35s var(--ease);color:var(--amarillo)}
.menu__lista a:hover,.menu__lista a:focus-visible{color:#fff;padding-left:.5rem}
.menu__lista a:hover svg,.menu__lista a:focus-visible svg{opacity:1;transform:none}
.menu__lista a.activo{color:var(--amarillo-claro)}
.menu__lista a.activo svg{opacity:1;transform:none}
.menu__contacto{display:grid;gap:1.1rem;padding:clamp(1.4rem,1rem + 1vw,2rem);border-radius:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.menu__contacto .menu__t{border:0;padding:0;margin:0}
.menu__frase{font-size:1.05rem;line-height:1.5;color:rgba(255,255,255,.88)}
.menu__contacto .btn{justify-self:start}
.menu__datos{display:grid;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.12)}
.menu__datos p{display:grid;gap:.2rem}
.menu__datos span{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.menu__datos a{color:#fff;text-decoration:none;font-weight:600}
.menu__datos a:hover{text-decoration:underline}
.menu__redes{display:flex;gap:.5rem}
.menu__redes a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);color:#fff}
.menu__redes a:hover{background:#fff;color:var(--azul-900)}
.menu__redes svg{width:18px;height:18px;fill:currentColor}
@media (max-width:980px){.menu__cuerpo{grid-template-columns:1fr}.menu__nav{grid-template-columns:1fr 1fr;gap:1.5rem}}
@media (max-width:620px){.menu__nav{grid-template-columns:1fr}.menu__cab{height:calc(66px + env(safe-area-inset-top,0px))}.menu__cab .barra__logo img{height:30px}}
.capa--indice{background:rgba(8,6,48,.86)}
.hoja__panel h3{line-height:1.05}

/* ===== V15 · Botones con respuesta suave ===== */
.btn{transform:none!important;transition:background-color .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease),box-shadow .45s var(--ease),filter .35s var(--ease)!important;will-change:auto}
.btn:hover{filter:brightness(1.04)}
.btn:active{filter:brightness(.96)}
.btn svg{transition:transform .45s var(--ease)!important}
.btn:hover svg{transform:translateX(3px)}
.btn--amarillo:hover{box-shadow:0 10px 26px -12px rgba(229,153,0,.6)}
.btn--verde:hover{box-shadow:0 10px 26px -12px rgba(0,170,53,.55);background:var(--verde)}
.btn--vidrio{background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.05));border-color:rgba(255,255,255,.28);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
.btn--vidrio:hover{background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.09));color:#fff;border-color:rgba(255,255,255,.45)}
.volteo__btn,.flujo-sel button,.barra__menu,.cerrar,.volteo__volver,.menu__redes a{transition:background-color .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease),box-shadow .45s var(--ease)}
.volteo__btn span,.volteo__volver{transition:transform .6s var(--ease),background-color .35s,color .35s}
.cerrar:hover{transform:rotate(90deg);transition:transform .5s var(--ease)}

/* ===== V15 · Sistema de vidrio líquido unificado ===== */
:root{
  --vidrio-bg:linear-gradient(150deg,rgba(255,255,255,.11) 0%,rgba(255,255,255,.045) 55%,rgba(255,255,255,.07) 100%);
  --vidrio-borde:rgba(255,255,255,.16);
  --vidrio-filtro:blur(18px) saturate(165%);
  --vidrio-sombra:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -1px 0 rgba(255,255,255,.04),0 26px 50px -30px rgba(3,2,25,.75);
}
.dato,.volteo__frente,.formato:not(.formato--cta),.carril,.flujo__ico,.menu__contacto,.porque__lista li,.ia,.tile__in,.ec-badge,.estacion__card,.lab,.logro,.incluye li,.flujo-sel button:not([aria-selected="true"]),.areas__pista li{
  background:var(--vidrio-bg)!important;border:1px solid var(--vidrio-borde)!important;
  -webkit-backdrop-filter:var(--vidrio-filtro);backdrop-filter:var(--vidrio-filtro);box-shadow:var(--vidrio-sombra)
}
.dato,.volteo__frente,.formato,.carril,.menu__contacto,.porque__lista li,.ia,.estacion__card,.lab,.logro{transition:border-color .45s var(--ease),box-shadow .45s var(--ease),background .45s var(--ease)}
.dato:hover,.formato:not(.formato--cta):hover,.porque__lista li:hover,.estacion__card:hover,.lab:hover,.logro:hover{border-color:rgba(255,255,255,.28)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 30px 60px -30px rgba(3,2,25,.85)}
/* Carriles activos conservan su color de canal */
.flujo[data-activo="com"] .carril--amarillo{background:linear-gradient(150deg,rgba(229,153,0,.16),rgba(229,153,0,.05))!important;border-color:rgba(229,153,0,.55)!important}
.flujo[data-activo="sop"] .carril--verde{background:linear-gradient(150deg,rgba(0,170,53,.16),rgba(0,170,53,.05))!important;border-color:rgba(0,170,53,.6)!important}
/* Tarjetas antes blancas, ahora de vidrio con texto claro */
.estacion__card{color:#fff!important}
.estacion__card .estacion__eta{color:var(--amarillo-claro)!important}
.estacion p,.estacion__card p{color:rgba(255,255,255,.86)}
.estacion__card .btn--linea,.estacion__card a{color:#fff}
.lab{color:#fff}
.lab p{color:rgba(255,255,255,.82)}
.lab__anim{background:rgba(12,9,68,.7)}
.logro{color:#fff}
.logro li{color:rgba(255,255,255,.9)}
.logro--azul h3{background:linear-gradient(135deg,rgba(59,49,184,.85),rgba(30,20,153,.6))}
.logro--verde h3{background:linear-gradient(135deg,rgba(0,170,53,.75),rgba(10,143,53,.5))}
.logro--amarillo h3{background:linear-gradient(135deg,rgba(229,153,0,.9),rgba(229,153,0,.65))}
.tick{stroke:#5CE08A}
@media (max-width:760px){:root{--vidrio-filtro:blur(12px) saturate(150%)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .dato,.volteo__frente,.formato:not(.formato--cta),.carril,.menu__contacto,.porque__lista li,.ia,.estacion__card,.lab,.logro{background:rgba(22,17,96,.94)!important}
}
.estacion__card .chips li{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff}
.estacion__card .enlace{color:var(--amarillo-claro)}
.estacion__card h3{color:#fff}

/* ===== V16 · Ajustes para celulares ===== */
.fin{min-width:0}
@media (max-width:600px){
  .fin__t{font-size:12.4vw;letter-spacing:-.05em}
  .fin__frase,.fin__sub{max-width:100%;overflow-wrap:break-word}
  .fin__acc{flex-wrap:wrap}
  .fin__acc .btn{flex:1 1 auto}
}
@media (max-width:560px){
  /* Plataformas: cuadrícula táctil en lugar de órbita */
  .orbita{aspect-ratio:auto;max-width:none;margin-top:1.4rem}
  .orbita__anillo,.orbita__nucleo{display:none}
  .orbita__giro{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem .6rem}
  .nodo{position:static;width:auto;margin:0;transform:none!important;opacity:1!important}
  .nodo__disco{width:72px;height:72px;padding:12px;transform:none!important}
  .nodo__disco img{max-height:36px}
  .nodo__nom{font-size:.8rem;white-space:normal;text-align:center;line-height:1.2;background:none;backdrop-filter:none;padding:0}
}
@media (max-width:760px){
  .ley,.ley span,.lista-plats summary{font-size:.86rem}
  .menu__datos a,.carril__acc a:not(.btn),.canal p a{display:inline-flex;align-items:center;min-height:40px}
  .enlace{min-height:44px}
  .dato__f a,.pie a{display:inline-flex;align-items:center;min-height:36px}
  .incluye small,.form__pie small{font-size:.86rem}
}
@media (max-width:760px){.leyenda .ley{font-size:.86rem!important;min-height:40px}.pend{font-size:.82rem!important}}
.fin{grid-template-columns:minmax(0,1fr)}
@media (max-width:600px){.fin__t{font-size:11.2vw}}

/* ===== V17 · Subpáginas y banda "Conozca más" ===== */
.exploras{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem}
.explora{display:flex;flex-direction:column;gap:.7rem;padding:clamp(1.3rem,1rem + 1vw,1.8rem);border-radius:22px;text-decoration:none;color:#fff;background:var(--vidrio-bg);border:1px solid var(--vidrio-borde);-webkit-backdrop-filter:var(--vidrio-filtro);backdrop-filter:var(--vidrio-filtro);box-shadow:var(--vidrio-sombra);transition:border-color .45s var(--ease),box-shadow .45s var(--ease)}
.explora:hover,.explora:focus-visible{border-color:rgba(229,153,0,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 30px 60px -30px rgba(3,2,25,.85)}
.explora__ico{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:rgba(229,153,0,.16);color:var(--amarillo-claro)}
.explora__ico svg{width:26px;height:26px}
.explora__t{font-family:var(--f-display);font-weight:800;font-size:clamp(1.15rem,1rem + .5vw,1.4rem);line-height:1.15}
.explora__d{font-size:.98rem;line-height:1.5;color:rgba(255,255,255,.82)}
.explora__ir{margin-top:auto;padding-top:.6rem;display:inline-flex;align-items:center;gap:.5rem;font-weight:700;color:var(--amarillo-claro)}
.explora__ir svg{width:18px;height:18px;transition:transform .45s var(--ease)}
.explora:hover .explora__ir svg{transform:translateX(4px)}
@media (max-width:1100px){.exploras{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.exploras{grid-template-columns:1fr}}
.miga{display:flex;align-items:center;gap:.6rem;padding-top:calc(76px + 2.2rem + env(safe-area-inset-top,0px));font-size:.95rem;color:rgba(255,255,255,.7)}
.miga a{color:#fff;text-decoration:none;font-weight:600}
.miga a:hover{text-decoration:underline}
.miga [aria-current]{color:var(--amarillo-claro);font-weight:600}
.subpagina > .cap:first-of-type,.subpagina .miga + .cap{padding-top:clamp(1.5rem,1rem + 2vw,3rem)!important}
h1.titular{margin:0}
.dato__tit{font-family:var(--f-display);font-weight:800;font-size:clamp(1.2rem,1.05rem + .5vw,1.45rem);line-height:1.15;color:#fff}
.sig{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem;padding-block:clamp(2rem,1.5rem + 2vw,3.5rem);border-top:1px solid rgba(255,255,255,.12)}
.sig__enlace{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:1rem;text-decoration:none;color:#fff;text-align:right}
.sig__enlace small{grid-column:1;font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.sig__enlace b{grid-column:1;font-family:var(--f-display);font-weight:800;font-size:clamp(1.3rem,1.1rem + .8vw,1.9rem)}
.sig__enlace svg{grid-column:2;grid-row:1 / span 2;width:46px;height:46px;padding:12px;border-radius:50%;background:var(--amarillo);color:var(--azul-900);transition:transform .45s var(--ease)}
.sig__enlace:hover svg{transform:translateX(4px)}
@media (max-width:560px){.miga{padding-top:calc(66px + 1.6rem + env(safe-area-inset-top,0px))}.sig{flex-direction:column-reverse;align-items:stretch}.sig__enlace{justify-content:space-between}}
.cap--explorar,.cap--respuesta{padding-block:clamp(5rem,4rem + 4vw,8rem)}

/* ===== V18 · Libro interactivo del ecosistema ===== */
.vivo .cap--libro{padding-block:clamp(5rem,4rem + 4vw,8rem)}
.vivo .libro__pin{padding:0;min-height:0;display:block}
.libro--armado{outline:none}
.libro__escena{cursor:pointer;user-select:none;-webkit-user-select:none}
.libro__escena .btn{cursor:pointer}
.libro__fin{font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,1.1rem + 1.4vw,2.3rem);line-height:1.05;letter-spacing:-.03em;color:var(--azul-900)}
.libro__nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.8rem}
.libro__btn{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:var(--azul-900);background:var(--amarillo);border:0;transition:background-color .35s var(--ease),opacity .35s,box-shadow .45s var(--ease)}
.libro__btn svg{width:22px;height:22px}
.libro__btn:hover{box-shadow:0 10px 26px -12px rgba(229,153,0,.7)}
.libro__btn:disabled{background:rgba(255,255,255,.1);color:rgba(255,255,255,.4);cursor:default;box-shadow:none}
.libro__estado{display:grid;justify-items:center;gap:.55rem;min-width:min(320px,52vw)}
.libro__nombre{font-family:var(--f-display);font-weight:700;font-size:1rem;color:#fff;text-align:center}
.libro__puntos{display:flex;gap:.45rem}
.libro__puntos button{width:9px;height:9px;padding:0;border-radius:999px;border:0;background:rgba(255,255,255,.28);cursor:pointer;transition:width .45s var(--ease),background-color .35s}
.libro__puntos button.activo{width:28px;background:var(--amarillo)}
.libro__ayuda{margin-top:1rem;transition:opacity .5s}
/* Celular: hojas apiladas que se voltean */
.libro-m{position:relative;perspective:1600px;touch-action:pan-y}
.hojam{position:absolute;inset:0 0 auto 0;transform-origin:left center;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.6,.05,.25,1),opacity .8s,visibility 0s linear 0s;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.hojam.pasada{transform:rotateY(-110deg);opacity:0;visibility:hidden;transition:transform .8s cubic-bezier(.6,.05,.25,1),opacity .6s .15s,visibility 0s linear .8s;pointer-events:none}
.hojam .pilar{box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.pilar--fin .pilar__visual{background:var(--azul-900);border-bottom:1px solid rgba(255,255,255,.1)}
@media (prefers-reduced-motion:reduce){.hojam,.hojam.pasada{transition:none}}
@media (max-width:560px){.libro__btn{width:46px;height:46px}.libro__estado{min-width:0;flex:1}}

/* ===== V18 · Resultados con el modelo de tarjetas ===== */
.resultados{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.resultado .pilar__visual{min-height:220px}
.resultado h3{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.4rem)!important}
.resultado .pilar__puntos li{font-size:clamp(.96rem,.92rem + .15vw,1.04rem)}
@media (max-width:1100px){.resultados{grid-template-columns:1fr}}
@media (min-width:1101px){.resultado{grid-template-columns:minmax(0,4fr) minmax(0,6fr)}}
.resultado,.resultado:is(*){grid-template-columns:1fr!important}
.resultado .pilar__visual{min-height:170px}
.resultado h3{font-size:clamp(1.5rem,1.2rem + 1vw,2.1rem)!important}
@media (min-width:1101px){.resultados{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:760px) and (max-width:1100px){.resultados{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== V19 · Catálogo digital del ecosistema ===== */
.catalogo{outline:none;margin-top:.5rem}
.catalogo:not(.catalogo--armado) .catalogo__fuente{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.catalogo:not(.catalogo--armado) .cpag{position:relative;min-height:380px;border-radius:12px}
.flip{position:relative;width:min(1040px,100%,calc((100vh - 250px) * 1.56));aspect-ratio:2 / 1.28;margin:0 auto;perspective:2800px;transition:transform .2s linear;cursor:pointer;user-select:none;-webkit-user-select:none}
.flip::after{content:"";position:absolute;left:4%;right:4%;bottom:-5%;height:10%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 70%);filter:blur(12px);z-index:-1}
.flip__base{position:absolute;top:0;width:50%;height:100%}
.flip__base--der{left:50%}
.flip__base--izq{left:0;background:#E9E5DA;border-radius:10px 0 0 10px;opacity:0;transition:opacity .4s}
.flip--abierto .flip__base--izq{opacity:1}
.flip__base--der::before,.flip--abierto .flip__base--izq::before{content:"";position:absolute;top:6px;bottom:6px;width:7px;background:repeating-linear-gradient(90deg,#d9d4c7 0 1px,#f6f3ea 1px 2px);z-index:-1}
.flip__base--der::before{right:-6px;border-radius:0 4px 4px 0}
.flip__base--izq::before{left:-6px;border-radius:4px 0 0 4px}
.flip__hoja{position:absolute;top:0;left:50%;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;will-change:transform}
.flip__cara{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.flip__dorso{transform:rotateY(180deg)}
.flip__luz{position:absolute;inset:0;pointer-events:none;opacity:0;background:linear-gradient(90deg,rgba(0,0,0,.28),rgba(0,0,0,.05) 40%,rgba(255,255,255,.12) 75%,rgba(0,0,0,.1))}
.flip__lomo{position:absolute;left:50%;top:0;bottom:0;width:40px;margin-left:-20px;pointer-events:none;z-index:70;background:linear-gradient(90deg,transparent,rgba(0,0,0,.16) 45%,rgba(0,0,0,.24) 50%,rgba(0,0,0,.16) 55%,transparent);opacity:0;transition:opacity .4s}
.flip--abierto .flip__lomo{opacity:1}
/* Páginas */
.cpag{position:absolute;inset:0;display:flex;flex-direction:column;padding:clamp(1.4rem,1rem + 2vw,2.8rem);overflow:hidden}
.cpag--der{border-radius:0 10px 10px 0}
.cpag--izq{border-radius:10px 0 0 10px}
.cpag__num{font-size:.8rem;font-weight:600;opacity:.6}
.cpag--portada{background:linear-gradient(160deg,#141072,#0C0944 70%);color:#fff;justify-content:space-between;border-radius:4px 12px 12px 4px;box-shadow:inset 6px 0 0 rgba(255,255,255,.06),inset 14px 0 18px -10px rgba(0,0,0,.6)}
.cport__franjas{position:absolute;right:-30%;bottom:-10%;width:120%;height:70%;transform:rotate(-28deg);display:grid;gap:10px;opacity:.95}
.cport__franjas i{display:block;height:34px;border-radius:30px}
.cport__franjas i:nth-child(1){background:var(--amarillo)}
.cport__franjas i:nth-child(2){background:var(--verde);height:22px}
.cport__franjas i:nth-child(3){background:#2A20B8;height:46px}
.cpag__logo{position:relative;width:min(170px,50%);height:auto}
.cport__tit{position:relative}
.cport__eti,.ccat__eti{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo-claro);margin-bottom:.6rem}
.cport__tit h3{font-family:var(--f-display);font-weight:800;font-size:clamp(2rem,1.2rem + 2.6vw,3.6rem);line-height:.95;letter-spacing:-.04em}
.cport__sub{margin-top:.8rem;font-size:1rem;color:rgba(255,255,255,.85)}
.cport__pie{position:relative;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.7)}
.cpag--cat{color:#fff;justify-content:space-between}
.cpag--cat.cpag--verde{background:linear-gradient(160deg,#0BA23C,#08772C)}
.cpag--cat.cpag--azul{background:linear-gradient(160deg,#2A20B8,#17107C)}
.cpag--cat.cpag--amarillo{background:linear-gradient(160deg,#F2A812,#D98E00);color:var(--azul-900)}
.cpag--cat.cpag--amarillo .ccat__eti{color:var(--azul-900);opacity:.75}
.cpag--izq::after{content:"";position:absolute;top:0;bottom:0;right:0;width:14%;background:linear-gradient(90deg,transparent,rgba(0,0,0,.18));pointer-events:none}
.cpag--der:not(.cpag--portada)::after{content:"";position:absolute;top:0;bottom:0;left:0;width:12%;background:linear-gradient(90deg,rgba(0,0,0,.12),transparent);pointer-events:none}
.ccat__circ{position:absolute;right:-25%;top:-15%;width:80%;aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.2)}
.ccat__ico{position:relative;width:76px;height:76px;border-radius:22px;background:rgba(255,255,255,.18);display:grid;place-items:center}
.ccat__ico svg{width:38px;height:38px}
.ccat__tit h3{font-family:var(--f-display);font-weight:800;font-size:clamp(2rem,1.2rem + 2.4vw,3.4rem);line-height:.95;letter-spacing:-.04em}
.ccat__lema{margin-top:.7rem;font-weight:600;font-size:1.05rem;opacity:.92}
.cpag--cont,.cpag--cta{background:#FBFAF6;color:var(--tinta);background-image:radial-gradient(rgba(19,17,58,.025) 1px,transparent 1px);background-size:4px 4px}
.ccont__cab,.ccont__pie{display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tinta-3)}
.ccont__cab{padding-bottom:.9rem;border-bottom:1px solid var(--linea)}
.ccont__pie{margin-top:auto;padding-top:.9rem;border-top:1px solid var(--linea)}
.ccont__lema{margin:clamp(1rem,.6rem + 1.4vw,2rem) 0 1.1rem;font-family:var(--f-display);font-weight:800;font-size:clamp(1.3rem,1rem + 1vw,2rem);line-height:1.08;letter-spacing:-.025em;color:var(--azul-900)}
.ccont__lista{display:grid;gap:.85rem;margin:0;padding:0;list-style:none}
.ccont__lista li{position:relative;padding-left:1.6rem;font-size:clamp(.92rem,.85rem + .25vw,1.04rem);line-height:1.45}
.ccont__lista li::before{content:"";position:absolute;left:0;top:.6em;width:.8rem;height:2px;background:var(--amarillo)}
.cpag--cierre{background:linear-gradient(160deg,#141072,#0C0944);color:#fff;justify-content:center;gap:1rem}
.cpag--cierre h3{font-family:var(--f-display);font-weight:800;font-size:clamp(1.8rem,1.2rem + 2vw,3rem);line-height:1;letter-spacing:-.03em}
.cpag--cierre p{color:rgba(255,255,255,.85);max-width:32ch}
.ccta{margin:auto 0;display:grid;gap:1.4rem;justify-items:start}
.ccta__t{font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,1.1rem + 1.5vw,2.4rem);line-height:1.05;letter-spacing:-.03em;color:var(--azul-900)}
/* Barra del visor */
.flip__nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem}
.flip__estado{display:grid;justify-items:center;gap:.6rem;min-width:min(340px,54vw)}
.flip__barra{display:block;width:100%;height:4px;border-radius:4px;background:rgba(255,255,255,.15);overflow:hidden}
.flip__barra i{display:block;height:100%;width:0;background:var(--amarillo);border-radius:4px;transition:width .6s var(--ease)}
/* Celular */
.flip--movil{width:100%;max-width:440px;aspect-ratio:auto;perspective:1800px}
.flip--movil::after{bottom:-3%}
.flip__m{position:absolute;inset:0 0 auto 0;transform-origin:left center;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .8s cubic-bezier(.6,.05,.25,1),opacity .8s,visibility 0s linear 0s}
.flip__m.pasada{transform:rotateY(-115deg);opacity:0;visibility:hidden;pointer-events:none;transition:transform .8s cubic-bezier(.6,.05,.25,1),opacity .6s .15s,visibility 0s linear .8s}
.flip--movil .cpag{position:relative;border-radius:12px;box-shadow:0 26px 50px -26px rgba(0,0,0,.7)}
.flip--movil .cpag::after{display:none}
.flip--movil::before{content:"";position:absolute;top:8px;bottom:8px;right:-6px;width:6px;background:repeating-linear-gradient(90deg,#d9d4c7 0 1px,#f6f3ea 1px 2px);border-radius:0 4px 4px 0}
@media (prefers-reduced-motion:reduce){.flip__m,.flip__m.pasada{transition:none}}

/* ===== V20 · Catálogo siempre a doble página, escalado al ancho ===== */
.flip{container-type:inline-size;width:min(1040px,100%,calc((100vh - 250px) * 1.56))}
@media (max-width:560px){.flip{width:calc(100% + 8px);margin-inline:-4px;aspect-ratio:2 / 1.42}}
.flip .cpag{padding:3.6cqw}
.flip .cpag__logo{width:16cqw}
.flip .cpag__num{font-size:max(7px,.8cqw)}
.flip .cport__eti,.flip .ccat__eti{font-size:max(6px,.78cqw);margin-bottom:.6cqw}
.flip .cport__tit h3{font-size:4.4cqw}
.flip .cport__sub{font-size:max(7px,1.05cqw);margin-top:.8cqw}
.flip .cport__pie{font-size:max(7px,.9cqw)}
.flip .ccat__ico{width:7.6cqw;height:7.6cqw;border-radius:2.2cqw}
.flip .ccat__ico svg{width:3.8cqw;height:3.8cqw}
.flip .ccat__tit h3{font-size:4.2cqw}
.flip .ccat__lema{font-size:max(7px,1.15cqw);margin-top:.7cqw}
.flip .ccont__cab,.flip .ccont__pie{font-size:max(6px,.72cqw);gap:1cqw}
.flip .ccont__cab{padding-bottom:.9cqw}.flip .ccont__pie{padding-top:.9cqw}
.flip .ccont__lema{font-size:2.1cqw;margin:2cqw 0 1.2cqw}
.flip .ccont__lista{gap:1cqw}
.flip .ccont__lista li{font-size:max(7.5px,1.12cqw);padding-left:1.8cqw}
.flip .ccont__lista li::before{width:.9cqw;top:.6em}
.flip .cpag--cierre{gap:1.2cqw}
.flip .cpag--cierre h3{font-size:3.2cqw}
.flip .cpag--cierre p{font-size:max(7px,1.1cqw)}
.flip .ccta{gap:1.6cqw}
.flip .ccta__t{font-size:2.5cqw}
.flip .ccta .btn{min-height:0;font-size:max(8px,1.15cqw);padding:1cqw 1.8cqw;gap:.8cqw}
.flip .ccta .btn svg{width:1.6cqw;height:1.6cqw}
/* Portada: el ecosistema alrededor de Grupo R.A. */
.cpag--portada{justify-content:space-between;align-items:stretch}
.cport__top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1cqw}
.cport__top .cport__eti{margin:0}
.cport__franjas{opacity:.55;bottom:-22%}
.corb{position:relative;align-self:center;width:24cqw;aspect-ratio:1;margin:1cqw 0}
.corb__anillo{position:absolute;inset:8%;border-radius:50%;border:1px dashed rgba(255,255,255,.35);animation:corb-giro 40s linear infinite}
.corb__anillo--2{inset:28%;border-style:solid;border-color:rgba(255,255,255,.12);animation:none}
.corb__centro{position:absolute;inset:34%;border-radius:50%;background:radial-gradient(circle at 30% 30%,#3B31B8,#1E1499);display:grid;place-items:center;box-shadow:0 0 0 .8cqw rgba(59,49,184,.25)}
.corb__centro img{width:62%;height:auto}
.corb__i{--a:calc(-90deg + var(--k) * (360deg / var(--n)));position:absolute;left:50%;top:50%;width:5.2cqw;height:5.2cqw;margin:-2.6cqw;border-radius:1.6cqw;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);transform:rotate(var(--a)) translate(10.4cqw) rotate(calc(-1 * var(--a)))}
.corb__i:nth-child(odd){color:var(--amarillo-claro)}
.corb__i svg{width:2.6cqw;height:2.6cqw}
.cport__tit h3{line-height:.92}
@keyframes corb-giro{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.corb__anillo{animation:none}}
/* Ajuste de lectura dentro del catálogo */
.flip .ccont__lista li{font-size:max(9px,1.5cqw);line-height:1.42}
.flip .ccont__lema{font-size:max(12px,2.5cqw)}
.flip .ccont__cab,.flip .ccont__pie{font-size:max(6.5px,.85cqw)}
.flip .ccat__lema{font-size:max(9px,1.45cqw)}
.flip .ccat__eti,.flip .cport__eti{font-size:max(6.5px,.9cqw)}
.flip .cport__sub{font-size:max(8px,1.3cqw)}
.flip .cport__pie{font-size:max(7px,1.1cqw)}
.flip .cpag--cierre p{font-size:max(8.5px,1.4cqw)}
.flip .ccta__t{font-size:max(13px,2.8cqw)}
.flip .ccta .btn{font-size:max(9px,1.35cqw)}
@media (max-width:560px){.flip{aspect-ratio:2 / 1.95}.flip .cpag{padding:4.4cqw 4cqw}.flip .ccont__lista{gap:2cqw}}

/* ===== V21 · Título del inicio sin recortes ===== */
.inicio__t .fila{padding-bottom:.2em;margin-bottom:-.13em}
.fila--trazo > span{color:#fff!important;-webkit-text-stroke:0!important;background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;animation:none!important}

/* ===== V21 · Reverso de retos y resultados en vidrio claro ===== */
.volteo__dorso,.resultado .pilar__texto{
  background:linear-gradient(155deg,rgba(255,255,255,.2),rgba(255,255,255,.09) 60%,rgba(255,255,255,.13))!important;
  -webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%);
  border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 26px 50px -28px rgba(3,2,25,.8);color:#fff!important}
.volteo__dorso .volteo__tit,.resultado .pilar__cabeza{color:#fff!important}
.volteo__dorso .volteo__resp,.resultado .pilar__puntos li{color:rgba(255,255,255,.9)!important}
.volteo__ico2{background:rgba(92,224,138,.2);color:#7BEFA5}
.volteo__chips li{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.26);color:#fff}
.volteo__volver{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3);color:#fff}
.volteo__volver:hover,.volteo__volver:focus-visible{background:#fff;color:var(--azul-900)}
.resultado{background:transparent!important}
.resultado .pilar__texto{border-top:0;border-radius:0 0 20px 20px}
.resultado .pilar__cabeza{opacity:.75}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.volteo__dorso,.resultado .pilar__texto{background:#23208A!important}}
.volteo__sol{padding-right:3.3rem}
.volteo__tit{overflow-wrap:anywhere;hyphens:auto}

/* ===== V22 · Tarjetas de retos: el contenido define la altura (nada se sale) ===== */
.vivo .volteo{min-height:0!important}
.vivo .volteo__in{display:grid!important;grid-template-areas:"cara";height:auto}
.vivo .volteo__cara{position:relative!important;inset:auto!important;grid-area:cara;min-height:330px}
.volteo__sol{flex-direction:column;align-items:flex-start;gap:.7rem;padding-right:2.8rem}
.volteo__tit{hyphens:none!important;overflow-wrap:normal!important;word-break:normal;font-size:clamp(1.05rem,.95rem + .35vw,1.2rem)!important}
.volteo__reto{hyphens:none!important;overflow-wrap:normal!important}
.volteo__chips{margin-top:auto;padding-top:.4rem}
@media (max-width:560px){.vivo .volteo__cara{min-height:260px}}

/* ===== V22 · Separación uniforme entre secciones ===== */
:root{--sep:clamp(4.5rem,3rem + 4vw,7.5rem)}
.vivo main > .cap:not(.cap--inicio):not(.cap--fin):not(.cap--sig){padding-block:var(--sep)!important;min-height:0!important}
.vivo main > .cap--fin{padding-top:var(--sep)!important}
.vivo .cap .cabeza{margin-bottom:clamp(2rem,1.5rem + 2vw,3.5rem)!important}
.vivo .libro__pin,.vivo .desafio__pin,.vivo .manifiesto__pin{padding:0!important;min-height:0!important}
.subpagina .miga + .cap{padding-top:clamp(1.5rem,1rem + 2vw,3rem)!important}
.incluye{margin-bottom:0}

/* ===== V22 · Realce del catálogo sobre el fondo azul ===== */
.catalogo{position:relative;isolation:isolate}
.flip-escenario{position:relative;padding:clamp(1.2rem,.8rem + 2vw,3rem) 0 clamp(1.6rem,1rem + 2vw,3rem)}
/* foco de luz cálida detrás del libro */
.flip-escenario::before{content:"";position:absolute;left:50%;top:48%;width:min(1300px,140%);aspect-ratio:2.1;transform:translate(-50%,-50%);z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(255,214,140,.30),rgba(229,153,0,.12) 40%,rgba(59,49,184,.18) 62%,transparent 75%);filter:blur(8px)}
/* superficie de vidrio donde se apoya */
.flip-escenario::after{content:"";position:absolute;left:50%;bottom:0;width:min(1120px,96%);height:clamp(40px,6vw,80px);transform:translateX(-50%);z-index:-1;border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(255,255,255,.16),rgba(255,255,255,.04) 55%,transparent 72%);border-top:1px solid rgba(255,255,255,.06)}
/* portada con borde dorado y tono más vivo */
.cpag--portada{background:linear-gradient(155deg,#3B31B8 0%,#2219A6 38%,#140E6B 100%)!important;box-shadow:inset 0 0 0 1.5px rgba(255,210,122,.55),inset 6px 0 0 rgba(255,255,255,.08),inset 14px 0 18px -10px rgba(0,0,0,.6)!important}
.cpag--cat.cpag--azul{background:linear-gradient(160deg,#3B31B8,#2219A6)!important}
.cpag--cierre{background:linear-gradient(160deg,#3B31B8,#1E1499)!important}
.flip{filter:drop-shadow(0 30px 40px rgba(0,0,0,.55)) drop-shadow(0 0 1px rgba(255,255,255,.4))}
.flip::after{display:none}
.volteos{align-items:stretch}
.vivo .volteo,.vivo .volteo__in{height:100%}
.vivo .volteo__in{align-items:stretch}
.flip-escenario::before{width:min(1400px,160%);aspect-ratio:1.8;background:radial-gradient(ellipse 48% 48% at 50% 50%,rgba(255,226,170,.42),rgba(229,153,0,.2) 35%,rgba(123,110,255,.22) 58%,transparent 74%);filter:blur(14px)}
.flip-escenario::after{background:radial-gradient(ellipse at center,rgba(255,255,255,.24),rgba(255,255,255,.06) 55%,transparent 72%)}
.cpag--portada{box-shadow:inset 0 0 0 2px rgba(255,210,122,.75),inset 6px 0 0 rgba(255,255,255,.1),inset 14px 0 18px -10px rgba(0,0,0,.6)!important}
.flip{filter:drop-shadow(0 34px 44px rgba(0,0,0,.6)) drop-shadow(0 0 22px rgba(255,214,140,.25))}
.flip-escenario::before{background:radial-gradient(ellipse 46% 46% at 50% 50%,rgba(255,226,170,.55),rgba(229,153,0,.26) 34%,rgba(123,110,255,.28) 58%,transparent 74%)}

/* ===== V23 · Páginas del catálogo sin espacios vacíos ===== */
/* Izquierda: icono + contador arriba, título al centro, índice de pilares abajo */
.flip .cpag--cat{justify-content:space-between;gap:1.6cqw}
.ccat__top{position:relative;display:flex;align-items:center;justify-content:space-between}
.flip .ccat__n{font-size:max(7px,.95cqw);font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.6cqw 1.2cqw;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25)}
.ccat__idx{position:relative;list-style:none;margin:0;padding:1.4cqw 0 0;border-top:1px solid rgba(255,255,255,.22);display:grid;gap:.75cqw}
.flip .ccat__idx li{display:flex;align-items:center;gap:1cqw;font-size:max(7px,1.05cqw);font-weight:600;opacity:.55}
.ccat__idx li span{display:grid;place-items:center;width:2.4cqw;height:2.4cqw;border-radius:.7cqw;background:rgba(255,255,255,.14)}
.ccat__idx li span svg{width:1.4cqw;height:1.4cqw}
.flip .ccat__idx li.activo{opacity:1;font-weight:800}
.ccat__idx li.activo span{background:#fff;color:var(--azul-900)}
.cpag--amarillo .ccat__idx{border-color:rgba(12,9,68,.22)}
.cpag--amarillo .ccat__idx li span,.cpag--amarillo .ccat__n{background:rgba(12,9,68,.1);border-color:rgba(12,9,68,.2)}
.cpag--amarillo .ccat__idx li.activo span{background:var(--azul-900);color:var(--amarillo)}
.flip .cpag--cat .cpag__num{position:absolute;bottom:2cqw;right:3.6cqw}
/* Derecha: contenido centrado en tarjetas + llamado a la acción */
.flip .cpag--cont{gap:0}
.ccont__cuerpo{flex:1;display:flex;flex-direction:column;justify-content:center;padding:1.6cqw 0}
.flip .ccont__eti{font-size:max(6.5px,.85cqw);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--amarillo);margin-bottom:.6cqw}
.flip .ccont__cuerpo .ccont__lema{margin:0 0 1.8cqw}
.ccont__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1.2cqw}
.flip .ccont__grid li{display:flex;flex-direction:column;gap:.8cqw;padding:1.4cqw;border-radius:1.2cqw;background:#fff;border:1px solid var(--linea);box-shadow:0 .6cqw 1.4cqw -1cqw rgba(19,17,58,.25);font-size:max(8px,1.25cqw);line-height:1.38;color:var(--tinta)}
.ccont__ok{display:grid;place-items:center;width:2.6cqw;height:2.6cqw;border-radius:50%;background:#E3F7EA;color:#0B7A3B}
.ccont__ok svg{width:1.5cqw;height:1.5cqw}
.ccont__cta{display:flex;align-items:center;justify-content:space-between;gap:1.4cqw;padding:1.3cqw 1.6cqw;margin-bottom:1.6cqw;border-radius:1.2cqw;background:linear-gradient(135deg,#ECEBFA,#F5F5FC);border:1px solid var(--azul-100)}
.flip .ccont__cta span{font-size:max(7.5px,1.1cqw);line-height:1.3;color:var(--azul-900)}
.flip .ccont__cta .btn{flex:none;min-height:0;font-size:max(8px,1.05cqw);padding:.9cqw 1.5cqw;gap:.6cqw}
.flip .ccont__cta .btn svg{width:1.4cqw;height:1.4cqw}
.flip .ccont__pie{margin-top:0}
@container (max-width:560px){
  .ccont__grid{grid-template-columns:1fr;gap:1.4cqw}
  .flip .ccont__grid li{flex-direction:row;align-items:flex-start;gap:1.6cqw;padding:1.6cqw 2cqw;font-size:max(9px,2.15cqw);line-height:1.3}
  .ccont__ok{flex:none;width:4cqw;height:4cqw}.ccont__ok svg{width:2.4cqw;height:2.4cqw}
  .flip .ccont__cuerpo .ccont__lema{font-size:max(12px,3.6cqw);margin-bottom:2cqw}
  .ccont__cta{padding:1.6cqw;margin-bottom:1.6cqw}
  .flip .ccont__cta span{display:none}
  .flip .ccont__cta .btn{width:100%;justify-content:center;font-size:max(9px,2.2cqw);padding:1.8cqw}
  .flip .ccont__cab span:first-child,.flip .ccat__idx{display:none}
  .flip .ccont__cab{justify-content:flex-end}
  .flip .ccat__n{font-size:max(7px,1.9cqw)}
}

/* ===== V24 · Retos: columnas iguales, títulos que se ajustan al ancho ===== */
.volteos{grid-template-columns:repeat(4,minmax(0,1fr))}
.volteo,.vivo .volteo__in,.vivo .volteo__cara{min-width:0}
.vivo .volteo__in{grid-template-columns:minmax(0,1fr)}
.volteo{container-type:inline-size}
.volteo__reto{font-size:clamp(1rem,8.6cqw,1.6rem)!important;line-height:1.12}
.volteo__tit{font-size:clamp(.95rem,7.4cqw,1.2rem)!important}
@media (max-width:1100px){.volteos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.volteos{grid-template-columns:minmax(0,1fr)}}

/* ===== V25 · Catálogo sin brillos de fondo; borde blanco sutil ===== */
.flip-escenario::before,.flip-escenario::after{display:none!important}
.flip{filter:drop-shadow(0 22px 30px rgba(0,0,0,.5))!important}
.cpag--portada{box-shadow:inset 0 0 0 1px rgba(255,255,255,.55),inset 0 1px 0 rgba(255,255,255,.7),inset 6px 0 0 rgba(255,255,255,.08),inset 14px 0 18px -10px rgba(0,0,0,.55)!important}
.flip__hoja,.flip__base--der,.flip--abierto .flip__base--izq{box-shadow:0 0 0 1px rgba(255,255,255,.35),0 0 14px rgba(255,255,255,.12)}
.flip__hoja{box-shadow:none}
.flip__cara{box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}

/* ===== V26 · Catálogo sin esquinas visibles ===== */
.flip__hoja,.flip__base--der,.flip--abierto .flip__base--izq{box-shadow:none!important}
.flip__cara{box-shadow:none!important}
.flip .cpag{box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.flip .cpag--cont,.flip .cpag--cta{box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}
.flip__base--izq{border-radius:10px 0 0 10px}

/* ===== V26 · Punta de la ruta de niveles ===== */
.ruta__punta.punta{display:block!important;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFE7B0,#E59900 70%);box-shadow:0 0 0 6px rgba(229,153,0,.22),0 0 22px 6px rgba(255,200,90,.55);color:var(--azul-900);overflow:visible;z-index:3;transition:opacity .3s}
.punta__halo{position:absolute;inset:-14px;border-radius:50%;background:radial-gradient(circle,rgba(255,214,140,.45),transparent 70%);animation:punta-late 1.8s ease-in-out infinite;pointer-events:none}
@keyframes punta-late{0%,100%{transform:scale(.85);opacity:.7}50%{transform:scale(1.15);opacity:1}}
.punta__o{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(.4) rotate(-30deg);transition:opacity .35s,transform .45s cubic-bezier(.3,1.6,.5,1)}
.punta__o.activo{opacity:1;transform:none}
.punta__o svg{width:22px;height:22px;stroke-width:2.2}
.confeti{position:absolute;left:50%;top:50%;width:7px;height:10px;border-radius:2px;pointer-events:none;z-index:4}
@media (prefers-reduced-motion:reduce){.punta__halo{animation:none}}

/* ===== V27 · Encabezados de sección centrados, sin guion ===== */
.etiqueta::before{display:none!important;content:none!important}
.cap .cabeza,.presencia__txt,.porque{justify-items:center;text-align:center}
.cap .cabeza .bajada,.cap .cabeza .titular{margin-inline:auto}
.cap .cabeza .etiqueta,.presencia__txt .etiqueta,.porque > .etiqueta{justify-content:center;width:100%}
.porque > .etiqueta{display:flex}
.presencia__txt{display:grid}
.presencia__txt .presencia__datos{justify-self:center;text-align:left}
.presencia__txt .ec-badge{justify-self:center}
@media (min-width:981px){.flujo .flujo-sel{justify-self:center;justify-content:center;margin-bottom:2.4rem}}

/* ===== V28 · ¿Por qué elegirnos?: lista tipográfica que se ilumina ===== */
.porque{display:block!important;text-align:left!important;max-width:1180px;margin-inline:auto}
.porque > .etiqueta{margin-bottom:clamp(1.6rem,1rem + 2vw,2.8rem)}
.porque__lista{display:block!important;list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.14)}
.porque__lista li{position:relative;display:grid!important;grid-template-columns:56px minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,.5rem + 2vw,2.6rem);padding:clamp(1.1rem,.8rem + 1vw,1.7rem) clamp(.8rem,.5rem + 1vw,1.6rem)!important;
  background:none!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;border-radius:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;cursor:default;isolation:isolate;overflow:visible!important}
.porque__lista li::before{content:"";position:absolute;inset:4px 0;z-index:-1;border-radius:18px;background:linear-gradient(100deg,rgba(255,255,255,.12),rgba(255,255,255,.03) 70%);border:1px solid rgba(255,255,255,.16);transform:scaleX(.96);opacity:0;transition:opacity .5s var(--ease),transform .6s var(--ease)}
.porque__lista li b{font-family:var(--f-display)!important;font-weight:800!important;font-size:clamp(1.5rem,1rem + 2.2vw,3.1rem)!important;line-height:1.02!important;letter-spacing:-.035em;color:rgba(255,255,255,.28);transition:color .5s var(--ease),transform .6s var(--ease);hyphens:none!important;overflow-wrap:normal!important}
.porque__d{font-size:clamp(1rem,.95rem + .25vw,1.15rem)!important;opacity:.35;transform:translateX(-14px);transition:opacity .5s var(--ease),transform .6s var(--ease)}
.porque__ico{width:52px!important;height:52px!important;background:transparent!important;border:1.5px solid rgba(255,255,255,.25);color:rgba(255,255,255,.4)!important;transition:background-color .45s,color .45s,border-color .45s,transform .6s var(--ease)}
.porque__lista li.activo::before{opacity:1;transform:none}
.porque__lista li.activo b{color:#fff;transform:translateX(6px)}
.porque__lista li.activo b::first-letter{color:var(--amarillo)}
.porque__lista li.activo .porque__d{opacity:1;transform:none}
.porque__lista li.activo .porque__ico{background:var(--amarillo)!important;border-color:var(--amarillo);color:var(--azul-900)!important;transform:rotate(-12deg) scale(1.05)}
@media (max-width:760px){
  .porque__lista li{grid-template-columns:44px minmax(0,1fr);row-gap:.4rem}
  .porque__ico{width:44px!important;height:44px!important}
  .porque__d{grid-column:2;transform:none;max-height:0;overflow:hidden;opacity:0;transition:max-height .5s var(--ease),opacity .4s}
  .porque__lista li.activo .porque__d{max-height:6em}
  .porque__lista li b{font-size:clamp(1.35rem,5.6vw,1.9rem)!important}
}
@media (prefers-reduced-motion:reduce){.porque__lista li *{transition:none!important}}
.porque__lista li::before{-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%)}

/* ===== V29 · Ajustes móviles ===== */
.pie__redes a,.menu__redes a{display:grid!important;place-items:center!important;padding:0!important;min-height:0!important;flex:none}
.pie__redes svg,.menu__redes svg{display:block;margin:0}
@media (max-width:760px){.circuito{display:none}}
@container (max-width:560px){
  .flip .ccat__idx{display:grid!important;gap:1.3cqw;padding-top:2cqw}
  .flip .ccat__idx li{font-size:max(7px,1.9cqw);gap:1.4cqw}
  .ccat__idx li span{width:4.2cqw;height:4.2cqw;border-radius:1.2cqw}
  .ccat__idx li span svg{width:2.6cqw;height:2.6cqw}
  .flip .ccat__tit h3{font-size:5.4cqw}
  .flip .ccat__lema{font-size:max(8px,2.1cqw)}
  .flip .ccat__eti{font-size:max(6.5px,1.6cqw)}
  .flip .ccat__ico{width:9cqw;height:9cqw}.flip .ccat__ico svg{width:4.6cqw;height:4.6cqw}
}

/* ===== V30 · Resultados: vidrio de tono estable (sin cambio durante la animación) ===== */
.resultado .pilar__texto{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  background:linear-gradient(160deg,rgba(255,255,255,.11),rgba(255,255,255,.04) 65%,rgba(255,255,255,.07)),rgba(10,8,50,.72)!important;
  border:1px solid rgba(255,255,255,.16)!important;border-top:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}

/* ===== V30 · Selector tipo interruptor (estilo Apple) ===== */
.flujo-sel{position:relative;display:inline-flex!important;flex-wrap:nowrap!important;align-items:center;gap:0!important;padding:4px!important;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 3px rgba(0,0,0,.35)}
.flujo-sel > span:not(.flujo-sel__thumb){display:none!important}
.flujo-sel button{position:relative;z-index:1;flex:1 1 0;background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:rgba(255,255,255,.75)!important;padding:.75rem 1.4rem!important;border-radius:999px;font-weight:700;white-space:nowrap;transition:color .35s var(--ease)!important}
.flujo-sel button[aria-selected="true"]{color:#fff!important}
.flujo[data-activo="com"] .flujo-sel button[data-ver="com"]{color:var(--azul-900)!important}
.flujo-sel__thumb{position:absolute;top:4px;bottom:4px;left:4px;width:0;border-radius:999px;background:var(--amarillo);box-shadow:0 4px 14px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.45);transition:transform .5s cubic-bezier(.34,1.4,.5,1),width .45s cubic-bezier(.34,1.4,.5,1),background-color .35s}
.flujo[data-activo="sop"] .flujo-sel__thumb{background:var(--verde)}
@media (max-width:980px){.flujo .flujo-sel{display:flex!important;width:100%;max-width:440px}}
@media (prefers-reduced-motion:reduce){.flujo-sel__thumb{transition:none}}
.flujo .flujo-sel .flujo-sel__thumb{display:block!important}
.flujo .flujo-sel button[data-ver],.flujo .flujo-sel button[data-ver]:not([aria-selected="true"]){background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
/* La punta de la ruta pasa por detrás de las tarjetas de nivel */
.ruta__punta.punta{z-index:0!important}
.estacion{z-index:2!important}
/* Tarjetas de nivel: tono de vidrio fijo (sin desenfoque que se corte) */
.estacion__card{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.04) 65%,rgba(255,255,255,.07)),rgba(16,12,80,.82)!important}

/* ===== V31 · Botón del evento (torneo de robótica) ===== */
.barra__acc{gap:.7rem}
.evento{position:relative;display:inline-flex;align-items:center;gap:.65rem;padding:.35rem .5rem .35rem .4rem;border-radius:999px;text-decoration:none;color:#fff;isolation:isolate;
  background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.05));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:box-shadow .45s var(--ease),background-color .35s}
.evento::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;z-index:-1;
  background:conic-gradient(from var(--ang,0deg),var(--amarillo),var(--verde),#7B6EFF,var(--amarillo));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:evento-giro 4s linear infinite}
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes evento-giro{to{--ang:360deg}}
.evento__ico{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--verde);color:#fff;flex:none}
.evento__ico svg{width:19px;height:19px;animation:evento-robot 2.6s ease-in-out infinite}
@keyframes evento-robot{0%,100%{transform:rotate(0)}10%{transform:rotate(-12deg)}20%{transform:rotate(10deg)}30%{transform:rotate(0)}}
.evento__txt{display:grid;line-height:1.1}
.evento__txt small{display:flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--amarillo-claro)}
.evento__punto{width:6px;height:6px;border-radius:50%;background:#5CE08A;box-shadow:0 0 0 0 rgba(92,224,138,.7);animation:pulso 1.8s infinite}
.evento__txt b{font-size:.92rem;font-weight:700;white-space:nowrap}
.evento__ir{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.12)}
.evento__ir svg{width:14px;height:14px;transition:transform .45s var(--ease)}
.evento:hover{box-shadow:0 10px 30px -10px rgba(0,170,53,.55)}
.evento:hover .evento__ir svg{transform:translateX(3px)}
@media (max-width:1100px){.evento__txt,.evento__ir{display:none}.evento{padding:.3rem}}
@media (max-width:560px){.evento__ico{width:38px;height:38px}.barra__acc{gap:.45rem}}
@media (prefers-reduced-motion:reduce){.evento::before,.evento__ico svg,.evento__punto{animation:none}}
.menu__evento{display:flex;align-items:center;gap:.9rem;padding:.9rem 1rem;border-radius:16px;text-decoration:none;color:#fff;background:linear-gradient(135deg,rgba(0,170,53,.25),rgba(0,170,53,.08));border:1px solid rgba(92,224,138,.4)}
.menu__evento > span:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--verde)}
.menu__evento svg{width:20px;height:20px}
.menu__evento span:nth-child(2){display:grid;flex:1}
.menu__evento small{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7BEFA5}
.cap--torneo{padding-top:clamp(2rem,1.5rem + 2vw,3rem)!important}
.torneo{display:grid;justify-items:center;text-align:center;gap:1.4rem;padding-block:clamp(2rem,1rem + 4vw,5rem)}
.torneo__ico{display:grid;place-items:center;width:96px;height:96px;border-radius:28px;background:var(--verde);color:#fff;box-shadow:0 20px 50px -20px rgba(0,170,53,.8)}
.torneo__ico svg{width:52px;height:52px}
.torneo .titular{font-size:clamp(2.4rem,1.4rem + 4vw,5rem)}

/* ===== V32 · Botón del torneo con robot que se asoma ===== */
.evento{overflow:visible}
.evento__robot{position:absolute;left:50%;bottom:20%;width:84px;height:auto;z-index:-2;pointer-events:none;
  transform:translate(-50%,0) rotate(0deg) scale(.6);opacity:0;filter:drop-shadow(0 6px 10px rgba(0,0,0,.5));
  transition:transform .55s cubic-bezier(.34,1.56,.64,1),opacity .25s}
.evento:hover .evento__robot,.evento:focus-visible .evento__robot{opacity:1;transform:translate(-50%,62%) rotate(-8deg) scale(1)}
.evento:hover .evento__robot{animation:asoma 1.6s .55s ease-in-out infinite}
@keyframes asoma{0%,100%{rotate:0deg}50%{rotate:6deg}}
.evento__txt b{font-size:.88rem}
@media (max-width:1100px){.evento__robot{width:64px}}
.evento{background:linear-gradient(135deg,rgba(40,32,140,.96),rgba(20,14,100,.96))}
.evento__robot{bottom:30%}
.evento:hover .evento__robot,.evento:focus-visible .evento__robot{transform:translate(-50%,92%) rotate(-6deg) scale(1)}
/* El robot se esconde detrás del borde inferior del botón y se asoma al pasar el cursor */
.evento__escondite{position:absolute;left:50%;top:calc(100% - 2px);width:96px;height:64px;margin-left:-48px;overflow:hidden;pointer-events:none}
.evento .evento__robot{position:absolute;left:50%;top:0;bottom:auto;width:84px;z-index:auto;opacity:1;transform:translate(-50%,-105%) rotate(0deg);transition:transform .6s cubic-bezier(.34,1.56,.64,1);animation:none}
.evento:hover .evento__robot,.evento:focus-visible .evento__robot{transform:translate(-50%,-6%) rotate(-5deg)}
.evento:hover .evento__robot{animation:asoma 1.6s .6s ease-in-out infinite}
@media (max-width:1100px){.evento__escondite{width:76px;margin-left:-38px;height:52px}.evento .evento__robot{width:66px}}
@media (hover:none){.evento .evento__robot{transform:translate(-50%,-105%)}}

/* ===== V33 · Resultados: apertura tipo página al estar a la vista ===== */
.resultados{perspective:1400px}
.res-abre{opacity:0;transform:rotateY(-55deg) translateY(30px);transform-origin:left center;transition:opacity .9s var(--ease) var(--d,0ms),transform 1.1s var(--ease) var(--d,0ms)}
.res-abre.res-visto{opacity:1;transform:none}
