/* /politica-datos · texto legal largo: índice fijo a la izquierda y lectura cómoda en una tarjeta blanca. */

.pag-politica{background:var(--gris)}
.pag-politica .nav{padding:22px clamp(var(--gutter),4vw,330px)}
.pag-politica .nav.fija{padding-top:14px;padding-bottom:14px}
.espacio{display:block}

.politica{padding:56px var(--gutter) 96px;max-width:1180px;margin:0 auto}
.politica-cab{max-width:760px;margin-bottom:34px}
.politica-cab .h2{margin:12px 0 12px}
.version{margin-top:14px;font-size:14px;color:var(--tinta2)}

.politica-grid{display:grid;grid-template-columns:250px 1fr;gap:32px;align-items:start}

/* índice */
.indice{position:sticky;top:calc(var(--nav-h) + 16px);background:#fff;border-radius:var(--radio);padding:20px 22px}
.indice-tit{font:700 12px/1 var(--titulo);letter-spacing:.14em;text-transform:uppercase;color:var(--magenta);margin-bottom:12px}
.indice ol{list-style:none;margin:0;padding:0;counter-reset:ind;display:grid;gap:2px}
.indice li{counter-increment:ind}
.indice a{display:flex;gap:10px;padding:7px 8px;border-radius:10px;font-size:14.5px;line-height:1.35;color:var(--navy);text-decoration:none}
.indice a::before{content:counter(ind);flex:none;width:22px;height:22px;border-radius:50%;background:var(--gris);display:grid;place-items:center;
  font:700 11.5px/1 var(--titulo);color:var(--magenta)}
.indice a:hover{background:var(--magenta-claro)}

/* texto */
.texto{background:#fff;border-radius:var(--radio);padding:40px 48px 44px;font-size:16.5px;line-height:1.7;color:var(--tinta2)}
.texto section{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--linea)}
.texto section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.texto h2{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:800;color:var(--navy);margin-bottom:14px}
.texto h2 .num{flex:none;width:34px;height:34px;border-radius:50%;background:var(--magenta);color:#fff;display:grid;place-items:center;font-size:15px}
.texto p{margin:0 0 12px;max-width:72ch}
.texto b{color:var(--tinta)}

.lista{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px;max-width:72ch}
.lista li{position:relative;padding-left:22px}
.lista li::before{content:"";position:absolute;left:4px;top:.68em;width:8px;height:8px;border-radius:50%;background:var(--magenta)}

.ficha{margin:6px 0 16px;border:1px solid var(--linea);border-radius:16px;overflow:hidden;max-width:640px}
.ficha div{display:grid;grid-template-columns:210px 1fr;gap:16px;padding:12px 18px;border-bottom:1px solid var(--linea)}
.ficha div:last-child{border-bottom:0}
.ficha dt{font-weight:500;color:var(--tinta2)}
.ficha dd{margin:0;font:700 15.5px/1.5 var(--titulo);color:var(--navy)}

.tabla{overflow-x:auto;margin:6px 0 14px}
.tabla table{width:100%;border-collapse:collapse;font-size:15.5px;min-width:520px}
.tabla th{text-align:left;font:700 12.5px/1.2 var(--titulo);letter-spacing:.08em;text-transform:uppercase;color:var(--magenta);padding:10px 14px;background:var(--gris)}
.tabla th:first-child{border-radius:12px 0 0 12px}.tabla th:last-child{border-radius:0 12px 12px 0}
.tabla td{padding:12px 14px;border-bottom:1px solid var(--linea);vertical-align:top}
.tabla td:first-child{width:34%;color:var(--navy)}

.nota{margin-top:6px;padding:14px 18px;border-left:4px solid var(--magenta);background:var(--magenta-claro);border-radius:0 14px 14px 0;color:var(--tinta)}

.canales-politica{list-style:none;margin:6px 0 18px;padding:0;max-width:520px;border-top:1px solid var(--linea)}
.canales-politica li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--linea)}
.canales-politica b{font-family:var(--titulo);color:var(--navy)}
.canales-politica a{color:var(--magenta);font-weight:700;text-decoration:none}

.plazos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.plazos>div{background:var(--gris);border-radius:18px;padding:18px 20px}
.plazos>div>b{display:block;font:800 17px/1.2 var(--titulo);color:var(--navy);margin-bottom:6px}
.plazos p{margin:0;font-size:15px}

@media (max-width:1000px){
  .politica-grid{grid-template-columns:1fr}
  .indice{position:static}
}
@media (max-width:900px){
  .pag-politica .nav,.pag-politica .nav.fija{padding:14px var(--gutter)}
  .politica{padding:32px var(--gutter) 64px}
  .texto{padding:26px 20px 30px;font-size:16px}
  .ficha div{grid-template-columns:1fr;gap:2px}
  .plazos{grid-template-columns:1fr}
}
