
:root{
  --papel:#fbfaf8; --blanco:#ffffff; --tinta:#17150f; --rojo:#d40000;
  --gris:#6b6559; --gris-2:#8a8478; --gris-3:#a8a294; --linea:#e6e2da;
  --grid:rgba(23,21,15,.045); --negro:#17150f;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --papel:#121110; --blanco:#1a1917; --tinta:#f2efe9; --rojo:#ff4b3a;
    --gris:#a8a294; --gris-2:#8a8478; --gris-3:#6b6559; --linea:#2b2825;
    --grid:rgba(242,239,233,.05); --negro:#0c0b0a;
  }
}
:root[data-theme="dark"]{
  --papel:#121110; --blanco:#1a1917; --tinta:#f2efe9; --rojo:#ff4b3a;
  --gris:#a8a294; --gris-2:#8a8478; --gris-3:#6b6559; --linea:#2b2825;
  --grid:rgba(242,239,233,.05); --negro:#0c0b0a;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--papel);
  background-image:
    repeating-linear-gradient(to right, var(--grid) 0 1px, transparent 1px 84px),
    repeating-linear-gradient(to bottom, var(--grid) 0 1px, transparent 1px 84px);
  color:var(--tinta);
  font-family:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:17px; line-height:1.7; -webkit-font-smoothing:antialiased;
}
a{color:inherit}
.utility{background:var(--rojo);color:#fff;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em}
.utility .in{max-width:1180px;margin:0 auto;padding:9px 20px;display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}
.utility b{font-weight:600}
.utility .sep{opacity:.55}
.utility .right{margin-left:auto;opacity:.9}
@media (max-width:700px){.utility .right{margin-left:0}}
header.sitio{background:var(--blanco);border-bottom:1px solid var(--linea)}
.marca{max-width:1180px;margin:0 auto;padding:20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit}
.logo .mark{height:44px;width:auto;flex:0 0 auto;display:block}
.logo .nombre{font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.1;display:block}
.logo .bajada{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.2em;color:var(--gris-2);text-transform:uppercase;margin-top:3px;display:block}
nav.sitio{background:var(--blanco);border-bottom:1px solid var(--linea)}
nav.sitio .in{max-width:1180px;margin:0 auto;padding:0 20px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
nav.sitio .in::-webkit-scrollbar{display:none}
nav.sitio a{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris);text-decoration:none;padding:14px;white-space:nowrap;border-bottom:2px solid transparent}
nav.sitio a:hover{color:var(--tinta)}
nav.sitio a.on{color:var(--rojo);border-bottom-color:var(--rojo)}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.col{max-width:720px}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--rojo);display:flex;align-items:center;gap:9px;margin-bottom:20px}
.eyebrow::before{content:"";width:8px;height:8px;background:var(--rojo);flex:0 0 8px}
h1{font-size:clamp(31px,5.4vw,50px);line-height:1.08;letter-spacing:-.025em;font-weight:600;margin:0 0 22px;text-wrap:balance}
.bajada{font-size:19px;line-height:1.6;color:var(--gris);margin:0 0 26px;max-width:66ch}
.meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris-2);padding-top:18px;border-top:1px solid var(--linea)}
.meta .punto{width:3px;height:3px;background:var(--gris-3)}
.art-head{padding:56px 0 34px}
figure.lamina{margin:0 0 46px;background:var(--blanco);border:1px solid var(--linea)}
figure.lamina .rotulo{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--linea);font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gris-2)}
figure.lamina .rotulo b{color:var(--rojo);font-weight:600}
figure.lamina svg{display:block;width:100%;height:auto;max-width:100%}
figure.lamina figcaption{padding:12px 16px;border-top:1px solid var(--linea);font-size:13px;color:var(--gris);line-height:1.5}
article h2{font-size:clamp(21px,3vw,27px);line-height:1.25;letter-spacing:-.015em;font-weight:600;margin:44px 0 16px;text-wrap:balance}
article h2::before{content:"";display:block;width:34px;height:2px;background:var(--rojo);margin-bottom:14px}
article p{margin:0 0 18px}
article strong{font-weight:600}
article em{font-style:italic;color:var(--gris)}
article ul,article ol{margin:0 0 22px;padding:0;list-style:none}
article li{position:relative;padding-left:26px;margin-bottom:11px}
article ul li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:1.5px;background:var(--rojo)}
article ol{counter-reset:n}
article ol li{counter-increment:n;padding-left:34px}
article ol li::before{content:counter(n,decimal-leading-zero);position:absolute;left:0;top:1px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;color:var(--rojo);letter-spacing:.04em}
blockquote{margin:30px 0;padding:22px 24px;background:var(--blanco);border:1px solid var(--linea);border-left:4px solid var(--rojo)}
blockquote .tag{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--rojo);display:block;margin-bottom:9px}
blockquote p{margin:0;font-size:15.5px;line-height:1.62;color:var(--gris)}
.ficha{margin:38px 0;border:1px solid var(--linea);background:var(--blanco)}
.ficha .cab{padding:13px 20px;border-bottom:1px solid var(--linea);font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gris-2);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ficha .cab b{color:var(--rojo);font-weight:600}
.ficha dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--linea)}
.ficha .celda{background:var(--blanco);padding:18px 20px}
.ficha dt{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gris-2);margin-bottom:7px}
.ficha dd{margin:0;font-size:15px;line-height:1.5}
.ficha dd .dato{display:block;font-family:'IBM Plex Mono',monospace;font-size:19px;font-weight:600;color:var(--rojo);margin-bottom:4px;font-variant-numeric:tabular-nums}
@media (max-width:600px){.ficha dl{grid-template-columns:1fr}}
.cta{margin:52px 0 0;background:var(--negro);color:#f2efe9;padding:38px 32px}
.cta .eyebrow{color:#ff6a5c}
.cta .eyebrow::before{background:#ff6a5c}
.cta h3{font-size:clamp(21px,3.4vw,28px);line-height:1.2;margin:0 0 12px;font-weight:600;letter-spacing:-.015em}
.cta p{margin:0 0 24px;color:#b9b3a7;font-size:15.5px;max-width:56ch}
.boton{display:inline-block;background:var(--rojo);color:#fff;text-decoration:none;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;padding:15px 26px}
.boton:hover{background:#b30000}
.sigue{padding:64px 0 0}
.sigue .titulo{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.sigue .titulo span{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gris-2);white-space:nowrap}
.sigue .titulo .barra{flex:1 1 40px;height:1px;background:var(--linea)}
.tarjetas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:820px){.tarjetas{grid-template-columns:1fr}}
.tarjeta{background:var(--blanco);border:1px solid var(--linea);padding:22px 20px;display:flex;flex-direction:column;gap:11px;text-decoration:none;color:inherit}
.tarjeta:hover{border-color:var(--gris-3)}
.tarjeta .cat{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--rojo)}
.tarjeta h4{margin:0;font-size:17px;line-height:1.3;font-weight:600;letter-spacing:-.01em}
.tarjeta p{margin:0;font-size:13.5px;color:var(--gris);line-height:1.55}
.tarjeta .leer{margin-top:auto;padding-top:8px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gris-2)}
footer.sitio{margin-top:70px;background:var(--negro);color:#a8a294}
footer.sitio .in{max-width:1180px;margin:0 auto;padding:26px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em}
footer.sitio .mark{height:28px;width:auto;flex:0 0 auto;display:block}
footer.sitio a{text-decoration:none}
footer.sitio .copy{margin-left:auto;opacity:.7}
@media (max-width:700px){footer.sitio .copy{margin-left:0}}
/* portada */
.portada{padding:56px 0 10px}
.lista-art{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--linea)}
.item{display:grid;grid-template-columns:96px 1fr;gap:0 22px;padding:28px 0;border-bottom:1px solid var(--linea);text-decoration:none;color:inherit}
.item:hover h2{color:var(--rojo)}
.item .idx{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;color:var(--gris-2);text-transform:uppercase;padding-top:5px}
.item h2{margin:0 0 8px;font-size:clamp(20px,3vw,26px);line-height:1.25;font-weight:600;letter-spacing:-.015em}
.item p{margin:0 0 12px;color:var(--gris);font-size:15px;line-height:1.6}
.item .pie{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--rojo)}
@media (max-width:640px){.item{grid-template-columns:1fr}.item .idx{padding-top:0;margin-bottom:10px}}
