/* ══════════════════════════════════════════════════════════
   educacion.css v4 — Yeapdata · Educación
   ──────────────────────────────────────────────────────────
   Paleta oficial Yeapdata:
     Principal:  #E61667 (Pantone 213C) — magenta/pink
     Teal:       #6DC0AA — verde-azul suave
     Indigo:     #4B509C — azul medio
     Deep:       #0B0A16 — casi negro (uso mínimo)
     Amarillo:   #FFE205 — acento (uso muy puntual)
   
   Filosofía fondos: CLAROS — blancos, grises muy suaves,
   azul mist ultrasuave. MÁXIMO una sección con fondo
   oscuro medio (azul-verde slate, NO negro).
   Colores fuertes solo en acentos, nunca como fondo.
══════════════════════════════════════════════════════════ */

@import url('../master.css');

/* ── TOKENS ────────────────────────────────────────────── */
:root {
  --ep:    #E61667;
  --ep10:  rgba(230,22,103,.10);
  --ep20:  rgba(230,22,103,.20);
  --ep05:  rgba(230,22,103,.05);
  --et:    #6DC0AA;
  --et10:  rgba(109,192,170,.10);
  --et20:  rgba(109,192,170,.20);
  --et05:  rgba(109,192,170,.05);
  --ei:    #4B509C;
  --ei10:  rgba(75,80,156,.10);
  --ei20:  rgba(75,80,156,.20);
  --ei05:  rgba(75,80,156,.05);
  --ey:    #FFE205;
  --ed:    #0B0A16;

  --bg-white:   #FFFFFF;
  --bg-ice:     #F7F8FC;
  --bg-mist:    #F0F4F8;
  --bg-pale:    #FAFBFF;
  --bg-slate:   #1A2740;

  --t1:    #0B0A16;
  --t2:    #3D4460;
  --t3:    #7E87A6;
  --t4:    #B0B8D0;
  --tw:    #FFFFFF;

  --brd:   #E2E8F0;
  --brd2:  #CBD5E1;

  --ff-head: 'Eurostile', 'Poppins', sans-serif;
  --ff-body: 'Poppins', sans-serif;
  --ff-mono: 'Courier New', monospace;

  --ease:   cubic-bezier(.22,1,.36,1);
  --snap:   cubic-bezier(.76,0,.24,1);
  --spring: cubic-bezier(.34,1.56,.64,1);

  --max: 1180px;
}

/* ── RESET ──────────────────────────────────────────────── */
html { scroll-behavior:smooth }
body {
  font-family:var(--ff-body); background:var(--bg-white);
  color:var(--t1); overflow-x:hidden;
  -webkit-font-smoothing:antialiased; cursor:none;
}
::selection { background:var(--ep); color:#fff }
.wrap { max-width:var(--max); margin:0 auto; padding:0 2.5rem }

/* ── REVEAL TOKENS ──────────────────────────────────────── */
.reveal-up {
  opacity:0; transform:translateY(24px);
  transition:opacity .75s var(--ease), transform .75s var(--ease);
}
.reveal-up.vis { opacity:1; transform:none }
.reveal-clip {
  clip-path:inset(0 0 100% 0);
  transition:clip-path .9s var(--snap);
}
.reveal-clip.vis { clip-path:inset(0 0 0% 0) }
.reveal-scale {
  opacity:0; transform:scale(.94) translateY(18px);
  transition:opacity .78s var(--ease), transform .78s var(--ease);
}
.reveal-scale.vis { opacity:1; transform:none }
.reveal-mstep {
  opacity:0; transform:translateY(28px);
  transition:opacity .7s var(--ease), transform .7s var(--ease);
}
.reveal-mstep.vis { opacity:1; transform:none }

/* ── EYEBROW ────────────────────────────────────────────── */
.e-eyebrow {
  display:inline-block; font-size:.6rem; font-weight:700;
  letter-spacing:.26em; text-transform:uppercase;
  color:var(--ep); margin-bottom:.9rem;
  position:relative;
}
.e-eyebrow::before {
  content:''; display:inline-block; width:20px; height:2px;
  background:var(--ep); vertical-align:middle; margin-right:.6rem;
  border-radius:1px;
}

/* ── DOT COLORS ─────────────────────────────────────────── */
.dot-r { background:#FF5F56 !important }
.dot-y { background:#FFBD2E !important }
.dot-g { background:#27C93F !important }


/* ══════════════════════════════════════════════════════════
   §1  HERO
══════════════════════════════════════════════════════════ */
.eh {
  background:var(--bg-pale);
  background-image:
    radial-gradient(ellipse 80% 60% at 70% 40%, rgba(230,22,103,.06) 0%, transparent 70%),
    radial-gradient(ellipse 60% 50% at 10% 80%, rgba(75,80,156,.05) 0%, transparent 60%);
  min-height:100vh; position:relative; overflow:hidden;
  display:flex; flex-direction:column;
}
.eh-canvas {
  position:absolute; inset:0; width:100%; height:100%;
  pointer-events:none; z-index:0; opacity:.45;
}
.eh-grid-overlay {
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(75,80,156,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(75,80,156,.035) 1px, transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 50%, black 20%, transparent 80%);
}

/* Topbar */
.eh-topbar {
  position:relative; z-index:5;
  display:flex; justify-content:space-between; align-items:center;
  padding:1.3rem 2.5rem;
  border-bottom:1px solid var(--brd);
  opacity:0; animation:eUp .5s var(--ease) .05s forwards;
  background:rgba(255,255,255,.85); backdrop-filter:blur(12px);
}
.ehtb-left {
  display:flex; align-items:center; gap:.55rem;
  font-size:.6rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--t3);
}
.ehtbl-dot {
  width:6px; height:6px; border-radius:50%; background:var(--ep);
  animation:ePulse 1.8s ease infinite; flex-shrink:0;
}
.ehtb-right {
  display:flex; align-items:center; gap:.5rem;
  font-size:.58rem; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--t4);
}
.ehtbr-sep { opacity:.4 }
.ehtb-iso { color:var(--t3) }

/* Grid hero */
.eh-inner {
  position:relative; z-index:4; flex:1;
  display:grid; grid-template-columns:1fr 460px; gap:4rem; align-items:center;
  max-width:var(--max); width:100%; margin:0 auto; padding:5rem 2.5rem;
}

/* Izquierda */
.ehl-eyebrow {
  margin-bottom:1.6rem;
  opacity:0; animation:eUp .6s var(--ease) .25s forwards;
}
.ehle-badge {
  display:inline-flex; align-items:center; gap:.5rem;
  font-size:.62rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  color:var(--ep); background:var(--ep05); border:1px solid var(--ep20);
  padding:.3rem .9rem; border-radius:50px;
}
.ehl-title {
  font-family:var(--ff-head);
  font-weight:900; line-height:.9; margin-bottom:1.8rem;
}
.ehlt-row { display:flex; overflow:hidden; font-size:clamp(48px,8vw,100px); letter-spacing:-2px; }
.ehlt-row:last-child { font-size:clamp(14px,1.5vw,18px); margin-top:.55rem; letter-spacing:0; }
.ehlt-mask { overflow:hidden }
.ehlt-word { display:block; clip-path:inset(0 0 100% 0); animation:eClip .9s var(--snap) forwards; }
.ehlt-row:nth-child(1) .ehlt-word { animation-delay:.35s }
.ehlt-row:nth-child(2) .ehlt-word { animation-delay:.52s }
.ehlt-row:nth-child(3) .ehlt-word { animation-delay:.68s }
.ehlt-main   { color:var(--t1) }
.ehlt-accent { color:var(--ep) }
.ehlt-light  { color:var(--t3); font-family:var(--ff-body); font-weight:300; font-size:1em; letter-spacing:.01em }

.ehl-sub {
  font-size:clamp(.82rem,1vw,.93rem); font-weight:300; line-height:1.85; color:var(--t2);
  max-width:480px; margin-bottom:2.2rem;
  opacity:0; animation:eUp .7s var(--ease) .85s forwards;
}
.ehl-sub strong { font-weight:600; color:var(--t1) }

.ehl-ctas {
  display:flex; align-items:center; gap:1rem; margin-bottom:2.8rem;
  opacity:0; animation:eUp .6s var(--ease) 1s forwards;
}
.ehlc-primary {
  display:inline-flex; align-items:center; gap:.6rem;
  padding:13px 28px; background:var(--ep); color:#fff;
  border-radius:50px; font-size:.74rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  transition:all .3s var(--ease); box-shadow:0 4px 24px rgba(230,22,103,.3);
}
.ehlc-primary:hover { transform:translateY(-2px); box-shadow:0 8px 36px rgba(230,22,103,.45) }
.ehlc-primary svg { transition:transform .25s }
.ehlc-primary:hover svg { transform:translateX(4px) }
.ehlc-ghost {
  display:inline-flex; align-items:center;
  padding:13px 24px; border:1.5px solid var(--brd2); color:var(--t2);
  border-radius:50px; font-size:.72rem; font-weight:500; letter-spacing:.08em; text-transform:uppercase;
  transition:all .3s var(--ease);
}
.ehlc-ghost:hover { border-color:var(--ep); color:var(--ep); background:var(--ep05) }

/* Trust strip */
.ehl-trust {
  display:flex; align-items:center;
  opacity:0; animation:eUp .6s var(--ease) 1.15s forwards;
}
.ehlt-item { padding:0 1.4rem; display:flex; flex-direction:column; gap:.1rem }
.ehlt-item:first-child { padding-left:0 }
.ehlt-val {
  font-family:var(--ff-head); font-size:1.1rem; font-weight:900;
  color:var(--t1); line-height:1; letter-spacing:-.03em;
}
.ehlt-lbl { font-size:.57rem; color:var(--t3); letter-spacing:.1em; text-transform:uppercase }
.ehlt-sep  { width:1px; height:32px; background:var(--brd2) }

/* Derecha */
.eh-right {
  display:flex; flex-direction:column; gap:.85rem;
  opacity:0; animation:eUp .8s var(--ease) .45s forwards;
}
.ehr-float-label {
  display:flex; align-items:center; gap:.5rem; align-self:flex-start;
  background:var(--ep05); border:1px solid var(--ep20); border-radius:50px;
  padding:.3rem .9rem; font-size:.58rem; font-weight:600;
  letter-spacing:.15em; text-transform:uppercase; color:var(--ep);
}
.ehrf-pulse {
  width:6px; height:6px; border-radius:50%; background:var(--ep);
  flex-shrink:0; animation:ePulse 1.6s ease infinite;
}

/* Card */
.ehr-card {
  background:#FFFFFF; border:1px solid var(--brd); border-radius:20px; overflow:hidden;
  box-shadow:0 8px 40px rgba(11,10,22,.08), 0 2px 8px rgba(230,22,103,.08);
  position:relative;
}
.ehr-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, var(--ep), var(--et), var(--ei));
}
.ehrc-head {
  display:flex; align-items:center; justify-content:space-between;
  padding:.65rem 1.25rem; background:var(--bg-ice); border-bottom:1px solid var(--brd);
}
.ehrc-dots { display:flex; gap:.35rem }
.ehrc-dots span { width:9px; height:9px; border-radius:50% }
.ehrc-name { font-size:.5rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--t4) }
.ehrc-time { font-family:var(--ff-mono); font-size:.58rem; color:var(--ep); letter-spacing:.08em }

.ehrc-activity  { padding:1.3rem 1.3rem .9rem }
.ehrca-main     { margin-bottom:.7rem }
.ehrca-val      { display:block; font-family:var(--ff-head); font-size:2.2rem; font-weight:900; color:var(--t1); line-height:1; letter-spacing:-.04em }
.ehrca-lbl      { font-size:.6rem; color:var(--t3); letter-spacing:.08em; margin-top:.2rem }
.ehrca-bar      { height:4px; background:var(--brd); border-radius:2px; position:relative; overflow:hidden; margin-top:.55rem }
.ehrca-fill     { height:100%; border-radius:2px; background:linear-gradient(90deg,var(--ep),#ff6ba8); transition:width 1.2s var(--ease) }
.ehrca-pct      { position:absolute; right:0; top:7px; font-size:.5rem; color:var(--t4) }

.ehrc-kpis {
  display:grid; grid-template-columns:1fr auto 1fr auto 1fr;
  padding:.9rem 1.3rem; border-top:1px solid var(--brd); border-bottom:1px solid var(--brd);
}
.ehrck-item { display:flex; flex-direction:column; gap:.2rem; align-items:center }
.ehrck-sep  { width:1px; background:var(--brd); margin:0 .5rem }
.ehrck-v    { font-family:var(--ff-head); font-size:1.15rem; font-weight:900; color:var(--t1); line-height:1; letter-spacing:-.02em }
.kpi-pink   { color:var(--ep) }
.kpi-teal   { color:var(--et) }
.kpi-indigo { color:var(--ei) }
.ehrck-l    { font-size:.52rem; color:var(--t3); letter-spacing:.06em }

.ehrc-aurora {
  display:flex; gap:.7rem; padding:1rem 1.25rem;
  background:rgba(230,22,103,.03); border-top:1px solid var(--ep10);
}
.ehrca-icon {
  width:28px; height:28px; border-radius:8px; flex-shrink:0;
  background:var(--ep10); display:flex; align-items:center; justify-content:center;
}
.ehrca-icon svg { width:13px; height:13px; color:var(--ep) }
.ehrca-txt      { display:flex; flex-direction:column; gap:.25rem }
.ehrcat-badge   { font-size:.5rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--ep) }
.ehrcat-msg     { font-size:.67rem; color:var(--t2); line-height:1.5 }

.ehrc-areas  { padding:1rem 1.25rem }
.ehrca-title { display:block; font-size:.52rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; color:var(--t4); margin-bottom:.65rem }
.ehrca-list  { display:flex; flex-direction:column; gap:.4rem }

.ehrc-footer {
  display:flex; justify-content:space-between; align-items:center;
  padding:.6rem 1.25rem; background:var(--bg-ice); border-top:1px solid var(--brd);
  font-size:.48rem; color:var(--t4);
}
.ehrcf-status { display:flex; align-items:center; gap:.4rem }
.ehrcf-dot    { width:5px; height:5px; border-radius:50%; background:var(--et); animation:ePulse 1.8s ease infinite; flex-shrink:0 }
.ehrcf-badge  { font-weight:700; letter-spacing:.12em; color:var(--et); font-size:.52rem }

/* Mini card */
.ehr-mini {
  background:#fff; border:1px solid var(--brd); border-radius:14px;
  padding:.9rem 1.2rem; display:flex; justify-content:space-between; align-items:center; gap:1rem;
  box-shadow:0 2px 12px rgba(109,192,170,.12);
}
.ehr-mini::before { content:''; position:absolute; display:none }
.ehrm-left  { display:flex; flex-direction:column; gap:.6rem }
.ehrml-tag  { font-size:.52rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--et) }
.ehrml-dots { display:flex; flex-wrap:wrap; gap:3px; max-width:100px }
.ehrm-right { text-align:right; flex-shrink:0 }
.ehrmr-val  { display:block; font-family:var(--ff-head); font-size:2.4rem; font-weight:900; color:var(--et); line-height:1; letter-spacing:-.04em }
.ehrmr-lbl  { font-size:.55rem; color:var(--t3); line-height:1.4 }

@keyframes eUp    { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:none} }
@keyframes ePulse { 0%{box-shadow:0 0 0 0 rgba(230,22,103,.7)} 70%{box-shadow:0 0 0 8px transparent} 100%{box-shadow:0 0 0 0 transparent} }
@keyframes eClip  { to{clip-path:inset(0 0 0% 0)} }


/* ══════════════════════════════════════════════════════════
   §2  PROBLEMA
══════════════════════════════════════════════════════════ */
.eprob { background:var(--bg-ice); padding:96px 0; position:relative; overflow:hidden }
.eprob-deco { position:absolute; inset:0; pointer-events:none; overflow:hidden }
.epd-ring { position:absolute; border-radius:50%; border:1px solid rgba(230,22,103,.07) }
.epd-ring-1 { width:600px; height:600px; right:-200px; top:-200px }
.epd-ring-2 { width:400px; height:400px; right:-100px; top:-100px }
.epd-line   { position:absolute; background:rgba(75,80,156,.06) }
.epd-line-h { height:1px; width:100%; top:30% }
.epd-line-v { width:1px; height:100%; right:25% }

.eprob-head  { text-align:center; margin-bottom:3.5rem; position:relative; z-index:1 }
.eprob-title {
  font-family:var(--ff-head); font-size:clamp(24px,3.5vw,46px); font-weight:900;
  line-height:1.05; color:var(--t1); margin:.4rem auto 1rem; max-width:700px;
}
.eprob-title em { font-style:italic; font-family:var(--ff-body); color:var(--ep); font-weight:400 }
.eprob-sub { font-size:.87rem; font-weight:300; color:var(--t2); line-height:1.85; max-width:540px; margin:0 auto }

.eprob-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; position:relative; z-index:1 }

.epc-main {
  grid-column:1/-1; background:#fff; border:1px solid var(--brd); border-radius:20px;
  padding:2.4rem; position:relative; overflow:hidden; transition:box-shadow .3s;
}
.epc-main:hover { box-shadow:0 12px 40px rgba(230,22,103,.1) }
.epc-main::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--ep),rgba(230,22,103,.3)) }
.epmc-inner { display:flex; gap:2.5rem; align-items:center }
.epmc-left  { display:flex; flex-direction:column; align-items:center; gap:.8rem; flex-shrink:0 }
.epmc-num   { font-family:var(--ff-head); font-size:2.5rem; font-weight:900; color:rgba(230,22,103,.1); line-height:1 }
.epmc-ico   { width:46px; height:46px; border-radius:14px; background:var(--ep10); border:1.5px solid var(--ep20); display:flex; align-items:center; justify-content:center }
.epmc-ico svg { width:19px; height:19px; color:var(--ep) }
.epmc-badge { font-size:.52rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; padding:.18rem .6rem; border-radius:50px; background:var(--ep10); color:var(--ep); border:1px solid var(--ep20) }
.epmc-right { flex:1 }
.epmc-right h3 { font-family:var(--ff-head); font-size:clamp(1rem,1.5vw,1.35rem); color:var(--t1); margin-bottom:.8rem; line-height:1.15 }
.epmc-right p  { font-size:.85rem; font-weight:300; color:var(--t2); line-height:1.8; margin-bottom:1.2rem }
.epmc-stat  { display:flex; align-items:baseline; gap:.5rem }
.epmcs-v    { font-family:var(--ff-head); font-size:2rem; font-weight:900; color:var(--ep); letter-spacing:-.04em }
.epmcs-l    { font-size:.73rem; color:var(--t3); font-weight:400 }

.epc-small {
  background:#fff; border:1px solid var(--brd); border-radius:18px; padding:2rem;
  position:relative; overflow:hidden; display:flex; flex-direction:column; gap:.6rem;
  transition:all .3s var(--ease); cursor:default;
}
.epc-small:hover { transform:translateY(-3px); box-shadow:0 8px 30px rgba(11,10,22,.08) }
.epc-small::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:3px;
  transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); border-radius:0 0 18px 18px;
}
.epc-small:hover::after { transform:scaleX(1) }
.epc-small:nth-child(2)::after,.epc-small:nth-child(4)::after { background:var(--ep) }
.epc-small:nth-child(3)::after,.epc-small:nth-child(5)::after { background:var(--et) }
.epc-small:last-child::after { background:var(--ei) }

.epcs-num { font-family:var(--ff-head); font-size:1.6rem; font-weight:900; line-height:1; letter-spacing:-.04em; color:rgba(11,10,22,.05) }
.epcs-ico  { width:40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; transition:all .3s }
.epcs-ico-pink   { background:var(--ep05); border:1px solid var(--ep20) }
.epcs-ico-teal   { background:var(--et05); border:1px solid var(--et20) }
.epcs-ico-indigo { background:var(--ei05); border:1px solid var(--ei20) }
.epcs-ico-pink   svg { width:16px; height:16px; color:var(--ep) }
.epcs-ico-teal   svg { width:16px; height:16px; color:var(--et) }
.epcs-ico-indigo svg { width:16px; height:16px; color:var(--ei) }
.epc-small:hover .epcs-ico-pink   { background:var(--ep); border-color:var(--ep) }
.epc-small:hover .epcs-ico-teal   { background:var(--et); border-color:var(--et) }
.epc-small:hover .epcs-ico-indigo { background:var(--ei); border-color:var(--ei) }
.epc-small:hover .epcs-ico-pink   svg,
.epc-small:hover .epcs-ico-teal   svg,
.epc-small:hover .epcs-ico-indigo svg { color:#fff }
.epc-small h4 { font-size:.9rem; color:var(--t1); line-height:1.3; transition:color .3s }
.epc-small:hover h4 { color:var(--ep) }
.epc-small p  { font-size:.77rem; font-weight:300; color:var(--t2); line-height:1.7; flex:1 }
.epcs-tag    { font-size:.55rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; padding:.18rem .6rem; border-radius:50px; align-self:flex-start; margin-top:.3rem }
.epcs-tag-pink   { color:var(--ep); background:var(--ep05); border:1px solid var(--ep20) }
.epcs-tag-teal   { color:var(--et); background:var(--et05); border:1px solid var(--et20) }
.epcs-tag-indigo { color:var(--ei); background:var(--ei05); border:1px solid var(--ei20) }


/* ══════════════════════════════════════════════════════════
   §3  PLANEA
══════════════════════════════════════════════════════════ */
.epl {
  background:var(--bg-white); padding:90px 0 0; position:relative; overflow:hidden;
  border-top:1px solid var(--brd);
}
.epl-bg-deco { position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:0 }
.eplbd-arc {
  position:absolute; right:-10%; top:50%; transform:translateY(-50%);
  width:100vw; height:50vw; max-width:700px; max-height:700px;
  border-radius:50%; border:1px solid rgba(230,22,103,.06);
}
.eplbd-wave { position:absolute; bottom:0; left:0; right:0; height:120px;width: 100vw;  }
.eplbd-dots { position:absolute; left:0; top:0; width:200px; height:200px }

.epl-inner {
  max-width:var(--max); margin:0 auto; padding:0 2.5rem;
  display:grid; grid-template-columns:repeat(3,1fr); gap:5rem; align-items:start;
  position:relative; z-index:1;
}
.epll-eyebrow { display:flex; align-items:center; gap:.6rem; margin-bottom:1.4rem }
.eplle-tag { font-size:.58rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--ep); background:var(--ep05); border:1px solid var(--ep20); padding:.2rem .7rem; border-radius:50px }
.eplle-ver { font-family:var(--ff-mono); font-size:.56rem; color:var(--t4) }

.epll-logo { font-family:var(--ff-head); font-size:clamp(56px,8vw,100px); font-weight:900; line-height:.85; letter-spacing:-2px; margin-bottom:.7rem }
.eplll-p  { color:var(--t1) }
.eplll-ea { color:var(--ep) }

.epll-tagline { font-size:clamp(.95rem,1.3vw,1.15rem); font-weight:300; font-style:italic; color:var(--t3); line-height:1.5; margin-bottom:1.5rem }
.epll-body    { font-size:.86rem; font-weight:300; color:var(--t2); line-height:1.9; margin-bottom:.8rem; max-width:420px }

.epll-features { display:flex; flex-direction:column; gap:.6rem; margin-bottom:1.5rem }
.epllf-item { display:flex; align-items:center; gap:.6rem; font-size:.8rem; color:var(--t2) }
.epllf-item svg { width:16px; height:16px; color:var(--ep); flex-shrink:0 }

.epll-cta {
  display:inline-flex; align-items:center; gap:8px; margin-top:.5rem;
  padding:12px 26px; background:var(--ep); color:#fff;
  border-radius:50px; font-size:.73rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  transition:all .3s var(--ease); box-shadow:0 4px 22px rgba(230,22,103,.28); margin: 20px 0px;
}
.epll-cta:hover { transform:translateY(-2px); box-shadow:0 8px 36px rgba(230,22,103,.42) }
.epll-cta svg { transition:transform .25s }
.epll-cta:hover svg { transform:translateX(4px) }

/* Tarjeta PlanEA */
.eplr-card {
  background:#fff; border:1px solid var(--brd); border-radius:18px; overflow:hidden;
  box-shadow:0 8px 40px rgba(11,10,22,.08), 0 2px 8px rgba(230,22,103,.08);
  position:relative;
}
.eplr-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,var(--ep),#ff6ba8,var(--et)) }
.eplrc-topbar {
  display:flex; align-items:center; justify-content:space-between;
  padding:.65rem 1.2rem; background:var(--bg-ice); border-bottom:1px solid var(--brd);
}
.eplrct-dots { display:flex; gap:.3rem }
.eplrct-dots span { width:8px; height:8px; border-radius:50% }
.eplrct-name { font-size:.5rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--t4) }
.eplrct-live { display:flex; align-items:center; gap:.35rem; font-size:.5rem; font-weight:700; letter-spacing:.14em; color:var(--ep) }
.eplrct-live i { width:5px; height:5px; border-radius:50%; background:var(--ep); display:block; animation:ePulse 1.4s infinite }

.eplrc-body { padding:1.3rem }

.eplrcb-student {
  display:flex; align-items:center; gap:.75rem; margin-bottom:1.1rem;
  padding-bottom:1rem; border-bottom:1px solid var(--brd);
}
.eplrcbs-av {
  width:34px; height:34px; border-radius:50%; flex-shrink:0;
  background:linear-gradient(135deg,var(--ep),#ff6ba8);
  display:flex; align-items:center; justify-content:center; font-weight:700; font-size:.85rem; color:#fff;
}
.eplrcbsa-name { display:block; font-size:.72rem; font-weight:600; color:var(--t1) }
.eplrcbsa-path { display:block; font-size:.58rem; color:var(--t3); margin-top:.1rem }
.eplrcbs-score { margin-left:auto; display:flex; align-items:baseline; gap:.15rem; font-family:var(--ff-head); font-size:1.2rem; font-weight:900; color:var(--ep) }
.eplrcbs-score small { font-size:.5rem; opacity:.6 }

.eplrcb-prog  { margin-bottom:1rem }
.eplrcbp-row  { display:flex; justify-content:space-between; margin-bottom:.35rem; font-size:.58rem; color:var(--t3) }
.eplrcbpr-pct { color:var(--ep); font-weight:600 }
.eplrcbp-track { height:4px; background:var(--brd); border-radius:2px; overflow:hidden }
.eplrcbp-fill  { height:100%; border-radius:2px; width:0; background:linear-gradient(90deg,var(--ep),#ff6ba8); transition:width 1.3s var(--ease) }

.eplrcb-aurora { background:var(--ep05); border:1px solid var(--ep20); border-radius:10px; padding:.85rem; margin-bottom:1rem }
.eplrcba-head  { display:flex; align-items:center; gap:.55rem; margin-bottom:.4rem }
.eplrcbah-ico  { width:24px; height:24px; border-radius:7px; background:var(--ep10); display:flex; align-items:center; justify-content:center; flex-shrink:0 }
.eplrcbah-ico svg { width:11px; height:11px; color:var(--ep) }
.eplrcba-head > span { font-size:.52rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--ep) }
.eplrcb-aurora p { font-size:.67rem; color:var(--t2); line-height:1.55 }

.eplrcb-stats  { display:grid; grid-template-columns:repeat(3,1fr); gap:.4rem }
.eplrcbs-item  { padding:.55rem; background:var(--bg-ice); border:1px solid var(--brd); border-radius:8px; text-align:center }
.eplrcbsi-v    { display:block; font-family:var(--ff-head); font-size:.95rem; font-weight:800; color:var(--t1); line-height:1 }
.eplrcbsi-v-acc { color:var(--ep) }
.eplrcbsi-l    { display:block; font-size:.48rem; color:var(--t3); margin-top:.18rem }

.eplrc-footer {
  display:flex; justify-content:space-between; align-items:center;
  padding:.6rem 1.2rem; background:var(--bg-ice); border-top:1px solid var(--brd);
  font-size:.46rem; color:var(--t4);
}
.eplrcf-status { display:flex; align-items:center; gap:.4rem }
.eplrcf-dot { width:5px; height:5px; border-radius:50%; background:var(--et); animation:ePulse 1.6s infinite; flex-shrink:0 }
.eplrcf-r { color:var(--ep); font-weight:600; letter-spacing:.1em }

/* Capacidades */
.epl-caps {
 display: flex;
    flex-direction: column;
    row-gap: 15px;
}
.eplc-item {
  padding:1.6rem 1rem; border-right:1px solid var(--brd);
  display:flex; flex-direction:column; gap:.5rem; transition:background .3s; cursor:default;
}
.eplc-item:last-child { border-right:none }
.eplc-item:hover { background:#fff }
.eplci-ico {
  width:34px; height:34px; border-radius:9px;
  background:var(--ep05); border:1px solid var(--ep20);
  display:flex; align-items:center; justify-content:center; transition:all .3s;
}
.eplci-ico svg { width:14px; height:14px; color:var(--ep) }
.eplc-item:hover .eplci-ico { background:var(--ep); border-color:var(--ep) }
.eplc-item:hover .eplci-ico svg { color:#fff }
.eplci-t { font-size:.77rem; color:var(--t1); line-height:1.2; transition:color .3s }
.eplc-item:hover .eplci-t { color:var(--ep) }
.eplci-s { font-size:.64rem; font-weight:300; color:var(--t3); line-height:1.5 }


/* ══════════════════════════════════════════════════════════
   §4  IMPACTO — sección oscura
══════════════════════════════════════════════════════════ */
.eimp { background:var(--bg-slate); padding:90px 0; position:relative; overflow:hidden }
.eimp-bg { position:absolute; inset:0; pointer-events:none }
.eimp-bg canvas { width:100%; height:100%; opacity:.3 }
.eimp .e-eyebrow { color:rgba(109,192,170,.9) }
.eimp .e-eyebrow::before { background:var(--et) }
.eimp-title {
  font-family:var(--ff-head); font-size:clamp(22px,3vw,38px); font-weight:900;
  color:#fff; line-height:1.05; margin:.4rem 0 2.5rem; max-width:500px;
}
.eimp-row {
  display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1);
  border-radius:20px; overflow:hidden; position:relative; z-index:1;
}
.eimp-block {
  background:var(--bg-slate); padding:2.6rem 2.2rem; position:relative;
  transition:background .3s; display:flex; flex-direction:column; gap:.6rem;
}
.eimp-block:hover { background:rgba(255,255,255,.04) }
.eimp-block::before { content:''; position:absolute; top:0; left:1.8rem; right:1.8rem; height:2px; border-radius:0 0 2px 2px }
.eimp-block:nth-child(1)::before { background:var(--ep) }
.eimp-block:nth-child(2)::before { background:var(--et) }
.eimp-block:nth-child(3)::before { background:var(--ei) }
.eimp-block:nth-child(4)::before { background:var(--ey) }
.eimpb-icon { width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); margin-bottom:.4rem }
.eimpb-icon svg { width:16px; height:16px; color:rgba(255,255,255,.7) }
.eimp-block:nth-child(1) .eimpb-icon { background:var(--ep10); border-color:var(--ep20) }
.eimp-block:nth-child(1) .eimpb-icon svg { color:var(--ep) }
.eimp-block:nth-child(2) .eimpb-icon { background:var(--et10); border-color:var(--et20) }
.eimp-block:nth-child(2) .eimpb-icon svg { color:var(--et) }
.eimp-block:nth-child(3) .eimpb-icon { background:var(--ei10); border-color:var(--ei20) }
.eimp-block:nth-child(3) .eimpb-icon svg { color:var(--ei) }
.eimp-block:nth-child(4) .eimpb-icon { background:rgba(255,226,5,.1); border-color:rgba(255,226,5,.2) }
.eimp-block:nth-child(4) .eimpb-icon svg { color:var(--ey) }
.eimpb-top  { display:flex; flex-direction:column; gap:.3rem }
.eimpb-n    { display:block; font-family:var(--ff-head); font-size:clamp(44px,5vw,68px); font-weight:900; line-height:.85; letter-spacing:-.04em }
.eimp-block:nth-child(1) .eimpb-n { color:var(--ep) }
.eimp-block:nth-child(2) .eimpb-n { color:var(--et) }
.eimp-block:nth-child(3) .eimpb-n { color:var(--ei) }
.eimp-block:nth-child(4) .eimpb-n { color:var(--ey) }
.eimpb-label { font-size:.7rem; font-weight:600; color:rgba(255,255,255,.5); letter-spacing:.06em }
.eimp-block p { font-size:.76rem; font-weight:300; color:rgba(255,255,255,.32); line-height:1.75; flex:1 }


/* ══════════════════════════════════════════════════════════
   §5  EDUCACIÓN INCLUSIVA
══════════════════════════════════════════════════════════ */
.einc { background:var(--bg-mist); padding:90px 0; position:relative; overflow:hidden }
.einc-deco { position:absolute; inset:0; pointer-events:none }
.eincd-hex { position:absolute; right:-60px; bottom:-60px; width:400px; height:400px; opacity:.04 }

.einc-inner {
  max-width:var(--max); margin:0 auto; padding:0 2.5rem;
  display:grid; grid-template-columns:1fr 400px; gap:5rem; align-items:start; position:relative; z-index:1;
}
.einc-eyebrow { display:flex; align-items:center; gap:.6rem; margin-bottom:1.4rem }
.eince-tag    { font-size:.58rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--et); background:var(--et05); border:1px solid var(--et20); padding:.2rem .7rem; border-radius:50px }
.eince-sub    { font-family:var(--ff-mono); font-size:.56rem; color:var(--t4) }

.einc-title   { font-family:var(--ff-head); font-size:clamp(30px,4.5vw,62px); font-weight:900; line-height:.92; letter-spacing:-1.5px; margin-bottom:1.6rem; color:var(--t1) }
.einc-title em { font-style:italic; font-family:var(--ff-body); color:var(--et); font-weight:400; font-size:.9em }

.einc-body    { font-size:.86rem; font-weight:300; color:var(--t2); line-height:1.88; margin-bottom:2rem }
.einc-body strong { font-weight:600; color:var(--t1) }

.einc-feats   { display:grid; grid-template-columns: repeat(2,1fr); margin-bottom:2.2rem }
.eincf-row    { display:flex; align-items:flex-start; gap:.85rem; padding:1.1rem 0; border-bottom:1px solid var(--brd); cursor:default }
.eincf-row:first-child { border-top:1px solid var(--brd) }
.eincfr-ico   { width:36px; height:36px; border-radius:10px; flex-shrink:0; background:var(--et05); border:1px solid var(--et20); display:flex; align-items:center; justify-content:center; transition:all .3s }
.eincfr-ico svg { width:14px; height:14px; color:var(--et) }
.eincf-row:hover .eincfr-ico { background:var(--et); border-color:var(--et) }
.eincf-row:hover .eincfr-ico svg { color:#fff }
.eincfr-t { display:block; font-size:.8rem; color:var(--t1); margin-bottom:.18rem; transition:color .3s }
.eincf-row:hover .eincfr-t { color:var(--et) }
.eincfr-s { display:block; font-size:.65rem; font-weight:300; color:var(--t3) }

.einc-cta {
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 26px; background:var(--et); color:#fff;
  border-radius:50px; font-size:.73rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  transition:all .3s var(--ease); box-shadow:0 4px 22px rgba(109,192,170,.3);
}
.einc-cta:hover { transform:translateY(-2px); box-shadow:0 8px 36px rgba(109,192,170,.45) }
.einc-cta svg { transition:transform .25s }
.einc-cta:hover svg { transform:translateX(4px) }

.einc-stats { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:1.2rem }
.eincs-card { background:#fff; border:1px solid var(--brd); border-radius:14px; padding:1.4rem 1.2rem; display:flex; flex-direction:column; gap:.3rem; transition:all .3s; box-shadow:0 2px 8px rgba(0,0,0,.04) }
.eincs-card:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(109,192,170,.15) }
.eincsc-v      { font-family:var(--ff-head); font-size:clamp(1.6rem,2.8vw,2.4rem); font-weight:900; color:var(--t1); line-height:1; letter-spacing:-.04em }
.eincsc-v-pink { color:var(--ep) }
.eincsc-v-teal { color:var(--et) }
.eincsc-l      { font-size:.62rem; color:var(--t3); line-height:1.4 }

.einc-map       { background:#fff; border:1px solid var(--brd); border-radius:14px; padding:1.2rem 1.4rem; margin-bottom:1.1rem; box-shadow:0 2px 8px rgba(0,0,0,.04) }
.einc-map-label { display:block; font-size:.52rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--t4); margin-bottom:.7rem }
.einc-dots      { display:flex; flex-wrap:wrap; gap:5px }

.einc-outcomes  { background:#fff; border:1px solid var(--brd); border-radius:14px; padding:1.1rem 1.3rem; display:flex; flex-direction:column; gap:.65rem; box-shadow:0 2px 8px rgba(0,0,0,.04) }
.einco-item     { display:flex; align-items:center; gap:.65rem; font-size:.73rem; color:var(--t2) }
.eincoi-dot     { width:6px; height:6px; border-radius:50%; flex-shrink:0 }
.eincoi-g      { background:#27C93F }
.eincoi-pink   { background:var(--ep) }
.eincoi-teal   { background:var(--et) }
.eincoi-indigo { background:var(--ei) }


/* ══════════════════════════════════════════════════════════
   §6  MODELO DE ENTREGA
══════════════════════════════════════════════════════════ */
.emod { background:var(--bg-white); padding:90px 0; border-top:1px solid var(--brd); position:relative; overflow:hidden }
.emod-bg-line { position:absolute; top:50%; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--brd),transparent); pointer-events:none }

.emod-head  { margin-bottom:4rem }
.emod-title { font-family:var(--ff-head); font-size:clamp(22px,3vw,40px); font-weight:900; line-height:1.05; color:var(--t1); margin:.4rem 0 .7rem }
.emod-sub   { font-size:.86rem; font-weight:300; color:var(--t2) }

.emod-steps {
  display:grid; grid-template-columns:repeat(5,1fr);
  gap:0; position:relative;
}
.emod-step { display:flex; flex-direction:column; gap:0; position:relative }
.emod-step:last-child .emods-connector { display:none }

.emods-num {
  width:44px; height:44px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--ff-head); font-size:.7rem; font-weight:900; letter-spacing:.04em;
  border:2px solid var(--brd); background:#fff; color:var(--t3);
  margin-bottom:1.2rem; transition:all .4s; position:relative; z-index:2;
}
.emods-num-pink   { border-color:var(--ep); color:var(--ep); background:var(--ep05) }
.emods-num-teal   { border-color:var(--et); color:var(--et); background:var(--et05) }
.emods-num-indigo { border-color:var(--ei); color:var(--ei); background:var(--ei05) }

.emods-body { padding-right:1.5rem }
.emods-tag {
  font-size:.56rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  display:inline-block; padding:.16rem .6rem; border-radius:50px; margin-bottom:.6rem;
  color:var(--t3); border:1px solid var(--brd); background:var(--bg-ice);
}
.emods-tag-pink   { color:var(--ep); border-color:var(--ep20); background:var(--ep05) }
.emods-tag-teal   { color:var(--et); border-color:var(--et20); background:var(--et05) }
.emods-tag-indigo { color:var(--ei); border-color:var(--ei20); background:var(--ei05) }
.emods-body h3 { font-size:.88rem; color:var(--t1); margin-bottom:.4rem; line-height:1.25; font-weight:600; transition:color .3s }
.emod-step:hover .emods-body h3 { color:var(--ep) }
.emods-body p  { font-size:.74rem; font-weight:300; color:var(--t2); line-height:1.7; margin-bottom:.8rem }
.emods-pills   { display:flex; flex-wrap:wrap; gap:.35rem }
.emods-pills span { font-size:.58rem; font-weight:500; padding:.18rem .6rem; border-radius:50px; background:var(--bg-ice); border:1px solid var(--brd); color:var(--t2) }

.emods-connector {
  position:absolute; top:20px; left:44px; right:0;
  display:flex; align-items:center; z-index:1;
}
.emods-conn-line { flex:1; height:1px; background:var(--brd) }
.emods-connector svg { width:16px; height:16px; color:var(--t4); flex-shrink:0 }

.emod-loop {
  display:flex; align-items:center; gap:.7rem;
  margin-top:2rem; padding:1rem 1.4rem;
  background:var(--ep05); border:1px solid var(--ep20); border-radius:12px;
  align-self:flex-start; width:fit-content;
  font-size:.76rem; font-weight:600; color:var(--ep);
}
.emod-loop svg { width:18px; height:18px; color:var(--ep) }


/* ══════════════════════════════════════════════════════════
   §7  POR QUÉ YEAPDATA
══════════════════════════════════════════════════════════ */
.ewhy { background:var(--bg-ice); padding:90px 0; position:relative; overflow:hidden }
.ewhy-topo { position:absolute; inset:0; pointer-events:none; opacity:.4 }

.ewhy-head  { margin-bottom:3rem }
.ewhy-title { font-family:var(--ff-head); font-size:clamp(24px,3.5vw,46px); font-weight:900; line-height:1.0; color:var(--t1); margin:.4rem 0 }
.ewhyt-accent { color:var(--ep) }

/* Bento */
.ewhy-bento { display:grid; grid-template-columns:1.4fr 1fr 1fr; grid-template-rows:auto auto; gap:12px; margin-bottom:1.5rem }
.ewb-card {
  background:#fff; border:1px solid var(--brd); border-radius:18px; padding:2rem;
  position:relative; overflow:hidden; transition:all .35s var(--ease); cursor:default;
}
.ewb-card:hover { transform:translateY(-3px); box-shadow:0 12px 36px rgba(11,10,22,.09); border-color:rgba(230,22,103,.2) }
.ewb-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,var(--ep),#ff6ba8);
  transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease);
}
.ewb-card:hover::after { transform:scaleX(1) }
.ewb-lg   { grid-column:1; grid-row:1/3; display:flex; flex-direction:column; gap:.7rem }
.ewb-wide { grid-column:2/4; grid-row:2 }

.ewbc-num { position:absolute; top:1rem; right:1.2rem; font-family:var(--ff-head); font-size:2.2rem; font-weight:900; color:rgba(11,10,22,.04); letter-spacing:-.04em; pointer-events:none; transition:color .3s }
.ewb-card:hover .ewbc-num { color:rgba(230,22,103,.06) }

.ewbc-ico { width:40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:.9rem; transition:all .3s; flex-shrink:0 }
.ewbc-ico svg { width:16px; height:16px }
.ewbc-ico-pink   { background:var(--ep05); border:1px solid var(--ep20) }
.ewbc-ico-pink   svg { color:var(--ep) }
.ewbc-ico-teal   { background:var(--et05); border:1px solid var(--et20) }
.ewbc-ico-teal   svg { color:var(--et) }
.ewbc-ico-indigo { background:var(--ei05); border:1px solid var(--ei20) }
.ewbc-ico-indigo svg { color:var(--ei) }
.ewb-card:hover .ewbc-ico-pink   { background:var(--ep); border-color:var(--ep) }
.ewb-card:hover .ewbc-ico-teal   { background:var(--et); border-color:var(--et) }
.ewb-card:hover .ewbc-ico-indigo { background:var(--ei); border-color:var(--ei) }
.ewb-card:hover .ewbc-ico-pink   svg,
.ewb-card:hover .ewbc-ico-teal   svg,
.ewb-card:hover .ewbc-ico-indigo svg { color:#fff }

.ewb-card h4 { font-size:.9rem; color:var(--t1); line-height:1.3; transition:color .3s }
.ewb-lg   h4 { font-size:1.05rem }
.ewb-card:hover h4 { color:var(--ep) }
.ewb-card p  { font-size:.76rem; font-weight:300; color:var(--t2); line-height:1.7; flex:1 }

.ewbc-tags  { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.5rem }
.ewbc-tags span { font-size:.58rem; font-weight:600; letter-spacing:.08em; padding:.18rem .6rem; border-radius:50px; background:var(--ep05); border:1px solid var(--ep20); color:var(--ep) }

.ewbc-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:.6rem; margin-top:1.2rem }
.ewbcm-item   { background:var(--bg-ice); border:1px solid var(--brd); border-radius:10px; padding:.8rem; text-align:center }
.ewbcm-item span  { display:block; font-family:var(--ff-head); font-size:1.2rem; font-weight:900; color:var(--ep); line-height:1 }
.ewbcm-item small { display:block; font-size:.55rem; color:var(--t3); margin-top:.2rem }

/* Certificaciones */
.ewhy-certs {
  display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap;
  padding:1rem 1.6rem; background:#fff; border:1px solid var(--brd); border-radius:12px;
  margin-bottom:.75rem; box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.ewhyc-lbl   { font-size:.58rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--t4); white-space:nowrap }
.ewhyc-items { display:flex; flex-wrap:wrap; gap:.4rem; align-items:center }
.ewhyc-item  { font-size:.62rem; font-weight:600; letter-spacing:.06em; padding:.2rem .7rem; border-radius:50px; background:var(--ei05); border:1px solid var(--ei20); color:var(--ei) }
.ewhyc-sep   { width:1px; height:14px; background:var(--brd) }

/* Stack tools */
.ewhy-stack  { display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap; padding:1rem 1.6rem; background:#fff; border:1px solid var(--brd); border-radius:12px; box-shadow:0 2px 8px rgba(0,0,0,.04) }
.ewhys-lbl   { font-size:.58rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--t4); white-space:nowrap }
.ewhys-pills { display:flex; flex-wrap:wrap; gap:.4rem }
.ewhys-pills span { font-size:.62rem; font-weight:600; letter-spacing:.08em; padding:.2rem .7rem; border-radius:50px; background:var(--ep05); border:1px solid var(--ep20); color:var(--ep); transition:all .25s; cursor:default }
.ewhys-pills span:hover { background:var(--ep); color:#fff }


/* ══════════════════════════════════════════════════════════
   §8  CTA
══════════════════════════════════════════════════════════ */
.ecta { background:var(--bg-white); padding:20px 0 0; overflow:hidden; position:relative }
.ecta-particles { position:absolute; inset:0; pointer-events:none; z-index:0 }

.ecta-header { position:relative; z-index:1; margin-bottom:3rem }
.ecta-title {
  font-family:var(--ff-head); font-size:clamp(40px,7.5vw,80px); font-weight:900;
  line-height:1.1; letter-spacing:-2.5px; margin-top:.5rem;
}
.ectat-r     { display:block; overflow:hidden }
.ectat-m     { display:block; clip-path:inset(0 0 100% 0); transition:clip-path .85s var(--snap) }
.ectat-m.vis { clip-path:inset(0 0 0% 0) }
.ectat-w     { display:block; color:var(--t1) }
.ectat-r-out .ectat-w { color:transparent; -webkit-text-stroke:clamp(1.5px,.15vw,2.5px) rgba(11,10,22,.15) }

.ecta-cards { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:0; position:relative; z-index:1 }
.ecta-card  { border-radius:20px; padding:2.6rem 2.4rem; position:relative; overflow:hidden; border:1px solid var(--brd) }
.ectac-deco { position:absolute; top:-40px; right:-40px; width:200px; height:200px; border-radius:50%; background:radial-gradient(circle, rgba(230,22,103,.12) 0%, transparent 70%); pointer-events:none }
.ectac-deco-teal { background:radial-gradient(circle, rgba(109,192,170,.15) 0%, transparent 70%) }
.ecta-planea { background:linear-gradient(135deg,#fff 60%,rgba(230,22,103,.04) 100%) }
.ecta-inc    { background:linear-gradient(135deg,#fff 60%,rgba(109,192,170,.06) 100%) }

.ectac-head    { margin-bottom:1.2rem; position:relative; z-index:1 }
.ectach-eye    { display:block; font-size:.58rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--t4); margin-bottom:.3rem }
.ectach-eye-teal { color:var(--et) }
.ectach-prod   { display:block; font-family:var(--ff-head); font-size:1.6rem; font-weight:900; color:var(--t1); letter-spacing:-.04em; line-height:1 }
.ectach-prod-teal { color:var(--et) }

.ecta-card > p { font-size:.84rem; font-weight:300; color:var(--t2); line-height:1.75; margin-bottom:1.3rem; position:relative; z-index:1 }
.ectac-list    { list-style:none; display:flex; flex-direction:column; gap:.4rem; margin-bottom:2rem; position:relative; z-index:1 }
.ectac-list li { font-size:.77rem; color:var(--t2); padding-left:1.3rem; position:relative; line-height:1.5 }
.ectac-list li::before { content:'→'; position:absolute; left:0; color:var(--ep); font-weight:700; font-size:.7rem }
.ectac-list-teal li::before { color:var(--et) }

.ectac-btn { display:inline-flex; align-items:center; gap:8px; padding:12px 24px; border-radius:50px; font-size:.73rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; transition:all .3s var(--ease); position:relative; z-index:1 }
.ectac-btn svg { transition:transform .25s }
.ectac-btn:hover svg { transform:translateX(4px) }
.ectac-btn-pink { background:var(--ep); color:#fff; box-shadow:0 4px 20px rgba(230,22,103,.28) }
.ectac-btn-pink:hover { transform:translateY(-2px); box-shadow:0 8px 32px rgba(230,22,103,.42) }
.ectac-btn-teal { background:var(--et); color:#fff; box-shadow:0 4px 20px rgba(109,192,170,.28) }
.ectac-btn-teal:hover { transform:translateY(-2px); box-shadow:0 8px 32px rgba(109,192,170,.42) }

/* Strip final */
.ecta-strip { background:var(--bg-slate); margin-top:3.5rem }
.ectastrip-inner {
  max-width:var(--max); margin:0 auto; padding:1.6rem 2.5rem;
  display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap;
}
.ectastrip-inner svg    { width:22px; height:22px; color:var(--et); flex-shrink:0 }
.ectastrip-inner p      { font-size:.86rem; font-weight:300; color:rgba(255,255,255,.5); flex:1; line-height:1.7 }
.ectastrip-inner strong { font-weight:700; color:#fff }
.ectastrip-cta {
  display:inline-flex; padding:10px 22px; border:1.5px solid rgba(255,255,255,.2); color:rgba(255,255,255,.7);
  border-radius:50px; font-size:.72rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  transition:all .3s var(--ease); white-space:nowrap; flex-shrink:0;
}
.ectastrip-cta:hover { border-color:var(--ep); color:var(--ep); background:var(--ep05) }


/* ══════════════════════════════════════════════════════════
   RESPONSIVE — 1100 / 960 / 768 / 600 / 480 / 380
   Solo layout y tamaños. Sin cambios de color ni estilo.
══════════════════════════════════════════════════════════ */

/* ─── 1100px ─────────────────────────────────────────────── */
@media(max-width:1100px){

  /* Hero: una columna */
  .eh-inner { grid-template-columns:1fr; gap:2.5rem; padding:3.5rem 2.5rem }
  .eh-right { max-width:520px }

  /* PlanEA: una columna */
  .epl-inner { grid-template-columns:1fr; gap:2.5rem }
  .epll-body { max-width:100% }
  .eplr-card { max-width:520px }

  /* Caps PlanEA: 3 cols */
  .epl-caps { grid-template-columns:repeat(3,1fr) }
  .eplc-item:nth-child(3) { border-right:none }
  .eplc-item:nth-child(4),
  .eplc-item:nth-child(5) { border-top:1px solid var(--brd) }

  /* Impacto: 2×2 */
  .eimp-row { grid-template-columns:repeat(2,1fr) }

  /* Inclusiva: una columna */
  .einc-inner { grid-template-columns:1fr; gap:2.5rem }
  .einc-stats { grid-template-columns:repeat(4,1fr) }

  /* Modelo: 3+2 */
  .emod-steps { grid-template-columns:repeat(3,1fr) }
  .emod-step:nth-child(3) .emods-connector { display:none }

  /* PQ Yeapdata bento: 2 cols */
  .ewhy-bento { grid-template-columns:1fr 1fr }
  .ewb-lg     { grid-column:1/3; grid-row:1 }
  .ewb-wide   { grid-column:1/3; grid-row:auto }
  .ewb-sm     { grid-column:auto; grid-row:auto }
}

/* ─── 960px ──────────────────────────────────────────────── */
@media(max-width:960px){
  .wrap { padding:0 2rem }

  /* Hero topbar / inner */
  .eh-topbar { padding:1.1rem 2rem }
  .eh-inner  { padding:3rem 2rem }

  /* Problema: 1 col */
  .eprob-grid { grid-template-columns:1fr }
  .epc-main   { grid-column:1 }
  .epmc-inner { gap:2rem }

  /* PlanEA */
  .epl-inner { padding:0 2rem }
  .epl-caps  { padding:0 2rem; grid-template-columns:repeat(3,1fr) }

  /* Inclusiva */
  .einc-inner { padding:0 2rem }
  .einc-stats { grid-template-columns:1fr 1fr }

  /* Modelo: 2+3 */
  .emod-steps { grid-template-columns:1fr 1fr; row-gap:2.5rem }
  .emod-step:nth-child(2) .emods-connector { display:none }
  .emods-body { padding-right:.8rem }

  /* Bento PQ */
  .ewbc-metrics { grid-template-columns:repeat(2,1fr) }

  /* CTA: 1 col */
  .ecta-cards { grid-template-columns:1fr }

  /* Strip */
  .ectastrip-inner { padding:1.4rem 2rem }
}

/* ─── 768px ──────────────────────────────────────────────── */
@media(max-width:768px){
  .wrap { padding:0 1.5rem }

  /* Padding de secciones */
  .eprob { padding:72px 0 }
  .epl   { padding-top:64px }
  .eimp  { padding:72px 0 }
  .einc  { padding:72px 0 }
  .emod  { padding:72px 0 }
  .ewhy  { padding:72px 0 }
  .ecta  { padding:72px 0 0 }

  /* Hero topbar */
  .eh-topbar  { padding:1rem 1.5rem }
  .ehtb-right { display:none }
  .eh-inner   { padding:2.8rem 1.5rem 2rem; gap:2rem }

  /* Hero título */

  /* Hero CTAs: stack vertical */
  .ehl-ctas {
    flex-direction:column; align-items:stretch; gap:.7rem; margin-bottom:2rem;
  }
  .ehlc-primary,
  .ehlc-ghost { justify-content:center; text-align:center }

  /* Trust: wrap + ocultar separadores */
  .ehl-trust    { flex-wrap:wrap; gap:.8rem 0 }
  .ehlt-sep     { display:none }
  .ehlt-item    { padding:0 1rem }
  .ehlt-item:first-child { padding-left:0 }

  /* Problema card principal */
  .epmc-inner { flex-direction:column; align-items:flex-start; gap:1.2rem }
  .epmc-left  { flex-direction:row; flex-wrap:wrap; gap:.6rem; align-items:center }
  .epc-main   { padding:1.8rem }
  .epc-small  { padding:1.6rem }

  /* PlanEA */
  .epl-inner { padding:0 1.5rem; gap:2rem }
  .eplr-card { max-width:100% }

  /* Caps PlanEA: 2×3 */
  .epl-caps { padding:0 1.5rem; grid-template-columns:repeat(2,1fr) }
  .eplc-item { border-right:none }
  .eplc-item:nth-child(odd) { border-right:1px solid var(--brd) }
  .eplc-item:nth-child(3) { border-top:none }
  .eplc-item:nth-child(4),
  .eplc-item:nth-child(5) { border-top:1px solid var(--brd) }

  /* Impacto: 1 col */
  .eimp-row   { grid-template-columns:1fr }
  .eimp-block { padding:2rem 1.8rem }

  /* Inclusiva */
  .einc-inner { padding:0 1.5rem; gap:2rem }
  .einc-stats { grid-template-columns:1fr 1fr }

  /* Modelo: 1 col */
  .emod-steps { grid-template-columns:1fr; row-gap:1.8rem }
  .emods-connector { display:none !important }
  .emods-body { padding-right:0 }
  .emod-head  { margin-bottom:2.5rem }

  /* PQ bento: 1 col */
  .ewhy-bento { grid-template-columns:1fr }
  .ewb-lg,.ewb-wide,.ewb-sm { grid-column:1; grid-row:auto }
  .ewbc-metrics { grid-template-columns:repeat(4,1fr) }

  /* CTA */
  .ecta-title  { font-size:clamp(36px,9.5vw,60px); letter-spacing:-1.5px }
  .ecta-header { margin-bottom:2rem }
  .ecta-card   { padding:2.2rem 2rem }
  .ectastrip-inner { flex-direction:column; align-items:flex-start; gap:.8rem; padding:1.4rem 1.5rem }
  .ectastrip-cta   { width:100%; justify-content:center }
}

/* ─── 600px ──────────────────────────────────────────────── */
@media(max-width:600px){
  .wrap { padding:0 1.2rem }

  /* Padding de secciones */
  .eprob { padding:60px 0 }
  .epl   { padding-top:56px }
  .eimp  { padding:60px 0 }
  .einc  { padding:60px 0 }
  .emod  { padding:60px 0 }
  .ewhy  { padding:60px 0 }
  .ecta  { padding:60px 0 0 }

  /* Hero */
  .eh-topbar { padding:.9rem 1.2rem }
  .eh-inner  { padding:2.4rem 1.2rem 1.8rem; gap:1.6rem }
  .ehlt-row  { font-size:clamp(32px,10vw,54px); letter-spacing:-1px }
  .ehlt-row:last-child { display:none }
  .ehl-sub   { font-size:.85rem; margin-bottom:1.8rem; max-width:100% }
  .ehlt-val  { font-size:1rem }
  .ehlt-lbl  { font-size:.52rem }

  /* Hero card: compactar secciones */
  .ehrc-activity  { padding:1rem 1rem .75rem }
  .ehrca-val      { font-size:1.9rem }
  .ehrc-kpis      { padding:.75rem 1rem }
  .ehrck-v        { font-size:1rem }
  .ehrck-l        { font-size:.48rem }
  .ehrc-aurora    { padding:.8rem 1rem }
  .ehrcat-msg     { font-size:.63rem }
  .ehrc-areas     { padding:.8rem 1rem }
  .ehr-mini       { padding:.8rem 1rem }
  .ehrmr-val      { font-size:2rem }

  /* Problema */
  .eprob-grid { gap:10px }
  .epc-main   { padding:1.5rem }
  .epmc-right h3 { font-size:1rem }
  .epmc-right p  { font-size:.8rem }
  .epmcs-v    { font-size:1.7rem }
  .epc-small  { padding:1.4rem; border-radius:14px }
  .epc-small h4 { font-size:.86rem }
  .epc-small p  { font-size:.74rem }

  /* PlanEA */
  .epl-inner    { padding:0 1.2rem; gap:1.8rem }
  .epll-logo    { font-size:clamp(50px,12vw,80px); letter-spacing:-1.5px }
  .eplrc-body   { padding:1rem }
  .eplrcb-student { flex-wrap:wrap; gap:.5rem }
  .eplrcbs-score  { margin-left:0 }
  .eplrcb-stats   { gap:.3rem }
  .eplrcbsi-v     { font-size:.88rem }

  /* Caps PlanEA: 2 cols fijas */
  .epl-caps     { padding:0 1.2rem; grid-template-columns:repeat(2,1fr) }
  .eplc-item    { padding:1.2rem .8rem }

  /* Impacto */
  .eimp-block   { padding:1.8rem 1.4rem }
  .eimpb-n      { font-size:clamp(36px,10vw,52px) }

  /* Inclusiva */
  .einc-inner   { padding:0 1.2rem; gap:1.8rem }
  .einc-stats   { grid-template-columns:1fr 1fr }
  .eincs-card   { padding:1.1rem 1rem }
  .eincsc-v     { font-size:clamp(1.4rem,6vw,2rem) }

  /* Modelo */
  .emod-title   { font-size:clamp(20px,6vw,32px) }
  .emods-body h3 { font-size:.84rem }
  .emods-body p  { font-size:.71rem }
  .emod-loop    { font-size:.72rem; padding:.85rem 1.2rem }

  /* PQ bento */
  .ewb-card     { padding:1.6rem }
  .ewbc-metrics { grid-template-columns:repeat(2,1fr) }
  .ewhy-certs   { flex-direction:column; align-items:flex-start; gap:.6rem }
  .ewhyc-sep    { display:none }
  .ewhy-stack   { flex-direction:column; align-items:flex-start; gap:.6rem }

  /* CTA */
  .ecta-title   { font-size:clamp(30px,10vw,50px); letter-spacing:-1px }
  .ecta-card    { padding:2rem 1.6rem; border-radius:16px }
  .ectach-prod  { font-size:1.4rem }
  .ectac-list li { font-size:.74rem }
  .ectastrip-inner { padding:1.2rem 1.2rem }
}

/* ─── 480px ──────────────────────────────────────────────── */
@media(max-width:480px){
  .wrap { padding:0 1rem }

  /* Padding secciones */
  .eprob { padding:52px 0 }
  .epl   { padding-top:48px }
  .eimp  { padding:52px 0 }
  .einc  { padding:52px 0 }
  .emod  { padding:52px 0 }
  .ewhy  { padding:52px 0 }
  .ecta  { padding:52px 0 0 }

  /* Hero topbar */
  .eh-topbar  { padding:.8rem 1rem }
  .ehtbl-dot  { display:none }
  .eh-inner   { padding:2rem 1rem 1.6rem; gap:1.4rem }
  .ehlt-row   { font-size:clamp(28px,10.5vw,46px) }
  .ehl-sub    { font-size:.82rem; line-height:1.75; margin-bottom:1.6rem }
  .ehlc-primary,
  .ehlc-ghost { padding:11px 18px; font-size:.68rem }
  .ehlt-val   { font-size:.92rem }
  .ehlt-lbl   { font-size:.48rem }
  .ehlt-item  { padding:0 .6rem }
  .ehlt-item:first-child { padding-left:0 }

  /* Hero card */
  .ehr-card    { border-radius:14px }
  .ehrc-head   { padding:.55rem 1rem }
  .ehrca-val   { font-size:1.7rem }
  .ehrc-kpis   { padding:.65rem .9rem }
  .ehrck-v     { font-size:.92rem }
  .ehrck-l     { font-size:.44rem }
  .ehrc-aurora { padding:.7rem .9rem; gap:.5rem }
  .ehrca-icon  { width:24px; height:24px }
  .ehrca-icon svg { width:10px; height:10px }
  .ehrcat-msg  { font-size:.6rem }
  .ehrc-areas  { padding:.7rem .9rem }
  .ehrca-title { font-size:.46rem }
  .ehrc-footer { padding:.5rem 1rem }
  .ehr-mini    { padding:.65rem .9rem; border-radius:12px }
  .ehrmr-val   { font-size:1.8rem }
  .ehr-float-label { font-size:.52rem; padding:.25rem .75rem }

  /* Problema */
  .epc-main    { padding:1.3rem; border-radius:16px }
  .epmc-right h3 { font-size:.9rem }
  .epmcs-v     { font-size:1.5rem }
  .epc-small   { padding:1.2rem; border-radius:14px }
  .epc-small h4 { font-size:.82rem }
  .epcs-tag    { font-size:.5rem }

  /* PlanEA */
  .epl-inner    { padding:0 1rem }
  .epll-logo    { font-size:clamp(44px,13vw,68px); letter-spacing:-1px }
  .epll-tagline { font-size:.88rem }
  .epll-body    { font-size:.8rem }
  .epllf-item   { font-size:.74rem }
  .epll-cta     { padding:10px 20px; font-size:.68rem }
  .eplrc-body   { padding:.9rem }
  .eplrcbs-av   { width:28px; height:28px; font-size:.75rem }
  .eplrcbsa-name { font-size:.66rem }
  .eplrcb-aurora p { font-size:.62rem }
  .eplrcb-stats { gap:.25rem }
  .eplrcbsi-v   { font-size:.82rem }
  .eplrcbsi-l   { font-size:.42rem }

  /* Caps PlanEA: 1 col */
  .epl-caps   { padding:0 1rem; grid-template-columns:1fr }
  .eplc-item  { border-right:none !important; border-bottom:1px solid var(--brd) }
  .eplc-item:last-child { border-bottom:none }
  .eplc-item:nth-child(3) { border-top:none }
  .eplc-item:nth-child(4),
  .eplc-item:nth-child(5) { border-top:none }

  /* Impacto */
  .eimp-block  { padding:1.5rem 1.2rem }
  .eimpb-n     { font-size:clamp(30px,9vw,46px) }
  .eimp-block p { font-size:.72rem }

  /* Inclusiva */
  .einc-inner  { padding:0 1rem }
  .einc-title  { font-size:clamp(26px,8.5vw,44px); letter-spacing:-.8px }
  .einc-body   { font-size:.8rem }
  .einc-stats  { grid-template-columns:1fr }
  .eincsc-v    { font-size:clamp(1.3rem,6vw,1.8rem) }
  .einco-item  { font-size:.68rem }
  .einc-cta    { padding:10px 20px; font-size:.68rem }

  /* Modelo */
  .emods-num   { width:38px; height:38px; font-size:.64rem; margin-bottom:.9rem }
  .emods-body h3 { font-size:.8rem }
  .emods-pills span { font-size:.52rem }
  .emod-loop   { padding:.8rem 1rem; font-size:.7rem }
  .emod-loop svg { width:15px; height:15px }

  /* PQ bento */
  .ewhy-title  { font-size:clamp(22px,7vw,36px) }
  .ewb-card    { padding:1.4rem; border-radius:14px }
  .ewb-card h4 { font-size:.84rem }
  .ewb-card p  { font-size:.72rem }
  .ewbc-tags span { font-size:.52rem }
  .ewbc-metrics { grid-template-columns:repeat(2,1fr); gap:.4rem }
  .ewbcm-item span { font-size:1rem }
  .ewbcm-item small { font-size:.5rem }
  .ewhy-certs  { padding:.85rem 1rem }
  .ewhyc-item  { font-size:.56rem }
  .ewhy-stack  { padding:.85rem 1rem }
  .ewhys-pills span { font-size:.56rem; padding:.18rem .55rem }

  /* CTA */
  .ecta-title  { font-size:clamp(26px,9.5vw,40px); letter-spacing:-.8px }
  .ecta-card   { padding:1.8rem 1.4rem; border-radius:14px }
  .ectach-prod { font-size:1.3rem }
  .ecta-card > p { font-size:.76rem }
  .ectac-list li { font-size:.7rem }
  .ectac-btn   { padding:10px 18px; font-size:.68rem }
  .ectastrip-inner { padding:1.1rem 1rem }
  .ectastrip-inner p { font-size:.78rem }
  .ectastrip-cta { font-size:.64rem; padding:9px 16px }
}

/* ─── 380px — target 360×740 ─────────────────────────────── */
@media(max-width:380px){
  .wrap { padding:0 .9rem }

  /* Padding secciones */
  .eprob { padding:44px 0 }
  .epl   { padding-top:40px }
  .eimp  { padding:44px 0 }
  .einc  { padding:44px 0 }
  .emod  { padding:44px 0 }
  .ewhy  { padding:44px 0 }
  .ecta  { padding:44px 0 0 }

  /* Hero: sin min-height para evitar scroll absurdo en 360px */
  .eh         { min-height:auto }
  .eh-topbar  { padding:.7rem .9rem; font-size:.52rem }
  .eh-inner   { padding:1.8rem .9rem 1.4rem; gap:1.2rem }

  /* Título hero */
  .ehlt-row   { font-size:clamp(24px,10.5vw,36px); letter-spacing:-.8px; word-break:break-word }
  .ehl-sub    { font-size:.78rem; line-height:1.68; margin-bottom:1.4rem }
  .ehle-badge { font-size:.52rem; padding:.22rem .7rem }
  .ehlc-primary,
  .ehlc-ghost { padding:10px 16px; font-size:.64rem }
  .ehlt-val   { font-size:.86rem }
  .ehlt-lbl   { font-size:.44rem }
  .ehlt-item  { padding:0 .45rem }

  /* Hero card compacta */
  .ehr-float-label { font-size:.5rem; padding:.22rem .65rem }
  .ehr-card    { border-radius:12px }
  .ehrc-head   { padding:.5rem .85rem }
  .ehrc-dots span { width:7px; height:7px }
  .ehrc-name   { font-size:.4rem }
  .ehrc-time   { font-size:.5rem }
  .ehrc-activity { padding:.9rem .85rem .65rem }
  .ehrca-val   { font-size:1.5rem }
  .ehrca-lbl   { font-size:.5rem }
  .ehrca-bar   { margin-top:.4rem }
  .ehrc-kpis   { padding:.6rem .85rem }
  .ehrck-v     { font-size:.82rem }
  .ehrck-l     { font-size:.42rem }
  .ehrck-sep   { margin:0 .3rem }
  .ehrc-aurora { padding:.6rem .85rem; gap:.4rem }
  .ehrca-icon  { width:20px; height:20px; border-radius:6px }
  .ehrca-icon svg { width:9px; height:9px }
  .ehrcat-badge { font-size:.44rem }
  .ehrcat-msg  { font-size:.56rem }
  .ehrc-areas  { padding:.6rem .85rem }
  .ehrca-title { font-size:.42rem }
  .ehrc-footer { padding:.45rem .85rem }
  .ehr-mini    { padding:.6rem .85rem; border-radius:10px }
  .ehrmr-val   { font-size:1.5rem }
  .ehrmr-lbl   { font-size:.5rem }

  /* Problema */
  .eprob-grid  { gap:8px }
  .epc-main    { padding:1.1rem; border-radius:14px }
  .epc-main::before { width:3px }
  .epmc-num    { font-size:2rem }
  .epmc-ico    { width:38px; height:38px }
  .epmc-right h3 { font-size:.84rem }
  .epmc-right p  { font-size:.72rem }
  .epmcs-v     { font-size:1.35rem }
  .epmcs-l     { font-size:.65rem }
  .epc-small   { padding:1.1rem; border-radius:12px }
  .epcs-num    { font-size:1.3rem }
  .epcs-ico    { width:34px; height:34px; border-radius:9px }
  .epc-small h4 { font-size:.78rem }
  .epc-small p  { font-size:.68rem }
  .epcs-tag    { font-size:.48rem; padding:.15rem .5rem }

  /* PlanEA */
  .epl-inner   { padding:0 .9rem }
  .epll-logo   { font-size:clamp(36px,12vw,54px); letter-spacing:-.8px }
  .epll-tagline { font-size:.84rem }
  .epll-body   { font-size:.76rem }
  .epllf-item  { font-size:.7rem; gap:.45rem }
  .epll-cta    { padding:9px 16px; font-size:.64rem }
  .eplrc-body  { padding:.8rem }
  .eplrcbs-av  { width:26px; height:26px; font-size:.7rem }
  .eplrcbsa-name { font-size:.62rem }
  .eplrcbsa-path { font-size:.5rem }
  .eplrcbs-score { font-size:1rem }
  .eplrcb-aurora { padding:.65rem }
  .eplrcba-head > span { font-size:.46rem }
  .eplrcb-aurora p { font-size:.58rem }
  .eplrcb-stats { gap:.2rem }
  .eplrcbsi-v  { font-size:.74rem }
  .eplrcbsi-l  { font-size:.4rem }
  .epl-caps    { padding:0 .9rem }
  .eplc-item   { padding:1rem .75rem }
  .eplci-ico   { width:28px; height:28px; border-radius:7px }
  .eplci-ico svg { width:11px; height:11px }
  .eplci-t     { font-size:.68rem }
  .eplci-s     { font-size:.56rem }

  /* Impacto */
  .eimp-row    { border-radius:14px }
  .eimp-block  { padding:1.3rem 1rem }
  .eimpb-icon  { width:30px; height:30px; border-radius:8px }
  .eimpb-icon svg { width:12px; height:12px }
  .eimpb-n     { font-size:clamp(26px,8.5vw,38px) }
  .eimpb-label { font-size:.58rem }
  .eimp-block p { font-size:.66rem }

  /* Inclusiva */
  .einc-inner  { padding:0 .9rem }
  .einc-title  { font-size:clamp(22px,8vw,32px); letter-spacing:-.6px; line-height:.95 }
  .einc-body   { font-size:.74rem }
  .eincf-row   { padding:.9rem 0; gap:.65rem }
  .eincfr-ico  { width:30px; height:30px; border-radius:8px }
  .eincfr-ico svg { width:12px; height:12px }
  .eincfr-t    { font-size:.72rem }
  .eincfr-s    { font-size:.58rem }
  .einc-cta    { padding:9px 16px; font-size:.64rem }
  .eincs-card  { padding:.9rem }
  .eincsc-v    { font-size:clamp(1.2rem,6vw,1.6rem) }
  .eincsc-l    { font-size:.54rem }
  .einco-item  { font-size:.64rem; gap:.5rem }
  .eincoi-dot  { width:5px; height:5px }
  .einc-map    { padding:1rem 1.1rem }
  .einc-map-label { font-size:.46rem }
  .einc-outcomes { padding:.9rem 1rem; gap:.5rem }

  /* Modelo */
  .emod-head   { margin-bottom:2rem }
  .emod-title  { font-size:clamp(18px,7vw,26px) }
  .emod-sub    { font-size:.74rem }
  .emods-num   { width:34px; height:34px; font-size:.6rem; margin-bottom:.8rem }
  .emods-tag   { font-size:.5rem; padding:.13rem .5rem }
  .emods-body h3 { font-size:.76rem }
  .emods-body p  { font-size:.64rem }
  .emods-pills span { font-size:.48rem; padding:.15rem .5rem }
  .emod-loop   { padding:.75rem .9rem; font-size:.65rem; border-radius:10px }
  .emod-loop svg { width:14px; height:14px }

  /* PQ bento */
  .ewhy-title  { font-size:clamp(20px,7vw,28px) }
  .ewb-card    { padding:1.2rem; border-radius:12px }
  .ewb-card h4 { font-size:.78rem }
  .ewb-card p  { font-size:.66rem }
  .ewbc-ico    { width:34px; height:34px; border-radius:10px; margin-bottom:.7rem }
  .ewbc-ico svg { width:13px; height:13px }
  .ewbc-num    { font-size:1.8rem }
  .ewbc-tags span { font-size:.48rem; padding:.15rem .5rem }
  .ewbc-metrics { gap:.3rem }
  .ewbcm-item  { padding:.65rem; border-radius:8px }
  .ewbcm-item span { font-size:.88rem }
  .ewbcm-item small { font-size:.44rem }
  .ewhy-certs  { padding:.7rem .9rem; gap:.45rem }
  .ewhyc-lbl   { font-size:.52rem }
  .ewhyc-item  { font-size:.52rem; padding:.16rem .55rem }
  .ewhy-stack  { padding:.7rem .9rem }
  .ewhys-lbl   { font-size:.52rem }
  .ewhys-pills span { font-size:.52rem; padding:.15rem .5rem }

  /* CTA */
  .ecta-title  { font-size:clamp(22px,9.5vw,32px); letter-spacing:-.6px }
  .ecta-card   { padding:1.4rem 1rem; border-radius:12px }
  .ectach-eye  { font-size:.52rem }
  .ectach-prod { font-size:1.2rem }
  .ecta-card > p { font-size:.72rem }
  .ectac-list  { margin-bottom:1.4rem }
  .ectac-list li { font-size:.66rem }
  .ectac-btn   { padding:9px 14px; font-size:.62rem }
  .ectastrip-inner { padding:1rem .9rem; gap:.5rem }
  .ectastrip-inner svg { width:18px; height:18px }
  .ectastrip-inner p { font-size:.72rem }
  .ectastrip-cta { font-size:.58rem; padding:8px 14px; text-align:center }
}

/* ══════════════════════════════════════════════════════════
   §1.5  BENEFICIOS
══════════════════════════════════════════════════════════ */
.ebene {
  background: var(--bg-white);
  padding: 90px 0;
  border-top: 1px solid var(--brd);
  position: relative;
  overflow: hidden;
}
.ebene::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--ep), var(--et), var(--ei), var(--ep));
  background-size: 300% 100%;
  animation: eBeneShift 6s linear infinite;
}
@keyframes eBeneShift {
  0%   { background-position: 0% }
  100% { background-position: 300% }
}

.ebene-head  { margin-bottom: 3.5rem; max-width: 620px }
.ebene-title {
  font-family: var(--ff-head);
  font-size: clamp(24px, 3.5vw, 44px);
  font-weight: 900; line-height: 1.05; color: var(--t1);
  margin: .4rem 0 1rem;
}
.ebene-title em {
  font-style: italic; font-family: var(--ff-body);
  color: var(--ep); font-weight: 400;
}
.ebene-sub {
  font-size: .87rem; font-weight: 300;
  color: var(--t2); line-height: 1.85; max-width: 500px;
}

/* Grid asimétrico 3-col: izq 2 apiladas · centro tall featured · der 2 apiladas */
.ebene-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  align-items: stretch; /* fuerza cards a la misma altura */
}

.ebene-card-feat {
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* reparte el contenido verticalmente */
}
.ebene-card:nth-child(1) { grid-column: 1; grid-row: 1 }
.ebene-card:nth-child(2) { grid-column: 1; grid-row: 2 }
.ebene-card:nth-child(3) { grid-column: 2; grid-row: 1 / 3 } /* featured */
.ebene-card:nth-child(4) { grid-column: 3; grid-row: 1 }
.ebene-card:nth-child(5) { grid-column: 3; grid-row: 2 }

.ebene-card {
  background: var(--bg-ice);
  border: 1px solid var(--brd);
  border-radius: 20px;
  padding: 2rem 1.8rem;
  position: relative;
  overflow: hidden;
  display: flex; flex-direction: column; gap: .65rem;
  transition: all .4s var(--ease);
  cursor: default;
}
.ebene-card::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0; height: 3px;
  transform: scaleX(0); transform-origin: left;
  transition: transform .4s var(--ease);
  border-radius: 0 0 20px 20px;
}
.ebene-card:nth-child(1)::after,
.ebene-card:nth-child(4)::after { background: var(--ep) }
.ebene-card:nth-child(2)::after,
.ebene-card:nth-child(5)::after { background: var(--et) }
.ebene-card:nth-child(3)::after { background: var(--ei) }
.ebene-card:hover::after { transform: scaleX(1) }
.ebene-card:hover {
  border-color: rgba(230,22,103,.2);
  box-shadow: 0 14px 42px rgba(11,10,22,.09);
  transform: translateY(-3px);
}

/* Card featured — centro */
.ebene-card-feat {
  background: linear-gradient(160deg, var(--bg-ice) 0%, rgba(75,80,156,.04) 100%);
  border-color: rgba(75,80,156,.2);
}
.ebene-card-feat:hover {
  border-color: rgba(75,80,156,.35);
  box-shadow: 0 14px 42px rgba(75,80,156,.12);
}

/* Número fantasma */
.ebc-num {
  position: absolute; top: .8rem; right: 1.2rem;
  font-family: var(--ff-head); font-size: 4rem; font-weight: 900;
  color: rgba(11,10,22,.04); line-height: 1; pointer-events: none;
  transition: color .3s;
}
.ebene-card:hover .ebc-num { color: rgba(230,22,103,.06) }

/* Icono */
.ebc-ico {
  width: 42px; height: 42px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; transition: all .3s;
}
.ebc-ico svg { width: 18px; height: 18px }
.ebc-ico-pink   { background: var(--ep05); border: 1px solid var(--ep20) }
.ebc-ico-pink   svg { color: var(--ep) }
.ebc-ico-teal   { background: var(--et05); border: 1px solid var(--et20) }
.ebc-ico-teal   svg { color: var(--et) }
.ebc-ico-indigo { background: var(--ei05); border: 1px solid var(--ei20) }
.ebc-ico-indigo svg { color: var(--ei) }

.ebene-card:hover .ebc-ico-pink   { background: var(--ep); border-color: var(--ep) }
.ebene-card:hover .ebc-ico-teal   { background: var(--et); border-color: var(--et) }
.ebene-card:hover .ebc-ico-indigo { background: var(--ei); border-color: var(--ei) }
.ebene-card:hover .ebc-ico-pink   svg,
.ebene-card:hover .ebc-ico-teal   svg,
.ebene-card:hover .ebc-ico-indigo svg { color: #fff }

.ebene-card h4 {
  font-size: .88rem; font-weight: 700; color: var(--t1);
  line-height: 1.3; transition: color .3s;
}
.ebene-card-feat h4 { font-size: 1rem }
.ebene-card:hover h4 { color: var(--ep) }
.ebene-card-feat:hover h4 { color: var(--ei) }

.ebene-card p {
  font-size: .76rem; font-weight: 300; color: var(--t2);
  line-height: 1.75; flex: 1;
}

/* Strip interior de la card featured */
.ebc-feat-strip {
  display: flex; flex-direction: column; gap: .38rem;
  padding: .9rem; margin: .2rem 0;
  background: rgba(75,80,156,.04);
  border: 1px solid rgba(75,80,156,.12);
  border-radius: 10px;
}
.ebcfs-item {
  display: flex; align-items: center; gap: .5rem;
  font-size: .68rem; color: var(--t2);
}
.ebcfs-dot {
  width: 5px; height: 5px; border-radius: 50%; flex-shrink: 0;
}
.ebcfs-dot-pink   { background: var(--ep) }
.ebcfs-dot-teal   { background: var(--et) }
.ebcfs-dot-indigo { background: var(--ei) }

/* Tag chip */
.ebc-tag {
  font-size: .52rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; padding: .2rem .65rem;
  border-radius: 50px; align-self: flex-start; margin-top: auto;
}
.ebc-tag-pink   { color: var(--ep); background: var(--ep05); border: 1px solid var(--ep20) }
.ebc-tag-teal   { color: var(--et); background: var(--et05); border: 1px solid var(--et20) }
.ebc-tag-indigo { color: var(--ei); background: var(--ei05); border: 1px solid var(--ei20) }

/* ── Beneficios responsive ── */
@media(max-width:1100px) {
  .ebene-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto;
  }
  .ebene-card:nth-child(1) { grid-column: 1; grid-row: 1 }
  .ebene-card:nth-child(2) { grid-column: 2; grid-row: 1 }
  .ebene-card:nth-child(3) { grid-column: 1 / 3; grid-row: 2 }
  .ebene-card:nth-child(4) { grid-column: 1; grid-row: 3 }
  .ebene-card:nth-child(5) { grid-column: 2; grid-row: 3 }
  .ebene-card-feat { flex-direction: row; flex-wrap: wrap; gap: 1rem }
  .ebene-card-feat h4 { font-size: .9rem }
}
@media(max-width:768px) {
  .ebene { padding: 72px 0 }
  .ebene-grid {
    grid-template-columns: 1fr;
    grid-template-rows: unset;
  }
  .ebene-card:nth-child(n) {
    grid-column: 1; grid-row: auto;
  }
  .ebene-card-feat { flex-direction: column }
}
@media(max-width:480px) {
  .ebene { padding: 52px 0 }
  .ebene-card { padding: 1.6rem 1.4rem; border-radius: 16px }
  .ebc-num { font-size: 3rem }
}


/* ══════════════════════════════════════════════════════════
   §3  PLANEA — elementos rediseñados (Aurora box + feat5)
══════════════════════════════════════════════════════════ */

/* Caja Aurora highlight */
.epll-aurora-box {
  display: flex; align-items: flex-start; gap: .85rem;
  padding: 1rem 1.1rem;
  background: rgba(230,22,103,.04);
  border: 1px solid rgba(230,22,103,.18);
  border-left: 3px solid var(--ep);
  border-radius: 12px;
  margin-bottom: 1.4rem;
}
.epllab-icon {
  width: 34px; height: 34px; flex-shrink: 0;
  border-radius: 9px;
  background: var(--ep10); border: 1px solid var(--ep20);
  display: flex; align-items: center; justify-content: center;
  margin-top: .05rem;
}
.epllab-icon svg { width: 14px; height: 14px; color: var(--ep) }
.epllab-body { display: flex; flex-direction: column; gap: .25rem }
.epllab-name {
  font-size: .6rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--ep);
}
.epllab-desc {
  font-size: .72rem; font-weight: 300;
  color: var(--t2); line-height: 1.6;
}

/* Features 5 items — lista enriquecida */
.epll-feat5 {
  display: flex; flex-direction: column; gap: .55rem;
  margin-bottom: 1.6rem;
}
.eplf5-item {
  display: flex; align-items: flex-start; gap: .75rem;
  padding: .75rem .85rem;
  background: var(--bg-ice);
  border: 1px solid var(--brd);
  border-radius: 10px;
  transition: all .3s var(--ease);
  cursor: default;
}
.eplf5-item:hover {
  border-color: rgba(230,22,103,.22);
  background: var(--ep05);
  transform: translateX(4px);
}
.eplf5-ico, .iplf5-ico {
  width: 30px; height: 30px; flex-shrink: 0;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  transition: all .3s;
}
.eplf5-ico svg, .iplf5-ico svg { width: 13px; height: 13px }
.eplf5-pink   { background: var(--ep05); border: 1px solid var(--ep20) }
.eplf5-pink   svg { color: var(--ep) }
.eplf5-teal   { background: var(--et05); border: 1px solid var(--et20) }
.eplf5-teal   svg { color: var(--et) }
.eplf5-indigo { background: var(--ei05); border: 1px solid var(--ei20) }
.eplf5-indigo svg { color: var(--ei) }

.iplf5-t, .eplf5-item .iplf5-t {
  display: block;
  font-size: .76rem; font-weight: 600; color: var(--t1);
  margin-bottom: .14rem; line-height: 1.25;
  transition: color .3s;
}
.eplf5-item:hover .iplf5-t { color: var(--ep) }

.eplf5-s {
  display: block;
  font-size: .64rem; font-weight: 300; color: var(--t3); line-height: 1.5;
}

.eplf5-item:hover .eplf5-pink   { background: var(--ep); border-color: var(--ep) }
.eplf5-item:hover .eplf5-teal   { background: var(--et); border-color: var(--et) }
.eplf5-item:hover .eplf5-indigo { background: var(--ei); border-color: var(--ei) }
.eplf5-item:hover .eplf5-pink   svg,
.eplf5-item:hover .eplf5-teal   svg,
.eplf5-item:hover .eplf5-indigo svg { color: #fff }


  .cta-wrap {
    font-family: var(--ff-head);
    margin: auto;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
  }

  /* Grid de fondo */
  .cta-grid {
    position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background-image:
      linear-gradient(rgba(109,192,170,.04) 1px, transparent 1px),
      linear-gradient(90deg, rgba(109,192,170,.04) 1px, transparent 1px);
    background-size: 48px 48px;
  }

  /* Gradientes de luz */
  .cta-glow-l {
    position: absolute; left: -80px; top: 50%; transform: translateY(-60%);
    width: 400px; height: 400px; border-radius: 50%;
    background: radial-gradient(ellipse, rgba(230,22,103,.13) 0%, transparent 65%);
    pointer-events: none; z-index: 0;
  }
  .cta-glow-r {
    position: absolute; right: -80px; top: 30%;
    width: 380px; height: 380px; border-radius: 50%;
    background: radial-gradient(ellipse, rgba(109,192,170,.10) 0%, transparent 65%);
    pointer-events: none; z-index: 0;
  }

  /* Línea arcoíris top */
  .cta-rainbow {
    height: 3px;
    background: linear-gradient(90deg, var(--ep), var(--et), var(--ei), var(--ep));
    background-size: 300% 100%;
    animation: rainbowShift 5s linear infinite;
    position: relative; z-index: 2;
  }
  @keyframes rainbowShift { 0%{background-position:0%} 100%{background-position:300%} }

  /* Cuerpo principal */
  .cta-body {
    position: relative; z-index: 1;
    padding: 3rem 3.5rem 2.5rem;
  }

  /* Eyebrow */
  .cta-eyebrow {
    display: inline-flex; align-items: center; gap: .5rem;
    font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase;
    color: var(--et); margin-bottom: 1.4rem;
  }
  .cta-eyebrow-dot {
    width: 6px; height: 6px; border-radius: 50%; background: var(--et);
    flex-shrink: 0;
    animation: pulse 1.8s ease infinite;
  }
  @keyframes pulse {
    0%{box-shadow:0 0 0 0 rgba(109,192,170,.7)}
    70%{box-shadow:0 0 0 8px transparent}
    100%{box-shadow:0 0 0 0 transparent}
  }

  /* Título */
  .cta-title {
    font-size: clamp(24px, 6vw, 58px);
    font-weight: 900; line-height: .95;
    letter-spacing: -2px; color: #000000;
    margin-bottom: 1.2rem;
  }
  .cta-title-accent { color: var(--ep) }

  /* Descripción */
  .cta-desc {
    font-size: 14px; font-weight: 300;
    color: rgba(0, 0, 0, 0.45); line-height: 1.8;
    max-width: 520px; margin-bottom: 2.8rem;
  }
  .cta-desc strong { color: rgba(0, 0, 0, 0.75); font-weight: 500 }

  /* Fila de botones */
  .cta-btns {
    display: flex; align-items: center; gap: 1rem; flex-wrap: wrap;
    margin-bottom: 3rem;
  }
  .cta-btn-primary {
    display: inline-flex; align-items: center; gap: .55rem;
    padding: 15px 32px;
    background: var(--ep); color: #fff;
    border-radius: 50px; font-size: 12px; font-weight: 700;
    letter-spacing: .1em; text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 4px 28px rgba(230,22,103,.4);
    transition: all .3s;
    border: none; cursor: pointer;
  }
  .cta-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 40px rgba(230,22,103,.55);
  }
  .cta-btn-primary svg { width: 14px; height: 14px; flex-shrink: 0; transition: transform .25s }
  .cta-btn-primary:hover svg { transform: translateX(4px) }

  .cta-btn-ghost {
    display: inline-flex; align-items: center; gap: .55rem;
    padding: 14px 26px;
    border: 1.5px solid rgba(255,255,255,.18); color: rgba(255,255,255,.6);
    border-radius: 50px; font-size: 12px; font-weight: 500;
    letter-spacing: .08em; text-transform: uppercase;
    text-decoration: none; background: transparent;
    transition: all .3s; cursor: pointer;
  }
  .cta-btn-ghost:hover {
    border-color: var(--et); color: var(--et);
    background: rgba(109,192,170,.06);
  }

  /* Grid de KPIs */
  .cta-kpis {
    display: grid; grid-template-columns: repeat(3,1fr);
    border-top: 1px solid rgba(255,255,255,.07);
    padding-top: 2rem; gap: 0;
  }
  .cta-kpi {
    display: flex; flex-direction: column; gap: .3rem;
    padding: 0 1.6rem 0 0;
    border-right: 1px solid rgba(255,255,255,.07);
  }
  .cta-kpi:first-child { padding-left: 0 }
  .cta-kpi:last-child { border-right: none; padding-right: 0 }
  .cta-kpi-val {
    font-size: 28px; font-weight: 900; line-height: 1; letter-spacing: -1px;
  }
  .cta-kpi-val.pink { color: var(--ep) }
  .cta-kpi-val.teal { color: var(--et) }
  .cta-kpi-val.indigo { color: #7B82D0 }
  .cta-kpi-label {
    font-size: 11px; color: rgba(255,255,255,.35);
    letter-spacing: .06em; line-height: 1.4;
  }

  /* Tarjeta derecha flotante — Aurora alert */
  .cta-right {
    position: absolute; right: 3rem; top: 50%; transform: translateY(-50%);
    width: 260px; z-index: 3;
  }
  .cta-aurora-card {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px; overflow: hidden;
  }
  .cta-aurora-card::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, var(--ep), var(--et));
  }
  .aurora-head {
    display: flex; align-items: center; justify-content: space-between;
    padding: .6rem .9rem;
    background: rgba(255,255,255,.04);
    border-bottom: 1px solid rgba(255,255,255,.07);
  }
  .aurora-name {
    font-size: 10px; font-weight: 700; letter-spacing: .16em;
    text-transform: uppercase; color: rgba(255,255,255,.45);
  }
  .aurora-live {
    display: flex; align-items: center; gap: .35rem;
    font-size: 10px; font-weight: 700; letter-spacing: .12em; color: var(--et);
  }
  .aurora-live-dot {
    width: 5px; height: 5px; border-radius: 50%; background: var(--et);
    animation: pulse 1.6s infinite;
  }
  .aurora-body { padding: .85rem .9rem; display: flex; flex-direction: column; gap: .75rem }
  .aurora-metric {
    display: flex; flex-direction: column; gap: .3rem;
  }
  .aurora-metric-row {
    display: flex; justify-content: space-between; align-items: baseline;
  }
  .aurora-metric-label { font-size: 11px; color: rgba(255,255,255,.35) }
  .aurora-metric-val { font-size: 14px; font-weight: 700; color: #fff }
  .aurora-bar-track {
    height: 3px; background: rgba(255,255,255,.08); border-radius: 2px; overflow: hidden;
  }
  .aurora-bar-fill {
    height: 100%; border-radius: 2px;
    transition: width 1.5s cubic-bezier(.22,1,.36,1);
  }
  .aurora-bar-fill.pink { background: var(--ep) }
  .aurora-bar-fill.teal { background: var(--et) }
  .aurora-bar-fill.ind { background: #7B82D0 }

  .aurora-alert {
    display: flex; gap: .5rem;
    background: rgba(230,22,103,.08); border: 1px solid rgba(230,22,103,.2);
    border-radius: 8px; padding: .6rem .7rem;
  }
  .aurora-alert-ico {
    width: 22px; height: 22px; border-radius: 6px;
    background: rgba(230,22,103,.18); display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  }
  .aurora-alert-ico svg { width: 11px; height: 11px; color: var(--ep) }
  .aurora-alert-txt { font-size: 11px; color: rgba(255,255,255,.5); line-height: 1.5 }
  .aurora-alert-txt strong { color: var(--ep); font-weight: 600 }

  .aurora-footer {
    display: flex; justify-content: space-between; align-items: center;
    padding: .5rem .9rem;
    background: rgba(255,255,255,.03); border-top: 1px solid rgba(255,255,255,.06);
    font-size: 10px; color: rgba(255,255,255,.25);
  }
  .aurora-footer-status { display: flex; align-items: center; gap: .35rem }
  .aurora-footer-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--et); flex-shrink: 0 }
  .aurora-footer-badge { color: var(--et); font-weight: 700; letter-spacing: .1em }

  /* Responsive */
  @media(max-width:780px) {
    .cta-body { padding: 2.5rem 1.8rem 2rem }
    .cta-right { display: none }
    .cta-kpis { grid-template-columns: 1fr 1fr }
    .cta-kpi:nth-child(3) { border-right: none; grid-column: 1/3; border-top: 1px solid rgba(255,255,255,.07); padding-top: 1.2rem; margin-top: .5rem; padding-left: 0 }
  }
  @media(max-width:500px) {
    .cta-body { padding: 2rem 1.4rem 1.8rem }
    .cta-title { font-size: 36px; letter-spacing: -1px }
    .cta-kpis { grid-template-columns: 1fr }
    .cta-kpi { border-right: none; padding: 0 0 1rem; border-bottom: 1px solid rgba(255,255,255,.07) }
    .cta-kpi:last-child { border-bottom: none; padding-bottom: 0 }
    .cta-kpi:nth-child(3) { grid-column: 1; border-top: none; margin-top: 0; padding-top: 0 }
  }

/* ── PlanEA responsive ajustes ── */
@media(max-width:768px) {
  .epll-aurora-box { flex-direction: column; gap: .6rem }
  .epll-feat5 { gap: .4rem }
  .eplf5-item { padding: .65rem .75rem }
}
@media(max-width:480px) {
  .eplf5-item { flex-wrap: wrap }
  .iplf5-t { font-size: .72rem }
  .eplf5-s { font-size: .6rem }
  .epll-aurora-box { padding: .85rem }
  .epllab-desc { font-size: .68rem }
}
@media(max-width:380px) {
  .epll-aurora-box { padding: .75rem }
  .epllab-name { font-size: .54rem }
  .epllab-desc { font-size: .62rem }
  .eplf5-item { padding: .6rem .65rem }
  .iplf5-t { font-size: .68rem }
  .eplf5-s { font-size: .56rem }
}