/* Academia SICSSOM - presentacion de los cursos
   Se adapta al tamano real del escenario y de la pantalla, sin asumir ningun telefono en particular. */

.stage.is-ix{ aspect-ratio:auto !important; height:auto !important; min-height:440px; }
.stage.is-ix .ix{ position:relative !important; inset:auto !important; min-height:440px; overflow:visible !important; }

/* Se mide el escenario mismo: vale para cualquier telefono o ventana. */
@container (max-width:620px){
  .ix{ padding-left:4cqw !important; padding-right:4cqw !important; }
  .scn{ grid-template-columns:1fr !important; }
  .scn .pic{ width:100% !important; position:static !important; inset:auto !important; }
  .scn .pic img{ width:100% !important; height:auto !important; }
  .opts{ grid-template-columns:1fr !important; }
}

@media (max-width:820px){ .stage.is-ix{ min-height:0; } .stage.is-ix .ix{ min-height:0; } }

/* Telefono o tableta girados: el curso ocupa la pantalla y los controles van encima. */
@media (orientation:landscape) and (max-height:620px){
  html:has(.pl), body:has(.pl){ overflow:hidden !important; height:100dvh !important; }
  body:has(.pl) > header.topbar, body:has(.pl) > .ribbon,
  body:has(.pl) > .stripe-bar, body:has(.pl) > footer.foot{ display:none !important; }
  body:has(.pl) > main{ padding:0 !important; margin:0 !important; max-width:none !important; }
  .pl{ display:flex !important; flex-direction:column !important; height:100dvh !important; max-height:100dvh !important; overflow:hidden !important; position:relative !important; }
  .pl-side{ display:none !important; }
  .pl-under{ display:none !important; }
  .pl-top{ position:fixed !important; top:0 !important; left:0 !important; right:0 !important; z-index:70 !important;
    background:linear-gradient(180deg, rgba(2,10,12,.92), rgba(2,10,12,0)) !important; border:0 !important; padding:2px 8px !important; }
  .pl-top .ttl span{ display:none !important; }
  .pl-top .pbar{ display:none !important; }
  .pl-main{ flex:1 1 auto !important; height:auto !important; min-height:0 !important; display:flex !important; flex-direction:column !important;
    align-items:center !important; justify-content:center !important; padding:0 !important; }
  .pl-main > *:not(.pl-frame){ display:none !important; }
  .pl-frame{ width:100% !important; max-width:100% !important; height:100% !important; min-height:0 !important;
    padding:0 !important; margin:0 !important; display:flex !important; align-items:center !important; justify-content:center !important; }
  .stage{ aspect-ratio:16/9 !important; margin:auto !important; border-radius:0 !important; flex:0 0 auto !important; min-width:0 !important; }
  .stage.is-ix{ width:100% !important; height:100% !important; max-height:100% !important; aspect-ratio:auto !important; overflow-y:auto !important; min-height:0 !important; }
  .stage.is-ix .ix{ padding-bottom:56px !important; min-height:0 !important; overflow:visible !important; }
  /* La camara de evidencia sube a la esquina superior para no tapar el boton Siguiente. */
  .cam{ top:46px !important; bottom:auto !important; right:10px !important; padding:4px !important; }
  .cam video{ width:64px !important; height:48px !important; }
  .cam .lbl{ font-size:9px !important; padding-right:4px !important; }
  .pl-ctrl{ position:fixed !important; left:0 !important; right:0 !important; bottom:0 !important; z-index:70 !important;
    background:linear-gradient(0deg, rgba(2,10,12,.94), rgba(2,10,12,0)) !important; border:0 !important; padding:6px 10px !important; flex-wrap:nowrap !important; }
}
/* Pantalla mas apaisada que 16:9: manda la altura. Menos apaisada: manda el ancho. */
@media (orientation:landscape) and (max-height:620px) and (min-aspect-ratio:16/9){
  .stage{ height:100% !important; width:auto !important; }
}
@media (orientation:landscape) and (max-height:620px) and (max-aspect-ratio:16/9){
  .stage{ width:100% !important; height:auto !important; }
}


/* ============================================================
   Ficha de curso: encabezado con presencia, tarjetas con aire
   y temario con la columna de minutos alineada.
   ============================================================ */
body:has(.cd-bar) .split > div.stack > div:first-child{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,var(--teal-ink) 0%,var(--teal) 58%,var(--teal-deep) 100%);
  color:#eaf6f7; border-radius:var(--r-lg); padding:26px 26px 22px; box-shadow:var(--shadow);
}
body:has(.cd-bar) .split > div.stack > div:first-child::after{
  content:""; position:absolute; right:-70px; top:-70px; width:240px; height:240px; border-radius:50%;
  background:radial-gradient(circle,rgba(184,190,91,.22),transparent 70%); pointer-events:none;
}
body:has(.cd-bar) .split > div.stack > div:first-child > *{ position:relative; z-index:1; }
body:has(.cd-bar) .split > div.stack > div:first-child h1{ color:#fff; margin:8px 0 6px; }
body:has(.cd-bar) .split > div.stack > div:first-child .kicker{ color:var(--lime); }
body:has(.cd-bar) .split > div.stack > div:first-child p{ color:#cfe7ea !important; }
body:has(.cd-bar) .split > div.stack > div:first-child .badge{
  background:rgba(255,255,255,.13); border-color:rgba(255,255,255,.22); color:#eaf6f7;
}
body:has(.cd-bar) .split > div.stack > div:first-child .badge.warn{
  background:rgba(184,190,91,.20); border-color:rgba(184,190,91,.45); color:#eef0d2;
}
body:has(.cd-bar) .cd-sec{ color:#9fc9cf; margin-top:14px; }
body:has(.cd-bar) .cd-sec > span{ color:#9fc9cf; }
body:has(.cd-bar) .cd-sec .chip{
  background:rgba(255,255,255,.10); border-color:rgba(255,255,255,.20); color:#eaf6f7;
}
body:has(.cd-bar) .cd-sec .chip:hover{ background:rgba(255,255,255,.18); border-color:rgba(255,255,255,.34); }

body:has(.cd-bar) .split > div.stack > .card{ border-radius:var(--r-lg); box-shadow:var(--shadow-sm); }
body:has(.cd-bar) .split > div.stack > .card h2,
body:has(.cd-bar) .split > div.stack > .card h3{ position:relative; padding-left:14px; }
body:has(.cd-bar) .split > div.stack > .card h2::before,
body:has(.cd-bar) .split > div.stack > .card h3::before{
  content:""; position:absolute; left:0; top:.18em; bottom:.18em; width:4px; border-radius:3px;
  background:linear-gradient(180deg,var(--teal),var(--lime));
}
body:has(.cd-bar) .split > div.stack > h2{ position:relative; padding-left:14px; }
body:has(.cd-bar) .split > div.stack > h2::before{
  content:""; position:absolute; left:0; top:.18em; bottom:.18em; width:4px; border-radius:3px;
  background:linear-gradient(180deg,var(--teal),var(--lime));
}

/* Temario */
body:has(.cd-bar) .acc{ border-radius:14px; transition:border-color .2s ease, box-shadow .2s ease; }
body:has(.cd-bar) .acc:hover{ border-color:var(--aqua); }
body:has(.cd-bar) .acc[open]{ border-color:var(--aqua); box-shadow:var(--shadow-sm); }
body:has(.cd-bar) .acc > summary{
  display:grid !important; grid-template-columns:1fr 78px 22px; align-items:center; gap:12px;
}
body:has(.cd-bar) .acc > summary > span + span{
  text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums;
}
body:has(.cd-bar) .acc > summary::after{ justify-self:end; line-height:1; }
body:has(.cd-bar) .acc[open] > summary{ background:var(--tint); border-radius:13px 13px 0 0; }
body:has(.cd-bar) .outline-l li > span + span{ font-variant-numeric:tabular-nums; }

/* Tarjeta de compra */
body:has(.cd-bar) .split > aside.card{
  position:relative; overflow:hidden; border-radius:var(--r-lg);
  border-color:var(--aqua); box-shadow:var(--shadow);
}
body:has(.cd-bar) .split > aside.card::before{
  content:""; position:absolute; left:0; right:0; top:0; height:5px;
  background:linear-gradient(90deg,var(--teal),var(--lime));
}
body:has(.cd-bar) .split > aside.card .btn.lg{ box-shadow:0 10px 24px rgba(13,129,145,.26); }
body:has(.cd-bar) .split > aside.card .btn.block{
  white-space:normal; line-height:1.25; height:auto; min-height:44px; padding:11px 14px; text-align:center;
}
body:has(.cd-bar) .split > aside.card .plan li{ padding:7px 0; }


/* ---- Codigo de descuento en la pantalla de compra ---- */
.cup-box{ border:1px dashed var(--line); border-radius:12px; padding:12px 14px; background:var(--tint); }
.cup-lb{ display:block; font:700 13px var(--font-h); color:var(--text); margin-bottom:8px; }
.cup-row{ display:flex; gap:8px; align-items:center; }
.cup-row input{ flex:1 1 auto; min-width:0; padding:10px 12px; border:1px solid var(--line); border-radius:10px;
  background:var(--field); color:var(--text); font:700 14px var(--font-h); letter-spacing:.06em; text-transform:uppercase; }
.cup-row input:focus{ outline:2px solid var(--aqua); outline-offset:1px; }
.cup-row .btn{ flex:0 0 auto; }
#cupmsg{ margin:8px 0 0; }
#cupmsg.cup-ok{ color:var(--ok); font-weight:700; }
#cupmsg.cup-bad{ color:var(--bad); font-weight:700; }


/* ---- Invita y gana ---- */
.ref-cod{ font:800 30px var(--font-h); letter-spacing:.10em; text-align:center; padding:18px 10px;
  border:2px dashed var(--aqua); border-radius:14px; background:var(--tint); color:var(--teal-ink); word-break:break-all; }
.ref-liga{ font:600 12.5px var(--font-b); color:var(--muted); background:var(--tint); border:1px solid var(--line);
  border-radius:10px; padding:10px 12px; word-break:break-all; }
.ref-pts{ display:flex; align-items:baseline; gap:10px; }
.ref-pts b{ font:800 44px var(--font-h); color:var(--teal); line-height:1; }
.ref-pts span{ font:700 14px var(--font-h); color:var(--muted); }


/* ---- Aviso de material didactico en el panel del alumno ---- */
.mat-avi{ display:flex; gap:14px; align-items:center; flex-wrap:wrap;
  border:1px solid var(--lime); border-left:5px solid var(--lime);
  background:linear-gradient(135deg,var(--lime-light),var(--card));
  border-radius:14px; padding:14px 16px; margin-bottom:14px; }
.mat-avi .mat-ic{ flex:0 0 auto; width:42px; height:42px; border-radius:12px; background:var(--lime);
  display:grid; place-items:center; color:#2f3310; }
.mat-avi .mat-ic svg{ width:22px; height:22px; }
.mat-avi > div{ flex:1 1 240px; min-width:0; }
.mat-avi b{ display:block; font:800 15px var(--font-h); color:var(--text); }
.mat-avi p{ margin:4px 0 0; font-size:13.5px; color:var(--muted); line-height:1.45; }
.mat-avi .btn{ flex:0 0 auto; }

/* Evidencia compuesta (pantalla del curso + camara): mas grande y sin recorte */
.doc .snaps.ev{grid-template-columns:repeat(2,1fr);gap:10px}
.doc .snaps.ev img{aspect-ratio:900/656;object-fit:contain;background:#0d1016}

/* ===== Empresas: página única (planes por tamaño, caso real, cotización) · nov-2026 ===== */
.em-hero .lead b{color:var(--lime);font-weight:800}
.em-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.em-tier{position:relative;display:flex;flex-direction:column;gap:10px;padding:26px 22px 22px;border-radius:22px;background:var(--card);border:1.5px solid var(--line);transition:transform .15s,box-shadow .15s}
.em-tier:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.em-tier.feat{border-color:var(--teal);box-shadow:0 18px 40px rgba(8,61,69,.14)}
.em-tier .tag{position:absolute;top:-13px;left:22px;background:var(--lime);color:#1d2205;font:800 11.5px var(--font-h);letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
.em-tier .kicker{margin:0}
.em-tier .who{font:800 20px/1.2 var(--font-h);color:var(--text)}
.em-tier .range{display:inline-flex;gap:6px;align-items:center;font-size:13.5px;color:var(--muted)}
.em-tier .range svg{width:16px;height:16px;color:var(--teal)}
.em-tier .pr{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:6px 0 2px;padding:14px 16px;border-radius:14px;background:var(--tint)}
.em-tier .pr b{font:800 34px/1 var(--font-h);color:var(--teal-ink)}
.em-tier .pr small{color:var(--muted);font-size:13px}
.em-tier-pr{list-style:none;margin:0;padding:0 0 8px;border-bottom:1px dashed var(--line);display:grid;gap:4px}
.em-tier-pr li{font-size:13.5px;color:var(--text)}
.em-tier-pr li b{font:800 14.5px var(--font-h);color:var(--teal)}
.em-tier-pr li small{color:var(--muted)}
.em-tier .pp-li{margin:4px 0 10px;flex:1}
.em-tier .btn.block{margin-top:auto}
.em-tier-alt{display:block;text-align:center;font-size:13px;color:var(--teal);margin-top:4px}
.em-tiers-note{display:flex;gap:10px;align-items:flex-start;margin:18px auto 0;max-width:820px;padding:14px 18px;border-radius:16px;background:var(--tint);color:var(--text);font-size:14px;line-height:1.5}
.em-tiers-note svg{width:20px;height:20px;color:var(--teal);flex-shrink:0;margin-top:2px}
/* Caso real + respaldo */
.em-case{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}
.em-case-q{position:relative;padding:30px 30px 26px;border-radius:24px;color:#fff;background:linear-gradient(135deg,var(--teal-ink),#0b5560 65%,var(--teal));overflow:hidden}
.em-case-q::before{content:"\201C";position:absolute;right:22px;top:-24px;font:900 180px/1 Georgia,serif;color:rgba(255,255,255,.08)}
.em-case-q .kicker{color:var(--lime)}
.em-case-q blockquote{margin:0 0 20px;font-size:17.5px;line-height:1.6;position:relative}
.em-case-q .who{display:flex;gap:14px;align-items:center}
.em-case-q .who img{width:92px;height:52px;object-fit:contain;background:#fff;border-radius:12px;padding:6px}
.em-case-q .who b{display:block;font:800 15px var(--font-h)}
.em-case-q .who small{color:#cfe6e9;font-size:13px}
.em-case-s{padding:26px 24px;border-radius:24px;background:var(--card);border:1.5px solid var(--line);display:flex;flex-direction:column}
.em-case-s p{margin:0 0 16px;color:var(--text);font-size:14.5px;line-height:1.55}
.em-trust{list-style:none;margin:auto 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.em-trust li{display:flex;gap:10px;align-items:flex-start}
.em-trust .ic{width:36px;height:36px;border-radius:10px;background:var(--tint);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.em-trust .ic svg{width:18px;height:18px}
.em-trust b{display:block;font:800 13.5px/1.25 var(--font-h);color:var(--text)}
.em-trust small{display:block;color:var(--muted);font-size:12.5px;line-height:1.35}
/* Formulario de cotización */
.em-quote{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start;scroll-margin-top:90px}
.em-quote-l h2{margin:0 0 10px}
.em-quote-l .pp-li{margin:16px 0 20px}
.em-quote-wa{display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;background:var(--tint)}
.em-quote-wa>svg{width:26px;height:26px;color:#25d366;flex-shrink:0}
.em-quote-wa b{display:block;font:700 14px var(--font-h);color:var(--text)}
.em-quote-wa a{font-weight:700;color:var(--teal)}
.em-quote-f{padding:26px 24px 22px;border-radius:24px;border:1.5px solid var(--teal);box-shadow:0 18px 40px rgba(8,61,69,.12);position:relative}
.em-quote-f .field{margin-bottom:14px}
.em-quote-f label small{font-weight:400;text-transform:none;letter-spacing:0}
.em-segs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.em-seg{position:relative;cursor:pointer}
.em-seg input{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);pointer-events:none}
.em-seg span{display:block;text-align:center;padding:11px 8px;border-radius:12px;border:1.5px solid var(--line);background:var(--field);font:700 14px var(--font-h);color:var(--text);transition:all .15s}
.em-seg input:checked+span{border-color:var(--teal);background:var(--teal);color:#fff}
.em-seg input:focus-visible+span{box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 30%,transparent)}
.em-chks{display:flex;flex-wrap:wrap;gap:8px}
.em-chk{position:relative;cursor:pointer}
.em-chk input{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);pointer-events:none}
.em-chk span{display:inline-block;padding:8px 13px;border-radius:999px;border:1.5px solid var(--line);background:var(--field);font-size:13.5px;font-weight:600;color:var(--text);transition:all .15s}
.em-chk input:checked+span{border-color:var(--teal);background:var(--tint);color:var(--teal-ink);box-shadow:inset 0 0 0 1px var(--teal)}
.em-chk input:focus-visible+span{box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 30%,transparent)}
.em-quote-ok{text-align:center;padding:18px 6px}
.em-quote-ok .ic{width:64px;height:64px;border-radius:50%;background:var(--lime-light);color:var(--lime-deep);display:inline-flex;align-items:center;justify-content:center;margin-bottom:12px}
.em-quote-ok .ic svg{width:30px;height:30px}
.em-quote-ok h3{margin:0 0 8px}
.em-quote-ok h3 small{display:block;font:700 13px var(--font-h);color:var(--muted);letter-spacing:.08em;margin-top:4px}
.em-quote-ok p{margin:0 0 8px;color:var(--text)}
.em-quote-ok .btn{margin-top:10px}
@media (max-width:1180px){.em-tiers{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.em-tier{padding:22px 16px 18px}.em-tier .pr b{font-size:28px}}
@media (max-width:980px){.em-tiers{grid-template-columns:1fr;max-width:560px;margin:0 auto}.em-case,.em-quote{grid-template-columns:1fr}.em-segs{grid-template-columns:repeat(2,minmax(0,1fr))}.em-trust{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.em-trust{grid-template-columns:1fr}.em-case-q{padding:24px 20px}.em-quote-f{padding:20px 16px 18px}.em-quote-f .frow{grid-template-columns:1fr}}

/* ===== Empresas · animaciones e interacción (nov-2026) ===== */
[data-rv]{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*90ms)}
[data-rv].rv-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-rv]{opacity:1;transform:none;transition:none}}
@keyframes emHero{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes emPop{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@keyframes emBar{from{width:0}}
@keyframes emRing{from{stroke-dasharray:0 100}}
@media (prefers-reduced-motion:no-preference){
  .em-hero .in>div>*{animation:emHero .7s cubic-bezier(.2,.7,.2,1) both}
  .em-hero .in>div>*:nth-child(1){animation-delay:.05s}.em-hero .in>div>*:nth-child(2){animation-delay:.15s}.em-hero .in>div>*:nth-child(3){animation-delay:.28s}.em-hero .in>div>*:nth-child(4){animation-delay:.4s}.em-hero .in>div>*:nth-child(5){animation-delay:.5s}
  .em-hero .em-demo{animation:emPop .8s cubic-bezier(.2,.7,.2,1) .35s both}
  .em-demo-l .bar i{animation:emBar 1.2s cubic-bezier(.2,.7,.2,1) 1s both}
  .em-ring .fg{animation:emRing 1.4s cubic-bezier(.2,.7,.2,1) .9s both}
  .em-ben-anim li{animation:emHero .6s cubic-bezier(.2,.7,.2,1) both}
  .em-ben-anim li:nth-child(1){animation-delay:.6s}.em-ben-anim li:nth-child(2){animation-delay:.72s}.em-ben-anim li:nth-child(3){animation-delay:.84s}.em-ben-anim li:nth-child(4){animation-delay:.96s}
}
/* Planes: tarjeta iluminada por el estimador */
.em-tier{transition:transform .25s,box-shadow .25s,border-color .25s}
.em-tier.on{border-color:var(--lime-deep);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 35%,transparent),0 18px 40px rgba(8,61,69,.14);transform:translateY(-4px)}
.em-tier.on .pr{background:var(--lime-light)}
.em-tier .pr b{transition:color .25s}
.em-tier-how{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-top:1px dashed var(--line)}
.em-tier-how .ic{width:30px;height:30px;border-radius:9px;background:var(--tint);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.em-tier-how .ic svg{width:16px;height:16px}
.em-tier-how small{display:block;font:700 11px var(--font-h);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.em-tier-how b{font-size:13.5px;font-weight:600;line-height:1.4;color:var(--text)}
.em-tier .btn.block{margin-top:12px}
/* Estimador */
.em-est{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:center;margin:22px 0 0;padding:22px 26px;border-radius:22px;background:var(--card);border:1.5px solid var(--line)}
.em-est label{display:block;font:800 18px var(--font-h);color:var(--text);margin:4px 0 12px}
.em-est-ctl{display:flex;gap:16px;align-items:center}
.em-est-ctl b{font:800 30px var(--font-h);color:var(--teal-ink);min-width:58px;text-align:right}
.em-est input[type=range]{--p:16%;flex:1;height:10px;border-radius:999px;appearance:none;background:linear-gradient(90deg,var(--teal) var(--p),var(--tint-2) var(--p));outline:none}
.em-est input[type=range]::-webkit-slider-thumb{appearance:none;width:28px;height:28px;border-radius:50%;background:#fff;border:3px solid var(--teal);box-shadow:0 4px 12px rgba(8,61,69,.25);cursor:grab;transition:transform .15s}
.em-est input[type=range]:active::-webkit-slider-thumb{transform:scale(1.12);cursor:grabbing}
.em-est input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--teal);box-shadow:0 4px 12px rgba(8,61,69,.25);cursor:grab}
.em-est-r{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,var(--teal-ink),#0b5560 70%,var(--teal));color:#fff}
.em-est-r .kicker{color:var(--lime);margin:0}
.em-est-r .est-plan{font:800 22px var(--font-h)}
.em-est-r .est-tot{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.em-est-r .est-tot b{font:800 34px/1 var(--font-h)}
.em-est-r .est-tot small,.em-est-r .est-per{color:#cfe6e9;font-size:13px}
.em-est-r .btn{align-self:flex-start;margin-top:8px}
@keyframes emFlip{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
.em-est-r.flip{animation:emFlip .35s ease-out}
/* Incluido en todos los planes */
.em-incl{margin:18px 0 0;padding:22px 26px;border-radius:22px;background:var(--tint)}
.em-incl ul{list-style:none;margin:10px 0 8px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 16px}
.em-incl li{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:600;color:var(--text)}
.em-incl .ic{width:34px;height:34px;border-radius:10px;background:var(--card);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-sm)}
.em-incl .ic svg{width:17px;height:17px}
.em-incl p{margin:0}
/* Opiniones de Google */
.em-rev{margin-top:22px;padding:26px 26px 18px;border-radius:24px;background:var(--card);border:1.5px solid var(--line)}
.em-rev-h{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.em-rev-h h3{margin:0;font-size:22px}
.em-rev-g{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:var(--tint);color:var(--text)!important;text-decoration:none!important;transition:transform .15s}
.em-rev-g:hover{transform:translateY(-2px)}
.em-rev-g b{font:800 26px/1 var(--font-h)}
.em-rev-g small{color:var(--muted);font-size:12.5px;line-height:1.2;max-width:120px}
.stars{display:inline-flex;gap:2px}
.stars i{width:16px;height:16px;background:#f4b400;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.em-rev-track{overflow:hidden}
.em-rev-row{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;transition:transform .55s cubic-bezier(.2,.7,.2,1);width:100%}
.em-rev-c{margin:0;display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;border-radius:18px;background:var(--bg);border:1px solid var(--line)}
.em-rev-c blockquote{margin:0;font-size:14.5px;line-height:1.55;color:var(--text);flex:1}
.em-rev-c figcaption{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.em-rev-c .rv-av{width:38px;height:38px;border-radius:50%;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;font:800 13px var(--font-h);flex-shrink:0}
.em-rev-c figcaption b{font:700 14px var(--font-h);color:var(--text)}
.em-rev-c figcaption small{color:var(--muted);font-size:12px;width:100%;padding-left:48px;margin-top:-8px}
.em-rev-nav{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:14px}
.em-rev-nav .btn svg{width:16px;height:16px}
.em-rev-nav .dots{display:flex;gap:6px}
.em-rev-nav .dots button{width:8px;height:8px;border-radius:50%;border:0;background:var(--tint-2);padding:0;cursor:pointer;transition:all .2s}
.em-rev-nav .dots button.on{background:transparent}
.em-solo{text-align:center;margin:22px 0 0;color:var(--muted);font-size:14.5px}
.em-solo a{font-weight:700;color:var(--teal)}
@media (max-width:1100px){.em-rev-row{grid-auto-columns:calc((100% - 16px)/2)}.em-incl ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.em-est{grid-template-columns:1fr}}
@media (max-width:700px){.em-rev-row{grid-auto-columns:100%}.em-rev{padding:20px 16px 14px}.em-incl{padding:18px}.em-incl ul{grid-template-columns:1fr}}

.em-tier .range{display:block;font-weight:700;color:var(--text)}
.em-tier .range svg{width:16px;height:16px;vertical-align:-3px;margin-right:6px;color:var(--teal)}
.em-tier .range em{display:block;font-style:normal;font-weight:400;font-size:12.5px;color:var(--muted);padding-left:22px;margin-top:2px}
.em-est-cc{display:flex;align-items:center;gap:14px;margin:14px 0 10px;flex-wrap:wrap}
.em-est-cc>span{font:700 13.5px var(--font-h);color:var(--text)}
.em-est-cc .em-segs{grid-template-columns:repeat(4,52px);gap:6px}
.em-est-cc .em-seg span{padding:8px 0}

/* ===== Curso de bienvenida gratis ===== */
.em-free{display:grid;grid-template-columns:96px 1fr;gap:22px;align-items:start;padding:30px 32px;border-radius:26px;background:linear-gradient(135deg,var(--lime-light),#fff 55%,var(--tint));border:1.5px solid color-mix(in srgb,var(--lime) 60%,var(--line));position:relative;overflow:hidden}
.em-free::after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lime) 35%,transparent),transparent 70%);pointer-events:none}
.em-free-ic{width:96px;height:96px;border-radius:28px;background:var(--lime);color:#1d2205;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px rgba(143,149,54,.35)}
.em-free-ic svg{width:46px;height:46px}
@media (prefers-reduced-motion:no-preference){.em-free.rv-in .em-free-ic{animation:emBounce 1.1s cubic-bezier(.2,.7,.2,1) .2s both}}
@keyframes emBounce{0%{transform:scale(.6) rotate(-12deg);opacity:0}60%{transform:scale(1.08) rotate(4deg);opacity:1}100%{transform:none}}
.em-free-tx h2{margin:0 0 8px}
.em-free-tx>p{margin:0 0 16px;max-width:760px;color:var(--text);line-height:1.6}
.em-free-steps{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;counter-reset:fs}
.em-free-steps li{position:relative;padding:14px 14px 12px 14px;border-radius:16px;background:rgba(255,255,255,.75);border:1px solid var(--line)}
.em-free-steps .n{display:inline-flex;width:26px;height:26px;border-radius:50%;background:var(--teal-ink);color:#fff;align-items:center;justify-content:center;font:800 13px var(--font-h);margin-bottom:8px}
.em-free-steps b{display:block;font:800 14px var(--font-h);color:var(--text)}
.em-free-steps small{display:block;color:var(--muted);font-size:12.5px;line-height:1.4;margin-top:2px}
.em-free .acts{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
@media (max-width:980px){.em-free{grid-template-columns:1fr;padding:22px 20px}.em-free-ic{width:64px;height:64px;border-radius:18px}.em-free-ic svg{width:30px;height:30px}.em-free-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.em-free-steps{grid-template-columns:1fr}}

/* ===== Animaciones por sección (empresas) ===== */
@media (prefers-reduced-motion:no-preference){
  /* Pasos: la línea punteada se dibuja y los números laten al aparecer */
  .em-steps::before{background-size:200% 100%;animation:emDash 1.6s linear infinite}
  @keyframes emDash{to{background-position:-28px 0}}
  .em-steps li.rv-in .num{animation:emPulse .7s cubic-bezier(.2,.7,.2,1) calc(var(--i,0)*120ms) both}
  @keyframes emPulse{0%{transform:scale(.6);box-shadow:0 0 0 6px var(--bg)}60%{transform:scale(1.12);box-shadow:0 0 0 10px color-mix(in srgb,var(--teal) 25%,transparent)}100%{transform:none;box-shadow:0 0 0 6px var(--bg)}}
  /* Documentos: la hoja se "escribe" y la tarjeta se eleva */
  .em-doc .sheet i{transform-origin:left;animation:emWrite .9s cubic-bezier(.2,.7,.2,1) both;animation-play-state:paused}
  .em-doc.rv-in .sheet i{animation-play-state:running}
  .em-doc.rv-in .sheet i:nth-child(2){animation-delay:.15s}.em-doc.rv-in .sheet i:nth-child(3){animation-delay:.3s}.em-doc.rv-in .sheet i:nth-child(4){animation-delay:.45s}
  @keyframes emWrite{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  .em-doc{transition:transform .25s,box-shadow .25s}
  .em-doc:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
  .em-doc:hover .sheet .ic{transform:rotate(-6deg) scale(1.08)}
  .em-doc .sheet .ic{transition:transform .25s}
  /* Beneficios: icono con sutil flotación al pasar */
  .em-ben li .ic{transition:transform .25s,background .25s}
  .em-ben li:hover .ic{transform:translateY(-3px);background:var(--teal);color:#fff}
  /* Tarjetas de plan: el precio entra con un salto */
  .em-tier.rv-in .pr b{animation:emNum .8s cubic-bezier(.2,.7,.2,1) calc(var(--i,0)*120ms + .2s) both}
  @keyframes emNum{from{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}
  /* Estimador: el resultado se desliza al cambiar de plan (ya existe .flip) y el deslizador brilla al reposar */
  .em-est input[type=range]::-webkit-slider-thumb{animation:emThumb 2.2s ease-in-out infinite}
  .em-est input[type=range]:active::-webkit-slider-thumb,.em-est input[type=range]:focus::-webkit-slider-thumb{animation:none}
  @keyframes emThumb{0%,100%{box-shadow:0 4px 12px rgba(8,61,69,.25)}50%{box-shadow:0 4px 12px rgba(8,61,69,.25),0 0 0 8px color-mix(in srgb,var(--teal) 18%,transparent)}}
  /* Reseñas: las estrellas se encienden una por una */
  .em-rev.rv-in .stars i{animation:emStar .4s cubic-bezier(.2,.7,.2,1) both}
  .em-rev.rv-in .stars i:nth-child(1){animation-delay:.1s}.em-rev.rv-in .stars i:nth-child(2){animation-delay:.2s}.em-rev.rv-in .stars i:nth-child(3){animation-delay:.3s}.em-rev.rv-in .stars i:nth-child(4){animation-delay:.4s}.em-rev.rv-in .stars i:nth-child(5){animation-delay:.5s}
  @keyframes emStar{from{opacity:0;transform:scale(.3) rotate(-30deg)}to{opacity:1;transform:none}}
  .em-rev-c{transition:transform .25s,box-shadow .25s}
  .em-rev-c:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
  /* Cita del caso real: las comillas respiran */
  .em-case-q::before{animation:emBreath 6s ease-in-out infinite}
  @keyframes emBreath{0%,100%{transform:translateY(0);opacity:.08}50%{transform:translateY(-8px);opacity:.14}}
  /* Formulario: los campos entran en cascada y el botón tiene brillo al pasar */
  .em-quote-f.rv-in .field,.em-quote-f.rv-in .btn{animation:emHero .5s cubic-bezier(.2,.7,.2,1) both}
  .em-quote-f.rv-in .field:nth-child(1){animation-delay:.1s}.em-quote-f.rv-in .field:nth-child(2){animation-delay:.18s}.em-quote-f.rv-in .field:nth-child(3){animation-delay:.26s}.em-quote-f.rv-in .field:nth-child(4){animation-delay:.34s}.em-quote-f.rv-in .field:nth-child(5){animation-delay:.42s}.em-quote-f.rv-in .btn{animation-delay:.55s}
  .em-quote-f .btn.lime{position:relative;overflow:hidden}
  .em-quote-f .btn.lime::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .6s}
  .em-quote-f .btn.lime:hover::after{left:120%}
  /* Cierre: el degradado se mueve lentamente */
  .em-final{background-size:200% 200%;animation:emGrad 12s ease-in-out infinite}
  @keyframes emGrad{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
  /* FAQ: el signo + gira al abrir */
  .fq-item .pm{transition:transform .25s}
  .fq-item[open] .pm{transform:rotate(180deg)}
  /* Chips del formulario: pequeño rebote al marcar */
  .em-chk input:checked+span,.em-seg input:checked+span{animation:emTick .3s cubic-bezier(.2,.7,.2,1)}
  @keyframes emTick{50%{transform:scale(1.06)}}
}

/* ===== Recorrido guiado (panel de empresa) ===== */
.tour-ov{position:absolute;inset:0;z-index:120;pointer-events:none}
.tour-ov::before{content:"";position:fixed;inset:0;background:rgba(2,20,24,.55);backdrop-filter:blur(1px);pointer-events:auto;animation:tourIn .25s ease-out}
.tour-ov.out::before,.tour-ov.out .tour-card,.tour-ov.out .tour-hl{opacity:0;transition:opacity .25s}
@keyframes tourIn{from{opacity:0}to{opacity:1}}
.tour-hl{position:absolute;border-radius:16px;box-shadow:0 0 0 9999px rgba(2,20,24,.55),0 0 0 3px var(--lime);background:transparent;transition:top .35s,left .35s,width .35s,height .35s;pointer-events:none;z-index:1}
.tour-ov::before{display:none}
.tour-card{position:absolute;z-index:2;pointer-events:auto;background:var(--card);color:var(--text);border-radius:18px;padding:18px 18px 14px;box-shadow:0 24px 60px rgba(0,0,0,.35);border:1px solid var(--line)}
.tour-card::before{content:"";position:absolute;top:-8px;left:50%;width:16px;height:16px;background:var(--card);border-left:1px solid var(--line);border-top:1px solid var(--line);transform:translateX(-50%) rotate(45deg)}
.tour-card.up::before{top:auto;bottom:-8px;transform:translateX(-50%) rotate(225deg)}
.tour-card.pop{animation:tourPop .35s cubic-bezier(.2,.7,.2,1)}
@keyframes tourPop{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
.tour-n{font:700 11px var(--font-h);letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.tour-card h4{margin:6px 0 6px;font:800 17px var(--font-h)}
.tour-card p{margin:0 0 12px;font-size:14px;line-height:1.5;color:var(--text)}
.tour-f{display:flex;align-items:center;gap:8px}
.tour-f .spacer{flex:1}
.tour-dots{display:flex;gap:5px}
.tour-dots i{width:7px;height:7px;border-radius:50%;background:var(--tint-2);transition:all .2s}
.tour-dots i.on{width:18px;border-radius:999px;background:var(--teal)}
.tour-f .btn svg{width:14px;height:14px}

/* =========================================================
   EMPRESAS · capa de diseño premium (nov-2026)
   ========================================================= */
.em-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;background:transparent;pointer-events:none}
.em-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lime),#e2e78f);box-shadow:0 0 12px rgba(184,190,91,.8);transition:width .12s linear}
/* Hero */
.em-hero-x{background:#083d45;background-image:radial-gradient(900px 500px at 15% 110%,rgba(13,129,145,.55),transparent 60%),radial-gradient(800px 400px at 95% -10%,rgba(99,172,179,.4),transparent 60%),linear-gradient(140deg,#072f36,#0a5a66 55%,#0d8191);isolation:isolate}
.em-hero-x::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse at 60% 40%,#000 30%,transparent 75%);pointer-events:none;z-index:-1}
.em-blobs{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.em-blobs i{position:absolute;border-radius:50%;filter:blur(110px);opacity:.16}
.em-blobs i:nth-child(1){width:520px;height:520px;left:-160px;top:-180px;background:#0fa0b3}
.em-blobs i:nth-child(2){width:420px;height:420px;right:-120px;bottom:-200px;background:#b8be5b;opacity:.05}
.em-blobs i:nth-child(3){width:300px;height:300px;left:45%;top:60%;background:#63acb3;opacity:.1}
@media (prefers-reduced-motion:no-preference){
  .em-blobs i:nth-child(1){animation:emBlob 18s ease-in-out infinite alternate}
  .em-blobs i:nth-child(2){animation:emBlob 22s ease-in-out infinite alternate-reverse}
  .em-blobs i:nth-child(3){animation:emBlob 26s ease-in-out infinite alternate}
  @keyframes emBlob{to{transform:translate(60px,40px) scale(1.15)}}
}
.em-hero-x .in{padding:72px 16px 96px;gap:56px;align-items:center}
.em-hero-x .in>div:first-child{min-width:0;padding-right:20px}
@media (max-width:900px){.em-hero-x .in>div:first-child{padding-right:0}}
.em-hero-x .kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#e9f3f4;letter-spacing:.12em;margin-bottom:18px;backdrop-filter:blur(6px)}
.em-hero-x .kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(184,190,91,.25)}
.em-hero-x h1{font-size:clamp(32px,4.1vw,54px);line-height:1.06;letter-spacing:-.02em;margin:0 0 18px}
.em-hero-x h1 em{font-style:normal;background:linear-gradient(90deg,#e2e78f,var(--lime));-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;white-space:nowrap}
@media (max-width:1240px){.em-hero-x h1 em{white-space:normal}}
.em-hero-x .lead{font-size:clamp(16px,1.6vw,19px);line-height:1.6;color:#d7ecee;max-width:600px}
.em-hero-x .cta{margin-top:26px;gap:12px}
.em-hero-x .cta .btn.lg{padding:17px 26px;font-size:16px;border-radius:14px}
.em-hero-x .btn.lime{box-shadow:0 12px 30px rgba(184,190,91,.35)}
.em-hero-x .btn.lime:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(184,190,91,.45)}
.em-hero-x .btn.outline-w{backdrop-filter:blur(6px);background:rgba(255,255,255,.06)}
.em-hero-x .em-note{margin-top:16px;color:#cfe6e9;display:block;position:relative;padding-left:28px;max-width:600px;line-height:1.5}
.em-hero-x .em-note svg{position:absolute;left:0;top:3px;width:18px;height:18px;color:var(--lime)}
.em-hero-x .em-note b{color:#fff}
.em-pills{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.em-pills li{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:#e9f3f4;font:600 12.5px var(--font-h);backdrop-filter:blur(6px)}
.em-pills li svg{width:15px;height:15px;color:var(--lime)}
/* Escenario del panel con tarjetas flotantes */
.em-stage{position:relative;justify-self:end;width:100%;max-width:560px;padding:28px 30px 36px 52px}
.em-stage .em-demo{max-width:none;border-radius:24px;box-shadow:0 40px 80px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.08);transform:perspective(1200px) rotateY(-6deg) rotateX(2deg)}
.em-float{position:absolute;display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center;padding:10px 14px 10px 10px;border-radius:16px;background:rgba(255,255,255,.96);color:var(--text);box-shadow:0 18px 40px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.6)}
.em-float svg{grid-row:span 2;width:34px;height:34px;padding:7px;border-radius:10px;background:var(--tint);color:var(--teal)}
.em-float b{font:800 13.5px var(--font-h);line-height:1.1}
.em-float small{font-size:11.5px;color:var(--muted);line-height:1.1}
.em-float.f1{right:-6px;top:-6px}
.em-float.f2{left:14px;bottom:-12px}
.em-float.f3{right:-6px;bottom:40px}
@media (prefers-reduced-motion:no-preference){
  .em-float{animation:emFloat 6s ease-in-out infinite,emPop .8s cubic-bezier(.2,.7,.2,1) both}
  .em-float.f1{animation-delay:0s,.9s}.em-float.f2{animation-delay:-2s,1.1s}.em-float.f3{animation-delay:-4s,1.3s}
  @keyframes emFloat{0%,100%{translate:0 0}50%{translate:0 -8px}}
}
.em-scroll{position:absolute;left:50%;bottom:62px;transform:translateX(-50%);width:28px;height:44px;border:2px solid rgba(255,255,255,.45);border-radius:16px;display:flex;justify-content:center;padding-top:7px}
.em-scroll i{width:4px;height:9px;border-radius:3px;background:var(--lime);animation:emWheel 1.8s ease-in-out infinite}
@keyframes emWheel{0%{transform:translateY(0);opacity:1}70%{transform:translateY(14px);opacity:0}100%{opacity:0}}
/* Beneficios como tarjeta de cristal sobre el hero */
.em-ben{margin-top:-46px;padding:18px;border-radius:24px;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:0 30px 60px rgba(8,61,69,.16)}
/* Ritmo de secciones y encabezados */
.em-wrap .pp-sec{margin-top:72px}
.em-wrap .pp-head{max-width:820px;margin-bottom:26px}
.em-wrap .pp-head h2,.em-free-tx h2,.em-case-q .kicker+blockquote,.em-rev-h h3{letter-spacing:-.015em}
.em-wrap .pp-head h2{font-size:clamp(26px,3vw,38px);line-height:1.12}
.em-wrap .pp-head .kicker{display:inline-flex;align-items:center;gap:10px}
.em-wrap .pp-head .kicker::before{content:"";width:28px;height:3px;border-radius:2px;background:var(--lime)}
.em-wrap .pp-head p{font-size:16px;line-height:1.6}
/* Planes: tarjetas premium */
.em-tiers{gap:22px;margin-top:8px}
.em-tier{padding:30px 26px 26px;border-radius:26px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 30px rgba(8,61,69,.06)}
.em-tier.feat{border:0;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--teal),var(--lime)) border-box;border:2px solid transparent;box-shadow:0 30px 60px rgba(8,61,69,.18)}
.em-tier.feat .tag{background:linear-gradient(90deg,var(--teal),var(--lime));color:#fff;top:-14px;box-shadow:0 8px 20px rgba(13,129,145,.3)}
.em-tier .who{font-size:21px}
.em-tier .pr{background:linear-gradient(135deg,var(--tint),var(--tint-2));border-radius:18px;padding:16px 18px}
.em-tier .pr b{font-size:38px;letter-spacing:-.03em}
.em-tier.on{border-color:transparent;box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 40%,transparent),0 30px 60px rgba(8,61,69,.18)}
/* Estimador premium */
.em-est{margin-top:28px;padding:30px 32px;border-radius:26px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 30px rgba(8,61,69,.06)}
.em-est-r{border-radius:22px;padding:24px 26px;background:radial-gradient(500px 200px at 100% 0%,rgba(184,190,91,.25),transparent 60%),linear-gradient(135deg,#072f36,#0b5560 65%,var(--teal));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.em-est-r .est-tot b{font-size:40px;letter-spacing:-.03em}
.em-est-cc .em-seg span{border-radius:10px}
/* Incluido */
.em-incl{border-radius:26px;background:linear-gradient(180deg,var(--tint),color-mix(in srgb,var(--tint) 40%,var(--card)))}
/* Caso real y reseñas */
.em-case-q{border-radius:28px;box-shadow:0 30px 60px rgba(8,61,69,.2)}
.em-case-s{border-radius:28px}
.em-rev{border-radius:28px;background:linear-gradient(180deg,var(--card),var(--bg));box-shadow:0 10px 30px rgba(8,61,69,.06)}
.em-rev-g{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.em-rev-g::before{content:"G";font:800 18px/1 Arial,sans-serif;width:30px;height:30px;border-radius:50%;background:conic-gradient(#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0);color:#fff;display:flex;align-items:center;justify-content:center;-webkit-text-stroke:0;text-shadow:0 0 2px rgba(0,0,0,.4)}
/* Pasos: timeline con círculos degradados */
.em-steps .num{background:linear-gradient(135deg,var(--teal-ink),var(--teal));width:50px;height:50px;font-size:18px}
.em-steps b{font-size:17px}
.em-steps em{display:inline-block;margin-top:8px;padding:4px 10px;border-radius:999px;background:var(--lime-light);color:#4c5118;font:700 11.5px var(--font-h);font-style:normal;letter-spacing:.04em}
/* Documentos */
.em-doc{border-radius:22px;padding:18px;box-shadow:0 10px 30px rgba(8,61,69,.05)}
.em-doc .sheet{height:124px;border-radius:14px;background:linear-gradient(160deg,var(--tint),var(--card) 70%);box-shadow:inset 0 0 0 1px var(--line)}
.em-doc .sheet .ic{background:linear-gradient(135deg,var(--teal-ink),var(--teal));box-shadow:0 8px 18px rgba(13,129,145,.3)}
/* Formulario */
.em-quote{margin-top:72px;padding:36px;border-radius:30px;background:radial-gradient(700px 300px at 0% 0%,rgba(13,129,145,.10),transparent 60%),var(--tint)}
.em-quote-l h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.015em}
.em-quote-f{border-radius:24px;border:0;box-shadow:0 30px 60px rgba(8,61,69,.16)}
.em-quote-f .input{border-radius:12px;padding:13px 14px;transition:box-shadow .2s,border-color .2s}
.em-quote-f .input:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--teal) 18%,transparent);border-color:var(--teal)}
.em-quote-f .btn.lg{padding:17px;font-size:16px;border-radius:14px;box-shadow:0 12px 30px rgba(184,190,91,.35)}
/* Cierre */
.em-final{border-radius:30px;padding:44px 40px;background:radial-gradient(600px 300px at 100% 0%,rgba(184,190,91,.35),transparent 60%),linear-gradient(130deg,#072f36,#0b5560 60%,var(--teal));box-shadow:0 30px 60px rgba(8,61,69,.2)}
.em-final h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.015em}
/* Barra flotante móvil */
.em-sticky{position:fixed;left:12px;right:12px;bottom:12px;z-index:70;display:flex;align-items:center;gap:10px;padding:10px 12px 10px 16px;border-radius:18px;background:rgba(8,61,69,.96);color:#fff;box-shadow:0 20px 50px rgba(0,0,0,.35);backdrop-filter:blur(8px);transform:translateY(130%);opacity:0;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .35s}
.em-sticky.show{transform:none;opacity:1}
.em-sticky>div{flex:1;min-width:0}
.em-sticky b{display:block;font:800 14px var(--font-h)}
.em-sticky small{display:block;color:#cfe6e9;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.em-sticky .btn{padding:11px 16px}
.em-sticky .btn.ghost{color:#fff;border-color:rgba(255,255,255,.3);padding:11px}
.em-sticky .btn.ghost svg{width:18px;height:18px}
@media (min-width:981px){.em-sticky{left:auto;right:24px;bottom:24px;max-width:420px}}
/* Responsivo */
@media (max-width:1180px){.em-stage{padding:24px 24px 30px 6px}.em-float.f1{right:0}}
@media (max-width:980px){
  .em-hero-x .in{padding:52px 16px 84px;gap:28px}
  .em-stage{justify-self:center;max-width:520px;padding:16px 16px 28px 10px}
  .em-stage .em-demo{transform:none}
  .em-wrap .pp-sec{margin-top:56px}
  .em-quote{padding:22px 16px}
  .em-final{padding:30px 22px}
  /* tarjetas deslizables en móvil: menos scroll vertical */
  .em-docs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:4px 4px 14px;margin:0 -16px;padding-left:16px;padding-right:16px;scrollbar-width:none}
  .em-docs::-webkit-scrollbar{display:none}
  .em-doc{flex:0 0 78%;scroll-snap-align:start}
  .em-steps{grid-template-columns:1fr;gap:20px}
  .em-steps::before{display:none}
  .em-steps li{display:grid;grid-template-columns:50px 1fr;column-gap:14px;align-items:start}
  .em-steps li .num{grid-row:span 3}
  .em-steps .ic{display:none}
}
@media (max-width:700px){
  .em-tiers{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:14px 16px 16px;max-width:none;scrollbar-width:none}
  .em-tiers::-webkit-scrollbar{display:none}
  .em-tier{flex:0 0 86%;scroll-snap-align:center}
  .em-float.f2{left:-4px}
  .em-hero-x .cta .btn.lg{width:100%}
  .em-pills{gap:6px}.em-pills li{font-size:12px;padding:7px 10px}
}

/* =========================================================
   INICIO · CATÁLOGO · PLANES · VERIFICAR (capa premium)
   ========================================================= */
/* Tarjetas de público en el hero de inicio */
.aud-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}
.aud{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:14px;row-gap:6px;align-items:start;padding:18px 18px 16px;border-radius:20px;background:rgba(255,255,255,.96);color:var(--text)!important;text-decoration:none!important;box-shadow:0 20px 50px rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.6);transition:transform .2s,box-shadow .2s}
.aud:hover{transform:translateY(-4px);box-shadow:0 28px 60px rgba(0,0,0,.32)}
.aud .ic{grid-row:span 2;width:48px;height:48px;border-radius:14px;background:var(--tint);color:var(--teal);display:flex;align-items:center;justify-content:center}
.aud .ic svg{width:24px;height:24px}
.aud.biz .ic{background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff}
.aud b{display:block;font:800 17px/1.2 var(--font-h)}
.aud small{display:block;color:var(--muted);font-size:13px;line-height:1.45;margin-top:3px}
.aud small strong{color:var(--teal-ink)}
.aud .go{grid-column:2;display:inline-flex;align-items:center;gap:6px;font:700 13.5px var(--font-h);color:var(--teal);margin-top:4px}
.aud .go svg{width:15px;height:15px;transition:transform .2s}
.aud:hover .go svg{transform:translateX(4px)}
.home-hero .in{padding-bottom:110px}
.home-stage .mock{border-radius:24px;overflow:hidden;box-shadow:0 40px 80px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.08);transform:perspective(1200px) rotateY(-6deg) rotateX(2deg);background:#0d1016}
.home-trust{margin-top:-52px}
.home-trust .ic{background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff}
.em-steps.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.em-steps.four::before{left:12%;right:12%}
/* Para empresas en inicio */
.home-biz{display:grid;grid-template-columns:1.2fr .8fr;gap:26px;padding:36px 40px;border-radius:30px;background:radial-gradient(700px 300px at 100% 0%,rgba(13,129,145,.12),transparent 60%),var(--tint);align-items:center}
.home-biz h2{font-size:clamp(24px,2.8vw,34px);letter-spacing:-.015em;margin:0 0 10px}
.home-biz p{color:var(--text);line-height:1.6}
.home-biz .pp-li{margin:14px 0 20px}
.home-biz .acts{display:flex;gap:10px;flex-wrap:wrap}
.home-gift{position:relative;padding:28px 26px;border-radius:24px;color:#fff;background:radial-gradient(400px 200px at 100% 0%,rgba(184,190,91,.35),transparent 60%),linear-gradient(135deg,#072f36,#0b5560 65%,var(--teal));box-shadow:0 30px 60px rgba(8,61,69,.25);overflow:hidden}
.home-gift .ic{width:56px;height:56px;border-radius:16px;background:var(--lime);color:#1d2205;display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 10px 24px rgba(184,190,91,.4)}
.home-gift .ic svg{width:28px;height:28px}
.home-gift b{display:block;font:800 22px/1.15 var(--font-h);margin-bottom:8px}
.home-gift p{color:#d7ecee;margin:0 0 16px;font-size:14.5px;line-height:1.55}
.home-gift .btn{background:#fff;color:var(--teal-ink)}
@media (prefers-reduced-motion:no-preference){.home-biz.rv-in .home-gift .ic{animation:emBounce 1.1s cubic-bezier(.2,.7,.2,1) .3s both}}
.home-final{margin-top:0}
/* Tarjetas de curso: datos */
.cc-facts{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.cc-facts li{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:var(--tint);font:600 12px var(--font-h);color:var(--teal-ink)}
.cc-facts li svg{width:13px;height:13px;color:var(--teal)}
.course-card .badge.warn svg{width:12px;height:12px;vertical-align:-2px;margin-right:3px}
.course-card .price .until{display:block;font:600 11px var(--font-h);color:var(--muted);margin-top:2px}
.course-card{transition:transform .25s,box-shadow .25s}
.course-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
/* Catálogo: hero compacto y filtro por necesidad */
.cat-hero .in,.pl-hero .in,.vf-hero .in{grid-template-columns:1fr;padding:56px 16px 92px;max-width:1240px}
.cat-hero h1,.pl-hero h1,.vf-hero h1{font-size:clamp(30px,4.2vw,50px);max-width:820px}
.cat-hero .lead,.pl-hero .lead,.vf-hero .lead{max-width:720px}
.hero-search{max-width:640px;margin-top:22px;background:#fff;border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.hero-search{position:relative}
.hero-search>svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px}
.hero-search .input{border:0;font-size:16px;padding:16px 14px 16px 46px;background:transparent}
.hero-search svg{color:var(--teal)}
.cat-wrap{padding-top:0}
.cat-needs{position:relative;z-index:2;margin-top:-48px;padding:18px 22px;border-radius:24px;background:var(--card);box-shadow:0 30px 60px rgba(8,61,69,.16);border:1px solid var(--line)}
.cat-needs .kicker{margin-bottom:10px}
.cat-needs-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.cat-needs .need{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;border:1.5px solid var(--line);background:var(--field);font:700 13.5px var(--font-h);color:var(--text);text-align:left;cursor:pointer;transition:all .18s}
.cat-needs .need svg{width:20px;height:20px;color:var(--teal);flex-shrink:0}
.cat-needs .need:hover{border-color:var(--teal);transform:translateY(-2px)}
.cat-needs .need.on{background:var(--teal);border-color:var(--teal);color:#fff}
.cat-needs .need.on svg{color:var(--lime)}
.cat-wrap .cf{margin-top:28px}
@media (max-width:980px){.cat-needs-row{grid-template-columns:1fr 1fr}.home-biz{grid-template-columns:1fr;padding:24px 20px}.aud-cards{grid-template-columns:1fr}.em-steps.four{grid-template-columns:1fr}}
@media (max-width:560px){.cat-needs-row{grid-template-columns:1fr}.cat-needs{padding:14px}}
/* Planes para mí */
.pl-first{margin-top:-40px!important}
.pl-one{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:26px;padding:34px 36px;border-radius:30px;background:var(--card);box-shadow:0 30px 60px rgba(8,61,69,.16);border:1px solid var(--line)}
.pl-one h2{margin:6px 0 12px;font-size:clamp(24px,2.6vw,32px);letter-spacing:-.015em}
.pl-one .pr{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pl-one .pr b{font:800 54px/1 var(--font-h);color:var(--teal-ink);letter-spacing:-.03em}
.pl-one .pr s{color:var(--muted);font:700 20px var(--font-h)}
.pl-one .pr small{color:var(--muted)}
.pl-until{display:inline-flex;align-items:center;gap:6px;margin:8px 0 0;padding:6px 10px;border-radius:999px;background:var(--lime-light);color:#4c5118;font:700 12px var(--font-h)}
.pl-until svg{width:14px;height:14px}
.pl-one .pp-li{margin:16px 0}
.pl-dc3{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--tint);font-size:13.5px;line-height:1.5;color:var(--text);margin:0 0 18px}
.pl-dc3 svg{width:18px;height:18px;color:var(--teal);flex-shrink:0;margin-top:2px}
.pl-one-b{padding:22px;border-radius:22px;background:var(--tint)}
.pl-one-b .lbl{display:block;font:700 11.5px var(--font-h);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.pl-one-b .pp-avail li a{background:var(--card)}
.pl-bundle{display:grid;grid-template-columns:64px 1fr auto auto;gap:20px;align-items:center;padding:24px 28px;border-radius:26px;background:linear-gradient(135deg,var(--lime-light),#fff 60%,var(--tint));border:1.5px solid color-mix(in srgb,var(--lime) 60%,var(--line))}
.pl-bundle .ic{width:64px;height:64px;border-radius:18px;background:var(--lime);color:#1d2205;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(143,149,54,.35)}
.pl-bundle .ic svg{width:30px;height:30px}
.pl-bundle .tx b{display:block;font:800 20px var(--font-h)}
.pl-bundle .tx small{display:block;color:var(--muted);font-size:13.5px;line-height:1.45;margin-top:3px;max-width:520px}
.pl-bundle .pr{text-align:right}
.pl-bundle .pr b{display:block;font:800 30px/1 var(--font-h);color:var(--teal-ink)}
.pl-bundle .pr s{color:var(--muted);font-size:14px}
.pl-bundle .pr em{display:block;font:700 12px var(--font-h);font-style:normal;color:var(--lime-deep);margin-top:4px}
.pl-cert{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;padding:34px 36px;border-radius:30px;background:var(--tint)}
.pl-cert h2{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.015em;margin:6px 0 10px}
.pl-cert p{color:var(--text);line-height:1.6;margin:0 0 16px}
.pl-cert-art{display:flex;justify-content:center}
.pl-cert>*{min-width:0}
.pl-cert-art .plc-doc{position:relative;width:100%;max-width:440px;aspect-ratio:1.3;border-radius:14px;background:#fff;box-shadow:0 30px 60px rgba(8,61,69,.22);padding:22px 24px;display:flex;flex-direction:column;gap:14px;transform:rotate(-2deg)}
.pl-cert-art .plc-dh{border-bottom:2px solid var(--teal-ink);padding-bottom:8px}
.pl-cert-art .plc-dh b{display:block;font:900 18px var(--font-h);color:var(--teal-ink);letter-spacing:.06em}
.pl-cert-art .plc-dh span{font-size:11px;color:var(--muted)}
.pl-cert-art .plc-dl{display:grid;gap:8px;flex:1}
.pl-cert-art .plc-dl i{display:block;height:8px;border-radius:4px;background:var(--tint-2)}
.pl-cert-art .plc-df{display:flex;align-items:center;gap:14px}
.pl-cert-art .plc-qr{width:64px;height:64px;border-radius:10px;background:var(--teal-ink);color:#fff;display:flex;align-items:center;justify-content:center}
.pl-cert-art .plc-qr svg{width:38px;height:38px}
.pl-cert-art .plc-fo small{display:block;font-size:11px;color:var(--muted)}
.pl-cert-art .plc-fo b{display:block;font:800 16px var(--font-h);color:var(--teal-ink);letter-spacing:.06em}
.pl-cert-art .plc-stamp{position:absolute;right:18px;top:18px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--ok-bg,#e6f4ea);color:#1b7f3b;font:800 12px var(--font-h);border:2px solid #1b7f3b;transform:rotate(8deg)}
.pl-cert-art .plc-stamp svg{width:14px;height:14px}
@media (prefers-reduced-motion:no-preference){.pl-cert.rv-in .plc-doc{animation:emPop .8s cubic-bezier(.2,.7,.2,1) .2s both}.pl-cert.rv-in .plc-stamp{animation:plStamp .5s cubic-bezier(.2,.7,.2,1) .9s both}@keyframes plStamp{from{opacity:0;transform:rotate(8deg) scale(1.8)}to{opacity:1;transform:rotate(8deg) scale(1)}}}
@media (max-width:980px){.pl-one,.pl-cert{grid-template-columns:1fr;padding:24px 20px}.pl-bundle{grid-template-columns:48px 1fr;padding:20px}.pl-bundle .pr{text-align:left;grid-column:2}.pl-bundle .btn{grid-column:2;justify-self:start}.pl-bundle .ic{width:48px;height:48px}.pl-one .pr b{font-size:44px}}
/* Verificar */
.vf-wrap{padding-top:0}
.vf-wrap .vf{margin-top:-48px;position:relative;z-index:2}
.vf-main{border-radius:26px;box-shadow:0 30px 60px rgba(8,61,69,.16);border:1px solid var(--line)}
.vf-main h2{margin:4px 0 6px;font-size:clamp(22px,2.4vw,28px)}
.vf-side{border-radius:26px}

.home-stage .em-float.f3{right:-18px;bottom:-16px}
.home-stage .em-float.f2{left:-6px;bottom:48px}
/* Móvil: las tarjetas flotantes pasan a una fila bajo el panel para no tapar nada */
@media (max-width:700px){
  .em-stage{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0;max-width:none}
  .em-stage .em-demo,.home-stage .mock{grid-column:span 2;transform:none}
  .em-float{position:static!important;animation:none!important;box-shadow:0 8px 20px rgba(0,0,0,.18)}
  .em-float.f3{grid-column:span 2}
  .em-hero-x .in{padding-bottom:70px}
  .home-hero .in{padding-bottom:70px}
}

/* Comparativo */
.em-cmp-wrap{overflow-x:auto;border-radius:26px;background:var(--card);border:1px solid var(--line);box-shadow:0 10px 30px rgba(8,61,69,.06)}
.em-cmp{width:100%;border-collapse:separate;border-spacing:0;min-width:860px}
.em-cmp th,.em-cmp td{padding:16px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45}
.em-cmp thead th{font:800 14px var(--font-h);color:var(--muted);background:var(--tint);position:relative}
.em-cmp thead th:first-child{border-top-left-radius:26px}
.em-cmp thead th.hi{background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff;border-top-right-radius:26px;padding-top:34px}
.em-cmp thead th.hi .tag{position:absolute;top:10px;left:18px;background:var(--lime);color:#1d2205;font:800 10.5px var(--font-h);letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:999px}
.em-cmp tbody th{font:700 14px var(--font-h);color:var(--text);width:19%}
.em-cmp td{display:table-cell;color:var(--text)}
.em-cmp td .cw{display:flex;gap:9px;align-items:flex-start}
.em-cmp td .ic{flex:0 0 22px;display:inline-flex;width:22px;height:22px;border-radius:50%;align-items:center;justify-content:center;margin-top:-1px}
.em-cmp td .ic svg{width:13px;height:13px}
.em-cmp td.ok .ic{background:#e3f3e8;color:#1b7f3b}
.em-cmp td.no .ic{background:#fde8e6;color:#c62828}
.em-cmp td.warn .ic{background:#fff3d6;color:#9a6700}
.em-cmp td:last-child{background:color-mix(in srgb,var(--tint) 60%,transparent);font-weight:600}
.em-cmp tbody tr:last-child th,.em-cmp tbody tr:last-child td{border-bottom:0}
.em-cmp tbody tr:hover td,.em-cmp tbody tr:hover th{background:color-mix(in srgb,var(--tint) 80%,transparent)}

@media (max-width:760px){
  .em-cmp-wrap{overflow:visible;background:transparent;border:0;box-shadow:none}
  .em-cmp{min-width:0;border-spacing:0 12px}
  .em-cmp thead{display:none}
  .em-cmp tbody tr{display:block;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:6px 16px 10px;margin-bottom:12px;box-shadow:0 6px 18px rgba(8,61,69,.05)}
  .em-cmp tbody th{display:block;width:auto;padding:12px 0 6px;border-bottom:1px dashed var(--line);font-size:15px}
  .em-cmp td{display:block;padding:10px 0;border-bottom:0;background:transparent!important}
  .em-cmp td::before{content:attr(data-col);display:block;font:800 10.5px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
  .em-cmp td:last-child{margin:4px -8px 0;padding:10px 8px 12px;border-radius:12px;background:var(--tint)!important}
  .em-cmp td:last-child::before{color:var(--teal-ink)}
  .em-cmp tbody tr:hover td,.em-cmp tbody tr:hover th{background:transparent}
}

/* Constancia DC-3: réplica ilustrativa del formato oficial */
.pl-cert-art .plc-doc.dc3{aspect-ratio:auto;gap:7px;padding:16px 18px 14px;border:1px solid #dbe5e7;font-family:Arial,Helvetica,sans-serif;color:#1a2b2f;text-align:left}
.dc3-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;border-bottom:2px solid var(--teal-ink);padding-bottom:7px}
.dc3-logo b{display:block;font:900 15px var(--font-h);letter-spacing:.08em;color:var(--teal-ink)}
.dc3-logo small{display:block;font-size:7.5px;color:#5a6c70;letter-spacing:.04em;text-transform:uppercase}
.dc3-t{text-align:right}
.dc3-t b{display:block;font:800 10.5px var(--font-h);color:var(--teal-ink);letter-spacing:.1em}
.dc3-t span{display:block;font-size:7.5px;color:#5a6c70;max-width:190px;line-height:1.25}
.dc3-s em{display:block;text-align:left;font:800 7.5px var(--font-h);letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--teal-ink);padding:3px 7px;border-radius:3px 3px 0 0;font-style:normal}
.dc3-g{display:grid;grid-template-columns:auto 1fr;gap:0;border:1px solid #cfdcdf;border-top:0}
.dc3-g label{text-align:left;font-size:7px;color:#5a6c70;text-transform:uppercase;letter-spacing:.05em;padding:3px 6px;border-bottom:1px solid #e3ebec;border-right:1px solid #e3ebec;background:#f5f9f9;white-space:nowrap}
.dc3-g span{text-align:left;font-size:8.5px;font-weight:700;padding:3px 7px;border-bottom:1px solid #e3ebec;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dc3-g label:nth-last-child(2),.dc3-g span:last-child{border-bottom:0}
.dc3-f{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;align-items:end;margin-top:4px}
.dc3-sig i{display:block;height:22px;border-bottom:1px solid #1a2b2f;margin-bottom:3px;position:relative}
.dc3-sig i::after{content:"";position:absolute;left:12%;bottom:2px;width:60%;height:14px;border-radius:50% 40% 60% 30%/60% 30% 70% 40%;border-top:1.5px solid rgba(13,129,145,.75);transform:rotate(-6deg)}
.dc3-sig small{display:block;font-size:6.5px;line-height:1.2;color:#5a6c70;text-align:center}
.dc3-qr{display:flex;flex-direction:column;align-items:center;gap:2px}
.dc3-qr .plc-qr{width:44px;height:44px;border-radius:6px}
.dc3-qr .plc-qr svg{width:28px;height:28px}
.dc3-qr b{font:800 8px var(--font-h);color:var(--teal-ink);letter-spacing:.06em}
.dc3-qr small{font-size:6.5px;color:#5a6c70}
.pl-cert-art .plc-doc.dc3 .plc-stamp{top:128px;right:12px;font-size:11px;padding:4px 9px;box-shadow:0 6px 16px rgba(8,61,69,.18)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pl-cert-art .plc-doc.dc3{background:#fff}}

/* Planes: tarjetas simplificadas */
.em-tier .who{font-size:22px}
.em-tier .range{font-size:13.5px;color:var(--muted);display:block;margin-top:-4px}
.em-tier .pr{align-items:center;gap:10px}
.em-tier .pr small{line-height:1.2}
.em-tier .pr b{font-size:38px}
.em-tier-pr{display:grid;gap:0;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.em-tier-pr li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;padding:8px 12px;font-size:13px;border-bottom:1px solid var(--line);background:var(--card)}
.em-tier-pr li:last-child{border-bottom:0}
.em-tier-pr li:nth-child(even){background:color-mix(in srgb,var(--tint) 55%,var(--card))}
.em-tier-pr li span{color:var(--text);font-weight:600}
.em-tier-pr li b{font:800 14px var(--font-h);color:var(--teal-ink);text-align:right}
.em-tier-pr li small{grid-column:1/-1;color:var(--muted);font-size:11.5px;margin-top:-2px}
.em-tier-ex{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:12.5px;color:var(--muted);line-height:1.4}
.em-tier-ex svg{width:14px;height:14px;flex-shrink:0;margin-top:3px;color:var(--teal)}
.em-tier-mode{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--tint);margin-top:2px}
.em-tier-mode .ic{width:32px;height:32px;border-radius:9px;background:var(--card);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-sm)}
.em-tier-mode .ic svg{width:16px;height:16px}
.em-tier-mode b{display:block;font:800 13.5px/1.2 var(--font-h);color:var(--text)}
.em-tier-mode small{display:block;color:var(--muted);font-size:12px;line-height:1.3}
.em-tier.feat .em-tier-mode{background:color-mix(in srgb,var(--lime-light) 70%,var(--card))}
/* Cómo elegir: tres pasos */
.em-how3{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;counter-reset:h3}
.em-how3 li{position:relative;display:flex;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);transition:transform .2s,box-shadow .2s}
.em-how3 li:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.em-how3 .n{position:absolute;top:-10px;left:14px;width:22px;height:22px;border-radius:50%;background:var(--teal-ink);color:#fff;font:800 11px/22px var(--font-h);text-align:center}
.em-how3 .ic{width:42px;height:42px;border-radius:12px;background:var(--tint);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.em-how3 .ic svg{width:20px;height:20px}
.em-how3 b{display:block;font:800 15px/1.2 var(--font-h);color:var(--text)}
.em-how3 small{display:block;color:var(--muted);font-size:12.5px;line-height:1.35}
.em-how3 li:not(:last-child)::after{content:"";position:absolute;right:-9px;top:50%;width:8px;height:8px;border-top:2px solid var(--line);border-right:2px solid var(--line);transform:translateY(-50%) rotate(45deg)}
@media (max-width:760px){.em-how3{grid-template-columns:1fr}.em-how3 li:not(:last-child)::after{display:none}}
/* Incluye lo mismo: interacción */
.em-incl li{padding:8px 10px;margin:-8px -10px;border-radius:12px;transition:transform .2s cubic-bezier(.2,.7,.2,1),background .2s;cursor:default}
.em-incl li:hover{transform:scale(1.06);background:var(--card);box-shadow:var(--shadow)}
.em-incl li .ic{transition:transform .25s,background .25s,color .25s}
.em-incl li:hover .ic{transform:rotate(-8deg) scale(1.1);background:var(--teal);color:#fff}
@media (prefers-reduced-motion:no-preference){.em-incl.rv-in li{animation:emPop .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--k,0)*60ms)}}
/* Caso real y respaldo: más vida */
.em-case-q{transition:transform .25s,box-shadow .25s}
.em-case-q:hover{transform:translateY(-3px);box-shadow:0 24px 50px rgba(8,61,69,.22)}
.em-case-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.em-case-stars{display:inline-flex;gap:2px;color:var(--lime)}
.em-case-stars svg{width:16px;height:16px;fill:currentColor}
.em-case-q .who{flex-wrap:wrap}
.em-case-chk{display:inline-flex;gap:6px;align-items:center;margin-left:auto;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font:700 11.5px var(--font-h);color:#e9f3f4}
.em-case-chk svg{width:14px;height:14px;color:var(--lime)}
.em-case-orn{position:absolute;right:-60px;bottom:-80px;width:220px;height:220px;border-radius:50%;border:28px solid rgba(255,255,255,.06);pointer-events:none}
.em-case-s{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.em-case-s:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.em-case-s::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:5px;background:linear-gradient(90deg,var(--teal),var(--lime))}
.em-trust li{padding:12px;border-radius:14px;background:var(--tint);transition:transform .2s,background .2s}
.em-trust li:hover{transform:translateY(-3px);background:var(--card);box-shadow:var(--shadow-sm)}
.em-trust .ic{background:var(--card);box-shadow:var(--shadow-sm)}
.em-trust li:hover .ic{background:var(--teal);color:#fff}
.em-trust b{font-size:15px}
.em-trust b [data-count]{color:var(--teal-ink)}
@media (max-width:980px){.em-tier .pr b{font-size:34px}}

.em-cmp thead th small{display:block;font:500 11.5px var(--font-b);color:var(--muted);margin-top:2px;letter-spacing:0;text-transform:none}
.em-cmp thead th.hi small{color:rgba(255,255,255,.8)}
.em-cmp.four td{font-size:13.5px;padding:14px 14px}
.em-cmp.four th{padding:14px 14px}
.em-cmp.four thead th:first-child{width:17%}
.em-cmp-note{display:flex;gap:8px;align-items:flex-start;margin:14px auto 0;max-width:900px;font-size:13.5px;color:var(--muted);line-height:1.5}
.em-cmp-note svg{width:16px;height:16px;flex-shrink:0;margin-top:3px;color:var(--teal)}
.em-hero-x h1{text-wrap:balance}

/* Muestras de constancias */
.pl-cert-docs{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;padding-bottom:26px}
.pl-doc{margin:0;position:relative}
.pl-doc-btn{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:14px;position:relative;box-shadow:0 18px 40px rgba(8,61,69,.18);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s;overflow:hidden}
.pl-doc-btn img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid rgba(8,61,69,.12)}
.pl-doc-btn:hover,.pl-doc-btn:focus-visible{transform:translateY(-6px) scale(1.02);box-shadow:0 28px 60px rgba(8,61,69,.26)}
.pl-doc-zoom{position:absolute;right:10px;bottom:10px;width:36px;height:36px;border-radius:50%;background:var(--teal-ink);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.25);opacity:0;transform:scale(.7);transition:opacity .2s,transform .2s}
.pl-doc-zoom svg{width:17px;height:17px}
.pl-doc-btn:hover .pl-doc-zoom,.pl-doc-btn:focus-visible .pl-doc-zoom{opacity:1;transform:scale(1)}
.pl-doc figcaption{margin-top:10px}
.pl-doc figcaption b{display:block;font:800 14px var(--font-h);color:var(--text)}
.pl-doc figcaption small{display:block;font-size:12.5px;color:var(--muted);line-height:1.4}
.pl-doc-dc3{transform:rotate(-1.5deg)}
.pl-doc-cp{transform:rotate(1.5deg);margin-top:34px}
.pl-doc-note{position:absolute;left:0;right:0;bottom:0;text-align:center;font-size:11.5px;color:var(--muted)}
@media (max-width:980px){.pl-cert-docs{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.pl-cert-docs{grid-template-columns:1fr;gap:22px}.pl-doc-dc3{max-width:300px;margin:0 auto;transform:none}.pl-doc-cp{margin-top:0;transform:none}}
@media (prefers-reduced-motion:no-preference){.pl-doc.rv-in .pl-doc-btn{animation:emPop .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0)*140ms)}}
/* Visor */
.zoom-ov{position:fixed;inset:0;z-index:1000;background:rgba(5,25,29,.82);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .2s}
.zoom-ov.on{opacity:1;pointer-events:auto}
.zoom-box{width:min(1100px,100%);max-height:100%;display:flex;flex-direction:column;background:var(--card);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.5);transform:translateY(12px) scale(.98);transition:transform .25s cubic-bezier(.2,.7,.2,1)}
.zoom-ov.on .zoom-box{transform:none}
.zoom-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}
.zoom-h b{font:800 14px var(--font-h);color:var(--text)}
.zoom-x{width:36px;height:36px;border-radius:50%;border:0;background:var(--tint);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer}
.zoom-x svg{width:16px;height:16px}
.zoom-img{overflow:auto;background:#e9eff0;display:flex;justify-content:center;align-items:flex-start}
.zoom-img img{display:block;max-width:100%;height:auto;max-height:calc(100vh - 110px);object-fit:contain}

/* Inicio: pantalla de ejemplo más grande */
.home-hero .in{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}
.home-stage{max-width:700px;padding:28px 22px 36px 36px}
@media (max-width:1180px){.home-stage{padding:24px 16px 30px 6px}}
@media (max-width:900px){.home-hero .in{grid-template-columns:1fr}.home-stage{max-width:560px;padding:16px 12px 28px 10px}}
.nb{white-space:nowrap}

/* ===== Ficha de curso (rediseño) ===== */
.cd-page{display:flex;flex-direction:column}
.cd-hero{padding-bottom:96px!important;background:#083d45;background-image:radial-gradient(900px 500px at 10% 120%,rgba(13,129,145,.6),transparent 60%),radial-gradient(700px 400px at 100% -20%,rgba(99,172,179,.35),transparent 60%),linear-gradient(135deg,#072f36,#0a5a66 60%,#0d8191);color:#eaf6f7;padding:22px 0 110px;position:relative;isolation:isolate;overflow:hidden}
.cd-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:rgba(255,255,255,.08)}
.cd-hero .crumbs{color:#9fc9cf;margin-bottom:16px}
.cd-hero .crumbs a{color:#cfe7ea}
.cd-hero-g{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:24px;align-items:center;max-width:860px}
.cd-kick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.cd-kick .code{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:rgba(184,190,91,.18);border:1px solid rgba(184,190,91,.4);color:var(--lime);font:800 11.5px var(--font-h);letter-spacing:.1em;text-transform:uppercase}
.cd-kick .badge{white-space:normal;line-height:1.25;background:rgba(255,255,255,.12);color:#eaf6f7;border:1px solid rgba(255,255,255,.2)}
.cd-kick .badge.warn{background:rgba(255,205,105,.16);color:#ffe3a3;border-color:rgba(255,205,105,.4)}
.cd-hero h1{color:#fff;font-size:clamp(28px,3.6vw,44px);line-height:1.1;letter-spacing:-.02em;margin:0 0 10px;text-wrap:balance}
.cd-hero .lead{color:#cfe7ea;font-size:17px;line-height:1.55;margin:0 0 18px;max-width:640px}
.cd-facts{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cd-facts li{display:flex;align-items:center;gap:9px;padding:9px 13px 9px 10px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(4px)}
.cd-facts li svg{width:20px;height:20px;color:var(--lime);flex-shrink:0}
.cd-facts b{display:block;font:800 13.5px/1.15 var(--font-h);color:#fff}
.cd-facts small{display:block;font-size:11.5px;color:#b9d8dc;line-height:1.2}
.cd-hero .cd-sec{margin-top:6px}
.cd-hero .cd-sec>span{color:#9fc9cf}
.cd-hero .cd-sec .chip{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#eaf6f7}
.cd-hero .cd-sec .chip svg{color:var(--lime)}
.cd-hero-ic{display:flex;justify-content:center}
.cd-hero-ic span{width:160px;height:160px;border-radius:40px;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;color:var(--lime);box-shadow:0 30px 60px rgba(0,0,0,.25);transform:rotate(-6deg)}
.cd-hero-ic svg{width:88px;height:88px}
@media (prefers-reduced-motion:no-preference){.cd-hero-ic span{animation:emFloat 6s ease-in-out infinite}}
.cd-body{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:start;margin-top:-80px;position:relative;z-index:1}
.cd-main{display:grid;gap:18px;min-width:0}
.cd-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px 26px;box-shadow:0 10px 30px rgba(8,61,69,.06)}
.cd-card h2{font-size:21px;margin:0 0 12px;position:relative;padding-left:14px}
.cd-card h2::before{content:"";position:absolute;left:0;top:.15em;bottom:.15em;width:4px;border-radius:3px;background:linear-gradient(180deg,var(--teal),var(--lime))}
.cd-card-h p{margin:-4px 0 14px;color:var(--muted);font-size:14.5px}
.cd-obj,.cd-aud{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start}
.cd-obj .ic,.cd-aud .ic{width:52px;height:52px;border-radius:16px;background:var(--tint);color:var(--teal);display:flex;align-items:center;justify-content:center}
.cd-obj .ic svg,.cd-aud .ic svg{width:26px;height:26px}
.cd-obj p,.cd-aud p{margin:0;font-size:15.5px;line-height:1.6}
.cd-obj h2,.cd-aud h2{padding-left:0}.cd-obj h2::before,.cd-aud h2::before{display:none}
.cd-learn{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.cd-learn li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--tint);font-size:14.5px;line-height:1.45}
.cd-learn li svg{width:18px;height:18px;color:var(--ok);flex-shrink:0;margin-top:2px}
.cd-seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;padding:5px;border-radius:14px;margin-bottom:14px}
.cd-seg button{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 10px;border-radius:10px;font-size:13.5px;white-space:normal;line-height:1.2;text-align:left}
.cd-seg button svg{width:20px;height:20px;flex-shrink:0}
.cd-seg button.on svg{color:var(--teal)}
.cd-prof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cd-prof>div{padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--card)}
.cd-prof small{display:block;font:800 10.5px var(--font-h);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.cd-prof b{display:block;font-size:13.5px;font-weight:600;color:var(--text);line-height:1.4}
.cd-tl{list-style:none;margin:0;padding:0 0 0 26px;position:relative}
.cd-tl::before{content:"";position:absolute;left:17px;top:22px;bottom:22px;width:2px;background:linear-gradient(180deg,var(--teal),var(--line))}
.cd-tl li{position:relative;margin:0 0 10px}
.cd-ch{border:1px solid var(--line);border-radius:16px;background:var(--card);overflow:visible;transition:border-color .2s,box-shadow .2s}
.cd-ch[open]{border-color:var(--teal);box-shadow:0 10px 26px rgba(8,61,69,.08)}
.cd-ch summary{list-style:none;display:flex;align-items:center;gap:14px;padding:14px 16px 14px 14px;cursor:pointer}
.cd-ch summary::-webkit-details-marker{display:none}
.cd-ch .num{width:36px;height:36px;border-radius:50%;background:var(--teal-ink);color:#fff;font:800 14px var(--font-h);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:-32px;box-shadow:0 0 0 4px var(--card);position:relative;z-index:1}
.cd-ch[open] .num{background:var(--teal)}
.cd-ch .tx{flex:1;min-width:0}
.cd-ch .tx b{display:block;font:700 15px/1.3 var(--font-h);color:var(--text)}
.cd-ch .tx small{display:block;color:var(--muted);font-size:12.5px}
.cd-ch .pm{width:26px;height:26px;border-radius:50%;background:var(--tint);position:relative;flex-shrink:0}
.cd-ch .pm::before,.cd-ch .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--teal-ink);transform:translate(-50%,-50%);transition:transform .2s}
.cd-ch .pm::after{transform:translate(-50%,-50%) rotate(90deg)}
.cd-ch[open] .pm::after{transform:translate(-50%,-50%) rotate(0)}
.cd-ch .in{padding:0 16px 14px 18px}
.cd-ch .in>p{margin:0 0 10px;color:var(--muted);font-size:14px}
.cd-ls{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.cd-ls li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;font-size:14px;background:var(--tint)}
.cd-ls li svg{width:14px;height:14px;color:var(--teal);flex-shrink:0}
.cd-ls li span{flex:1;min-width:0}
.cd-ls li em{font-style:normal;color:var(--muted);font-size:12px}
.cd-mat{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cd-mat li{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;border:1px dashed var(--line)}
.cd-mat li svg{width:20px;height:20px;color:var(--teal);flex-shrink:0;margin-top:2px}
.cd-mat b{display:block;font:700 14px var(--font-h)}.cd-mat small{color:var(--muted);font-size:12.5px}
.cd-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
.cd-steps li b{font:800 14.5px/1.25 var(--font-h);margin-top:4px}
.cd-steps li p{margin:0;font-size:13px;color:var(--muted);line-height:1.45}
.cd-ag .ag{margin:0}
.cd-main .fq{margin:0}
/* Aside de compra */
.cd-aside{position:sticky;top:84px;display:grid;gap:14px}
.cd-buy{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:22px 22px 18px;box-shadow:0 24px 50px rgba(8,61,69,.16);position:relative;overflow:hidden}
.cd-buy::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--teal),var(--lime))}
.cd-price small{display:block;color:var(--muted);font-size:12.5px}
.cd-price .pr{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:2px 0}
.cd-price .pr b{font:800 40px/1 var(--font-h);color:var(--teal-ink)}
.cd-price .pr span{color:var(--muted);font-weight:600}
.cd-price .pr s{font-size:18px;color:var(--muted)}
.cd-buy .btn.block{margin-top:14px}
.cd-buy .btn.ghost.block{margin-top:8px}
.cd-incl{list-style:none;margin:16px 0 10px;padding:14px 0 0;border-top:1px dashed var(--line);display:grid;gap:8px}
.cd-incl li{display:flex;gap:9px;align-items:flex-start;font-size:14px;line-height:1.4}
.cd-incl li svg{width:17px;height:17px;color:var(--ok);flex-shrink:0;margin-top:2px}
.cd-note{margin:0 0 10px;color:var(--muted);font-size:12.5px;line-height:1.45}
.cd-pay{display:flex;align-items:center;gap:8px;font:700 12px var(--font-h);color:var(--muted);letter-spacing:.02em}
.cd-pay svg{width:16px;height:16px;color:var(--teal)}
.cd-biz{display:grid;grid-template-columns:44px 1fr 20px;gap:12px;align-items:center;padding:14px 16px;border-radius:18px;background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff;text-decoration:none;transition:transform .2s,box-shadow .2s}
.cd-biz:hover{transform:translateY(-2px);box-shadow:var(--shadow);text-decoration:none}
.cd-biz .ic{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center}
.cd-biz .ic svg{width:22px;height:22px}
.cd-biz b{display:block;font:800 14.5px var(--font-h)}.cd-biz small{display:block;font-size:12.5px;color:#cfe7ea}
.cd-biz>svg{width:18px;height:18px;color:var(--lime)}
.cd-rel{margin:34px auto 50px}
@media (max-width:1100px){.cd-body{grid-template-columns:minmax(0,1fr) 340px}}
@media (max-width:900px){.cd-body{grid-template-columns:1fr;margin-top:-60px}.cd-aside{position:static;order:-1}.cd-hero{padding-bottom:76px!important}.cd-hero-g{grid-template-columns:1fr}.cd-hero-ic{display:none}}
@media (max-width:640px){.cd-card{padding:18px 16px;border-radius:18px}.cd-learn,.cd-mat,.cd-prof{grid-template-columns:1fr}.cd-seg{grid-template-columns:1fr}.cd-seg button{justify-content:flex-start}.cd-steps{grid-template-columns:1fr;gap:16px}.cd-steps li{display:grid;grid-template-columns:44px 1fr;gap:2px 14px}.cd-steps li .ic{display:none}.cd-steps li b,.cd-steps li p{grid-column:2}.cd-facts li{padding:8px 10px}.cd-price .pr b{font-size:34px}.cd-obj,.cd-aud{grid-template-columns:44px 1fr;gap:12px}.cd-obj .ic,.cd-aud .ic{width:44px;height:44px}.cd-hero .lead{font-size:15.5px}.cd-tl{padding-left:22px}.cd-tl::before{left:15px}.cd-ch .num{width:32px;height:32px;margin-left:-28px;font-size:13px}}

/* ===== Agente capacitador: bloque de respaldo ===== */
.ag{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:28px;align-items:center;padding:34px 36px;border-radius:30px;background:linear-gradient(135deg,var(--teal-ink),#0b5560 60%,var(--teal));color:#fff;position:relative;overflow:hidden}
.ag::before{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;border:40px solid rgba(255,255,255,.05);pointer-events:none}
.ag .kicker{color:var(--lime)}
.ag h2{color:#fff;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.015em;margin:6px 0 12px;text-wrap:balance}
.ag-tx>p{color:#d6e9ec;line-height:1.6;margin:0 0 16px;font-size:15px}
.ag-tx>p b{color:#fff}
.ag-reg{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);margin-bottom:16px}
.ag-reg .ic{width:46px;height:46px;border-radius:14px;background:var(--lime);color:#1d2205;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ag-reg .ic svg{width:24px;height:24px}
.ag-reg small{display:block;font:700 10.5px var(--font-h);letter-spacing:.12em;text-transform:uppercase;color:#b9d8dc}
.ag-reg b{display:block;font:800 clamp(17px,2vw,22px)/1.1 var(--font-h);letter-spacing:.04em;color:#fff}
.ag-reg .btn{margin-left:auto;border-color:rgba(255,255,255,.35);color:#fff;background:transparent}
.ag-reg .btn:hover{background:rgba(255,255,255,.12)}
.ag-li{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.ag-li li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45;color:#eaf6f7}
.ag-li li svg{width:18px;height:18px;color:var(--lime);flex-shrink:0;margin-top:2px}
.ag-note{margin:0;font-size:12px;color:#9fc9cf;line-height:1.45}
.ag-doc{margin:0;justify-self:center;max-width:300px;width:100%;text-align:center}
.ag-doc-btn{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;position:relative;border-radius:12px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.35);transform:rotate(2deg);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
.ag-doc-btn:hover,.ag-doc-btn:focus-visible{transform:rotate(0) translateY(-6px) scale(1.03);box-shadow:0 40px 80px rgba(0,0,0,.45)}
.ag-doc-btn img{display:block;width:100%;height:auto}
.ag-doc-zoom{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:var(--teal-ink);color:#fff;font:800 12px var(--font-h);box-shadow:0 8px 20px rgba(0,0,0,.3);white-space:nowrap}
.ag-doc-zoom svg{width:14px;height:14px}
.ag-doc figcaption{margin-top:12px;font-size:12px;color:#b9d8dc}
.ag.compact{padding:26px 28px;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:22px;border-radius:24px}
.ag.compact h2{font-size:clamp(20px,2vw,24px)}
.ag.compact .ag-li{display:none}
.ag.compact .ag-doc{max-width:200px}
.ag.compact .ag-doc-zoom{padding:6px 10px;font-size:11px;bottom:10px}
@media (prefers-reduced-motion:no-preference){.ag.rv-in .ag-doc-btn{animation:emPop .8s cubic-bezier(.2,.7,.2,1) .15s both}}
@media (max-width:900px){.ag,.ag.compact{grid-template-columns:1fr;padding:24px 20px}.ag-doc,.ag.compact .ag-doc{max-width:240px;margin:6px auto 0}.ag-reg .btn{margin-left:0;width:100%;justify-content:center}}

.cd-rel .grid.gauto{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.cd-rel .grid.gauto{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.cd-rel .grid.gauto{grid-template-columns:1fr}}

/* ===== Accesibilidad: contraste y áreas táctiles ===== */
.kicker{color:var(--teal-deep)}
.hero .kicker,.em-hero-x .kicker,.ag .kicker,.em-case-q .kicker,.cd-hero .kicker,.em-final .kicker,.em-est-r .kicker{color:var(--lime)}
.btn.ghost{color:var(--teal-deep)}
.badge.warn{color:#8a5200;background:#fff0d2}
.cd-kick .badge.warn{color:#ffe3a3;background:rgba(255,205,105,.16)}
.fq-link,.pp-more,.em-tier-alt,.cc-sec .all,.em-quote-wa a{color:var(--teal-deep)}
.cat-bundle .tx .kicker{color:#5c6120;font-size:11px}
.rv-av{background:var(--teal-ink)}
.cd-prof small,.ag-reg small,.em-doc em,.em-float small,.cc-facts li{font-size:11px}
.em-rev-nav .dots button{width:36px;height:36px;background:transparent;position:relative}
.em-rev-nav .dots button::before{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:var(--tint-2);transform:translate(-50%,-50%);transition:all .2s}
.em-rev-nav .dots button.on::before{width:22px;border-radius:4px;background:var(--teal)}
.em-rev-nav .dots{gap:0}
.foot a,.crumbs a{display:inline-block;padding:8px 2px;margin:-8px 0}
.home-soon a{min-height:40px;align-items:center}
.em-seg span{min-height:40px;display:flex;align-items:center;justify-content:center}
.em-est-cc .em-seg span{padding:0 10px}
.em-tier-alt,.fq-link,.pp-more{padding:8px 0;display:inline-block}
.em-tier-alt{display:block}
.menu-btn{padding:9px;min-width:42px;min-height:42px}
.brand{min-height:42px}
.em-scroll{min-height:40px;display:inline-flex;align-items:center}
input[type=range]{height:36px;cursor:pointer}
.note a,.em-solo a,.fq-item .in a,.cd-note a,.muted a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:2px}
.ag-reg .btn.ghost{color:#fff}
/* Tarjetas de curso: etiquetas que no se recortan */
.course-card .meta .badge{white-space:normal;line-height:1.25;max-width:100%;text-align:left;align-items:flex-start;padding:6px 10px}
.course-card .meta .badge svg{flex-shrink:0;margin-top:1px}
.course-card .meta{min-width:0}

/* =====================================================================
   Paneles (alumno, trabajador y empresa): capa premium
   ===================================================================== */
@property --p { syntax: '<number>'; inherits: false; initial-value: 0; }
.st-shell{padding-top:28px;gap:28px}
.st-side{gap:12px}
/* Tarjeta de usuario */
.st-side .st-user{position:relative;overflow:hidden;border:0;border-radius:22px;padding:16px;background:linear-gradient(135deg,var(--teal-ink),#0b5560 65%,var(--teal));color:#fff;box-shadow:0 14px 34px rgba(8,61,69,.18);isolation:isolate}
.st-side .st-user::after{content:"";position:absolute;right:-40px;top:-50px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(184,190,91,.35),transparent 65%);pointer-events:none;z-index:-1}
.st-side .st-user b{color:#fff}
.st-side .st-user div span{color:#b9d8dc}
.st-side .st-av,.pn-sheet .st-av{background:var(--lime)!important;color:#1d2205!important;box-shadow:0 0 0 3px rgba(255,255,255,.18);display:flex!important}
/* Menú */
.st-side .st-menu{border-radius:22px;padding:10px;box-shadow:0 10px 30px rgba(8,61,69,.06)}
.st-side .st-menu a{border-radius:13px;padding:11px 12px;transition:background .2s,transform .2s,color .2s}
.st-side .st-menu a:hover{transform:translateX(3px)}
.st-side .st-menu a.on{box-shadow:0 8px 18px rgba(8,61,69,.22)}
.st-side .st-menu a svg{transition:transform .2s}
.st-side .st-menu a:hover svg{transform:scale(1.12)}
.st-side .ap-menu .grp{color:var(--teal-deep);opacity:.75}
.st-side .ap-menu a .cnt{background:var(--tint)}
/* Saldo, recordatorio y ayuda */
.st-side .ap-bal{border-radius:22px;padding:18px;background:linear-gradient(140deg,#0b5560,var(--teal));position:relative;overflow:hidden;box-shadow:0 12px 30px rgba(8,61,69,.16)}
.st-side .ap-bal::before{content:"";position:absolute;right:-30px;bottom:-60px;width:150px;height:150px;border-radius:50%;border:22px solid rgba(255,255,255,.07)}
.st-side .ap-bal b{font-size:34px}
.st-side .st-tip{border-radius:22px;padding:18px;position:relative;overflow:hidden}
.st-side .st-tip::before{content:"";position:absolute;left:-20px;bottom:-40px;width:110px;height:110px;border-radius:50%;background:rgba(184,190,91,.14)}
.st-side .st-help{border-radius:18px;border-style:solid;background:var(--card);box-shadow:0 8px 20px rgba(8,61,69,.05);transition:transform .2s,box-shadow .2s}
.st-side .st-help:hover{transform:translateY(-2px);box-shadow:var(--shadow);background:var(--card)}
/* Encabezado */
.st-head{margin-bottom:22px}
.st-head .kicker{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--teal-deep)}
.st-date{font:600 12px var(--font-b);letter-spacing:0;text-transform:none;color:var(--muted)}
.st-head h1{letter-spacing:-.02em}
.ap-acts .btn,.st-head .btn{border-radius:12px}
/* Entrada escalonada de las secciones */
@media (prefers-reduced-motion:no-preference){
  .st-main>*{animation:emPop .55s cubic-bezier(.2,.7,.2,1) both}
  .st-main>*:nth-child(2){animation-delay:60ms}.st-main>*:nth-child(3){animation-delay:120ms}.st-main>*:nth-child(4){animation-delay:180ms}.st-main>*:nth-child(5){animation-delay:240ms}.st-main>*:nth-child(6){animation-delay:300ms}.st-main>*:nth-child(n+7){animation-delay:360ms}
  .st-main .bar i{animation:emBar 1.1s cubic-bezier(.2,.7,.2,1) both}
  .st-main .ring{animation:pnRing 1.3s cubic-bezier(.2,.7,.2,1) both}
  @keyframes pnRing{from{--p:0}}
  .st-courses .st-course,.st-certs .st-cert,.ap-cards .ap-card{animation:emPop .5s cubic-bezier(.2,.7,.2,1) both}
  .st-courses .st-course:nth-child(2),.ap-cards .ap-card:nth-child(2){animation-delay:70ms}.st-courses .st-course:nth-child(3),.ap-cards .ap-card:nth-child(3){animation-delay:140ms}.st-courses .st-course:nth-child(4){animation-delay:210ms}.st-courses .st-course:nth-child(n+5){animation-delay:280ms}
}
/* Portada del panel */
.st-hero{border-radius:26px;padding:30px 32px;gap:28px;background:#083d45;background-image:radial-gradient(700px 400px at 10% 120%,rgba(13,129,145,.6),transparent 60%),radial-gradient(600px 300px at 100% -20%,rgba(99,172,179,.35),transparent 60%),linear-gradient(135deg,#072f36,#0a5a66 60%,#0d8191);box-shadow:0 24px 50px rgba(8,61,69,.22);isolation:isolate}
.st-hero::before{z-index:-1}
.st-hero::after{content:"";position:absolute;left:-80px;top:-100px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(13,129,145,.45),transparent 65%);pointer-events:none;z-index:-1}
.st-hero h2{font-size:clamp(22px,2.8vw,30px);letter-spacing:-.015em;text-wrap:balance}
.st-hero .btn.white{border-radius:12px}
.st-hero .btn.lg{border-radius:14px}
.st-hero-art .ring{width:148px;height:148px;background:conic-gradient(var(--c) calc(var(--p)*1%),rgba(255,255,255,.12) 0);box-shadow:0 20px 40px rgba(0,0,0,.25)}
.st-hero-art .ring>div{width:116px;height:116px;background:rgba(7,47,54,.92)}
.st-hero-art .ring b{font-size:36px}
.ap-onb li{border-radius:14px}
/* KPI */
.st-kpis{gap:14px}
.st-kpis .kpi{border-radius:20px;padding:20px 20px 18px;box-shadow:0 10px 30px rgba(8,61,69,.06);transition:transform .2s,box-shadow .2s}
.st-kpis .kpi:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(8,61,69,.12)}
.st-kpis .kpi::after{display:none}
.st-kpis .kpi .ic{position:absolute;right:16px;top:16px;width:40px;height:40px;border-radius:12px;background:var(--tint);display:flex;align-items:center;justify-content:center;transition:transform .25s,background .25s,color .25s}
.st-kpis .kpi:hover .ic{transform:rotate(-8deg) scale(1.08);background:var(--teal);color:#fff}
.st-kpis .kpi.accent .ic{background:rgba(255,255,255,.14);color:var(--lime)}
.st-kpis .kpi.accent:hover .ic{background:var(--lime);color:#1d2205}
.st-kpis .kpi .val{font-size:30px;letter-spacing:-.02em;margin-top:8px}
.st-kpis .kpi .lbl{padding-right:48px}
/* Pendientes */
.st-todo{border-radius:22px;padding:20px 22px}
.st-todo li{border-radius:14px;border-left:4px solid var(--teal);transition:transform .2s,background .2s}
.st-todo li:hover{transform:translateX(3px);background:var(--card);box-shadow:var(--shadow-sm)}
.st-todo li.warn{border-left-color:var(--warn)}.st-todo li.bad{border-left-color:var(--bad)}.st-todo li.lime{border-left-color:var(--lime)}
.st-todo li .go a{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:var(--card);border:1px solid var(--line);text-decoration:none;transition:background .2s,color .2s}
.st-todo li .go a:hover{background:var(--teal);color:#fff;border-color:var(--teal)}
/* Tarjetas en general */
.st-main .card{border-radius:22px;box-shadow:0 10px 30px rgba(8,61,69,.05)}
.st-main .card-head h3,.st-main .card>h3{font-size:17px}
.st-main .card-head a.small{font:700 12.5px var(--font-h);color:var(--teal-deep);padding:6px 10px;border-radius:999px;background:var(--tint);text-decoration:none}
.st-main .card-head a.small:hover{background:var(--teal);color:#fff}
/* Tarjetas de curso del alumno */
.st-course{border-radius:22px;padding:20px 20px 18px;overflow:hidden;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s}
.st-course::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--teal)}
.st-course{position:relative}
.st-course[data-st="done"]::before{background:var(--ok)}
.st-course[data-st="exam"]::before{background:var(--lime)}
.st-course[data-st="new"]::before,.st-course[data-st="version"]::before{background:var(--line)}
.st-course[data-st="blocked"]::before{background:var(--bad)}
.st-course:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(8,61,69,.14)}
.st-course .thumb{border-radius:16px;box-shadow:0 8px 18px rgba(8,61,69,.2)}
.st-course .st-c-act .btn{border-radius:11px}
.st-course .bar{height:8px;border-radius:999px}
/* Pasos, ruta del curso y examen */
.st-steps li{border-radius:16px;transition:transform .2s,box-shadow .2s}
.st-steps li:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.st-steps li.cur{border-color:var(--teal);box-shadow:0 10px 24px rgba(8,61,69,.1)}
.st-steps li.ok .n{background:var(--ok-bg);color:var(--ok)}
.st-ch{border-radius:16px}
/* Constancias y credencial */
.st-cert{border-radius:22px;transition:transform .25s,box-shadow .25s}
.st-cert:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(8,61,69,.12)}
.st-cred{border-radius:26px;box-shadow:0 24px 50px rgba(8,61,69,.16)}
/* Listas del panel de empresa */
.ap-av{background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff;box-shadow:0 4px 10px rgba(8,61,69,.2)}
.ap-list li{border-radius:12px;transition:background .2s,transform .2s;padding-left:8px;padding-right:8px;margin:0 -8px}
.ap-list li:hover{background:var(--tint);transform:translateX(2px)}
.ap-courses li{border-radius:12px;padding:8px;margin:0 -8px;transition:background .2s}
.ap-courses li:hover{background:var(--tint)}
.ap-c-ic{border-radius:12px}
.ap-card{border-radius:22px;transition:transform .25s,box-shadow .25s}
.ap-card:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(8,61,69,.12)}
.ap-balhero{border-radius:26px;box-shadow:0 24px 50px rgba(8,61,69,.2)}
.ap-promo{border-radius:22px}
.ap-bars .b i{transition:height .6s cubic-bezier(.2,.7,.2,1)}
@media (prefers-reduced-motion:no-preference){.ap-bars .b i{animation:pnBar 1s cubic-bezier(.2,.7,.2,1) both}@keyframes pnBar{from{transform:scaleY(0);transform-origin:bottom}}}
/* Tablas */
.st-main .table-wrap{border-radius:18px;border:1px solid var(--line);background:var(--card);box-shadow:0 10px 30px rgba(8,61,69,.05)}
.st-main table.t thead th{background:var(--tint);font:800 11.5px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.st-main table.t tbody tr{transition:background .15s}
.st-main table.t tbody tr:hover{background:color-mix(in srgb,var(--tint) 60%,var(--card))}
.st-main .chip{transition:transform .15s,box-shadow .15s}
.st-main .chip:hover{transform:translateY(-1px)}
.st-main .input,.st-main .form input,.st-main .form select,.st-main .form textarea{border-radius:12px}
.st-main .btn{transition:transform .15s,box-shadow .15s,background .2s,color .2s}
.st-main .btn:not(.ghost):not(.white):hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(8,61,69,.2)}
/* Pestañas inferiores (celular) y hoja "Más" */
.pn-tabs,.pn-sheet{display:none}
@media (max-width:920px){
  .st-shell{padding-top:12px;padding-bottom:88px}
  .st-side .st-menu{display:none}
  .pn-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:70;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -8px 24px rgba(8,61,69,.1)}
  .pn-tabs a,.pn-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;font:700 10.5px var(--font-h);color:var(--muted);text-decoration:none;padding:4px 2px;border:0;background:none;position:relative;border-radius:12px;cursor:pointer}
  .pn-tabs svg{width:22px;height:22px}
  .pn-tabs span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .pn-tabs .on{color:var(--teal-ink)}
  .pn-tabs .on svg{color:var(--teal)}
  .pn-tabs .on::before{content:"";position:absolute;top:-7px;left:50%;transform:translateX(-50%);width:28px;height:3px;border-radius:0 0 3px 3px;background:var(--teal)}
  .pn-tabs .cnt{position:absolute;top:2px;left:calc(50% + 6px);min-width:16px;height:16px;border-radius:8px;background:var(--lime);color:#1d2205;font:800 10px/16px var(--font-h);font-style:normal;padding:0 4px;text-align:center}
  .pn-tabs .cnt.warn{background:var(--warn);color:#fff}
  .pn-sheet{display:block;position:fixed;inset:0;z-index:80}
  .pn-sheet[hidden]{display:none}
  .pn-sheet-bg{position:absolute;inset:0;background:rgba(5,25,29,.55);opacity:0;transition:opacity .22s}
  .pn-sheet-box{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;background:var(--bg);border-radius:24px 24px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px;transform:translateY(100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);box-shadow:0 -20px 60px rgba(0,0,0,.3)}
  .pn-sheet.on .pn-sheet-bg{opacity:1}
  .pn-sheet.on .pn-sheet-box{transform:none}
  .pn-sheet-grip{width:44px;height:5px;border-radius:3px;background:var(--line);margin:0 auto 4px}
  .pn-sheet .st-user,.pn-sheet .st-tip,.pn-sheet .st-help{display:flex!important}
  .pn-sheet .st-user{border:0;border-radius:18px;padding:14px;background:linear-gradient(135deg,var(--teal-ink),#0b5560 65%,var(--teal));color:#fff;gap:12px;align-items:center}
  .pn-sheet .st-user b{color:#fff;display:block;font:700 14.5px/1.25 var(--font-h)}.pn-sheet .st-user div span{display:block;color:#b9d8dc;font-size:12.5px}
  .pn-sheet .st-tip{border-radius:18px;padding:14px;flex-direction:column}
  .pn-sheet .st-help{border-radius:16px;background:var(--card);border:1px solid var(--line);padding:12px 14px;gap:10px;align-items:center;color:var(--text);font-size:12.5px}
  .pn-sheet .st-help svg{width:24px;height:24px;color:#1f8a4c}
  .pn-sheet .ap-bal{border-radius:18px;padding:16px;background:linear-gradient(140deg,#0b5560,var(--teal));color:#fff;display:flex;flex-direction:column;gap:6px}
  .pn-sheet-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .pn-sheet-menu a{display:flex;align-items:center;gap:10px;padding:12px;border-radius:14px;background:var(--card);border:1px solid var(--line);color:var(--text);font:600 13.5px var(--font-h);text-decoration:none;position:relative}
  .pn-sheet-menu a svg{width:20px;height:20px;color:var(--teal)}
  .pn-sheet-menu a.on{background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff;border-color:transparent}
  .pn-sheet-menu a.on svg{color:var(--lime)}
  .pn-sheet-menu a .cnt{margin-left:auto;font:700 11px/1.6 var(--font-h);font-style:normal;background:var(--tint-2);color:var(--muted);border-radius:99px;padding:0 8px}
  .pn-sheet-menu a.on .cnt{background:rgba(255,255,255,.2);color:#fff}
  .pn-sheet-menu a .cnt.warn{background:var(--warn-bg);color:var(--warn)}
  /* el saldo de créditos se muestra compacto arriba del contenido en el celular */
  .st-side .ap-bal{flex-direction:row;align-items:center;flex-wrap:wrap;padding:14px 16px;border-radius:18px}
  .st-side .ap-bal b{font-size:26px}
  .st-side .ap-bal .kicker{width:100%}
  .st-side .ap-bal .btn{margin-left:auto}
  .st-hero{padding:22px 20px;border-radius:22px}
  .st-hero h2{font-size:22px}
  .st-head{margin-bottom:16px}
  .st-kpis{gap:10px}
  .st-kpis .kpi{border-radius:16px;padding:14px}
  .st-kpis .kpi .ic{width:32px;height:32px;border-radius:9px;right:10px;top:10px}
  .st-kpis .kpi .ic svg{width:16px;height:16px}
  .st-todo{padding:16px}
  .st-course{padding:16px}
  .cd-bar{bottom:calc(62px + env(safe-area-inset-bottom))}
  body:has(.pn-tabs) .em-sticky{display:none}
}
/* Accesos rápidos y flotantes de la portada del panel */
.st-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}
.ap-quick{grid-template-columns:repeat(4,minmax(0,1fr))}
.st-q{display:flex;align-items:center;gap:12px;padding:14px 14px 14px 12px;border-radius:18px;background:var(--card);border:1px solid var(--line);color:var(--text);text-decoration:none!important;box-shadow:0 8px 20px rgba(8,61,69,.05);transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s,border-color .22s}
.st-q:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(8,61,69,.12);border-color:var(--aqua)}
.st-q .ic{width:42px;height:42px;border-radius:13px;background:var(--tint);color:var(--teal);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,color .2s,transform .2s}
.st-q:hover .ic{background:var(--teal);color:#fff;transform:rotate(-6deg)}
.st-q .ic svg{width:21px;height:21px}
.st-q>span:not(.ic){flex:1;min-width:0}
.st-q b{display:block;font:800 14px/1.2 var(--font-h);color:var(--text)}
.st-q small{display:block;color:var(--muted);font-size:12px;line-height:1.3;margin-top:2px}
.st-q>svg{width:16px;height:16px;color:var(--muted);flex-shrink:0;transition:transform .2s,color .2s}
.st-q:hover>svg{transform:translateX(3px);color:var(--teal)}
.st-hero-art{display:grid;place-items:center;padding:30px 30px 30px 34px;min-width:250px}
.st-float{position:absolute;display:flex;align-items:center;gap:8px;padding:8px 12px 8px 9px;border-radius:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;box-shadow:0 12px 28px rgba(0,0,0,.22);white-space:nowrap;z-index:2}
.st-float svg{width:18px;height:18px;color:var(--lime);flex-shrink:0}
.st-float b{display:block;font:800 13px/1.1 var(--font-h)}
.st-float small{display:block;font-size:10.5px;color:#b9d8dc;line-height:1.1;margin-top:2px}
.st-float.f1{left:0;top:-4px}
.st-float.f2{right:0;bottom:-4px}
@media (prefers-reduced-motion:no-preference){.st-float{animation:emFloat 6s ease-in-out infinite}.st-float.f2{animation-delay:1.6s}}
@media (max-width:1100px){.ap-quick{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:920px){.st-quick{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.ap-quick{grid-template-columns:1fr 1fr}.st-q{padding:12px;border-radius:16px;gap:10px}.st-q .ic{width:36px;height:36px;border-radius:11px}.st-q .ic svg{width:18px;height:18px}.st-q b{font-size:13px}.st-q small{font-size:11px}.st-q>svg{display:none}}
@media (max-width:560px){.st-quick{grid-template-columns:1fr 1fr}.st-quick .st-q:nth-child(3):last-child{grid-column:1/-1}}

@media (max-width:640px){
  .st-hero{grid-template-columns:1fr}
  .st-hero-art{display:grid;min-width:0;padding:6px 0 0;justify-self:center}
  .st-hero-art .ring{width:118px;height:118px}.st-hero-art .ring>div{width:92px;height:92px}.st-hero-art .ring b{font-size:28px}
  .st-float.f1{display:none}
  .st-float.f2{position:static;margin-top:10px;justify-self:center}
}
@media (max-width:920px){.st-side .ag-side,.st-side .st-help{display:none}}

/* =====================================================================
   Marco tipo aplicación para los paneles (pn-app)
   ===================================================================== */
body.pn-app-mode .topbar,body.pn-app-mode .stripe-bar,body.pn-app-mode .foot{display:none}
body.pn-app-mode{background:var(--bg)}
body.pn-app-mode #app{display:block}
.pn-app{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100vh;align-items:stretch}
.pn-side{position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:14px;padding:18px 16px 16px;background:#072f36;background-image:radial-gradient(500px 300px at 0% 100%,rgba(13,129,145,.45),transparent 60%),linear-gradient(180deg,#083d45,#072f36 60%);color:#e3f2f4;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}
.pn-logo{display:flex;align-items:center;gap:10px;padding:6px 8px 10px;text-decoration:none!important;color:#fff}
.pn-logo img{height:26px;width:auto}
.pn-logo .wordmark{font:900 20px var(--font-h);letter-spacing:.04em;color:#fff}
.pn-logo .tag{font:800 10px var(--font-h);letter-spacing:.22em;text-transform:uppercase;color:var(--lime);padding-left:10px;border-left:1px solid rgba(255,255,255,.25)}
.pn-user{display:flex;gap:12px;align-items:center;padding:12px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}
.pn-user .st-av{background:var(--lime);color:#1d2205;box-shadow:0 0 0 3px rgba(255,255,255,.12);width:42px;height:42px}
.pn-user b{display:block;font:700 14px/1.25 var(--font-h);color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pn-user div span{display:block;font-size:12px;color:#9fc9cf;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pn-user div{min-width:0}
.pn-side .ap-bal{border-radius:18px;padding:16px;background:linear-gradient(140deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.12);box-shadow:none}
.pn-side .ap-bal b{font-size:30px}
.pn-side .ap-bal::before{display:none}
.pn-nav{display:flex;flex-direction:column;gap:4px;flex:1}
.pn-grp{display:flex;flex-direction:column;gap:2px}
.pn-grp+.pn-grp{margin-top:10px}
.pn-grp .grp{font:800 10.5px var(--font-h);letter-spacing:.14em;text-transform:uppercase;color:#7fb3ba;padding:8px 12px 6px}
.pn-nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;color:#d6e9ec;font:600 14px var(--font-h);text-decoration:none!important;position:relative;transition:background .2s,color .2s,transform .2s}
.pn-nav a svg{width:19px;height:19px;color:#9fc9cf;transition:color .2s,transform .2s}
.pn-nav a:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateX(3px)}
.pn-nav a:hover svg{color:var(--lime)}
.pn-nav a.on{background:linear-gradient(90deg,rgba(13,129,145,.9),rgba(13,129,145,.45));color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.pn-nav a.on::before{content:"";position:absolute;left:-16px;top:8px;bottom:8px;width:4px;border-radius:0 3px 3px 0;background:var(--lime)}
.pn-nav a.on svg{color:var(--lime)}
.pn-nav a .cnt{margin-left:auto;font:700 11px/1.6 var(--font-h);font-style:normal;background:rgba(255,255,255,.12);color:#fff;border-radius:99px;padding:0 8px}
.pn-nav a .cnt.warn{background:var(--lime);color:#1d2205}
.pn-side .st-tip{border-radius:18px;background:rgba(184,190,91,.1);border:1px solid rgba(184,190,91,.25);padding:14px}
.pn-side .st-tip::before{display:none}
.pn-side .st-tip p{color:#e3f2f4}
.pn-side .st-help,.pn-side .ag-side{border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#e3f2f4;box-shadow:none;padding:12px 14px}
.pn-side .st-help:hover,.pn-side .ag-side:hover{background:rgba(255,255,255,.12);transform:none}
.pn-side .st-help b,.pn-side .ag-side b{color:#fff}
.pn-side .ag-side{display:flex;gap:10px;align-items:center;text-decoration:none!important;font-size:12.5px}
.pn-side .ag-side svg{width:24px;height:24px;color:var(--lime)}
.pn-side .ag-side b{display:block;font:700 13.5px var(--font-h)}
.pn-side-foot{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}
.pn-side-foot button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:transparent;color:#d6e9ec;font:700 12.5px var(--font-h);cursor:pointer;transition:background .2s}
.pn-side-foot button:hover{background:rgba(255,255,255,.1);color:#fff}
.pn-side-foot button svg{width:16px;height:16px}
.pn-side-bg{display:none}
/* Cuerpo */
.pn-body{min-width:0;display:flex;flex-direction:column}
.pn-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;padding:12px 28px;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.pn-burger,.pn-top-logo{display:none}
.pn-search{flex:1;max-width:460px;display:flex;align-items:center;gap:10px;padding:0 14px;height:42px;border-radius:14px;background:var(--card);border:1px solid var(--line);box-shadow:0 4px 14px rgba(8,61,69,.05);transition:box-shadow .2s,border-color .2s}
.pn-search:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px rgba(13,129,145,.14)}
.pn-search .ic{display:flex;color:var(--muted)}.pn-search .ic svg{width:18px;height:18px}
.pn-search input{flex:1;border:0;background:transparent;font:500 14px var(--font-b);color:var(--text);outline:none;min-width:0}
.pn-top-r{margin-left:auto;display:flex;align-items:center;gap:10px}
.pn-bell{position:relative;width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--card);border:1px solid var(--line);color:var(--muted);text-decoration:none!important;transition:transform .2s,color .2s}
.pn-bell:hover{transform:translateY(-2px);color:var(--teal)}
.pn-bell svg{width:20px;height:20px}
.pn-bell.has{color:var(--teal-ink)}
.pn-bell i{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;border-radius:9px;background:var(--lime);color:#1d2205;font:800 10.5px/18px var(--font-h);font-style:normal;padding:0 5px;text-align:center;box-shadow:0 0 0 2px var(--bg)}
@media (prefers-reduced-motion:no-preference){.pn-bell.has svg{animation:pnBell 2.4s ease-in-out 1s 2}@keyframes pnBell{0%,100%{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-12deg)}30%{transform:rotate(8deg)}40%{transform:rotate(-6deg)}50%{transform:rotate(0)}}}
.pn-top-user{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border-radius:999px;background:var(--card);border:1px solid var(--line);text-decoration:none!important;color:var(--text);transition:box-shadow .2s}
.pn-top-user:hover{box-shadow:var(--shadow-sm)}
.pn-top-user .st-av{width:34px;height:34px;font-size:12.5px}
.pn-top-user .nm{font:700 13px var(--font-h)}
.pn-main{padding:26px 28px 56px;max-width:1240px;width:100%;margin:0 auto}
.pn-main .st-head h1{font-size:clamp(24px,2.6vw,32px)}
/* Tarjetas de curso del alumno (v2) */
.st-courses{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.st-course.v2{display:grid;grid-template-columns:112px minmax(0,1fr);gap:0;padding:0;overflow:hidden;border-radius:24px}
.st-course.v2::before{display:none}
.st-c-art{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:22px 12px;background:linear-gradient(170deg,var(--teal-ink),var(--teal-deep) 60%,var(--teal));color:#fff;overflow:hidden}
.st-c-art::after{content:"";position:absolute;right:-50px;bottom:-60px;width:150px;height:150px;border-radius:50%;background:rgba(184,190,91,.18)}
.st-course.v2[data-st="done"] .st-c-art{background:linear-gradient(170deg,#14532d,#1f8a4c 70%,#3fae6c)}
.st-course.v2[data-st="exam"] .st-c-art{background:linear-gradient(170deg,#5c6120,#8f9536 60%,#b8be5b)}
.st-course.v2[data-st="new"] .st-c-art,.st-course.v2[data-st="version"] .st-c-art{background:linear-gradient(170deg,#2a3f44,#3f5a60 60%,#5c7a80)}
.st-course.v2[data-st="blocked"] .st-c-art{background:linear-gradient(170deg,#5b1d16,#9c2f23)}
.st-course.v2 .thumb{width:58px;height:58px;border-radius:18px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);color:#fff;box-shadow:none;position:relative;z-index:1}
.st-course.v2 .thumb svg{width:30px;height:30px}
.ring.xs{width:58px;height:58px;margin:0;background:conic-gradient(var(--c) calc(var(--p)*1%),rgba(255,255,255,.18) 0);position:relative;z-index:1}
.ring.xs>div{width:44px;height:44px;background:rgba(7,47,54,.85)}
.ring.xs b{font:800 12px/1 var(--font-h);color:#fff}
.st-c-body{display:flex;flex-direction:column;gap:12px;padding:18px 20px 16px;min-width:0}
.st-course.v2 .st-c-top{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.st-course.v2 h3{font-size:17px;line-height:1.25}
.st-course.v2 .st-c-prog .bar{height:8px}
.st-course.v2 .st-c-act{margin-top:auto}
/* Celular */
@media (max-width:920px){
  .pn-app{grid-template-columns:1fr}
  .pn-side{position:fixed;inset:0 auto 0 0;width:min(86vw,320px);z-index:95;transform:translateX(-100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);box-shadow:20px 0 60px rgba(0,0,0,.3)}
  .pn-app.side-open .pn-side{transform:none}
  .pn-side-bg{display:block;position:fixed;inset:0;z-index:90;background:rgba(5,25,29,.55);opacity:0;pointer-events:none;transition:opacity .25s}
  .pn-app.side-open .pn-side-bg{opacity:1;pointer-events:auto}
  .pn-top{padding:10px 14px;gap:10px}
  .pn-burger{display:flex;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:var(--card);align-items:center;justify-content:center;color:var(--text);cursor:pointer;flex-shrink:0}
  .pn-burger svg{width:20px;height:20px}
  .pn-top-logo{display:flex;align-items:center}
  .pn-top-logo img{height:22px}.pn-top-logo .wordmark{font:900 17px var(--font-h);letter-spacing:.04em;color:var(--teal-ink)}
  .pn-search{display:none}
  .pn-top-user .nm{display:none}
  .pn-top-user{padding:3px}
  .pn-main{padding:16px 14px 96px}
  .pn-side .ap-bal{flex-direction:column}
  .st-course.v2{grid-template-columns:92px minmax(0,1fr)}
  .st-c-art{padding:16px 8px;gap:10px}
  .st-course.v2 .thumb{width:48px;height:48px;border-radius:14px}.st-course.v2 .thumb svg{width:24px;height:24px}
  .ring.xs{width:50px;height:50px}.ring.xs>div{width:38px;height:38px}.ring.xs b{font-size:11px}
  .st-c-body{padding:14px 14px 12px}
  .st-shell{padding-bottom:0}
}
@media (max-width:480px){.st-course.v2{grid-template-columns:1fr}.st-c-art{flex-direction:row;justify-content:flex-start;padding:12px 14px}.st-c-art::after{display:none}}
/* Modo oscuro: el fondo del panel */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pn-top{background:color-mix(in srgb,var(--bg) 86%,transparent)}}

/* ===== Panel de administración: pulso comercial, alertas, cotizaciones y buscador ===== */
.ad-pulse{margin-bottom:18px}
.ad-pulse .kpi .sub a{font-weight:700}
.ad-delta{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:12.5px}
.ad-delta svg{width:14px;height:14px}
.ad-delta.up{color:var(--ok)}.ad-delta.down{color:var(--bad)}
.kpi.accent .ad-delta.up{color:#dff5e6}.kpi.accent .ad-delta.down{color:#ffd6cf}
.ad-top2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:start;margin-bottom:18px}
.ad-alerts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ad-alerts li{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--tint);font-size:14px;border-left:4px solid var(--teal)}
.ad-alerts li .ic{width:32px;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:var(--card);color:var(--teal);flex-shrink:0}
.ad-alerts li .ic svg{width:17px;height:17px}
.ad-alerts li .tx{flex:1;min-width:0}
.ad-alerts li .go a{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:var(--card);border:1px solid var(--line);text-decoration:none;font-weight:700;font-size:13px}
.ad-alerts li.warn{border-left-color:var(--warn)}.ad-alerts li.warn .ic{color:var(--warn)}
.ad-alerts li.bad{border-left-color:var(--bad)}.ad-alerts li.bad .ic{color:var(--bad)}
.ad-alerts li.lime{border-left-color:var(--lime-deep)}.ad-alerts li.lime .ic{color:var(--lime-deep)}
.ad-promo{background:linear-gradient(160deg,var(--card),var(--tint))}
.ad-price{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ad-price>div{padding:14px 16px;border-radius:16px;background:var(--card);border:1px solid var(--line);display:flex;flex-direction:column;gap:3px}
.ad-price small{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em;font-weight:700}
.ad-price b{font-size:22px;letter-spacing:-.02em;line-height:1.15}
.ad-rate{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.ad-rate .hstack{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.ad-rate .tx{display:flex;flex-direction:column;min-width:0}
.ad-rate .tx b{font-size:14px}.ad-rate .tx small{color:var(--muted);font-size:12.5px}
.ad-rate .hstack>b{font-size:18px;flex-shrink:0}
.ad-funnel{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}
.ad-fn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border-radius:16px;border:1.5px solid var(--line);background:var(--card);cursor:pointer;text-align:left;font:inherit;color:var(--text);transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}
.ad-fn::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--teal);opacity:.5}
.ad-fn.lime::before{background:var(--lime)}.ad-fn.warn::before{background:var(--warn)}.ad-fn.ok::before{background:var(--ok)}.ad-fn.gray::before{background:var(--gray)}
.ad-fn b{font-size:26px;letter-spacing:-.03em;line-height:1}
.ad-fn span{font-size:12.5px;color:var(--muted);font-weight:600}
.ad-fn:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.ad-fn.on{border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,135,155,.14)}
.ad-won{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 16px;border-radius:14px;background:var(--tint);margin-bottom:14px;font-size:14px}
.ad-won>span:first-child{display:inline-flex;align-items:center;gap:6px}
.ad-won svg{width:16px;height:16px;color:var(--lime-deep)}
.ad-note{max-width:320px;white-space:normal;font-style:italic}
.ad-lead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:start}
.ad-lead-info{padding:16px 18px;border-radius:16px;background:var(--tint)}
.ad-lead-info .st-dl{margin-top:0;grid-template-columns:auto 1fr}
.ad-lead-info .st-dl dd{text-align:left;font-weight:600}
.ad-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.ad-results-grid .card{margin:0}
.ad-results li .badge{flex-shrink:0}
.ad-results .who{flex:1;min-width:0}
.ad-results .who b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ad-results .who small{display:block;color:var(--muted);font-size:12.5px}
.ap-list .who{flex:1;min-width:0}
.ap-list .who b{display:block}
.ap-list .who small{display:block;color:var(--muted);font-size:12.5px}
@media (max-width:1180px){.ad-funnel{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1080px){.ad-top2,.ad-results-grid,.ad-lead{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.ad-price{grid-template-columns:1fr}.ad-funnel{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-fn{padding:12px 14px}.ad-fn b{font-size:22px}.ad-won{flex-direction:column;align-items:flex-start}.ad-note{max-width:none}}
.kpi.accent .ad-delta{color:#fff;opacity:.95}
.kpi.accent .ad-delta svg{color:var(--lime)}
.kpi.accent .small{color:rgba(255,255,255,.8)}
#nuevas .table-wrap{overflow-x:auto}
#nuevas td.row-actions{white-space:nowrap}
.ad-results li{flex-wrap:wrap}
.ad-results .who{flex:1 1 180px;min-width:0}
.ad-results .who b{white-space:normal}
.ad-results .who small{overflow-wrap:anywhere}
.ad-results li .btn{flex-shrink:0}
.ad-kv-sm{font-size:20px;line-height:1.3;display:inline-block;padding-top:6px}

/* ===== Tutor SICSSOM (dentro del reproductor) ===== */
.tu-av{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--lime),var(--teal));color:#fff;flex-shrink:0;box-shadow:0 4px 12px rgba(0,135,155,.35)}
.tu-av svg{width:18px;height:18px}
.pl-top .tu-top{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:linear-gradient(135deg,rgba(184,190,91,.25),rgba(0,135,155,.35));border:1px solid rgba(184,190,91,.5);color:#eef0d2;font:700 13px var(--font-h);width:auto;height:auto;margin-left:auto}
.pl-top .tu-top svg{width:16px;height:16px;color:var(--lime)}
.pl-top .tu-top.on{background:var(--lime);color:#1d2205;border-color:var(--lime)}.pl-top .tu-top.on svg{color:#1d2205}
.tu-fab{position:fixed;right:18px;bottom:92px;z-index:66;display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;border:0;border-radius:999px;background:#0f2226;color:#fff;cursor:pointer;box-shadow:0 14px 40px rgba(0,0,0,.45),0 0 0 1px rgba(184,190,91,.35);transition:transform .25s,opacity .25s;font:inherit;text-align:left}
.tu-fab .tu-av{width:40px;height:40px;animation:tuPulse 2.4s ease-in-out infinite}
.tu-fab-tx{display:flex;flex-direction:column;line-height:1.15}
.tu-fab-tx b{font:800 13.5px var(--font-h)}.tu-fab-tx small{font-size:11.5px;opacity:.8}
.tu-fab:hover{transform:translateY(-2px)}
.tu-fab.hide{opacity:0;pointer-events:none;transform:translateY(10px)}
.tu-fab.peek{animation:tuPeek .6s ease-out}
@keyframes tuPulse{0%,100%{box-shadow:0 0 0 0 rgba(184,190,91,.55)}60%{box-shadow:0 0 0 12px rgba(184,190,91,0)}}
@keyframes tuPeek{0%{transform:translateY(40px);opacity:0}100%{transform:none;opacity:1}}
.tu-panel{position:fixed;top:59px;right:0;bottom:0;width:420px;max-width:100%;z-index:67;display:flex;flex-direction:column;background:#0d1b1e;color:#e9f3f4;border-left:1px solid #1b2d31;box-shadow:-20px 0 50px rgba(0,0,0,.45);transform:translateX(105%);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.tu-panel.open{transform:none}
.tu-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #1b2d31;background:#0a1416}
.tu-who{flex:1;min-width:0;display:flex;flex-direction:column}
.tu-who b{font:800 15px var(--font-h)}.tu-who small{font-size:12px;color:#9fb4b8;display:flex;align-items:center;gap:6px}
.tu-dot{width:8px;height:8px;border-radius:50%;background:#7bd88f;box-shadow:0 0 0 3px rgba(123,216,143,.25)}
.tu-msgs{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.tu-loading{display:flex;justify-content:center;padding:30px}
.tu-m{display:flex;gap:10px;align-items:flex-end;max-width:92%}
.tu-m.me{align-self:flex-end;flex-direction:row-reverse}
.tu-m .tu-av{width:28px;height:28px}.tu-m .tu-av svg{width:14px;height:14px}
.tu-b{padding:10px 14px;border-radius:16px;background:#15282c;font-size:14.5px;line-height:1.5;border:1px solid #1f363b}
.tu-b p{margin:0 0 6px}.tu-b p:last-child{margin:0}.tu-b ul{margin:4px 0 6px;padding-left:18px}.tu-b li{margin:2px 0}
.tu-m.me .tu-b{background:var(--teal);border-color:var(--teal);color:#fff;border-bottom-right-radius:6px}
.tu-m.bot .tu-b{border-bottom-left-radius:6px}
.tu-m.instr .tu-b{background:#1e2a12;border-color:rgba(184,190,91,.5)}
.tu-m.duda .tu-b{background:#2a2412;border-color:rgba(255,196,80,.4);color:#ffe9b3}
.tu-m.err .tu-b{background:#2a1515;border-color:rgba(255,120,120,.4)}
.tu-m.typing .tu-b{display:flex;gap:5px;padding:12px 14px}
.tu-m.typing span{width:7px;height:7px;border-radius:50%;background:#9fb4b8;animation:tuDots 1.2s infinite}
.tu-m.typing span:nth-child(2){animation-delay:.2s}.tu-m.typing span:nth-child(3){animation-delay:.4s}
@keyframes tuDots{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.tu-sug{display:flex;gap:8px;padding:0 14px 10px;flex-wrap:wrap}
.tu-chip{border:1px solid rgba(184,190,91,.45);background:rgba(184,190,91,.08);color:#eef0d2;border-radius:999px;padding:7px 12px;font:600 12.5px var(--font-b);cursor:pointer;text-align:left}
.tu-chip:hover{background:rgba(184,190,91,.2)}
.tu-form{display:flex;gap:8px;align-items:flex-end;padding:10px 14px;border-top:1px solid #1b2d31;background:#0a1416}
.tu-form textarea{flex:1;resize:none;min-height:44px;max-height:120px;padding:11px 14px;border-radius:14px;border:1px solid #27424a;background:#0f2226;color:#fff;font:inherit;font-size:14.5px;line-height:1.4}
.tu-form textarea:focus{outline:2px solid var(--lime);border-color:transparent}
.tu-form .btn{width:44px;height:44px;padding:0;border-radius:14px;display:inline-flex;align-items:center;justify-content:center}
.tu-form .btn svg{width:18px;height:18px}
.tu-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 14px 12px;background:#0a1416;font-size:12.5px}
.tu-foot .link-btn{color:var(--lime);display:inline-flex;align-items:center;gap:6px;font-size:13px}
.tu-foot .link-btn svg{width:15px;height:15px}
.tu-foot .muted{color:#9fb4b8}
@media (max-width:760px){
  .tu-panel{top:0;width:100%;z-index:80}
  .tu-fab{right:12px;bottom:84px;padding:6px 12px 6px 6px}
  .tu-fab-tx b{font-size:12.5px}.tu-fab-tx small{font-size:11px}
  .pl-top .tu-top span{display:none}.pl-top .tu-top{padding:6px 9px}
}
.st-tutor{display:flex;gap:14px;align-items:flex-start;background:linear-gradient(135deg,#0f2226,#083d45);color:#fff;border-color:transparent}
.st-tutor h3{color:#fff;margin:0 0 4px}.st-tutor p{color:#cfe3e6;margin:0 0 10px}
.st-tutor-av{width:46px;height:46px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--lime),var(--teal));box-shadow:0 0 0 6px rgba(184,190,91,.18);animation:tuPulse 2.4s ease-in-out infinite}
.st-tutor-av svg{width:22px;height:22px;color:#fff}

/* ===== Asistente de la Academia (páginas públicas) ===== */
.em-sticky{display:none!important}
.as-av{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--teal),#0b5c68);color:#fff;flex-shrink:0;box-shadow:0 6px 16px rgba(0,135,155,.35)}
.as-av svg{width:18px;height:18px}
.as-fab{position:fixed;right:16px;bottom:16px;z-index:72;display:flex;align-items:center;gap:8px;transform:translateY(140%);opacity:0;transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .4s}
.as-fab.in{transform:none;opacity:1}
.as-fab.hide,.as-fab.off{transform:translateY(140%);opacity:0;pointer-events:none}
.as-fab-main{display:flex;align-items:center;gap:10px;padding:8px 18px 8px 8px;border:0;border-radius:999px;background:#fff;color:var(--text);cursor:pointer;box-shadow:0 18px 50px rgba(2,2,2,.22),0 0 0 1px rgba(0,135,155,.12);font:inherit;text-align:left;transition:transform .25s,box-shadow .25s;max-width:min(78vw,360px)}
.as-fab-main:hover{transform:translateY(-2px);box-shadow:0 24px 60px rgba(2,2,2,.28),0 0 0 1px rgba(0,135,155,.2)}
.as-fab-main .as-av{width:46px;height:46px;position:relative}
.as-fab-main .as-av::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--lime);animation:asRing 2.2s ease-out infinite}
.as-fab-main .as-av::before{content:"";position:absolute;right:1px;bottom:1px;width:11px;height:11px;border-radius:50%;background:#2fc96b;border:2px solid #fff}
@keyframes asRing{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.45);opacity:0}}
.as-fab-tx{display:flex;flex-direction:column;line-height:1.15;min-width:0}
.as-fab-tx small{font:700 10.5px var(--font-h);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.as-fab-tx b{font:800 14px var(--font-h);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .25s,transform .25s;display:block}
.as-fab-tx b.swap{opacity:0;transform:translateY(6px)}
.as-fab-wa{width:50px;height:50px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#25d366;color:#fff;box-shadow:0 14px 34px rgba(37,211,102,.4);transition:transform .25s}
.as-fab-wa:hover{transform:scale(1.06)}.as-fab-wa svg{width:24px;height:24px}
.as-panel{position:fixed;right:16px;bottom:16px;width:400px;max-width:calc(100vw - 32px);height:min(640px,calc(100vh - 32px));z-index:73;display:flex;flex-direction:column;background:var(--card);color:var(--text);border-radius:24px;box-shadow:0 30px 80px rgba(2,2,2,.3),0 0 0 1px var(--line);overflow:hidden;transform:translateY(24px) scale(.96);opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .25s}
.as-panel.open{transform:none;opacity:1;pointer-events:auto}
.as-head{display:flex;align-items:center;gap:10px;padding:14px 14px 12px;background:linear-gradient(135deg,#083d45,#0b5c68);color:#fff}
.as-head .ibtn{color:#fff;background:rgba(255,255,255,.12);border:0;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.as-head .ibtn svg{width:16px;height:16px}
.as-who{flex:1;min-width:0;display:flex;flex-direction:column}
.as-who b{font:800 15px var(--font-h)}.as-who small{font-size:12px;opacity:.85;display:flex;align-items:center;gap:6px}
.as-dot{width:8px;height:8px;border-radius:50%;background:#7bd88f;box-shadow:0 0 0 3px rgba(123,216,143,.25)}
.as-msgs{flex:1;overflow-y:auto;padding:16px 14px 8px;display:flex;flex-direction:column;gap:12px;background:var(--bg)}
.as-m{display:flex;gap:10px;align-items:flex-end;max-width:92%}
.as-m.me{align-self:flex-end;flex-direction:row-reverse}
.as-m .as-av{width:28px;height:28px}.as-m .as-av svg{width:14px;height:14px}
.as-b{padding:10px 14px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-size:14.5px;line-height:1.5;box-shadow:var(--shadow-sm)}
.as-b p{margin:0 0 6px}.as-b p:last-child{margin:0}.as-b ul{margin:4px 0 6px;padding-left:18px}.as-b a{font-weight:700}
.as-m.me .as-b{background:var(--teal);border-color:var(--teal);color:#fff;border-bottom-right-radius:6px}
.as-m.bot .as-b{border-bottom-left-radius:6px}
.as-m.lead .as-b{background:var(--lime-light);border-color:var(--lime)}
.as-m.err .as-b{background:var(--bad-bg);border-color:var(--bad)}
.as-m.typing .as-b{display:flex;gap:5px;padding:12px 14px}
.as-m.typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:tuDots 1.2s infinite}
.as-m.typing span:nth-child(2){animation-delay:.2s}.as-m.typing span:nth-child(3){animation-delay:.4s}
.as-chips{display:flex;gap:8px;padding:8px 14px;flex-wrap:wrap;background:var(--bg)}
.as-chip{border:1px solid var(--teal);background:var(--card);color:var(--teal-deep);border-radius:999px;padding:7px 12px;font:700 12.5px var(--font-b);cursor:pointer;text-align:left}
.as-chip:hover{background:var(--tint)}
.as-form{display:flex;gap:8px;align-items:flex-end;padding:10px 14px;border-top:1px solid var(--line);background:var(--card);position:relative}
.as-form textarea{flex:1;resize:none;min-height:44px;max-height:110px;padding:11px 14px;border-radius:14px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;font-size:14.5px;line-height:1.4}
.as-form textarea:focus{outline:2px solid var(--teal);border-color:transparent}
.as-form .btn{width:44px;height:44px;padding:0;border-radius:14px;display:inline-flex;align-items:center;justify-content:center}
.as-form .btn svg{width:18px;height:18px}
.as-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 14px 12px;background:var(--card);flex-wrap:wrap}
.as-foot .btn{background:#25d366;border-color:#25d366;color:#fff}
.as-foot .btn svg{width:16px;height:16px}
@media (max-width:640px){
  .as-fab{right:10px;bottom:10px}
  .as-fab-main{padding:6px 12px 6px 6px}.as-fab-main .as-av{width:40px;height:40px}.as-fab-tx b{font-size:13px}
  .as-fab-wa{width:44px;height:44px}
  .as-panel{right:0;bottom:0;left:0;width:100%;max-width:100%;height:100dvh;border-radius:0}
  .as-foot .small{display:none}
}
:root[data-theme="dark"] .as-fab-main{background:#112227;color:#e3eef0}
:root[data-theme="dark"] .as-fab-tx b{color:#e3eef0}

/* ===== Promoción del Tutor SICSSOM en páginas públicas ===== */
.badge.tutor{background:linear-gradient(135deg,var(--lime-light),#d8f0f3);color:var(--teal-deep);display:inline-flex;align-items:center;gap:4px;font-weight:800}
.badge.tutor svg{width:12px;height:12px}
.em-float.tutor{background:linear-gradient(135deg,#0f2226,#083d45);color:#fff;border-color:rgba(184,190,91,.5)}
.em-float.tutor svg{color:var(--lime)}.em-float.tutor small{color:#cfe3e6}
.tu-promo{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:center;padding:44px;border-radius:28px;background:linear-gradient(135deg,#0f2226 0%,#083d45 60%,#0b5c68 100%);color:#fff;position:relative;overflow:hidden}
.tu-promo::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(184,190,91,.35),transparent 65%);top:-160px;right:-120px;pointer-events:none}
.tu-promo .kicker{color:var(--lime);display:inline-flex;align-items:center;gap:6px}.tu-promo .kicker svg{width:14px;height:14px}
.tu-promo h2{color:#fff;font-size:clamp(26px,3.2vw,38px);margin:8px 0 12px}
.tu-promo p{color:#cfe3e6;font-size:16.5px;max-width:560px}
.tu-promo .pp-li{margin:16px 0 22px}.tu-promo .pp-li li{color:#e9f3f4}.tu-promo .pp-li svg{color:var(--lime)}
.tu-promo .acts{display:flex;gap:10px;flex-wrap:wrap}
.tu-promo .btn.ghost{color:#fff;border-color:rgba(255,255,255,.4)}
.tu-promo .tu-note{color:#9fb4b8;margin:14px 0 0;max-width:520px}
.tu-promo-r{position:relative;z-index:1}
.tu-demo{background:#0a1416;border:1px solid #1f363b;border-radius:22px;box-shadow:0 30px 70px rgba(0,0,0,.45);overflow:hidden;color:#e9f3f4;max-width:460px;margin:0 auto}
.tu-demo-top{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#071012;border-bottom:1px solid #1b2d31}
.tu-demo-top b{display:block;font:800 14px var(--font-h)}.tu-demo-top small{color:#9fb4b8;font-size:12px}
.tu-demo-top>div{flex:1;min-width:0}
.tu-demo-dot{width:9px;height:9px;border-radius:50%;background:#7bd88f;box-shadow:0 0 0 3px rgba(123,216,143,.25)}
.tu-demo-msgs{display:flex;flex-direction:column;gap:10px;padding:16px 14px;min-height:300px}
.tu-demo-m{display:flex;gap:8px;align-items:flex-end;max-width:90%;opacity:0;transform:translateY(10px)}
.tu-demo.play .tu-demo-m{animation:tuIn .45s ease-out forwards;animation-delay:calc(.6s + var(--k) * 2.6s)}
.tu-demo.play .tu-demo-m.typing{animation:tuTyping 12s ease-out forwards;animation-delay:.3s}
@keyframes tuIn{to{opacity:1;transform:none}}
@keyframes tuTyping{0%{opacity:0}8%{opacity:1}20%{opacity:1}22%{opacity:0}44%{opacity:0}46%{opacity:1}58%{opacity:1}60%{opacity:0}100%{opacity:0}}
.tu-demo-m.me{align-self:flex-end}
.tu-demo-m p{margin:0;padding:10px 13px;border-radius:14px;background:#15282c;border:1px solid #1f363b;font-size:13.5px;line-height:1.45}
.tu-demo-m.me p{background:var(--teal);border-color:var(--teal);color:#fff;border-bottom-right-radius:5px}
.tu-demo-m.bot p{border-bottom-left-radius:5px}
.tu-demo-m .tu-av.sm{width:24px;height:24px}.tu-demo-m .tu-av.sm svg{width:12px;height:12px}
.tu-demo-m.typing{order:99}
.tu-demo-m.typing p{display:flex;gap:4px;padding:11px 13px}
.tu-demo-m.typing i{width:6px;height:6px;border-radius:50%;background:#9fb4b8;animation:tuDots 1.2s infinite}
.tu-demo-m.typing i:nth-child(2){animation-delay:.2s}.tu-demo-m.typing i:nth-child(3){animation-delay:.4s}
.tu-demo-in{display:flex;align-items:center;gap:10px;margin:0 14px 14px;padding:10px 12px 10px 14px;border-radius:14px;background:#0f2226;border:1px solid #27424a;color:#7f969b;font-size:13.5px}
.tu-demo-in span{flex:1}.tu-demo-in b{width:34px;height:34px;border-radius:10px;background:var(--teal);color:#fff;display:inline-flex;align-items:center;justify-content:center}
.tu-demo-in b svg{width:16px;height:16px}
.cd-tutor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:28px;align-items:center;background:linear-gradient(135deg,#0f2226,#083d45);color:#fff;border-color:transparent}
.cd-tutor h2{color:#fff}.cd-tutor p{color:#cfe3e6}.cd-tutor .kicker{color:var(--lime);display:inline-flex;align-items:center;gap:6px}.cd-tutor .kicker svg{width:13px;height:13px}
.cd-tutor .pp-li li{color:#e9f3f4;font-style:italic}.cd-tutor .pp-li svg{color:var(--lime)}
.cd-tutor .tu-demo{max-width:100%}.cd-tutor .tu-demo-msgs{min-height:260px}
@media (max-width:980px){.tu-promo{grid-template-columns:1fr;padding:28px 22px;gap:26px}.cd-tutor{grid-template-columns:1fr}}
@media (max-width:640px){.tu-promo{padding:24px 16px;border-radius:22px}.tu-demo-msgs{min-height:240px}}
.ad-dudas{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));gap:14px}
.ad-duda{border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:var(--tint)}
.ad-duda header{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.ad-duda blockquote{margin:0 0 10px;padding:10px 14px;border-left:4px solid var(--teal);background:var(--card);border-radius:10px;font-size:14.5px}
.ad-duda details{margin-bottom:10px}.ad-duda details p{margin:6px 0 0;color:var(--muted)}
.ad-duda textarea{width:100%}
/* Tutor: tarjetas de ventajas */
.tu-promo p{margin:0 0 18px}
.tu-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 18px}
.tu-card{display:flex;flex-direction:column;gap:6px;padding:16px 16px 14px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(6px);transition:transform .25s,background .25s,border-color .25s}
.tu-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.1);border-color:rgba(184,190,91,.5)}
.tu-card .ic{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--lime),var(--teal));color:#fff;margin-bottom:4px}
.tu-card .ic svg{width:20px;height:20px}
.tu-card b{font:800 15px var(--font-h);color:#fff;line-height:1.2}
.tu-card small{font-size:13px;color:#cfe3e6;line-height:1.45}
[data-rv].rv-in .tu-card{animation:tuIn .5s ease-out both;animation-delay:calc(.15s + var(--k) * .12s)}
.tu-stats{display:flex;gap:10px;margin:0 0 14px;flex-wrap:wrap}
.tu-stats>div{display:flex;flex-direction:column;padding:10px 16px;border-radius:14px;background:rgba(184,190,91,.12);border:1px solid rgba(184,190,91,.35);min-width:120px}
.tu-stats b{font:900 22px var(--font-h);color:var(--lime);letter-spacing:-.02em;line-height:1.1}
.tu-stats span{font-size:12px;color:#cfe3e6}
.tu-promo .tu-note{margin:0}
@media (max-width:640px){.tu-cards{grid-template-columns:1fr}.tu-stats>div{flex:1;min-width:0;padding:10px 12px}.tu-stats b{font-size:19px}}
/* Inicio: el simulador sube y el hero se acorta */
.home-hero .in{padding-top:56px;padding-bottom:64px}
.home-stage{margin-top:-24px}
.home-hero .aud{padding:18px 18px 16px}
.home-hero .lead{margin-bottom:18px}
@media (max-width:900px){.home-hero .in{padding-bottom:70px}.home-stage{margin-top:0}}

/* ===== Modo oscuro: contraste de elementos con colores fijos ===== */
:root[data-theme="dark"] .em-tier .pr b,:root[data-theme="dark"] .em-est-ctl b,:root[data-theme="dark"] .aud small strong,:root[data-theme="dark"] .pl-one .pr b,:root[data-theme="dark"] .pl-bundle .pr b,:root[data-theme="dark"] .em-tier-pr li b,:root[data-theme="dark"] .cd-price .pr b,:root[data-theme="dark"] .seg button.on,:root[data-theme="dark"] .home-gift .btn{color:#9fe0e8}
:root[data-theme="dark"] .btn.ghost,:root[data-theme="dark"] .fq-link,:root[data-theme="dark"] .pp-more,:root[data-theme="dark"] .em-tier-alt,:root[data-theme="dark"] .cc-sec .all,:root[data-theme="dark"] .em-quote-wa a,:root[data-theme="dark"] .kicker,:root[data-theme="dark"] .st-head .kicker,:root[data-theme="dark"] .st-main .card-head a.small,:root[data-theme="dark"] .aud .go,:root[data-theme="dark"] .link-btn{color:#7fd0d9}
:root[data-theme="dark"] .btn.ghost{border-color:#2e4a50}
:root[data-theme="dark"] .cc-facts li{background:var(--tint-2);color:#cfe3e6}
:root[data-theme="dark"] .cc-facts li svg{color:#7fd0d9}
:root[data-theme="dark"] .badge.tutor{background:rgba(184,190,91,.18);color:#e4e8b0}
:root[data-theme="dark"] .em-steps em,:root[data-theme="dark"] .pl-until{background:rgba(184,190,91,.18);color:#e4e8b0}
:root[data-theme="dark"] .aud,:root[data-theme="dark"] .em-float,:root[data-theme="dark"] .em-rev-g,:root[data-theme="dark"] .hero-search,:root[data-theme="dark"] .home-gift .btn{background:var(--card);border:1px solid var(--line)}
:root[data-theme="dark"] .em-float.tutor{background:linear-gradient(135deg,#0f2226,#083d45)}
:root[data-theme="dark"] .em-free{background:linear-gradient(135deg,#1f2410,var(--card) 55%,var(--tint))}
:root[data-theme="dark"] .em-free-steps li{background:var(--card)}
:root[data-theme="dark"] .as-chip{background:var(--tint);color:#9fe0e8;border-color:#2e6b75}
:root[data-theme="dark"] .as-m.lead .as-b{background:#2a2e14;border-color:var(--lime-deep);color:#eef0d2}
:root[data-theme="dark"] .as-m.err .as-b{background:#3a1714;border-color:#8a3a30}
:root[data-theme="dark"] .as-fab-main{box-shadow:0 18px 50px rgba(0,0,0,.5),0 0 0 1px rgba(127,208,217,.25)}
:root[data-theme="dark"] .as-fab-tx small{color:#9db3b7}
:root[data-theme="dark"] .ad-fn,:root[data-theme="dark"] .ad-price>div{background:var(--card)}
:root[data-theme="dark"] .em-cmp td.ok .ic{background:#12301f;color:#7bd88f}
:root[data-theme="dark"] .em-cmp td.warn .ic{background:#33240c;color:#ffd27a}
:root[data-theme="dark"] .tu-card{background:rgba(255,255,255,.05)}
.em-free{min-width:0}.em-free-tx{min-width:0}
@media (max-width:560px){.em-free .acts .btn{white-space:normal;text-align:center;line-height:1.25;width:100%}.em-free .acts{flex-direction:column;align-items:stretch}.em-free .acts span,.em-free .acts small{text-align:center}}
.cd-ag-strip{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;background:var(--tint);border:1px solid var(--line);margin:18px 0 0;flex-wrap:wrap}
.cd-ag-strip .ic{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--teal-ink),var(--teal));color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.cd-ag-strip .ic svg{width:22px;height:22px}
.cd-ag-strip>div{flex:1;min-width:200px}
.cd-ag-strip b{display:block;font:800 14.5px var(--font-h)}
.cd-ag-strip small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.cd-ag-strip .mono{font-weight:700;color:var(--text)}
@media (max-width:640px){.cd-ag-strip .btn{width:100%;justify-content:center}}

/* ===== Precios por volumen (escalera por cantidad) ===== */
/* Tabla de escalones en Planes */
.pp-tt{display:grid;gap:0;border:1.5px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card)}
.pp-tt-h,.pp-tt-r{display:grid;grid-template-columns:1.2fr 1fr 1.1fr;gap:12px;align-items:center;padding:12px 18px}
.pp-tt-h{font:700 11.5px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--tint)}
.pp-tt-r{border-top:1px solid var(--line);transition:background .2s}
.pp-tt-r .q{font:700 15px var(--font-h);color:var(--text)}
.pp-tt-r .p{font:800 20px/1 var(--font-h);color:var(--teal-ink)}
.pp-tt-r .p small{font:600 12px var(--font-b);color:var(--muted);margin-left:2px}
.pp-tt-r .ex{font-size:13px}
.pp-tt-r.rec{background:color-mix(in srgb,var(--lime-light) 75%,var(--card))}
.pp-tt-r.rec .q::after{content:"Le corresponde";display:inline-block;margin-left:8px;font:800 10.5px var(--font-h);letter-spacing:.06em;text-transform:uppercase;color:#1d2205;background:var(--lime);padding:3px 8px;border-radius:99px;vertical-align:middle}
.pp-loose{align-items:flex-start}
.pp-loose>span{flex:1 1 260px;color:var(--text)}
.pp-loose .act{flex-wrap:wrap}
.pp-loose-tip{flex-basis:100%;display:block;margin:0;font-size:13px;line-height:1.45;color:var(--teal-ink);background:var(--tint);padding:8px 12px;border-radius:10px}
.pp-loose-tip:empty{display:none}
.pp-loose-tip a{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.pp-extra{display:block;margin-top:8px;font-size:13px;line-height:1.45;color:var(--muted)}
/* Compra por cantidad dentro de las tarjetas Equipo / Obra / Corporativo */
.em-tier-buy{display:flex;gap:12px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;padding:12px 14px;border-radius:14px;background:var(--tint);margin-top:4px}
.em-tier-buy label{display:flex;flex-direction:column;gap:4px;margin:0}
.em-tier-buy label span{font:700 11px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.em-tier-buy .input{width:96px;padding:9px 10px;font:800 16px var(--font-h);text-align:center;color:var(--text);background:var(--card)}
.em-tier-buy .tot{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.em-tier-buy .tot b{font:800 24px/1 var(--font-h);color:var(--teal-ink);letter-spacing:-.02em}
.em-tier-buy .tot small{font-size:12px;color:var(--muted);white-space:nowrap}
.em-tier.feat .em-tier-buy{background:color-mix(in srgb,var(--lime-light) 70%,var(--card))}
.em-tier-tip{display:block;margin:8px 0 0;padding:8px 12px;border-radius:10px;background:var(--tint);color:var(--teal-ink);font-size:12.5px;line-height:1.45}
.em-tier-tip[hidden]{display:none}
.em-tier-tip a{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
/* Estimador: todo legible sobre la tarjeta oscura, en claro y en oscuro */
.em-est-r,.em-est-r *{color:#fff}
.em-est-r .kicker{color:var(--lime)}
.em-est-r .est-tot small,.em-est-r .est-per{color:#d6ebee}
.em-est-r .est-note{margin-top:4px;padding:8px 12px;border-radius:10px;background:rgba(255,255,255,.12);color:#fff;font-size:13px;line-height:1.45}
.em-est-r .est-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.em-est-r .est-acts .btn{margin-top:0;align-self:auto}
.em-est-r .btn.lime{background:var(--lime);color:#1d2205;border-color:var(--lime)}
.em-est-r .btn.lime:hover{background:#c6cc6b;color:#1d2205}
.em-est-r .btn.ghost,.em-est-r .btn.outline-w{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.55)}
.em-est-r .btn.ghost:hover,.em-est-r .btn.outline-w:hover{background:rgba(255,255,255,.18);color:#fff;border-color:#fff}
/* Panel de RH: escalones y compra por cantidad */
.ap-tiers{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;align-items:start}
.ap-tt{border:1.5px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--card)}
.ap-tt-h,.ap-tt-r{display:grid;grid-template-columns:1.3fr 1fr;gap:10px;align-items:center;padding:10px 16px}
.ap-tt-h{font:700 11px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--tint)}
.ap-tt-r{border-top:1px solid var(--line);font-size:14px;color:var(--text)}
.ap-tt-r b{font:800 17px/1 var(--font-h);color:var(--teal-ink)}
.ap-tt-r b small{font:600 11.5px var(--font-b);color:var(--muted);margin-left:2px}
.ap-tt-r.rec,.ap-tt-r.on{background:color-mix(in srgb,var(--lime-light) 75%,var(--card))}
.ap-pack.ap-buy{gap:10px;align-items:stretch}
.ap-pack.ap-buy label{display:flex;flex-direction:column;gap:4px}
.ap-pack.ap-buy label span{font:700 11px var(--font-h);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ap-pack.ap-buy .input{width:100%;font:800 18px var(--font-h);text-align:center}
.ap-pack.ap-buy .tot{display:flex;flex-direction:column;gap:2px}
.ap-pack.ap-buy .tot b{font:800 26px/1 var(--font-h);color:var(--teal-ink)}
.ap-pack.ap-buy .tot small{font-size:12px;color:var(--muted)}
.ap-pack.ap-buy .ap-tip{display:block;padding:8px 10px;border-radius:10px;background:var(--tint);color:var(--teal-ink);font-size:12.5px;line-height:1.45}
.ap-pack.ap-buy .ap-tip[hidden]{display:none}
.ap-pack.ap-buy .ap-tip a{color:var(--teal);font-weight:700;text-decoration:underline;cursor:pointer}
@media (max-width:760px){.pp-tt-h{display:none}.pp-tt-r{grid-template-columns:1fr auto;padding:12px 14px}.pp-tt-r .ex{grid-column:1/-1}.ap-tiers{grid-template-columns:1fr}.em-tier-buy .tot{align-items:flex-start;text-align:left}}
/* Modo oscuro: mismos bloques, colores que no se pierden */
:root[data-theme="dark"] .pp-tt-r .p,:root[data-theme="dark"] .em-tier-buy .tot b,:root[data-theme="dark"] .ap-tt-r b{color:#9fe0e8}
:root[data-theme="dark"] .pp-tt-r.rec,:root[data-theme="dark"] .ap-tt-r.rec,:root[data-theme="dark"] .ap-tt-r.on{background:color-mix(in srgb,var(--lime) 16%,var(--card))}
:root[data-theme="dark"] .pp-loose-tip,:root[data-theme="dark"] .em-tier-tip,:root[data-theme="dark"] .ap-pack.ap-buy .ap-tip{color:#e3eef0}
:root[data-theme="dark"] .em-tier.feat .em-tier-buy{background:color-mix(in srgb,var(--lime) 14%,var(--card))}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .pp-tt-r .p,:root:not([data-theme="light"]) .em-tier-buy .tot b,:root:not([data-theme="light"]) .ap-tt-r b{color:#9fe0e8}
  :root:not([data-theme="light"]) .pp-tt-r.rec,:root:not([data-theme="light"]) .ap-tt-r.rec,:root:not([data-theme="light"]) .ap-tt-r.on{background:color-mix(in srgb,var(--lime) 16%,var(--card))}
  :root:not([data-theme="light"]) .pp-loose-tip,:root:not([data-theme="light"]) .em-tier-tip,:root:not([data-theme="light"]) .ap-pack.ap-buy .ap-tip{color:#e3eef0}
  :root:not([data-theme="light"]) .em-tier.feat .em-tier-buy{background:color-mix(in srgb,var(--lime) 14%,var(--card))}
}
/* Enlaces de texto en modo oscuro: contraste suficiente sobre fondos oscuros */
:root[data-theme="dark"] .em-solo a,:root[data-theme="dark"] .note a,:root[data-theme="dark"] .check a,:root[data-theme="dark"] .au-alt a{color:#9fe0e8}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .em-solo a,:root:not([data-theme="light"]) .note a,:root:not([data-theme="light"]) .check a,:root:not([data-theme="light"]) .au-alt a{color:#9fe0e8}}
