.pub{max-width:780px; margin:0 auto; padding:24px 16px 32px}
.pub-marca{display:flex; align-items:center; gap:10px; margin:0 0 16px; color:inherit; text-decoration:none}
.pub-marca b{letter-spacing:.08em}
.pub .panel-b{padding:24px}
.pub h1{margin:0 0 10px; font-size:24px; line-height:1.25; letter-spacing:-.01em}
.pub h2{font-size:17px; margin:26px 0 8px; line-height:1.3; scroll-margin-top:16px}
.pub h2:first-of-type{margin-top:20px}
.pub p, .pub li{line-height:1.6; overflow-wrap:anywhere}
.pub ul, .pub ol{margin:6px 0 10px; padding-left:22px}
.pub li{margin:5px 0}
.pub .pub-lead{font-size:15.5px; color:var(--ink)}
.pub .pub-nota{font-size:13px; color:var(--muted)}
.pub .pub-ruta{font-weight:600}
.pub h2 .pub-ancla{margin-left:6px; font-size:14px; font-weight:400; color:var(--faint); text-decoration:none; opacity:0}
.pub h2:hover .pub-ancla, .pub h2 .pub-ancla:focus-visible{opacity:1}
.pub-indice{margin:12px 0 4px; padding:12px 16px; border:1px solid var(--linea); border-radius:var(--r); background:var(--card-2)}
.pub-indice b{display:block; font-size:12.5px; color:var(--muted); margin-bottom:4px}
.pub-indice ol{margin:0; padding-left:20px; columns:2; column-gap:28px}
.pub-indice li{margin:3px 0; break-inside:avoid; font-size:13px}
.pub-acciones{display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 4px}
.pub-acciones a{display:inline-block; padding:9px 16px; border-radius:var(--r); border:1px solid var(--acc);
  text-decoration:none; font-weight:600}
.pub-acciones a.pub-principal{background:var(--acc); color:#fff}
.pub-pie{margin:20px 0 0; text-align:center; font-size:12.5px; color:var(--muted); line-height:2}
.pub-pie a{margin:0 4px; white-space:nowrap}
.pub-ingles{font-style:italic}
@media (max-width:600px){
  .pub{padding:16px 12px 24px}
  .pub .panel-b{padding:18px 16px}
  .pub h1{font-size:21px}
  .pub-indice ol{columns:1}
  .pub-acciones a{flex:1 1 100%; text-align:center}
}
