/* public_html/assets/css/soluciones.css
 *
 * Las tres páginas de software: Soluciones, Alpha Risks y Alpha Compliance.
 *
 * Todo cuelga de la raíz .sx (y .pg-ar / .pg-ac para el color de enfoque): las reglas de elementos
 * —h1, h2, button, a— están acotadas a ella para no tocar el resto del sitio. Cada producto trae su
 * piel: el cian de Alpha Risks (#0e7490, el de su aplicación), el azul de Alpha Compliance (#1d5bff)
 * y el verde azulado de Forensic (#0d9488, el de Socios). Los niveles de riesgo son los reales
 * del producto. Se generó de la maqueta aprobada; las clases que ya existían en estilo.css
 * (.btn, .card, .pt, .ok) se renombraron (.sx-btn, .sx-card, .sx-pt, .bien).
 */
/* ══ Fichas de producto: Alpha Risks y Alpha Compliance ══
   Dos páginas del sitio de Ziemtinel. La casa pone el marco (morado, Poppins, Inter) y cada
   sistema trae SU piel: el cian petróleo de Alpha Risks (#0e7490, el de su aplicación) y el azul
   de Alpha Compliance (#1d5bff). Los colores de nivel de riesgo y los escalones son los reales. */
.sx{
  --p:#6c389d; --p-2:#8f4fc0; --p-bg:#f3eeff;
  --ink:#0f172a; --txt:#334155; --dim:#64748b; --line:#e2e8f0; --bg:#fcfcfc;
  --ar:#0e7490; --ar-hi:#1399be; --ar-bg:#eaf9fd; --ar-lienzo:#0b181c; --ar-lienzo2:#10242a;
  --ar-linea:#ddeaee; --ar-linea2:#ebf2f5; --ar-tinta:#14262b; --ar-tinta2:#51727b; --ar-tinta3:#86a0a7; --ar-mesa:#f4f8fa;
  --c1:#4ade80; --c2:#facc15; --c3:#fb923c; --c4:#ef4444;
  --ac:#1d5bff; --ac-hi:#3d7bff; --ac-bg:#e9f0ff; --ac-lienzo:#0a0d14; --ac-mesa:#f2f5fa;
  --ac-tinta:#131b2e; --ac-tinta2:#4b5b85; --ac-linea:#dde4f4;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --disp:'Poppins','Inter',sans-serif;
  --mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  color-scheme:light;
}
.sx,.sx *{box-sizing:border-box}
.sx [hidden]{display:none!important}
/* Las reglas de elementos van con :where(): quedan acotadas a .sx pero SIN sumar especificidad, para que
   las reglas de clase de más abajo (.rk, .bt, .btn-ac…) sigan ganándoles, como en el diseño original.
   Escritas como «.sx button» pisaban el tamaño y el color de cada botón del sitio. */
html{scroll-behavior:smooth}
:where(.sx) h1,:where(.sx) h2,:where(.sx) h3,:where(.sx) h4,:where(.sx) p{margin:0}
:where(.sx) button{font:inherit;color:inherit;cursor:pointer}
:where(.sx) a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin-inline:auto;padding-inline:max(16px,3vw)}
.ic{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
:where(.sx) :focus-visible{outline:2px solid var(--ar-hi);outline-offset:2px}
.pg-ac :focus-visible{outline-color:var(--ac-hi)}

/* ── Piezas comunes ── */
.sx-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border:1.5px solid transparent;border-radius:11px;font:600 14.5px/1 var(--disp);transition:transform .15s ease,background .15s ease,border-color .15s ease}
.sx-btn:hover{transform:translateY(-1px)}
.sx-btn .ic{font-size:15px}
:where(.sx) h1{font:800 clamp(38px,5.2vw,64px)/1.04 var(--disp);letter-spacing:-.035em}
:where(.sx) h2{font:800 clamp(28px,3.4vw,42px)/1.1 var(--disp);letter-spacing:-.03em}
.lead{font-size:clamp(16px,1.5vw,19px);line-height:1.65;max-width:32em}
.sec{padding-block:88px}
.sec-h{margin-bottom:34px;max-width:30em}
.sec-h p{margin-top:12px;font-size:16.5px;line-height:1.6;max-width:34em}
.cap{margin-top:12px;font-size:12px;color:var(--ar-tinta3)}
@media(max-width:720px){.sec{padding-block:60px}}

/* ═════════════ ALPHA RISKS ═════════════ */
.pg-ar{--a:var(--ar);--a-hi:var(--ar-hi);--a-bg:var(--ar-bg);--a-linea:var(--ar-linea);--a-mesa:var(--ar-mesa);--a-tinta:var(--ar-tinta);--a-tinta2:var(--ar-tinta2);--a-tinta3:var(--ar-tinta3)}
.ar-hero{position:relative;overflow:hidden;background:var(--ar-lienzo);color:#a9c9d2;padding-block:36px 44px}
.ar-hero::before{content:'';position:absolute;inset:0;background:
  radial-gradient(55% 60% at 82% 28%,rgba(19,153,190,.26),transparent 70%),
  radial-gradient(40% 50% at 8% 95%,rgba(14,116,144,.2),transparent 70%)}
.ar-hero::after{content:'';position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(19,153,190,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(19,153,190,.07) 1px,transparent 1px);
  background-size:52px 52px;-webkit-mask-image:linear-gradient(180deg,#000 35%,transparent);mask-image:linear-gradient(180deg,#000 35%,transparent)}
.ar-hero::after{animation:sx-respira 7s ease-in-out infinite}
@keyframes sx-respira{0%,100%{opacity:.55}50%{opacity:1}}
.ar-hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:center}
.ar-hero h1{color:#f1fbfe;font-size:clamp(32px,3.9vw,50px)}
.ar-hero .lead{margin-top:16px;color:#9cc0ca;font-size:clamp(15px,1.3vw,17px);line-height:1.6}
.ar-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.ar-hero .ar-btns{margin-top:24px;gap:12px}
.ar-hero .sx-btn{padding:12px 20px}
.ar-hero .cap{margin-top:8px}
.btn-ar{background:linear-gradient(135deg,var(--ar-hi),var(--ar));color:#f1fbfe;box-shadow:0 10px 30px rgba(19,153,190,.3)}
.btn-ar-g{border-color:rgba(19,153,190,.45);background:rgba(255,255,255,.04);color:#c6e6ee}
.btn-ar-g:hover{background:rgba(19,153,190,.14)}
.ar-meta{margin-top:16px;font-size:13px;color:#6f929c}

/* Niveles de riesgo: los colores de calor reales del producto */
.n-b{background:var(--c1)}.n-m{background:var(--c2)}.n-a{background:var(--c3)}.n-c{background:var(--c4)}
.nv{flex:none;padding:2px 8px;border-radius:99px;font:600 10.5px/1.5 var(--sans)}
.nv-b{background:#dcfce7;color:#15803d}.nv-m{background:#fef9c3;color:#a16207}.nv-a{background:#ffedd5;color:#c2410c}.nv-c{background:#fee2e2;color:#b91c1c}
.sx input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;background:linear-gradient(90deg,var(--c1),var(--c2),var(--c3),var(--c4));outline-offset:6px}
.sx input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--ar-tinta);box-shadow:0 2px 6px rgba(0,0,0,.25);cursor:grab}
.sx input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--ar-tinta);cursor:grab}

/* El radar de riesgos de la portada: siete sectores (un plan por tipo), el nivel es la distancia al centro y el anillo punteado es el apetito. */
.rd-w{max-width:510px;margin-inline:auto}
.rd{position:relative;width:100%;aspect-ratio:1}
.rd-svg{position:absolute;inset:0;width:100%;height:100%}
.rd-b-c{fill:rgba(239,68,68,.14)}.rd-b-a{fill:rgba(251,146,60,.12)}.rd-b-m{fill:rgba(250,204,21,.09)}.rd-b-b{fill:rgba(74,222,128,.1)}
.rd-s{fill-opacity:.1}
.rd-l{stroke:rgba(255,255,255,.1);stroke-width:1}
.rd-r{fill:none;stroke:rgba(255,255,255,.14);stroke-width:1}
.rd-apr{stroke:#f1fbfe;stroke-width:1.8;stroke-dasharray:3 6;stroke-linecap:round}
.rd-fin{stroke:rgba(19,153,190,.55);stroke-width:1.5}
.rd-sweep{position:absolute;left:8.04%;top:8.04%;width:83.92%;height:83.92%;border-radius:50%;pointer-events:none;transform:rotate(40deg);will-change:transform;
  background:conic-gradient(from 0deg,rgba(34,211,238,0) 0deg,rgba(34,211,238,0) 250deg,rgba(34,211,238,.07) 290deg,rgba(34,211,238,.26) 340deg,rgba(165,243,252,.85) 359.5deg,rgba(34,211,238,0) 360deg)}
.rd-ico{position:absolute;inset:0;pointer-events:none}
.rd-i{position:absolute;display:grid;place-items:center;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;background:rgba(11,24,28,.92);border:1.5px solid var(--th);color:color-mix(in srgb,var(--th) 45%,#fff);font-size:16px;box-shadow:0 0 14px color-mix(in srgb,var(--th) 45%,transparent)}
.rd-dots{position:absolute;inset:0}
.rd-d{position:absolute;display:grid;place-items:center;width:26px;height:26px;margin:-13px 0 0 -13px;padding:0;border:2px solid #fff;border-radius:50%;font:700 11px/1 var(--sans);color:#0b181c;box-shadow:0 0 0 3px rgba(11,24,28,.6);cursor:pointer;
  transition:left 1.1s cubic-bezier(.3,.8,.3,1),top 1.1s cubic-bezier(.3,.8,.3,1),box-shadow .4s ease,border-color .4s ease}
.rd-g{width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-width:1.5px;box-shadow:none;opacity:.7;cursor:default}
.rd-d.ping::after{content:'';position:absolute;inset:-5px;border-radius:50%;border:2px solid #a5f3fc;animation:rd-ping 1s ease-out 1 both}
@keyframes rd-ping{from{transform:scale(.7);opacity:1}to{transform:scale(2.1);opacity:0}}
.rd-d.flag{border-color:#fecaca;animation:rd-alerta 1.2s ease-in-out infinite}
@keyframes rd-alerta{0%,100%{box-shadow:0 0 0 3px rgba(11,24,28,.6),0 0 0 3px rgba(239,68,68,0)}50%{box-shadow:0 0 0 3px rgba(11,24,28,.6),0 0 0 9px rgba(239,68,68,.42)}}
.rd-d.ok{border-color:#86efac;box-shadow:0 0 0 3px rgba(11,24,28,.6),0 0 0 6px rgba(34,197,94,.38)}
.rd-core{position:absolute;left:50%;top:50%;display:grid;place-content:center;width:17%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;text-align:center;
  background:radial-gradient(circle,rgba(11,24,28,.95),rgba(11,24,28,.72));border:1px solid rgba(19,153,190,.5);box-shadow:0 0 30px rgba(19,153,190,.25)}
.rd-core b{font:800 clamp(22px,3.2vw,34px)/1 var(--disp);color:#f1fbfe;transition:color .4s ease}
.rd-core span{max-width:7em;margin-top:3px;font-size:clamp(7px,.85vw,9.5px);line-height:1.15;color:#8fb0ba}
.rd[data-fase=tra] .rd-core b{color:#86efac}
.rd-ap{position:absolute;transform:translate(-50%,-50%);padding:2px 8px;border-radius:99px;background:rgba(11,24,28,.92);border:1px solid rgba(241,251,254,.45);font:600 10px/1.2 var(--sans);color:#f1fbfe}
.rd-cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;min-height:46px;margin-top:10px;padding:9px 14px;border:1px solid rgba(19,153,190,.3);border-radius:12px;background:rgba(11,24,28,.62);color:#cfe7ee;font-size:13px}
.rd-cap b{font-family:var(--mono);color:#f1fbfe}
.rd-tp{padding:2px 9px;border-radius:99px;background:color-mix(in srgb,var(--th) 26%,#0b181c);border:1px solid var(--th);color:color-mix(in srgb,var(--th) 40%,#fff);font:600 11px var(--sans)}
.rd-es{font:600 11.5px var(--sans);color:#a5f3fc}
.rd-cap.flash{animation:rd-entra .4s ease both}
@keyframes rd-entra{from{opacity:.2;transform:translateY(4px)}to{opacity:1;transform:none}}
.ar-hero .cap{margin-top:8px;text-align:center}
@media(max-width:1020px){.ar-hero-grid{grid-template-columns:minmax(0,1fr);gap:40px}}
@media(max-width:560px){
  .rd-i{width:26px;height:26px;margin:-13px 0 0 -13px;font-size:13px}
  .rd-d{width:21px;height:21px;margin:-10.5px 0 0 -10.5px;font-size:10px}
  .rd-g{width:7px;height:7px;margin:-3.5px 0 0 -3.5px}
  .rd-ap{font-size:9px;padding:1px 6px}
}
@media (prefers-reduced-motion:reduce){.rd-sweep{opacity:.5}.rd-d,.rd-d.flag{animation:none;transition:none}.rd-d.ping::after{animation:none;opacity:0}}

/* ── Planes ── */
.ar-planes{background:#fff}
.ar-planes h2,.ar-fases h2,.ar-marca h2{color:#0b3a47}
.ar-planes .sec-h p,.ar-fases .sec-h p,.ar-marca .sec-h p{color:var(--ar-tinta2)}
.sw{display:inline-flex;align-items:center;gap:10px;margin-left:auto;font-size:13px;font-weight:500;color:var(--ar-tinta2);background:none;border:0;padding:6px 0}
.sw-t{position:relative;width:42px;height:24px;border-radius:99px;background:#cbd8dc;transition:background .2s ease}
.sw-t::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s ease}
.sw[aria-checked=true] .sw-t{background:var(--ar)} .sw[aria-checked=true] .sw-t::after{transform:translateX(18px)}
/* Siete nodos (diez con el paquete financiero) que desembocan en un solo registro: el mapa del centro es el de la portada. */
.pl2-top{display:flex;justify-content:flex-end;margin-bottom:6px}
.pl2{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:34px;align-items:center}
.pl2-st{position:relative;aspect-ratio:1.28}
.pl2-sp{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.pl2-sp line{stroke:#cfe1e6;stroke-width:1.5;vector-effect:non-scaling-stroke;transition:stroke .3s ease,opacity .4s ease}
.pl2-sp line.on{stroke:var(--ar-hi);stroke-width:2.2;stroke-dasharray:6 7;animation:pl2-flujo .8s linear infinite}
.pl2-sp line.off{opacity:0}
@keyframes pl2-flujo{to{stroke-dashoffset:-13}}
.pl2-hub{position:absolute;left:50%;top:50%;z-index:2;width:25%;padding:8px 8px 9px;transform:translate(-50%,-50%);border-radius:16px;background:#fff;border:1px solid var(--ar-linea);box-shadow:0 18px 44px rgba(11,58,71,.16)}
.pl2-hub-t{margin:0 0 6px;text-align:center;font:600 10px/1 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--ar-tinta3)}
.pl2-mx{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;aspect-ratio:1}
.pl2-mx i{border-radius:3px;opacity:.5}
.pl2-d{position:absolute;display:grid;place-items:center;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:#fff;border:1.5px solid var(--ar-tinta);font:700 9.5px/1 var(--sans);color:var(--ar-tinta);opacity:.72;transition:transform .3s ease,opacity .4s ease,background .3s ease}
.pl2-d.fin{border-style:dashed}
.pl2-d.sel{z-index:2;opacity:1;transform:scale(1.3);background:var(--ar-tinta);color:#fff}
.pl2-d.sel::after{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--ar-hi);animation:pl2-sonar 1.7s ease-out infinite}
@keyframes pl2-sonar{from{transform:scale(.8);opacity:.9}to{transform:scale(2.1);opacity:0}}
.pl2-d.off{opacity:0;transform:scale(.3)}
.pl2-nodes{position:absolute;inset:0;z-index:3;pointer-events:none}
.pl2-n{position:absolute;display:block;width:48px;height:48px;margin:-24px 0 0 -24px;padding:0;border:0;background:none;pointer-events:auto;transition:opacity .4s ease,transform .4s ease}
.pl2-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;border:2px solid var(--ar-linea);color:var(--ar);font-size:21px;box-shadow:0 6px 18px rgba(11,58,71,.1);transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease}
.pl2-n:hover .pl2-ic{border-color:var(--ar-hi)}
.pl2-n.on .pl2-ic{background:var(--ar);border-color:var(--ar);color:#fff;transform:scale(1.12);box-shadow:0 10px 26px rgba(14,116,144,.4)}
.pl2-n.fin .pl2-ic{border-style:dashed;border-color:#8fcadb}
.pl2-n.fin.on .pl2-ic{border-style:solid;border-color:var(--ar)}
.pl2-nm{position:absolute;left:50%;top:100%;width:124px;margin-top:8px;transform:translateX(-50%);text-align:center;font:600 12.5px/1.25 var(--sans);color:var(--ar-tinta2)}
.pl2-n.on .pl2-nm{color:var(--ar-tinta)}
.pl2-n.off{opacity:0;pointer-events:none;transform:scale(.4)}
.pl2-card{padding:26px 26px 24px;border-radius:18px;background:var(--ar-mesa);border:1px solid var(--ar-linea);box-shadow:0 18px 50px rgba(11,58,71,.08)}
.pl2-card.flash{animation:pl2-entra .45s ease both}
@keyframes pl2-entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.pl2-ch{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.pl2-bi{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:14px;background:var(--ar);color:#fff;font-size:25px}
.pl2-ch h3{font:800 24px/1.15 var(--disp);letter-spacing:-.02em;color:var(--ar-tinta)}
.pl2-fin{display:inline-block;margin-top:6px;padding:3px 10px;border:1px dashed #8fcadb;border-radius:99px;font:600 11px var(--sans);color:var(--ar)}
.pl2-dl{display:flex;flex-direction:column;gap:14px;margin:0}
.pl2-dl>div{padding-top:14px;border-top:1px solid var(--ar-linea)}
.pl2-dl dt{margin-bottom:6px;font:600 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ar-tinta3)}
.pl2-dl dd{margin:0;font-size:15px;line-height:1.5;color:var(--ar-tinta)}
.pl2-dl em{margin-left:4px;font-style:normal}
.pl2-m{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:8px;background:#fff;border:1px solid var(--ar-linea);font:600 13px var(--sans);color:var(--ar)}
.pl2-m .ic{font-size:15px}
.pl2-r{font:700 13px var(--mono);color:var(--ar)}
.pl2-cap{margin-top:18px;text-align:center}
@media(max-width:900px){
  .pl2{grid-template-columns:minmax(0,1fr);gap:22px}
  .pl2-top{justify-content:flex-start}
  .pl2-top .sw{margin-left:0}
  .pl2-st{width:100%;max-width:520px;margin-inline:auto;aspect-ratio:1.14}
  .pl2-nm{display:none}
  .pl2-n{width:42px;height:42px;margin:-21px 0 0 -21px}
  .pl2-ic{width:42px;height:42px;font-size:18px}
  .pl2-hub{width:33%;padding:6px 6px 7px;border-radius:13px}
  .pl2-hub-t{margin-bottom:4px;font-size:8.5px}
  .pl2-d{width:14px;height:14px;margin:-7px 0 0 -7px;font-size:8px}
}

/* Cada tipo de plan con su color y su escena: el nodo, el rayo hacia el registro, la tarjeta y su banner comparten el mismo tono. */
.pl2-ic{color:var(--th,var(--ar));border-color:color-mix(in srgb,var(--th,var(--ar)) 40%,#fff);background:color-mix(in srgb,var(--th,var(--ar)) 7%,#fff)}
.pl2-n:hover .pl2-ic{border-color:var(--th,var(--ar))}
.pl2-n.on .pl2-ic{background:var(--th,var(--ar));border-color:var(--th,var(--ar));color:#fff;box-shadow:0 10px 26px color-mix(in srgb,var(--th,var(--ar)) 45%,transparent)}
.pl2-n.fin .pl2-ic{border-style:dashed}
.pl2-n.fin.on .pl2-ic{border-style:solid}
.pl2-n.on .pl2-nm{color:var(--th,var(--ar-tinta))}
.pl2-card{--th:var(--ar);padding:12px 22px 22px}
.pl2-sc{position:relative;height:108px;margin:0 -10px 18px;overflow:hidden;border-radius:12px;background:linear-gradient(135deg,var(--th),color-mix(in srgb,var(--th) 56%,#000))}
.pl2-sc::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:20px 20px}
.pl2-sc svg{position:relative;display:block;width:100%;height:100%;color:#fff}
.pl2-bi{background:var(--th)}
.pl2-fin{border-color:color-mix(in srgb,var(--th) 50%,#fff);color:var(--th)}
.pl2-m{color:var(--th);border-color:color-mix(in srgb,var(--th) 30%,#fff)}
.pl2-r{color:var(--th)}
.pl2-dl dd.pl2-nms{display:flex;flex-wrap:wrap;gap:6px}
.nm-l,.nm-m,.nm-c{display:inline-flex;align-items:center;padding:4px 10px;border-radius:99px;font:600 12px/1.2 var(--sans);white-space:nowrap}
.nm-l{background:var(--th);color:#fff}
.nm-m{background:#fff;border:1px solid color-mix(in srgb,var(--th) 38%,#fff);color:color-mix(in srgb,var(--th) 82%,#000)}
.nm-c{background:transparent;border:1px dashed color-mix(in srgb,var(--th) 50%,#fff);color:var(--ar-tinta2);animation:pl2-entra .35s ease both}
/* Las escenas: trazos blancos sobre el color del tipo */
.sc-ln{fill:none;stroke:rgba(255,255,255,.45);stroke-width:1.6}
.sc-st{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sc-fl{fill:rgba(255,255,255,.14)}
.sc-fl2{fill:rgba(255,255,255,.2)}
.sc-nd{fill:#fff}
.sc-ring{fill:none;stroke:#fff;stroke-width:2}
.sc-use{fill:none;stroke:#fff;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}
.sc-lim{fill:none;stroke:rgba(255,255,255,.7);stroke-width:1.6;stroke-dasharray:5 5}
.sc-pk,.sc-coin{fill:#fde68a}
.sc-bl{animation:sc-bl 1.9s ease-in-out infinite}
.sc-bl2{animation:sc-bl 1.2s ease-in-out infinite}
@keyframes sc-bl{0%,100%{opacity:.25}50%{opacity:1}}
.sc-run{offset-distance:0%;animation:sc-run 3.6s linear infinite}
@keyframes sc-run{from{offset-distance:0%}to{offset-distance:100%}}
.sc-dr{stroke-dasharray:420;stroke-dashoffset:420;animation:sc-dr 3.6s ease-in-out infinite}
@keyframes sc-dr{0%{stroke-dashoffset:420}60%,100%{stroke-dashoffset:0}}
.sc-flujo{stroke-dasharray:4 6;animation:sc-flujo 1s linear infinite}
@keyframes sc-flujo{to{stroke-dashoffset:-10}}
.sc-sw{animation:sc-sw 4s ease-in-out infinite}
@keyframes sc-sw{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
.sc-spin{animation:sc-spin 6s linear infinite}
@keyframes sc-spin{to{transform:rotate(360deg)}}
.sc-arc{fill:none;stroke:#fde68a;stroke-width:3;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;animation:sc-arc 4s ease-in-out infinite}
@keyframes sc-arc{0%{stroke-dashoffset:100}70%,100%{stroke-dashoffset:0}}
.sc-pop,.sc-lk,.sc-shield{transform-box:fill-box;transform-origin:center}
.sc-pop{animation:sc-pop 2.2s ease-in-out infinite}
@keyframes sc-pop{0%,100%{transform:scale(.85);opacity:.6}50%{transform:scale(1.1);opacity:1}}
.sc-lk,.sc-shield{animation:sc-lk 3.2s ease-in-out infinite}
@keyframes sc-lk{0%,100%{transform:scale(1)}40%{transform:scale(1.12)}}
.sc-coin{animation:sc-caida 2.4s ease-in infinite}
@keyframes sc-caida{0%{transform:translateY(0);opacity:1}100%{transform:translateY(24px);opacity:0}}
.sc-scan{fill:rgba(255,255,255,.18);animation:sc-scan 3.6s linear infinite}
@keyframes sc-scan{from{transform:translateX(0)}to{transform:translateX(250px)}}
.sc-vis{fill:#fff;animation:sc-vis 3.4s ease-in-out infinite}
.sc-msk{fill:#fff;opacity:0;animation:sc-msk 3.4s ease-in-out infinite}
@keyframes sc-vis{0%,35%{opacity:1}50%,85%{opacity:0}100%{opacity:1}}
@keyframes sc-msk{0%,35%{opacity:0}50%,85%{opacity:.95}100%{opacity:0}}
.sc-scv{animation:sc-scv 4.4s ease-in-out infinite}
@keyframes sc-scv{0%,12%{transform:translateY(0)}30%,45%{transform:translateY(22px)}62%,78%{transform:translateY(44px)}92%,100%{transform:translateY(0)}}
.sc-flag{stroke:#fde68a;animation:sc-bl 2s ease-in-out infinite}
@media(max-width:900px){.pl2-sc{height:96px}}
@media (prefers-reduced-motion:reduce){
  .pl2-sc *{animation:none!important}
  .sc-dr,.sc-arc{stroke-dashoffset:0}
  .sc-run{display:none}
  .sc-msk{opacity:0}
}

/* ── Fases ── */
.ar-fases{background:var(--ar-mesa);border-block:1px solid var(--ar-linea)}
/* Una vuelta completa de ISO 31000 sobre un solo mapa: el recorrido se reproduce solo y cada fase termina con el visto bueno. */
.fz{display:grid;gap:26px}
.fz-st{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.fz-st::before,.fz-fill{content:'';position:absolute;top:23px;left:10%;right:10%;height:4px;border-radius:99px;background:#d6e6eb}
.fz-fill{background:var(--ar-hi);right:auto;width:0;transition:width .7s cubic-bezier(.2,.8,.2,1)}
.fz-n{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0;border:0;background:none;text-align:center}
.fz-c{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:#fff;border:2.5px solid #bfd6dd;font:700 16px var(--disp);color:var(--ar-tinta3);transition:background .3s ease,border-color .3s ease,color .3s ease}
.fz-n.now .fz-c{border-color:var(--ar-hi);color:var(--ar);box-shadow:0 0 0 7px rgba(19,153,190,.18);animation:fz-late 1.6s ease-in-out infinite}
@keyframes fz-late{50%{box-shadow:0 0 0 12px rgba(19,153,190,.05)}}
.fz-n.bien .fz-c{background:var(--ar-hi);border-color:var(--ar-hi);color:#fff}
.fz-n b{font:600 13px/1.3 var(--disp);color:var(--ar-tinta)}
.fz-vb{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:99px;background:#dff3f9;color:#0b5a70;font:600 11px var(--sans);opacity:0;transform:scale(.6) translateY(-4px);transition:opacity .3s ease,transform .35s cubic-bezier(.3,1.6,.5,1)}
.fz-vb .ic{font-size:11px}
.fz-n.bien .fz-vb{opacity:1;transform:none}
.fz-body{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:34px;align-items:center}
.fz-k{min-height:11px;font:600 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ar-tinta3)}
.fz-txt h3{margin-top:10px;font:800 clamp(24px,2.6vw,32px)/1.12 var(--disp);letter-spacing:-.025em;color:var(--ar-tinta)}
.fz-d{margin-top:8px;font-size:16px;line-height:1.5;color:var(--ar-tinta2)}
.fz-live{min-height:1.5em;margin-top:14px;font:600 14px/1.4 var(--sans);color:var(--ar)}
.fz-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;min-height:44px}
.fz-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:99px;font:600 13px var(--sans)}
.fz-pill.esp{background:#fff;border:1px dashed #9db9c1;color:var(--ar-tinta2)}
.fz-pill.bien{background:#dff3f9;color:#0b5a70;animation:fz-pop .45s cubic-bezier(.3,1.6,.5,1)}
@keyframes fz-pop{from{transform:scale(.85);opacity:.4}to{transform:none;opacity:1}}
.fz-wait{width:8px;height:8px;border-radius:50%;background:var(--ar-hi);animation:fz-pu 1.2s ease-in-out infinite}
@keyframes fz-pu{50%{transform:scale(1.7);opacity:.4}}
.fz-ok{display:inline-flex;align-items:center;gap:10px;padding:11px 18px;border:0;border-radius:11px;background:var(--ar);color:#fff;font:600 14px var(--disp)}
.fz-ok:hover{background:#0a5d75}
.fz-ctl2{display:flex;gap:18px;margin-top:10px}
.fz-b{display:inline-flex;align-items:center;gap:7px;padding:6px 0;border:0;background:none;font:500 13px var(--sans);color:var(--ar-tinta3)}
.fz-b:hover{color:var(--ar-tinta)}
.fz-card{padding:14px 34px 6px;border-radius:18px;background:#fff;border:1px solid var(--ar-linea);box-shadow:0 18px 50px rgba(11,58,71,.09)}
.fz-mxa{position:relative;max-width:310px;aspect-ratio:1;margin:58px auto 30px}
.fz-mx{position:absolute;inset:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:4px}
.fz-mx i{position:relative;border-radius:7px;background:#e8eff2;transition:background .7s ease}
.fz-mx i.sobre::after{content:'';position:absolute;inset:0;border-radius:inherit;background:repeating-linear-gradient(135deg,transparent 0 5px,rgba(255,255,255,.5) 5px 7px);opacity:0;transition:opacity .5s ease}
.fz:is([data-f="2"],[data-f="3"],[data-f="4"],[data-f="5"]) .fz-mx i.n-b{background:var(--c1)}
.fz:is([data-f="2"],[data-f="3"],[data-f="4"],[data-f="5"]) .fz-mx i.n-m{background:var(--c2)}
.fz:is([data-f="2"],[data-f="3"],[data-f="4"],[data-f="5"]) .fz-mx i.n-a{background:var(--c3)}
.fz:is([data-f="2"],[data-f="3"],[data-f="4"],[data-f="5"]) .fz-mx i.n-c{background:var(--c4)}
.fz:is([data-f="3"],[data-f="4"],[data-f="5"]) .fz-mx i.sobre::after{opacity:1}
.fz-dots{position:absolute;inset:0;pointer-events:none}
.fz-dot{position:absolute;display:grid;place-items:center;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:#fff;border:2.5px solid var(--ar-tinta);font:700 12px/1 var(--sans);color:var(--ar-tinta);opacity:0;transform:scale(.4);
  transition:left .9s cubic-bezier(.3,.8,.3,1) calc(var(--k) * 70ms),top .9s cubic-bezier(.3,.8,.3,1) calc(var(--k) * 70ms),opacity .4s ease calc(var(--k) * 90ms),transform .4s ease calc(var(--k) * 90ms),border-color .5s ease,box-shadow .4s ease}
.fz-dot.vis{opacity:1;transform:none}
.fz-dot.flag{border-color:#b91c1c;animation:fz-alerta 1.3s ease-in-out infinite}
@keyframes fz-alerta{0%,100%{box-shadow:0 0 0 0 rgba(185,28,28,0)}50%{box-shadow:0 0 0 7px rgba(185,28,28,.35)}}
.fz-dot.fixed{border-color:#15803d;box-shadow:0 0 0 4px rgba(34,197,94,.3)}
.fz-ax{position:absolute;font:600 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ar-tinta3);white-space:nowrap}
.fz-ax-y{left:-18px;top:50%;transform:translate(-50%,-50%) rotate(-90deg)}
.fz-ax-x{left:50%;bottom:-22px;transform:translateX(-50%)}
.fz-apt{position:absolute;right:0;top:-40px;padding:6px 12px;border:1px dashed var(--ar-tinta3);border-radius:99px;background:#fff;font:600 12px var(--sans);color:var(--ar-tinta);opacity:0;transform:translateY(6px);transition:opacity .5s ease,transform .5s ease}
.fz:is([data-f="3"],[data-f="4"],[data-f="5"]) .fz-apt{opacity:1;transform:none}
.fz-w p{margin:0 0 8px;font-size:12.5px;color:var(--ar-tinta3)}
.fz-wb{display:flex;gap:4px;height:34px}
.fz-wb span{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;padding:0 10px;border-radius:9px;background:#e3edf0;color:var(--ar-tinta2);font-size:11.5px;overflow:hidden;transition:background .4s ease,color .4s ease}
.fz-wb b{font:700 12.5px var(--disp);white-space:nowrap}
.fz-wb i{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fz-wb span.now{background:#bfe6f1;color:#0b3a47}
.fz-wb span.bien{background:var(--ar-hi);color:#fff}
@media(max-width:900px){.fz-body{grid-template-columns:minmax(0,1fr);gap:22px}}
@media(max-width:720px){
  .fz-n b{font-size:11px}
  .fz-c{width:40px;height:40px}
  .fz-st::before,.fz-fill{top:18px}
  .fz-vb,.fz-wb i{display:none}
  .fz-wb span{justify-content:center;padding:0 3px}
  .fz-wb b{font-size:11px}
  .fz-card{padding:16px 22px 8px}
  .fz-mxa{margin:56px auto 26px}
  .fz-dot{width:26px;height:26px;margin:-13px 0 0 -13px;font-size:11px}
  .fz-ax-y{left:-12px}
}

/* ── Operación y monitoreo ── */
.ar-opera{background:var(--ar-lienzo);color:#a9c9d2;position:relative;overflow:hidden}
.ar-opera::before{content:'';position:absolute;inset:0;background:radial-gradient(45% 55% at 12% 20%,rgba(19,153,190,.18),transparent 70%)}
.ar-opera .wrap{position:relative}
.ar-opera h2{color:#f1fbfe}
.ar-opera .sec-h p{color:#8fb0ba}
.op-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.op-card{border-radius:18px;background:#fff;color:var(--ar-tinta);padding:24px;box-shadow:0 30px 70px rgba(0,0,0,.4)}
.op-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.op-h h3{font:700 18px var(--disp)}
.op-who{padding:4px 11px;border-radius:99px;background:var(--ar-bg);color:var(--ar);font:600 11.5px var(--sans)}
.tk{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.tk label{display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--ar-linea);border-radius:11px;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.tk label:hover{border-color:var(--ar-hi)}
.tk input{position:absolute;opacity:0;width:0;height:0}
.tk .bx{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:7px;border:2px solid #b8cdd3;color:transparent;font-size:13px;transition:all .15s ease}
.tk input:checked + .bx{background:var(--ar-hi);border-color:var(--ar-hi);color:#fff}
.tk input:focus-visible + .bx{outline:2px solid var(--ar-hi);outline-offset:2px}
.tk .tx{flex:1;min-width:0;font-size:14px}
.tk input:checked ~ .tx{color:var(--ar-tinta3);text-decoration:line-through;text-decoration-color:#b8cdd3}
.tk .who{flex:none;font:500 11px var(--mono);color:var(--ar-tinta3)}
.tk-sum{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--ar-linea2);font-size:13px;color:var(--ar-tinta2)}
.tk-sum .tr{flex:1;height:8px;border-radius:99px;background:#e6eef1;overflow:hidden}
.tk-sum .tr i{display:block;height:100%;border-radius:99px;background:var(--ar-hi);transition:width .5s cubic-bezier(.2,.8,.2,1)}
.gg{display:flex;flex-direction:column;gap:18px}
.g-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:13.5px;font-weight:600}
.g-v{display:flex;align-items:center;gap:10px}
.g-v b{font:700 18px var(--disp);font-variant-numeric:tabular-nums}
.g-p{padding:3px 10px;border-radius:99px;font:600 11px var(--sans)}
.g-p.bien{background:#dcfce7;color:#15803d}.g-p.aviso{background:#fef3c7;color:#a16207}.g-p.alarma{background:#fee2e2;color:#b91c1c}
.g-b{position:relative;height:12px;border-radius:99px;background:#e6eef1}
.g-f{height:100%;border-radius:99px;transition:width .5s cubic-bezier(.2,.8,.2,1),background .3s ease}
.g-f.bien{background:var(--c1)}.g-f.aviso{background:var(--c2)}.g-f.alarma{background:var(--c4)}
.g-t{position:absolute;top:-4px;width:2px;height:20px;background:#6b8890;border-radius:1px}
.g-tl{display:flex;justify-content:space-between;margin-top:6px;font-size:10.5px;color:var(--ar-tinta3);position:relative;height:12px}
.g-tl span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.g-in{margin-top:14px}
.g-in label{display:block;margin-bottom:8px;font-size:12px;color:var(--ar-tinta3)}
@media(max-width:860px){.op-grid{grid-template-columns:minmax(0,1fr)}}

/* ── Marca propia ── */
.ar-marca{background:#fff}
/* El motor de personalización a la vista: se parte en blanco, se carga un logo y la marca llega a la aplicación. */
.mk2{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:40px;align-items:start}
.mk2-c{display:flex;flex-direction:column;gap:22px}
.mk2-f{position:relative}
.mk2-f label,.mk2-l{display:block;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--a-tinta)}
.mk-in{width:100%;padding:12px 14px;border:1.5px solid var(--a-linea);border-radius:10px;font:500 15px var(--sans);color:var(--a-tinta);background:#fff}
.mk-in:focus{outline:none;border-color:var(--a-hi)}
.mk2-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.mk2-f .mk2-drop{position:relative;display:grid;justify-items:center;gap:4px;margin-bottom:0;padding:20px 16px;border:2px dashed color-mix(in srgb,var(--a-hi) 32%,#fff);border-radius:14px;background:var(--a-mesa);text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.mk2-drop:hover,.mk2-drop.sobre{border-color:var(--a-hi);background:var(--a-bg)}
.mk2-drop:focus-within{outline:2px solid var(--a-hi);outline-offset:2px}
.mk2-drop .ic{font-size:24px;color:var(--a)}
.mk2-drop b{font:600 14.5px var(--disp);color:var(--a-tinta)}
.mk2-drop small{max-width:24em;font-size:12px;line-height:1.4;font-weight:400;color:var(--a-tinta2)}
.mk2-err{margin:8px 0 0;font-size:12.5px;color:#b91c1c}
.mk2-ex{display:flex;flex-wrap:wrap;gap:10px}
.mk2-e{display:grid;place-items:center;width:104px;height:56px;padding:6px;border:1.5px solid var(--a-linea);border-radius:12px;background:#fff;transition:border-color .15s ease,transform .15s ease}
.mk2-e:hover{border-color:var(--a-hi);transform:translateY(-2px)}
.mk2-e.on{border-color:var(--a);box-shadow:0 0 0 3px color-mix(in srgb,var(--a-hi) 24%,transparent)}
.mk2-e img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}
.mk2-re{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:4px 0;border:0;background:none;font:500 13px var(--sans);color:var(--a-tinta3);text-decoration:underline}
.mk2-re:hover{color:var(--a-tinta)}
.mk2-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.mk2-s{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--a-linea);border-radius:14px;background:#fff;transition:border-color .3s ease,box-shadow .3s ease}
.mk2-s.on{border-color:var(--a-hi);box-shadow:0 10px 26px color-mix(in srgb,var(--a-hi) 16%,transparent)}
.mk2-sh{display:flex;align-items:center;gap:8px}
.mk2-sh i{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:var(--a-mesa);border:1.5px solid var(--a-linea);font:700 11px var(--disp);font-style:normal;color:var(--a-tinta3);transition:background .3s ease,border-color .3s ease,color .3s ease}
.mk2-s.on .mk2-sh i{background:var(--a-hi);border-color:var(--a-hi);color:#fff}
.mk2-sh b{font:600 12.5px/1.2 var(--disp);color:var(--a-tinta)}
.mk2-sv{position:relative;display:grid;place-items:center;align-content:center;gap:4px;height:72px;overflow:hidden;border-radius:10px;background:var(--a-mesa);border:1px dashed var(--a-linea)}
.mk2-sv:empty::before{content:'—';font-size:18px;color:var(--a-tinta3)}
.mk2-chk{background:conic-gradient(#e8eff2 25%,#fff 0 50%,#e8eff2 0 75%,#fff 0) 0 0/14px 14px}
.mk2-sv img{max-width:86%;max-height:56px;object-fit:contain;animation:mk2-ap .5s ease both}
@keyframes mk2-ap{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
.mk2-s.on .mk2-chk::after{content:'';position:absolute;top:0;bottom:0;width:30%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--a-hi) 40%,transparent),transparent);animation:mk2-barre .9s ease-out 1 both}
@keyframes mk2-barre{from{left:-30%}to{left:100%}}
.mk2-ini{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--a-tinta);color:#fff;font:800 17px var(--disp);animation:mk2-ap .5s ease both}
.mk2-sv small{padding:0 6px;font-size:10px;line-height:1.2;text-align:center;color:var(--a-tinta2)}
.mk2-pal{grid-auto-flow:column;place-content:center;gap:6px}
.mk2-pal span{width:30px;height:30px;border-radius:9px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);animation:mk2-ap .5s ease both}
.mk2-pal span:nth-child(2){animation-delay:.1s}.mk2-pal span:nth-child(3){animation-delay:.2s}
.mk2-msg{min-height:1.4em;margin:12px 0 14px;font-size:13px;color:var(--a-tinta2)}
.mk2-pv{--m:#b7c4c9;--m2:#cfd8dc;--mt:#f1f5f6;display:grid;grid-template-columns:58px minmax(0,1fr);overflow:hidden;border-radius:16px;background:var(--a-mesa);border:1px solid var(--a-linea);box-shadow:0 22px 60px rgba(11,58,71,.12)}
.mk2-rail{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0;background:var(--m);transition:background .5s ease}
.mk2-rail i{width:26px;height:26px;border-radius:8px;background:rgba(255,255,255,.22)}
.mk2-lg{display:grid;place-items:center;width:38px;height:38px;overflow:hidden;border-radius:10px;background:#fff;color:var(--m);font:800 17px var(--disp);transition:color .5s ease}
.mk2-lg img{max-width:78%;max-height:78%;object-fit:contain}
.mk2-lg .ic{font-size:18px;color:#9db0b6}
.mk2-main{min-width:0}
.mk2-top{padding:14px 18px;background:#fff;border-bottom:3px solid var(--m);transition:border-color .5s ease}
.mk2-top b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font:700 15px/1.25 var(--disp);color:var(--a-tinta)}
.mk2-top small{display:block;margin-top:3px;font-size:11.5px;color:var(--a-tinta2)}
.mk2-bd{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}
.mk-k{padding:14px;border-radius:12px;background:var(--mt);border:1px solid var(--a-linea);transition:background .5s ease}
.mk-k i{display:block;width:34px;height:6px;margin-bottom:12px;border-radius:99px;background:var(--m);transition:background .5s ease}
.mk-k:nth-child(2) i{background:var(--m2)}
.mk-k b{display:block;font:700 22px var(--disp);color:var(--a-tinta)}
.mk-k span{font-size:12px;color:var(--a-tinta2)}
.mk-ln{grid-column:1/-1;display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:12px;background:#fff;border:1px solid var(--a-linea)}
.mk-ln span{height:8px;border-radius:99px;background:#e6eef1}
.mk-ln span:first-child{width:46%;background:var(--m);opacity:.85;transition:background .5s ease}
.mk2-pv[data-vacio] .mk-k b,.mk2-pv[data-vacio] .mk2-top b{color:var(--a-tinta3)}
@media(max-width:900px){.mk2{grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){
  .mk2-steps{grid-template-columns:minmax(0,1fr)}
  .mk2-s{flex-direction:row;align-items:center;justify-content:space-between}
  .mk2-sv{flex:none;width:150px;height:56px}
  .mk2-bd{gap:8px;padding:12px}
  .mk-k{padding:10px 8px}
  .mk-k b{font-size:18px}
  .mk-k span{font-size:11px}
}
.ac-marca{background:var(--ac-mesa)}
.ac-marca h2{color:var(--ac-tinta)}
.ac-marca .sec-h p{color:var(--ac-tinta2)}
.ac-marca .mk2-s,.ac-marca .mk2-e{background:#fff}

/* ── Cierre de cada página ── */
.cierre{position:relative;overflow:hidden;background:#120820;color:#fff;padding-block:76px;text-align:center}
.cierre::before{content:'';position:absolute;inset:0;background:radial-gradient(45% 80% at 20% 0%,rgba(108,56,157,.7),transparent 70%),radial-gradient(40% 70% at 90% 100%,rgba(3,105,161,.45),transparent 70%)}
.cierre .wrap{position:relative}
.cierre h2{color:#fff}
.cierre p{margin:14px auto 0;max-width:30em;color:rgba(255,255,255,.7);font-size:16.5px}
.cierre .ar-btns,.cierre .btns{justify-content:center}
.btn-w{background:#fff;color:var(--p)}
.btn-wg{border-color:rgba(255,255,255,.35);color:#fff;background:transparent}
.btn-wg:hover{background:rgba(255,255,255,.1)}
.otro{margin-top:30px;font-size:14px}
.otro a{display:inline-flex;align-items:center;gap:8px;color:#e9d5ff;font:600 14px var(--disp);border-bottom:1px solid rgba(233,213,255,.35);padding:4px 0}
.otro a:hover{color:#fff;border-color:#fff}

/* ═════════════ ALPHA COMPLIANCE ═════════════ */
.pg-ac{--a:var(--ac);--a-hi:var(--ac-hi);--a-bg:var(--ac-bg);--a-linea:var(--ac-linea);--a-mesa:var(--ac-mesa);--a-tinta:var(--ac-tinta);--a-tinta2:var(--ac-tinta2);--a-tinta3:#8493b8}
.ac-hero{position:relative;overflow:hidden;background:var(--ac-mesa);padding-block:36px 44px;color:var(--ac-tinta2)}
.ac-hero::before{content:'';position:absolute;inset:0;
  background:radial-gradient(50% 60% at 85% 20%,rgba(29,91,255,.14),transparent 70%),
  linear-gradient(rgba(29,91,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(29,91,255,.06) 1px,transparent 1px);
  background-size:auto,52px 52px,52px 52px;-webkit-mask-image:linear-gradient(180deg,#000 45%,transparent);mask-image:linear-gradient(180deg,#000 45%,transparent)}
.ac-hero::before{animation:sx-respira 7s ease-in-out infinite}
.ac-hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px;align-items:center}
.ac-hero h1{color:var(--ac-tinta);font-size:clamp(32px,3.9vw,50px)}
.ac-hero .lead{margin-top:16px;font-size:clamp(15px,1.3vw,17px);line-height:1.6}
.ac-hero .ar-btns{margin-top:24px;gap:12px}
.ac-hero .sx-btn{padding:12px 20px}
.btn-ac{background:var(--ac);color:#fff;box-shadow:0 10px 28px rgba(29,91,255,.3)}
.btn-ac:hover{background:#1448d1}
.btn-ac-g{border-color:#b9c9ee;background:#fff;color:var(--ac-tinta)}
.btn-ac-g:hover{border-color:var(--ac)}
.ac-meta{margin-top:16px;font-size:13px;color:#7585ad}
@media(max-width:1020px){.ac-hero-grid{grid-template-columns:minmax(0,1fr);gap:40px}}

.sx-card{border-radius:18px;background:#fff;border:1px solid var(--ac-linea);box-shadow:0 28px 70px rgba(19,27,46,.14);overflow:hidden;color:var(--ac-tinta)}
.card-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--ac-linea);background:#f8faff;font-size:13px;font-weight:600}
.card-h .mono{margin-left:auto;font:500 11px var(--mono);color:#8493b8;background:#fff;border:1px solid var(--ac-linea);padding:2px 8px;border-radius:4px}
.dots{display:flex;gap:6px}.dots i{width:9px;height:9px;border-radius:50%;background:#c9d4ee}
.ev-top{padding:22px 22px 8px;display:flex;align-items:flex-end;justify-content:space-between;gap:14px}
.ev-big{font:800 52px/1 var(--disp);letter-spacing:-.03em;color:var(--ac);font-variant-numeric:tabular-nums}
.ev-big small{font-size:.5em;margin-left:2px}
.ev-lbl{font-size:13px;color:var(--ac-tinta2);text-align:right;max-width:13em;line-height:1.4}
.mt{display:flex;height:16px;margin:10px 22px 0;border-radius:99px;overflow:hidden;background:#e3e8f3}
.mt i{display:block;height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1)}
.mt .acr{background:var(--ac)}
.mt .rev{background:var(--ac-hi);opacity:.55}
.mt .dec{background:repeating-linear-gradient(135deg,#8fabf0 0 4px,#d3dffa 4px 8px)}
.lg{display:flex;flex-wrap:wrap;gap:6px 16px;padding:10px 22px 14px;font-size:12px;color:var(--ac-tinta2)}
.lg span{display:inline-flex;align-items:center;gap:6px}
.lg i{width:11px;height:11px;border-radius:4px}
.lg .acr i{background:var(--ac)}.lg .rev i{background:var(--ac-hi);opacity:.55}.lg .dec i{background:repeating-linear-gradient(135deg,#8fabf0 0 3px,#d3dffa 3px 6px)}.lg .sin i{background:#e3e8f3}
.ms{margin:0;padding:0 14px 6px;list-style:none}
.m{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 8px;border-top:1px solid #eef2fb}
.m code{font:500 11.5px var(--mono);color:#8493b8}
.m .nm{font-size:14px;font-weight:500}
.m .ac-r{display:flex;align-items:center;gap:10px}
.st{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:99px;font:600 11.5px var(--sans);white-space:nowrap;min-width:104px;justify-content:center}
.st-sin{background:#eef1f7;color:#64748b}
.st-dec{background:repeating-linear-gradient(135deg,#e1e9fd 0 4px,#eef3fe 4px 8px);color:#2c4ba8;border:1px dashed #9db6f2}
.st-rev{background:#dbe6ff;color:#1448d1}
.st-rev .pu{width:7px;height:7px;border-radius:50%;background:var(--ac);animation:sx-pu 1.2s ease-in-out infinite}
@keyframes sx-pu{50%{transform:scale(1.7);opacity:.4}}
.st-acr{background:var(--ac);color:#fff}
.bt{padding:7px 12px;border:1.5px solid #b9c9ee;border-radius:9px;background:#fff;font:600 12px var(--sans);color:var(--ac);white-space:nowrap;transition:background .15s ease,border-color .15s ease}
.bt:hover{background:var(--ac-bg);border-color:var(--ac)}
.bt.nada{visibility:hidden}
.ev-pie{display:flex;align-items:center;gap:14px;padding:14px 22px 18px;border-top:1px solid var(--ac-linea);font-size:12.5px;color:var(--ac-tinta2)}
.ev-pie .ic{font-size:16px;color:var(--ac)}
.ev-pie button{margin-left:auto;background:none;border:0;font-size:12.5px;color:#8493b8;text-decoration:underline;padding:2px}
.ac-hero .cap{margin-top:8px;color:#8493b8}
/* La tarjeta del portada, más baja: las seis filas y el pie deben caber en la pantalla con el menú. */
.ac-hero .card-h{padding:10px 18px}
.ac-hero .ev-top{padding:14px 20px 4px}
.ac-hero .ev-big{font-size:44px}
.ac-hero .mt{height:14px;margin:8px 20px 0}
.ac-hero .lg{padding:8px 20px 8px}
.ac-hero .ms{padding:0 12px 2px}
.ac-hero .m{padding:6px 8px}
.ac-hero .bt{padding:5px 11px}
.ac-hero .ev-pie{padding:10px 20px 12px}
@media(max-width:620px){.m{grid-template-columns:minmax(0,1fr) auto}.m code{display:none}.ev-big,.ac-hero .ev-big{font-size:38px}.st{min-width:0}}
@media(max-width:620px){
  .ac-hero{padding-block:28px 32px}
  .ac-hero-grid{gap:28px}
  .ac-hero .sx-mig{margin-bottom:14px}
  .ac-hero .lg{gap:4px 12px;padding-block:6px;font-size:11.5px}
  .ac-hero .m{padding:5px 8px}
  .ac-hero .m .nm{font-size:13.5px;line-height:1.3}
}

/* El anillo de cumplimiento de la portada: cuatro normas, seis medidas cada una; solo lo confirmado por una persona queda acreditado. */
.ev{max-width:430px;margin-inline:auto}
.ev-st{position:relative;aspect-ratio:1}
.ev-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ev-pl{fill:#fff;stroke:var(--ac-linea);stroke-width:1.5;filter:drop-shadow(0 22px 36px rgba(19,27,46,.13))}
.ev-pl2{fill:none;stroke:#d3dcf1;stroke-width:1.2;stroke-dasharray:2 6}
.sg{cursor:pointer;transition:fill .5s ease}
.sg:focus-visible{outline:none;stroke:var(--ac);stroke-width:3}
.sg-sin{fill:#dfe6f3}
.sg-dec{fill:url(#evHat)}
.sg-rev{fill:#8fabf0;animation:ev-pu 1s ease-in-out infinite}
.sg-acr{fill:var(--ac);cursor:default}
.sg:not(.sg-acr):hover{opacity:.82}
.sg.act{stroke:var(--ac);stroke-width:2}
@keyframes ev-pu{50%{fill:#5f8bf0}}
.ev-doc{fill:none;stroke:var(--ac);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;filter:drop-shadow(0 4px 6px rgba(29,91,255,.35))}
.ev-ok{pointer-events:none}
.ev-ok-in{transform-box:fill-box;transform-origin:center;animation:ev-pop .55s cubic-bezier(.3,1.6,.5,1) both}
@keyframes ev-pop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}
.ev-nl{position:absolute;inset:0;pointer-events:none}
.ev-nl span{position:absolute;display:inline-flex;align-items:center;gap:6px;transform:translate(-50%,-50%);padding:5px 11px;border-radius:99px;background:#fff;border:1px solid var(--ac-linea);box-shadow:0 6px 16px rgba(19,27,46,.1);font:600 12px/1.2 var(--sans);color:var(--ac-tinta);white-space:nowrap}
.ev-nl b{font:700 11.5px var(--mono);color:var(--ac);font-variant-numeric:tabular-nums}
.ev-core{position:absolute;left:50%;top:50%;width:46%;transform:translate(-50%,-50%);text-align:center}
.ev-core .ev-big{font:800 clamp(42px,6vw,64px)/1 var(--disp);letter-spacing:-.03em;color:var(--ac);font-variant-numeric:tabular-nums}
.ev-core .ev-big small{margin-left:2px;font-size:.45em}
.ev-core .ev-lbl{max-width:10.5em;margin:6px auto 0;font-size:12.5px;line-height:1.35;text-align:center;color:var(--ac-tinta2)}
.ac-hero .ev .lg{justify-content:center;padding:14px 0 8px}
.ev-cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 10px;min-height:42px;padding:8px 14px;border:1px solid var(--ac-linea);border-radius:12px;background:#fff;font-size:13px;color:var(--ac-tinta2)}
.ev-cap b{font-family:var(--mono);color:var(--ac-tinta)}
.ev-es{padding:2px 10px;border-radius:99px;background:#e9f0ff;color:#1448d1;font:600 11.5px var(--sans)}
.ev-es.ok{background:var(--ac);color:#fff}
.ac-hero .ev .ev-pie{justify-content:center;gap:10px;padding:10px 0 0;border-top:0}
.ac-hero .ev .ev-pie button{margin-left:6px}
@media(max-width:560px){
  .ev-nl span{padding:4px 8px;font-size:10.5px;gap:4px}
  .ev-nl b{font-size:10px}
  .ev-core .ev-lbl{font-size:11px}
}
@media (prefers-reduced-motion:reduce){.sg-rev,.ev-ok-in{animation:none}.sg{transition:none}}

/* Recorrido */
.ac-flujo{background:var(--ac-lienzo);color:#aab6d6;position:relative;overflow:hidden}
.ac-flujo::before{content:'';position:absolute;inset:0;background:radial-gradient(45% 60% at 85% 15%,rgba(29,91,255,.28),transparent 70%)}
.ac-flujo .wrap{position:relative}
.ac-flujo h2{color:#fff}
.ac-flujo .sec-h p{color:#8e9cc4}
.fl{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:28px;align-items:start}
.fl-t{display:flex;flex-direction:column;gap:8px}
.fl-b{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.03);text-align:left;color:#c7d0ea;transition:background .2s ease,border-color .2s ease}
.fl-b:hover{background:rgba(255,255,255,.07)}
.fl-b.on{background:rgba(29,91,255,.18);border-color:rgba(91,139,255,.6);color:#fff}
.fl-n{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);font:700 14px var(--disp)}
.fl-b.on .fl-n{background:var(--ac);color:#fff}
.fl-b .tt b{display:block;font:600 16px/1.2 var(--disp)}
.fl-b .tt span{display:block;margin-top:3px;font-size:12.5px;opacity:.7}
.fl-w{min-width:0;min-height:420px}
.fl-w .sx-card{box-shadow:0 34px 90px rgba(0,0,0,.55)}
.pn{padding:22px}
.pn[hidden]{display:none}
@media(max-width:960px){.fl{grid-template-columns:minmax(0,1fr)}.fl-t{flex-direction:row;overflow-x:auto;padding-bottom:4px}.fl-b{flex:none;min-width:230px}}

/* 1 Levantar */
.iv-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.iv-top h4{font:700 16px var(--disp)}
.iv-g{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--ac-tinta2)}
.iv-g b{font:800 26px var(--disp);color:var(--ac);font-variant-numeric:tabular-nums}
.iv-q{padding:16px 0;border-top:1px solid #eef2fb}
.iv-q:first-of-type{border-top:0}
.iv-q p{font-size:14.5px;font-weight:500;margin-bottom:11px}
.esc{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.esc button{height:34px;border:1.5px solid #d3dcf1;border-radius:9px;background:#fff;color:#7a89b0;font:600 12px var(--sans);transition:all .15s ease}
.esc button:hover{border-color:var(--ac)}
.esc button.on{border-color:var(--ac);background:var(--ac);color:#fff}
.esc-t{min-height:20px;margin-top:8px;font-size:12.5px;color:var(--ac-tinta2)}
.pn-nota{margin-top:6px;padding:11px 14px;border-radius:11px;background:var(--ac-bg);color:#1c3f9c;font-size:12.5px;display:flex;gap:10px;align-items:center}

/* 2 Medir */
.gp-h{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.gp-h h4{font:700 16px var(--disp)}
.gp-r{display:grid;grid-template-columns:110px minmax(0,1fr) 46px;align-items:center;gap:14px;padding:11px 0}
.gp-r span{font-size:13.5px;font-weight:500}
.gp-tr{display:flex;height:14px;border-radius:99px;overflow:hidden;background:#e3e8f3}
.gp-tr i{display:block;height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1)}
.gp-tr .acr{background:var(--ac)}
.gp-tr .dec{background:repeating-linear-gradient(135deg,#8fabf0 0 4px,#d3dffa 4px 8px)}
.gp-r b{font:700 14px var(--disp);text-align:right;font-variant-numeric:tabular-nums}
.sw2{display:inline-flex;align-items:center;gap:10px;padding:0;border:0;background:none;font-size:13px;font-weight:500;color:var(--ac-tinta2)}
.sw2 .sw-t{background:#c5d0ea}
.sw2[aria-checked=true] .sw-t{background:var(--ac)}.sw2[aria-checked=true] .sw-t::after{transform:translateX(18px)}
@media(max-width:560px){.gp-r{grid-template-columns:84px minmax(0,1fr) 40px}}

/* 3 Documentar */
.gen-h{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.chip-ac{display:inline-flex;padding:8px 14px;border:1.5px solid #d3dcf1;border-radius:99px;background:#fff;font:500 13px var(--sans);color:var(--ac-tinta);transition:all .15s ease}
.chip-ac:hover{border-color:var(--ac)}
.chip-ac.on{background:var(--ac);border-color:var(--ac);color:#fff}
.gen-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.gen-go{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border:0;border-radius:10px;background:var(--ac);color:#fff;font:600 13.5px var(--disp)}
.gen-go:disabled{opacity:.5;cursor:default}
.gen-lock{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ac-tinta2)}
.gen-lock .ic{color:var(--ac);font-size:15px}
.paper{padding:22px 26px;border-radius:12px;background:#fbfcff;border:1px solid var(--ac-linea);min-height:250px}
.paper-t{font:700 17px var(--disp);color:var(--ac-tinta)}
.paper-m{margin:3px 0 16px;font:500 11px var(--mono);color:#8493b8}
.pb{margin-bottom:13px;opacity:0;transform:translateY(5px);transition:opacity .4s ease,transform .4s ease}
.pb.v{opacity:1;transform:none}
.pb h5{margin:0 0 6px;font:600 12.5px var(--sans);color:var(--ac)}
.pb p{font-size:13.5px;color:var(--ac-tinta)}
.sk{display:block;height:8px;border-radius:99px;margin-bottom:6px;background:linear-gradient(90deg,#e6ebf6 25%,#f3f6fc 50%,#e6ebf6 75%);background-size:200% 100%;animation:sx-sh 1.6s linear infinite}
.sk:nth-child(2){width:86%}.sk:nth-child(3){width:62%}
@keyframes sx-sh{to{background-position:-200% 0}}

/* 4 Informar */
.pt-s{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;font-size:13px;color:var(--ac-tinta2)}
.pt-s button{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1.5px solid #d3dcf1;border-radius:99px;background:#fff;font:500 13px var(--sans);color:var(--ac-tinta)}
.pt-s button i{width:11px;height:11px;border-radius:50%}
.pt-s button[aria-pressed=true]{border-color:var(--ac-tinta);}
.sx-pt{--m:#7c3aed;border-radius:14px;overflow:hidden;border:1px solid var(--ac-linea);background:#f7f9fd}
.pt-top{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--m);color:#fff;transition:background .3s ease}
.pt-top .lg2{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:rgba(255,255,255,.22);font:800 16px var(--disp)}
.pt-top b{display:block;font:700 15px var(--disp)}
.pt-top small{display:block;font-size:11px;opacity:.85}
.pt-bd{padding:18px;display:grid;gap:14px}
.pt-k{padding:14px 16px;border-radius:12px;background:#fff;border:1px solid var(--ac-linea)}
.pt-k h6{margin:0 0 10px;font:600 13px var(--sans)}
.pt-bar{display:flex;align-items:center;gap:12px}
.pt-bar .tr{flex:1;height:10px;border-radius:99px;background:#e3e8f3;overflow:hidden}
.pt-bar .tr i{display:block;height:100%;width:62%;background:var(--m);border-radius:99px;transition:background .3s ease}
.pt-bar b{font:700 17px var(--disp);color:var(--ac-tinta)}
.pt-rq{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #eef2fb;font-size:13.5px}
.pt-rq:first-of-type{border-top:0}
.pt-rq button{padding:7px 13px;border:0;border-radius:9px;background:var(--m);color:#fff;font:600 12px var(--sans);transition:background .3s ease;display:inline-flex;align-items:center;gap:6px}
.pt-rq button.bien{background:#e3e8f3;color:#475569;cursor:default}

/* Cadena */
.ac-cad{background:#fff}
.ac-cad h2{color:var(--ac-tinta)}
.ac-cad .sec-h p{color:var(--ac-tinta2)}
.ch-top{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.ch{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-bottom:18px}
.ch-n{position:relative;display:flex;flex-direction:column;gap:10px;padding:20px 18px;border:1.5px solid var(--ac-linea);background:#fff;text-align:left;transition:all .2s ease;margin-left:-1.5px}
.ch-n:first-child{border-radius:16px 0 0 16px;margin-left:0}
.ch-n:last-child{border-radius:0 16px 16px 0}
.ch-n::after{content:'';position:absolute;right:-9px;top:50%;width:16px;height:16px;border-top:1.5px solid var(--ac-linea);border-right:1.5px solid var(--ac-linea);background:#fff;transform:translateY(-50%) rotate(45deg);z-index:2;transition:all .2s ease}
.ch-n:last-child::after{display:none}
.ch-n:hover{background:#f8faff}
.ch-n.on{background:var(--ac-bg);border-color:var(--ac);z-index:1}
.ch-n.on::after{background:var(--ac-bg);border-color:var(--ac)}
.ch-n i{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--ac-bg);color:var(--ac);font-size:18px}
.ch-n.on i{background:var(--ac);color:#fff}
.ch-n b{font:700 15px var(--disp);color:var(--ac-tinta)}
.ch-n .tx{display:flex;flex-direction:column;gap:4px}
.ch-n .tx span{font-size:13px;line-height:1.45;color:var(--ac-tinta2)}
.ch-n code{font:500 11px var(--mono);color:#8493b8}
.ch-d{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:12px;background:var(--ac-mesa);font-size:14px;color:var(--ac-tinta);min-height:50px}
.ch-d .ic{color:var(--ac);font-size:18px}
.kn{margin-top:38px;padding-top:26px;border-top:1px solid var(--ac-linea)}
.kn h3{font:700 16px var(--disp);color:var(--ac-tinta);margin-bottom:12px}
/* Incluido: una línea con las normas, cada una con su cadena completa de medidas. */
.kn2{position:relative;overflow:hidden;padding:6px 0 2px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.kn2-tk{display:flex;width:max-content;animation:kn2-corre 48s linear infinite}
.kn2:hover .kn2-tk{animation-play-state:paused}
@keyframes kn2-corre{to{transform:translateX(-50%)}}
.kn2-l{display:flex;margin:0;padding:0;list-style:none}
.kn2-i{flex:none;width:138px;text-align:center}
.kn2-n{display:block;width:max-content;max-width:126px;height:32px;margin:0 auto;padding:0 14px;border-radius:99px;background:var(--ac-mesa);border:1px solid var(--ac-linea);font:600 13px/30px var(--sans);color:var(--ac-tinta);white-space:nowrap}
.kn2-r{position:relative;height:12px;margin:14px 0 12px}
.kn2-r::before{content:'';position:absolute;left:0;right:0;top:5px;height:2px;background:linear-gradient(90deg,#c9d6f5,#b3c6f4)}
.kn2-d{position:absolute;left:50%;top:0;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#fff;border:3px solid var(--ac)}
.kn2-ch{display:flex;justify-content:center;gap:5px}
.kn2-ch b{position:relative;width:7px;height:7px;border-radius:50%;background:#c9d6f5;animation:kn2-eslabon 3.8s ease-in-out infinite;animation-delay:calc(var(--k) * .45s + var(--j, 0) * .2s)}
.kn2-ch b:not(:last-child)::after{content:'';position:absolute;left:100%;top:3px;width:5px;height:1px;background:#c9d6f5}
.kn2-ch b:nth-child(2){--j:1}.kn2-ch b:nth-child(3){--j:2}.kn2-ch b:nth-child(4){--j:3}.kn2-ch b:nth-child(5){--j:4}
@keyframes kn2-eslabon{0%,100%{background:#c9d6f5;transform:scale(1)}12%{background:var(--ac);transform:scale(1.5)}28%{background:#c9d6f5;transform:scale(1)}}
.kn2-pulso{position:absolute;left:0;top:57px;width:16%;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--ac-hi),transparent);filter:drop-shadow(0 0 5px var(--ac-hi));pointer-events:none;animation:kn2-pulso 5.5s ease-in-out infinite}
@keyframes kn2-pulso{0%{left:-16%;opacity:0}12%{opacity:1}88%{opacity:1}100%{left:100%;opacity:0}}
.kn2-lg{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:16px;font-size:12.5px;color:var(--ac-tinta2)}
.kn2-lg>span{display:inline-flex;align-items:center;gap:6px}
.kn2-lg i{width:7px;height:7px;border-radius:50%;background:var(--ac)}
.kn2-ex{display:inline-block;margin-top:14px;padding:7px 14px;border:1px dashed #b9c9ee;border-radius:99px;font:500 13px var(--sans);color:#7585ad}
@media (prefers-reduced-motion:reduce){
  .kn2{-webkit-mask-image:none;mask-image:none}
  .kn2-tk{width:auto;animation:none}
  .kn2-l + .kn2-l{display:none}
  .kn2-l{flex-wrap:wrap;justify-content:center;row-gap:14px}
  .kn2-r::before,.kn2-pulso{display:none}
  .kn2-ch b{animation:none}
}
/* Movimiento reducido en las secciones nuevas de Alpha Risks: todo queda quieto y los controles siguen respondiendo. */
@media (prefers-reduced-motion:reduce){
  .pl2-sp line.on,.pl2-d.sel::after,.pl2-card.flash,.fz-n.now .fz-c,.fz-pill.bien,.fz-wait,.fz-dot.flag,.mk2-sv img,.mk2-ini,.mk2-pal span,.mk2-s.on .mk2-chk::after{animation:none}
  .fz-dot,.fz-fill,.fz-vb,.fz-mx i,.fz-apt,.pl2-n,.pl2-d{transition:none}
}
@media(max-width:900px){
  .ch{grid-template-columns:minmax(0,1fr);gap:8px}
  .ch-n,.ch-n:first-child,.ch-n:last-child{border-radius:14px;margin-left:0;flex-direction:row;align-items:center;gap:14px;padding:14px 16px}
  .ch-n::after{display:none}
}

/* ═════════════ SOLUCIONES ═════════════
   Es la portada de la familia: lleva el morado de la casa (el de toda la web) y cada
   producto aparece con SU color: cian, azul y verde azulado. */
.sl-hero{position:relative;overflow:hidden;background:#120820;color:#fff;padding-block:36px 44px}
/* Fondo animado: el mismo de los héroes del sitio (orbes, rejilla que respira, línea de barrido y red de partículas). */
.sl-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:64px;align-items:center}
.sl-hero h1{color:#fff;max-width:15em;font-size:clamp(30px,3.2vw,43px);line-height:1.08}
.sl-hero .lead{margin-top:14px;color:rgba(255,255,255,.72);font-size:clamp(15px,1.3vw,17px);line-height:1.6}
.ch-q{margin-top:22px;max-width:34em}
.ch-q>p{margin-bottom:10px;font:600 14px var(--disp);color:#d9c9f1}
.ch-o{display:flex;flex-direction:column;gap:8px}
.ch-op{display:flex;align-items:center;gap:14px;width:100%;padding:9px 14px;border:1.5px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.04);color:#fff;text-align:left;font:500 14.5px/1.35 var(--sans);transition:background .2s ease,border-color .2s ease,transform .2s ease}
.ch-op:hover{background:rgba(255,255,255,.09);transform:translateX(3px)}
.ch-op i{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.08);color:var(--pc);font-size:18px;transition:background .2s ease,color .2s ease}
.ch-op[aria-checked=true]{background:rgba(255,255,255,.12);border-color:var(--pc)}
.ch-op[aria-checked=true] i{background:var(--pc);color:#120820}
.ch-op:focus-visible{outline:2px solid #c084fc;outline-offset:3px}
.ch-res{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;min-height:46px;margin-top:12px}
.ch-res b{font:600 15px var(--disp)}
.ch-res .sx-btn{padding:11px 16px;font-size:13.5px}
.btn-pc{background:#fff;color:#120820}
.ch-res .v{font:600 13.5px var(--disp);color:#e9d5ff;border:0;border-bottom:1px solid rgba(233,213,255,.35);padding:3px 0;background:none}
.ch-res .v:hover{color:#fff;border-color:#fff}

/* Pila de productos */
.stk{position:relative;height:350px}
.pc{position:absolute;top:0;left:50%;width:min(330px,86%);border-radius:16px;overflow:hidden;background:#fff;color:var(--ar-tinta);
  box-shadow:0 30px 80px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.08);transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .5s ease;transform-origin:50% 100%}
.pc[data-pos=f]{transform:translateX(-50%);z-index:3}
.pc[data-pos=l]{transform:translateX(-66%) translateY(38px) rotate(-5deg) scale(.88);z-index:2;opacity:.6}
.pc[data-pos=r]{transform:translateX(-34%) translateY(38px) rotate(5deg) scale(.88);z-index:1;opacity:.6}
.pc{cursor:pointer}
.pc-bar{display:flex;align-items:center;gap:12px;padding:11px 15px;font-size:12.5px;font-weight:600}
.pc-b{padding:14px}
.pc-ar{background:var(--ar-mesa)}.pc-ar .pc-bar{background:var(--ar-lienzo);color:#cfe7ee}.pc-ar .dots i{background:rgba(255,255,255,.25)}
.pc-ac{background:#fff;color:var(--ac-tinta)}.pc-ac .pc-bar{background:#f8faff;border-bottom:1px solid var(--ac-linea)}
.pc-fc{background:#f0fdfa;color:#0f4f4a}.pc-fc .pc-bar{background:#0f766e;color:#e6fffb}.pc-fc .dots i{background:rgba(255,255,255,.3)}
.mini-mx{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.mini-mx i{position:relative;display:grid;place-items:center;aspect-ratio:1.7;border-radius:6px}
.mini-mx b{width:34%;aspect-ratio:1;border-radius:50%;background:#fff;border:2px solid var(--ar-tinta)}
.mini-ph{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:12px}
.mini-ph i{height:6px;border-radius:99px;background:#d6e6eb}.mini-ph i.h{background:var(--ar-hi)}.mini-ph i.a{background:linear-gradient(90deg,var(--ar-hi) 55%,#d6e6eb 55%)}
.mini-big{font:800 44px/1 var(--disp);letter-spacing:-.03em;color:var(--ac);margin-bottom:10px}
.mini-big small{font-size:.5em}
.mini-rw{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 0;border-top:1px solid #eef2fb;font-size:12px}
.mini-rw:first-of-type{margin-top:12px}
.mini-rw code{font:500 10.5px var(--mono);color:#8493b8}
.mini-rw span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mini-rw em{font:600 10.5px var(--sans);font-style:normal;padding:3px 9px;border-radius:99px}
.mini-rw .a{background:var(--ac);color:#fff}.mini-rw .d{background:repeating-linear-gradient(135deg,#e1e9fd 0 4px,#eef3fe 4px 8px);color:#2c4ba8;border:1px dashed #9db6f2}.mini-rw .s{background:#eef1f7;color:#64748b}
.mini-fc{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.mini-fc i{display:grid;place-items:center;aspect-ratio:1;border-radius:12px;background:#fff;border:1px solid rgba(13,148,136,.25);color:#0d9488;font-size:20px}
@media(max-width:1020px){.sl-grid{grid-template-columns:minmax(0,1fr);gap:44px}.sl-hero h1{max-width:none}.stk{height:330px}}
@media(max-width:520px){.stk{height:300px}.pc[data-pos=l]{transform:translateX(-58%) translateY(30px) rotate(-4deg) scale(.9)}.pc[data-pos=r]{transform:translateX(-42%) translateY(30px) rotate(4deg) scale(.9)}}

/* La pila está viva: cada tarjeta flota y muestra su producto funcionando. Con movimiento reducido todo queda quieto. */
.pc{animation:pc-flota 6.4s ease-in-out infinite}
.pc[data-k=ac]{animation-delay:-2.1s}.pc[data-k=fc]{animation-delay:-4.2s}
@keyframes pc-flota{0%,100%{translate:0 0}50%{translate:0 -9px}}
.pc .mini-mx{position:relative;overflow:hidden;border-radius:8px}
.pc .mini-mx::after{content:'';position:absolute;left:0;right:0;top:-34%;height:34%;background:linear-gradient(180deg,transparent,rgba(255,255,255,.6),transparent);animation:pc-barre 3.8s linear infinite;pointer-events:none}
@keyframes pc-barre{to{top:100%}}
.pc .mini-mx b{animation:pc-punto 2.6s ease-in-out infinite;animation-delay:calc(var(--i,0) * .55s)}
@keyframes pc-punto{0%,100%{transform:scale(1)}50%{transform:scale(1.4)}}
.pc .mini-ph i.a{position:relative;overflow:hidden;background:#d6e6eb}
.pc .mini-ph i.a::after{content:'';position:absolute;inset:0;width:30%;background:var(--ar-hi);animation:pc-llena 4.2s ease-in-out infinite}
@keyframes pc-llena{0%{width:20%}70%,100%{width:100%}}
.pc .mt i{transition:width .7s cubic-bezier(.2,.8,.2,1)}
.mini-rw .r{background:#dbe6ff;color:#1448d1}
.mini-rw em{transition:background .3s ease,color .3s ease}
.mini-fc i{animation:pc-plat 4.8s ease-in-out infinite;animation-delay:calc(var(--i,0) * .6s)}
@keyframes pc-plat{0%,18%,100%{background:#fff;color:#0d9488;transform:none}6%,12%{background:#0d9488;color:#fff;transform:scale(1.1)}}
@media (prefers-reduced-motion:reduce){.pc,.pc .mini-mx::after,.pc .mini-mx b,.pc .mini-ph i.a::after,.mini-fc i{animation:none}}

/* Ecosistema Alpha: los dos sistemas */
.sl-dos{background:#fff}
.sl-dos h2,.sl-fc h2,.sl-pasos h2{color:var(--ink)}
.sl-dos .sec-h p,.sl-fc .sec-h p{color:var(--dim)}
.dos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.dc{display:flex;flex-direction:column;gap:18px;padding:30px;border-radius:22px;transition:transform .25s ease,box-shadow .25s ease}
.dc:hover{transform:translateY(-4px)}
.dc-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.dc-ic{font:700 15px var(--disp)}
.dc-t{padding:4px 12px;border-radius:99px;font:600 12px var(--sans)}
.dc h3{font:800 28px/1.15 var(--disp);letter-spacing:-.025em}
.dc-viz{height:150px;display:flex;flex-direction:column;justify-content:center;gap:16px}
.dc-f{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;font-size:14px}
.dc-f li{display:flex;align-items:center;gap:11px}
.dc-f .ic{font-size:16px}
.dc-go{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin-top:auto;padding:13px 20px;border:0;border-radius:11px;font:600 14px var(--disp);transition:transform .15s ease}
.dc-go:hover{transform:translateX(3px)}
.dc-ar{background:var(--ar-lienzo);color:#a9c9d2;box-shadow:0 24px 60px rgba(11,24,28,.28)}
.dc-ar:hover{box-shadow:0 30px 70px rgba(11,24,28,.4)}
.dc-ar h3{color:#f1fbfe}.dc-ar .dc-ic{color:#5fd4ee}.dc-ar .dc-t{background:rgba(19,153,190,.2);color:#8fe0f5}
.dc-ar .dc-f .ic{color:#5fd4ee}
.dc-ar .dc-go{background:linear-gradient(135deg,var(--ar-hi),var(--ar));color:#f1fbfe}
.dc-ac{background:var(--ac-mesa);color:var(--ac-tinta2);border:1px solid var(--ac-linea);box-shadow:0 24px 60px rgba(19,27,46,.1)}
.dc-ac:hover{box-shadow:0 30px 70px rgba(29,91,255,.16)}
.dc-ac h3{color:var(--ac-tinta)}.dc-ac .dc-ic{color:var(--ac)}.dc-ac .dc-t{background:var(--ac-bg);color:#1c3f9c}
.dc-ac .dc-f .ic{color:var(--ac)}
.dc-ac .dc-go{background:var(--ac);color:#fff}
.dc-viz .mini-mx{grid-template-columns:repeat(14,1fr);gap:3px}
.dc-viz .mini-mx i{aspect-ratio:auto;height:20px;border-radius:4px}
.dc-viz .mini-mx b{width:10px;height:10px;border-width:1.5px}
.dc-viz .mt{margin:0;height:18px}
.dc-chain{margin-top:6px}
.dc-chain{display:flex;align-items:center}
.dc-chain i{flex:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2.5px solid #9db6f2;position:relative}
.dc-chain i + i{margin-left:34px}
.dc-chain i + i::before{content:'';position:absolute;right:100%;top:50%;width:34px;height:2.5px;margin-top:-1.25px;background:#c4d3f7}
.dc-chain i.fin{background:var(--ac);border-color:var(--ac)}
@media(max-width:860px){.dos{grid-template-columns:minmax(0,1fr)}.dc{padding:24px}}

/* Forensic */
.sl-fc{background:#f0fdfa;border-block:1px solid rgba(13,148,136,.22)}
.sl-fc h2{color:#0f4f4a}
.fc-top{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.chip-fc{display:inline-flex;padding:9px 16px;border:1.5px solid rgba(13,148,136,.3);border-radius:99px;background:#fff;font:500 13.5px var(--sans);color:#0f4f4a;transition:all .15s ease}
.chip-fc:hover{border-color:#0d9488}
.chip-fc.on{background:#0d9488;border-color:#0d9488;color:#fff}
.fc-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:22px;align-items:start}
.fc-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fc-t{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px;border:1.5px solid rgba(13,148,136,.2);border-radius:16px;background:#fff;text-align:left;transition:transform .2s ease,border-color .2s ease,opacity .25s ease,box-shadow .2s ease}
.fc-t:hover{transform:translateY(-3px);border-color:#0d9488}
.fc-t[aria-pressed=true]{border-color:#0d9488;box-shadow:0 14px 34px rgba(13,148,136,.2);background:#fff}
.fc-t.fuera{opacity:.28;filter:grayscale(.6)}
.fc-t i{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#f0fdfa;color:#0d9488;font-size:19px}
.fc-t[aria-pressed=true] i{background:#0d9488;color:#fff}
.fc-t b{font:700 13.5px/1.25 var(--disp);color:#0f2f2c}
.fc-det{position:sticky;top:90px;padding:26px;border-radius:20px;background:#fff;border:1.5px solid #0d9488;box-shadow:0 22px 56px rgba(13,148,136,.16)}
.fc-det small{font:600 12px var(--sans);color:#0d9488}
.fc-det h3{margin-top:6px;font:800 26px/1.15 var(--disp);color:#0f2f2c;letter-spacing:-.02em}
.fc-det .lema{margin-top:6px;font-size:15px;font-style:italic;font-weight:600;color:#0d9488}
.fc-det p.d{margin-top:14px;font-size:15px;color:#334155}
.fc-det .row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:20px}
.btn-fc{background:var(--p);color:#fff;padding:12px 18px;font-size:13.5px}
.fc-det a{font:600 13.5px var(--disp);color:#0d9488;display:inline-flex;align-items:center;gap:8px}
.fc-det .nota{margin-top:18px;padding-top:14px;border-top:1px solid #e2f0ee;font-size:11.5px;color:#64748b}
@media(max-width:960px){.fc-grid{grid-template-columns:minmax(0,1fr)}.fc-det{position:static}.fc-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:961px) and (max-width:1100px){.fc-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Cómo se pide */
.sl-pasos{background:#fff}
.sl-pasos .sec-h{max-width:none;text-align:center;margin-inline:auto}
.ps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0;list-style:none}
.ps::before{content:'';position:absolute;left:22px;right:calc(25% - 22px);top:21px;height:2px;background:linear-gradient(90deg,var(--p),#c4b5fd);opacity:.35}
.ps li{position:relative;display:flex;flex-direction:column;gap:6px}
.ps-n{display:grid;place-items:center;width:44px;height:44px;margin-bottom:12px;border-radius:50%;background:var(--p);color:#fff;font:800 17px var(--disp);box-shadow:0 0 0 6px #fff;position:relative;z-index:1}
.ps li > .ic{display:none}
.ps b{font:700 16.5px var(--disp);color:var(--ink)}
.ps li > span:last-child{font-size:14px;color:var(--dim)}
@media(max-width:900px){.ps{grid-template-columns:repeat(2,minmax(0,1fr))}.ps::before{display:none}}
@media(max-width:520px){.ps{grid-template-columns:minmax(0,1fr)}}


@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ── Migas: Soluciones › esta página (arriba del titular de cada sistema) ── */
.sx-mig{display:flex;align-items:center;gap:8px;margin-bottom:22px;font-size:13px}
.sx-mig a{border-bottom:1px solid transparent;transition:border-color .15s ease}
.sx-mig a:hover{border-bottom-color:currentColor}
.sx-mig span:last-child{font-weight:600}
.ar-hero .sx-mig{color:#7fb0bd}.ar-hero .sx-mig span:last-child{color:#cfe7ee}
.ac-hero .sx-mig{color:#7585ad}.ac-hero .sx-mig span:last-child{color:var(--ac-tinta)}
