:root{--fondo:#fff;--gris:#F3F1F8;--tinta:#15131F;--suave:#55516A;--borde:#E2DEEC;--violeta:#2A1670;--violeta2:#4B2BB8;--violeta-c:#ECE7FB;--lima:#B8E04A;--lima-c:#F2FAD9;--coral:#C2412A;--coral-c:#FCEAE5;--rad:10px;--titulo:"Archivo",Arial,Helvetica,sans-serif;--texto:"Literata",Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--fondo);color:var(--tinta);font:400 1.06rem/1.7 var(--texto)}
img{max-width:100%;height:auto}
a{color:var(--violeta2)}
h1,h2,h3,h4{font-family:var(--titulo);line-height:1.15;margin:1.5em 0 .45em;font-weight:800;letter-spacing:-.015em}
h1{font-size:clamp(2rem,4.4vw,3rem);margin-top:.3em}
h2{font-size:clamp(1.5rem,2.8vw,2.05rem)}
h3{font-size:1.2rem;font-weight:600}
h4{font-size:1rem;font-weight:600}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--violeta2);outline-offset:2px}
.omitir{position:absolute;left:-9999px}
.omitir:focus{left:10px;top:10px;z-index:50;background:#fff;padding:8px 12px}
.ancho{max-width:1160px;margin:0 auto;padding:0 18px}
.lectura{max-width:820px}

.barra{background:var(--violeta);position:sticky;top:0;z-index:30}
.barra__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}
.logo{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font:800 1.25rem var(--titulo);letter-spacing:-.02em}
.logo i{font-style:normal;color:var(--lima)}
.menu{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.menu a{color:#E9E4FA;text-decoration:none;font:600 .92rem var(--titulo);padding:8px 11px;border-radius:6px;white-space:nowrap}
.menu a:hover{background:rgba(255,255,255,.12);color:#fff}
@media (max-width:720px){.barra__in{flex-direction:column;align-items:stretch;gap:0;padding-top:8px}.menu{margin:0 -18px;padding:0 10px 6px}}

.intro{background:linear-gradient(135deg,var(--violeta-c),#fff 60%);padding:34px 0 30px;border-bottom:1px solid var(--borde)}
.intro__in{display:grid;grid-template-columns:1fr 330px;gap:34px;align-items:start}
.intro__etq{display:inline-block;font:600 .8rem var(--titulo);letter-spacing:.08em;text-transform:uppercase;color:var(--violeta);background:var(--lima);padding:4px 10px;border-radius:4px;margin:0}
.intro__txt{font-size:1.1rem}
.autor-l{font:600 .92rem var(--titulo);color:var(--suave)}
.podio{background:#fff;border:2px solid var(--violeta);border-radius:var(--rad);padding:18px 20px;box-shadow:6px 6px 0 var(--lima)}
.podio__t{font:800 1.1rem var(--titulo);margin:0 0 8px}
.podio ol{list-style:none;margin:0;padding:0}
.podio li{display:grid;grid-template-columns:34px 1fr;column-gap:8px;padding:10px 0;border-top:1px solid var(--borde)}
.podio li span{grid-row:span 2;font:800 1.6rem/1 var(--titulo);color:var(--violeta2)}
.podio li b{font-family:var(--titulo)}
.podio li small{font-size:.86rem;color:var(--suave);line-height:1.4}
.fig--ancha{margin:24px auto 0;max-width:1160px;padding:0 18px}
.fig img{border-radius:var(--rad);display:block}
.fig figcaption{font-size:.86rem;color:var(--suave);margin-top:6px}
@media (max-width:900px){.intro__in{grid-template-columns:1fr}}

.zona{padding:52px 0}
.zona--gris{background:var(--gris)}
.zona--lima{background:var(--lima-c)}
.zona--violeta{background:var(--violeta);color:#F1EEFB}
.zona--violeta h2,.zona--violeta h3{color:#fff}
.zona--violeta a{color:var(--lima)}
.zona--lista{padding-top:40px}
.leyenda{font:600 .82rem var(--titulo);color:var(--suave)}

.ops{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:20px}
@media (max-width:820px){.ops{grid-template-columns:1fr}}
.op{border:1px solid var(--borde);border-radius:var(--rad);padding:18px;display:flex;flex-direction:column;gap:12px;background:#fff}
.op--lider{border:2px solid var(--violeta2);box-shadow:6px 6px 0 var(--lima)}
.op__top{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;align-items:center}
.op__n{font:800 1.2rem var(--titulo);color:var(--violeta2)}
.op__logo{width:120px;height:60px;border-radius:8px;object-fit:cover}
.op__cab h3{margin:0;font-size:1.15rem}
.op__cab p{margin:2px 0 0;font-size:.86rem;line-height:1.4;color:var(--suave)}
.op__pts{text-align:center;border:2px solid var(--violeta);border-radius:50%;width:58px;height:58px;display:grid;place-content:center;line-height:1}
.op__pts b{font:800 1.25rem var(--titulo)}
.op__pts small{font-size:.66rem;color:var(--suave)}

.op__promo{background:var(--lima-c);border-left:5px solid var(--lima);border-radius:6px;padding:10px 14px}
.op__promo strong{display:block;font:800 1.7rem/1.1 var(--titulo);color:var(--violeta)}
.op__promo span{font-size:.92rem}
.op__datos{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.dt{background:var(--gris);border-radius:6px;padding:6px 8px;text-align:center;font-size:.86rem;line-height:1.3}
.dt::before{content:attr(data-r);display:block;font:600 .7rem var(--titulo);text-transform:uppercase;letter-spacing:.05em;color:var(--suave)}

.btn{display:block;text-align:center;background:var(--violeta2);color:#fff;font:800 1rem var(--titulo);text-decoration:none;padding:12px 16px;border-radius:8px}
.btn:hover{background:var(--violeta);color:#fff}
.op__pie{margin:0;font-size:.82rem;color:var(--suave);text-align:center}
.hechos{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.hechos li{border-top:4px solid var(--violeta2);padding:10px 4px;font-size:.92rem}
.hechos b{display:block;font:800 1.5rem var(--titulo);color:var(--violeta)}
@media (max-width:720px){.hechos{grid-template-columns:repeat(2,1fr)}}

.num{padding-left:1.3em}
.num li{margin-bottom:.6em}
.tilde{list-style:none;padding:0}
.tilde li{padding-left:1.6em;position:relative;margin-bottom:.6em}
.tilde li::before{content:"✓";position:absolute;left:0;font:800 1rem var(--titulo);color:var(--violeta2)}
.zona--violeta .tilde li::before{color:var(--lima)}

.voz{background:var(--violeta-c);border-radius:var(--rad);padding:14px 18px;margin:18px 0}
.voz__t{font:800 1rem var(--titulo);margin:0 0 4px}
.voz--vacia{border:2px dashed #8C6D00;background:#FFF6CF}
.falta{border:2px dashed #8C6D00;background:#FFF6CF;border-radius:var(--rad);padding:14px;margin:16px 0;font-size:.88rem}
.tbd{background:#FFD84D;color:#2B2000}

.ver{background:#fff;border:1px solid var(--borde);border-radius:14px;margin:26px 0;padding:24px}
.ver__cab{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--borde);padding-bottom:14px;margin-bottom:16px}
.ver__cab img{width:120px;height:60px;border-radius:8px;object-fit:cover}
.ver__cab h3{margin:0;flex:1}
.ver__pts{font:800 1rem var(--titulo);background:var(--lima);color:var(--violeta);padding:6px 10px;border-radius:6px;white-space:nowrap}
.ver__cuerpo{display:grid;grid-template-columns:1fr 290px;gap:28px;align-items:start}
.ver__lado{position:sticky;top:76px;background:var(--gris);border-radius:var(--rad);padding:16px}
@media (max-width:900px){.ver__cuerpo{display:flex;flex-direction:column;gap:16px}.ver__lado{position:static;order:-1}.ver__cab{flex-wrap:wrap}}
.bal{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.bal>div{border-radius:var(--rad);padding:12px 16px;color:var(--tinta)}
.bal__mas{background:var(--lima-c);border-top:4px solid var(--lima)}
.bal__menos{background:var(--coral-c);border-top:4px solid var(--coral)}
.bal h3,.bal h4{margin:0 0 6px;color:var(--tinta)}
.bal ul{margin:0;padding-left:1.1em}
@media (max-width:640px){.bal{grid-template-columns:1fr}}

.tab{overflow-x:auto;margin:18px 0 8px;border:1px solid var(--borde);border-radius:var(--rad)}
.tab table{width:100%;min-width:660px;border-collapse:collapse;font-size:.92rem;font-family:var(--titulo)}
.tab th{text-align:left;background:var(--violeta);color:#fff;padding:10px 12px;font-weight:600}
.tab td{padding:10px 12px;border-top:1px solid var(--borde);vertical-align:top;font-weight:400}
.tab tbody tr:hover td{background:var(--violeta-c)}
.nota{font-size:.84rem;color:var(--suave)}
.camino{list-style:none;padding:0;counter-reset:c;display:grid;gap:10px}
.camino li{counter-increment:c;display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:center;background:#fff;border:1px solid var(--borde);border-radius:var(--rad);padding:10px 14px}
.camino li::before{content:counter(c);grid-row:span 2;display:grid;place-items:center;width:40px;height:40px;background:var(--lima);color:var(--violeta);font:800 1.1rem var(--titulo);border-radius:8px}
.camino b{font-family:var(--titulo)}

.duda{border-bottom:1px solid var(--borde)}
.duda summary{cursor:pointer;list-style:none;padding:14px 30px 14px 0;position:relative}
.duda summary::-webkit-details-marker{display:none}
.duda summary::after{content:"+";position:absolute;right:4px;top:12px;font:800 1.4rem var(--titulo);color:var(--violeta2)}
.duda[open] summary::after{content:"–"}
.duda h3{display:inline;font-size:1.06rem;margin:0}
.duda p{padding-bottom:12px}

.interna main{min-height:55vh}
.ruta{font:600 .86rem var(--titulo);color:var(--suave)}
.quien{display:flex;align-items:center;gap:16px;margin:12px 0 22px}
.quien img,.quien__ini{width:120px;height:120px;border-radius:12px;flex:none}
.quien__ini{display:grid;place-items:center;background:var(--violeta);color:var(--lima);font:800 2rem var(--titulo)}
.quien b{display:block;font:800 1.2rem var(--titulo)}
.quien span{color:var(--suave)}
.vacio{text-align:center;padding:30px 0}
.vacio__n{font:800 5.5rem/1 var(--titulo);color:var(--violeta2);margin:0}
.vacio .btn{display:inline-block}

.final{background:#120D24;color:#C8C3DA;padding:44px 0 24px;font-size:.92rem}
.final a{color:#fff}
.final__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.final__grid nav{display:flex;flex-direction:column;gap:6px}
.final__t{font:800 1rem var(--titulo);color:#fff;margin:0 0 8px}
.logo--claro{margin-bottom:12px}
.final__aviso{border-top:1px solid #2E2747;margin-top:26px;padding-top:16px}
.final__aviso b{background:var(--lima);color:var(--violeta);padding:2px 7px;border-radius:4px;font-family:var(--titulo);margin-right:6px}
.final__c{color:#9A94B2;margin:0}
@media (max-width:760px){.final__grid{grid-template-columns:1fr}}
.subir{position:fixed;right:14px;bottom:14px;width:46px;height:46px;border:0;border-radius:8px;background:var(--lima);color:var(--violeta);font:800 1.2rem var(--titulo);cursor:pointer;display:none;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.subir.on{display:block}
.glos{margin:16px 0;display:grid;grid-template-columns:230px 1fr;gap:10px 18px}
.glos dt{font:600 .98rem var(--titulo);color:var(--violeta)}
.glos dd{margin:0}
@media (max-width:640px){.glos{grid-template-columns:1fr}.glos dd{margin-bottom:8px}}
.ficha{display:grid;gap:12px;margin-bottom:12px}
.ficha [data-r]::before{content:attr(data-r)}
.ficha__bono{background:var(--lima);border-radius:10px;padding:14px 16px;color:var(--violeta)}
.ficha__eti{display:block;font:700 .72rem var(--titulo);text-transform:uppercase;letter-spacing:.07em;opacity:.85}
.ficha__bono strong{display:block;font:800 2rem/1.05 var(--titulo);margin:4px 0}
.ficha__bono p{margin:0;font:600 .9rem/1.35 var(--titulo);color:#22114F}
.ficha__kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.kpi{background:#fff;border:1px solid var(--borde);border-radius:8px;padding:8px 10px;line-height:1.25}
.kpi__l{display:block;font:600 .68rem var(--titulo);text-transform:uppercase;letter-spacing:.05em;color:var(--suave)}
.kpi b{display:block;font:800 .98rem var(--titulo);color:var(--tinta);margin-top:2px}
.ficha__fila{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.ficha__sub{width:100%;font:600 .68rem var(--titulo);text-transform:uppercase;letter-spacing:.05em;color:var(--suave)}
.chip{display:inline-flex;align-items:center;gap:4px;background:var(--violeta);color:#fff;font:600 .8rem var(--titulo);padding:4px 9px;border-radius:999px}
.chip--gris{background:#fff;color:var(--suave);border:1px solid var(--borde)}
.ficha__logos{display:flex;flex-wrap:wrap;gap:5px}
.ficha__logos img{width:48px;height:30px;object-fit:contain;background:#fff;border:1px solid var(--borde);border-radius:5px;padding:2px}
.ficha__logos em{font-style:normal;font-size:.8rem;color:var(--suave);align-self:center}
.ficha__mas{font-size:.78rem;color:var(--suave)}
.ficha__tyc{font-size:.84rem;border-top:1px dashed var(--borde);padding-top:8px}
.ficha__tyc summary{cursor:pointer;font:600 .85rem var(--titulo);color:var(--violeta2)}
.ficha__tyc p{margin:6px 0 0;line-height:1.45}

/* --- móvil (90% del tráfico) --- */
.autor-l.byline{margin:-4px 0 4px}
@media (max-width:900px){
  .podio{display:none}
  .intro{padding:22px 0 14px}
  .intro__txt{font-size:1rem}
  .zona--lista{padding-top:22px}
}
@media (max-width:600px){
  .op{position:relative;padding:16px 14px 14px;gap:10px}
  .op__top{grid-template-columns:72px 1fr auto;gap:10px}
  .op__n{display:block;position:absolute;top:-11px;left:12px;background:var(--violeta);color:#fff;font:800 .78rem var(--titulo);padding:3px 9px;border-radius:999px}
  .op--lider .op__n{background:var(--violeta2)}
  .op__logo{width:72px;height:36px}
  .op__cab{grid-column:auto}
  .op__cab h3{font-size:1.05rem}
  .op__cab p{font-size:.8rem}
  .op__pts{width:48px;height:48px}
  .op__pts b{font-size:1.05rem}
  .op__promo{padding:8px 12px}
  .op__promo strong{font-size:1.45rem}
  .op__promo span{font-size:.86rem}
  .op__datos{grid-template-columns:repeat(4,1fr);gap:5px}
  .dt{padding:5px 3px;font-size:.76rem}
  .dt::before{font-size:.6rem}
  .ver{padding:18px 14px}
  .ver__cab{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"logo pts" "tit tit";align-items:center;gap:10px}
  .ver__cab img{grid-area:logo;width:96px;height:48px}
  .ver__pts{grid-area:pts;justify-self:end}
  .ver__cab h3{grid-area:tit;font-size:1.15rem}
}
.voz__aviso{font:700 .78rem var(--titulo);color:#6B4E07;margin:0 0 6px}
