/* ============================================================
   Base
   ============================================================ */
*{box-sizing:border-box;margin:0;padding:0}
html,body{max-width:100%}
html{background:var(--ink-900)}
body{
  font-family:var(--font-sans); font-size:var(--text-base); line-height:var(--lh-body);
  letter-spacing:var(--ls-body); color:var(--text-body); background:var(--surface-page);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeLegibility;
}
img,svg,iframe{display:block;max-width:100%}
h1,h2,h3{color:var(--text-heading)}
h1,h2{font-family:var(--font-display);font-weight:var(--p-medio);font-optical-sizing:auto;letter-spacing:var(--ls-display);line-height:1.15;text-wrap:balance}
h1{font-size:var(--text-h1-cat)}
h2{font-size:var(--text-2xl);line-height:var(--lh-titulo);letter-spacing:0}
h3{font-family:var(--font-sans);font-size:var(--text-lg);font-weight:var(--p-fuerte);line-height:1.3;letter-spacing:0}
a{color:var(--link)} a:hover{color:var(--link-hover)}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;letter-spacing:inherit}
::selection{background:rgba(201,172,117,.35);color:#fff}
.tema-claro ::selection{background:rgba(0,42,76,.18);color:inherit}
input,textarea,select,[contenteditable]{caret-color:var(--caret)}
:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}
/* Anillo interior para controles dentro de contenedores con overflow que
   recortarían el anillo exterior (acordeón, filas, pestañas) */
.bloque-head:focus-visible,.srow:focus-visible,.tab:focus-visible,
.reciente:focus-visible,.blista button:focus-visible{
  box-shadow:inset 0 0 0 2px var(--surface-card),inset 0 0 0 4px var(--navy-500)}
/* .card declara box-shadow con la misma especificidad: el anillo se redeclara */
.card:focus-visible,button.card:focus-visible{box-shadow:var(--focus-ring)}
.container{max-width:var(--container-max);margin:0 auto;padding-left:var(--container-pad);padding-right:var(--container-pad)}

.eyebrow{
  display:inline-block;font-size:var(--text-xs);font-weight:var(--p-fuerte);font-stretch:var(--condensada);
  letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;line-height:1.2;
  color:var(--brass-star);
}

