/* ==========================================================================
   Orlenys · Expediente — main.css
   Sistema global: fuentes, tokens, reset, tipografía, layout y componentes.
   Reconstruido de la referencia hondurasgate.ch. Sin dependencias externas.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Fuentes (self-hosted)
   -------------------------------------------------------------------------- */
@font-face { font-family:'Fraunces'; font-style:normal; font-weight:400; font-display:swap;
	src:url('../fonts/fraunces-v38-latin-regular.woff2') format('woff2'); }
@font-face { font-family:'Fraunces'; font-style:italic; font-weight:400; font-display:swap;
	src:url('../fonts/fraunces-v38-latin-italic.woff2') format('woff2'); }
@font-face { font-family:'Fraunces'; font-style:normal; font-weight:600; font-display:swap;
	src:url('../fonts/fraunces-v38-latin-600.woff2') format('woff2'); }
@font-face { font-family:'Fraunces'; font-style:italic; font-weight:600; font-display:swap;
	src:url('../fonts/fraunces-v38-latin-600italic.woff2') format('woff2'); }
@font-face { font-family:'Fraunces'; font-style:normal; font-weight:900; font-display:swap;
	src:url('../fonts/fraunces-v38-latin-900.woff2') format('woff2'); }
@font-face { font-family:'Fraunces'; font-style:italic; font-weight:900; font-display:swap;
	src:url('../fonts/fraunces-v38-latin-900italic.woff2') format('woff2'); }

@font-face { font-family:'Archivo'; font-style:normal; font-weight:400; font-display:swap;
	src:url('../fonts/archivo-v25-latin-regular.woff2') format('woff2'); }
@font-face { font-family:'Archivo'; font-style:normal; font-weight:500; font-display:swap;
	src:url('../fonts/archivo-v25-latin-500.woff2') format('woff2'); }
@font-face { font-family:'Archivo'; font-style:normal; font-weight:600; font-display:swap;
	src:url('../fonts/archivo-v25-latin-600.woff2') format('woff2'); }
@font-face { font-family:'Archivo'; font-style:normal; font-weight:700; font-display:swap;
	src:url('../fonts/archivo-v25-latin-700.woff2') format('woff2'); }

/* JetBrains Mono — variable (100–800) */
@font-face { font-family:'JetBrains Mono'; font-style:normal; font-weight:100 800; font-display:swap;
	src:url('../fonts/jetbrainsmono-latin.woff2') format('woff2'); }

/* --------------------------------------------------------------------------
   2. Tokens
   -------------------------------------------------------------------------- */
:root {
	/* Paleta fija (no cambia con el tema) */
	--papel:#EDE8D8;  --papel-2:#E4DDC9;  --papel-3:#F3EFE3;
	--tinta:#1A150E;  --tinta-70:#4A4336;  --gris:#8C8474;  --linea:#CFC6B0;
	--rojo:#C31F2B;   --rojo-osc:#9E1620;
	--naranja:#E7611C; --naranja-osc:#C64E12;  --verde:#35A44E;
	--negro:#0E0B07;  --negro-2:#16110A;  --negro-3:#1F1810;
	--linea-negro:#2E2618;  --crema:#EFE7D6;  --crema-70:#B7AE9B;

	/* Tokens semánticos (tema claro por defecto) */
	--bg:var(--papel);
	--bg-2:var(--papel-2);
	--superficie:var(--papel-3);
	--fg:var(--tinta);
	--fg-70:var(--tinta-70);
	--tenue:var(--gris);
	--borde:var(--linea);

	/* Tipografía */
	--f-display:'Fraunces', Georgia, 'Times New Roman', serif;
	--f-texto:'Fraunces', Georgia, 'Times New Roman', serif;
	--f-sans:'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--f-mono:'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

	/* Métricas */
	--contenedor:1200px;
	--gutter:clamp(1.25rem, 4vw, 2.75rem);
	--esp-seccion:clamp(3.5rem, 7vw, 7rem);
	--radio:2px;
	--zoom:1;           /* multiplicador del control AA */
}

/* Modo oscuro global (toggle) */
[data-tema="oscuro"] {
	--bg:#100C07;
	--bg-2:#16110A;
	--superficie:#1F1810;
	--fg:#EFE7D6;
	--fg-70:#C7BCA6;
	--tenue:#8F8672;
	--borde:#2E2618;
}

/* Control de tamaño AA */
[data-zoom="grande"]  { font-size:112.5%; }
[data-zoom="enorme"]  { font-size:125%; }

/* --------------------------------------------------------------------------
   3. Reset
   -------------------------------------------------------------------------- */
*,*::before,*::after { box-sizing:border-box; }
* { margin:0; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

body {
	background:var(--bg);
	color:var(--fg);
	font-family:var(--f-texto);
	font-size:1.0625rem;
	line-height:1.6;
	font-weight:400;
	-webkit-font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
	overflow-x:hidden;
}

img,svg,video,canvas { display:block; max-width:100%; height:auto; }
a { color:inherit; text-decoration:none; }
button { font:inherit; color:inherit; background:none; border:none; cursor:pointer; }
input,textarea,select,button { font:inherit; color:inherit; }
ul,ol { list-style:none; padding:0; }
:focus-visible { outline:2px solid var(--rojo); outline-offset:3px; }

/* --------------------------------------------------------------------------
   4. Tipografía base
   -------------------------------------------------------------------------- */
h1,h2,h3,h4 { font-family:var(--f-display); font-weight:600; line-height:1.04; letter-spacing:-0.01em; }
p { text-wrap:pretty; }
strong,b { font-weight:600; }
em,i { font-style:italic; }
::selection { background:var(--rojo); color:var(--crema); }

/* --------------------------------------------------------------------------
   5. Layout
   -------------------------------------------------------------------------- */
.contenedor { width:100%; max-width:var(--contenedor); margin-inline:auto; padding-inline:var(--gutter); }
.contenedor--estrecho { max-width:900px; }
.seccion { padding-block:var(--esp-seccion); }
.seccion--compacta { padding-block:clamp(2.5rem,4vw,4rem); }
.seccion--papel2 { background:var(--bg-2); }

/* Secciones siempre oscuras (independientes del tema) */
.seccion--oscura,
.banda,
.portada--oscura {
	--bg:var(--negro);
	--bg-2:var(--negro-2);
	--superficie:var(--negro-2);
	--fg:var(--crema);
	--fg-70:var(--crema-70);
	--tenue:#8F8672;
	--borde:var(--linea-negro);
	background:var(--bg);
	color:var(--fg);
}

.texto-columna { max-width:62ch; }
.centrado { text-align:center; }

/* --------------------------------------------------------------------------
   6. Etiquetas mono (kicker, meta, folios)
   -------------------------------------------------------------------------- */
.kicker,
.mono {
	font-family:var(--f-mono);
	font-size:0.72rem;
	font-weight:500;
	letter-spacing:0.16em;
	text-transform:uppercase;
}
.kicker { color:var(--rojo); display:inline-block; }
.kicker--tenue { color:var(--tenue); }
.meta {
	font-family:var(--f-mono);
	font-size:0.72rem;
	letter-spacing:0.12em;
	text-transform:uppercase;
	color:var(--tenue);
}
.folio {
	font-family:var(--f-display);
	font-weight:600;
	font-size:clamp(2.5rem,5vw,3.5rem);
	color:transparent;
	-webkit-text-stroke:1px var(--borde);
	line-height:1;
}
.filete { border:0; border-top:1px solid var(--borde); margin:0; }

/* Cabecera de sección: título serif a la izq, enlace mono a la der */
.cabecera-seccion {
	display:flex; align-items:baseline; justify-content:space-between; gap:1.5rem;
	padding-bottom:1rem; margin-bottom:2.5rem;
	border-bottom:1px solid var(--borde);
}
.cabecera-seccion__titulo {
	font-family:var(--f-display); font-weight:600;
	font-size:clamp(1.75rem,3.4vw,2.6rem); line-height:1.05;
}
.cabecera-seccion__titulo em { font-style:italic; color:var(--rojo); }
.enlace-mono {
	font-family:var(--f-mono); font-size:0.72rem; font-weight:500;
	letter-spacing:0.14em; text-transform:uppercase;
	display:inline-flex; align-items:center; gap:0.5em; white-space:nowrap;
	color:var(--fg); transition:color .18s ease;
}
.enlace-mono:hover { color:var(--rojo); }
.enlace-mono .flecha { transition:transform .18s ease; }
.enlace-mono:hover .flecha { transform:translateX(3px); }

/* --------------------------------------------------------------------------
   7. Botones
   -------------------------------------------------------------------------- */
.boton {
	display:inline-flex; align-items:center; gap:0.6em;
	font-family:var(--f-mono); font-size:0.74rem; font-weight:600;
	letter-spacing:0.14em; text-transform:uppercase;
	padding:0.85em 1.4em; border:1px solid var(--fg);
	border-radius:var(--radio); background:transparent; color:var(--fg);
	transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.boton .flecha { transition:transform .18s ease; }
.boton:hover { background:var(--fg); color:var(--bg); }
.boton:hover .flecha { transform:translateX(3px); }
.boton--rojo { background:var(--rojo); border-color:var(--rojo); color:var(--crema); }
.boton--rojo:hover { background:var(--rojo-osc); border-color:var(--rojo-osc); color:var(--crema); }
.boton--naranja { background:var(--naranja); border-color:var(--naranja); color:#1a0d03; }
.boton--naranja:hover { background:var(--naranja-osc); border-color:var(--naranja-osc); color:#1a0d03; }
.boton--fantasma { border-color:var(--borde); color:var(--fg); }
.boton--fantasma:hover { background:transparent; border-color:var(--fg); color:var(--fg); }
.boton--grande { padding:1.05em 1.8em; font-size:0.78rem; }

/* --------------------------------------------------------------------------
   8. Tarjetas
   -------------------------------------------------------------------------- */
.rejilla { display:grid; gap:2.5rem 1.75rem; grid-template-columns:repeat(3,1fr); }
.rejilla--2 { grid-template-columns:repeat(2,1fr); }

.tarjeta { display:flex; flex-direction:column; }
.tarjeta__media {
	position:relative; aspect-ratio:4/3; overflow:hidden;
	background:var(--bg-2); margin-bottom:1.1rem; border:1px solid var(--borde);
}
.tarjeta__media img { width:100%; height:100%; object-fit:cover;
	transition:transform .5s ease, filter .5s ease; filter:saturate(.85); }
.tarjeta:hover .tarjeta__media img { transform:scale(1.03); filter:saturate(1); }
.tarjeta__media--vacia { display:grid; place-items:center; color:var(--tenue); }
.tarjeta__kicker { margin-bottom:0.6rem; }
.tarjeta__titulo {
	font-family:var(--f-display); font-weight:600;
	font-size:clamp(1.2rem,1.9vw,1.5rem); line-height:1.12; letter-spacing:-0.01em;
}
.tarjeta__titulo a { transition:color .18s ease; }
.tarjeta:hover .tarjeta__titulo a { color:var(--rojo); }
.tarjeta__dek { margin-top:0.7rem; color:var(--fg-70); font-size:0.98rem; line-height:1.5; }
.tarjeta__meta { margin-top:0.9rem; }
.tarjeta__play {
	position:absolute; inset:0; margin:auto; width:54px; height:54px;
	display:grid; place-items:center; background:var(--naranja); border-radius:50%;
	color:#160a02; pointer-events:none;
}

/* Cinta play sobre media */
.etiqueta-video { position:absolute; top:.75rem; left:.75rem; }

/* Sello de veredicto (Verificación) sobre la media de la tarjeta */
.veredicto {
	position:absolute; top:.75rem; left:.75rem; z-index:2;
	font-family:var(--f-mono); font-size:.62rem; font-weight:600;
	letter-spacing:.12em; text-transform:uppercase; padding:.42em .72em;
	border-radius:var(--radio); border:1px solid rgba(0,0,0,.18);
}
.veredicto--verdadero { background:var(--verde);   color:#06210e; }
.veredicto--enganoso  { background:var(--naranja);  color:#1a0d03; }
.veredicto--falso     { background:var(--rojo);     color:var(--crema); }
.veredicto--contexto  { background:var(--papel-3);  color:var(--tinta); border-color:var(--linea); }

/* --------------------------------------------------------------------------
   9. Cita / capitular / contenido editorial
   -------------------------------------------------------------------------- */
.cita {
	font-family:var(--f-display); font-weight:400;
	font-size:clamp(1.6rem,3.2vw,2.6rem); line-height:1.22; letter-spacing:-0.01em;
	max-width:24ch;
}
.cita cite { display:block; margin-top:1rem; font-style:normal;
	font-family:var(--f-mono); font-size:0.72rem; letter-spacing:0.14em;
	text-transform:uppercase; color:var(--tenue); }

.capitular > p:first-of-type::first-letter {
	font-family:var(--f-display); font-weight:600; float:left;
	font-size:3.6em; line-height:0.78; padding:0.06em 0.12em 0 0; color:var(--rojo);
}
.contenido > * + * { margin-top:1.15em; }
.contenido h2 { font-size:clamp(1.5rem,2.6vw,2rem); margin-top:1.8em; }
.contenido h3 { font-size:clamp(1.25rem,2vw,1.55rem); margin-top:1.6em; }
.contenido a { color:var(--rojo); text-decoration:underline; text-underline-offset:3px;
	text-decoration-thickness:1px; }
.contenido blockquote { border-left:3px solid var(--rojo); padding-left:1.25rem;
	font-family:var(--f-display); font-style:italic; font-size:1.3rem; color:var(--fg); }
.contenido ul { list-style:disc; padding-left:1.25rem; }
.contenido ol { list-style:decimal; padding-left:1.25rem; }
.contenido li + li { margin-top:.4em; }
.contenido img { margin-block:1.5em; border:1px solid var(--borde); }

/* --------------------------------------------------------------------------
   10. Duotono (imágenes de prensa)
   -------------------------------------------------------------------------- */
.duotono { position:relative; overflow:hidden; background:var(--negro); border:1px solid var(--borde); }
.duotono img { width:100%; filter:grayscale(1) contrast(1.05); transition:filter .5s ease; }
.duotono:hover img { filter:grayscale(0) contrast(1); }

/* --------------------------------------------------------------------------
   11. Banda CTA oscura (tramado diagonal rojo)
   -------------------------------------------------------------------------- */
.banda { position:relative; overflow:hidden; }
.banda__lienzo {
	position:relative; padding:clamp(2.25rem,4.5vw,3.5rem);
	background:
		repeating-linear-gradient(135deg, transparent 0 22px, rgba(195,31,43,.10) 22px 23px),
		var(--negro);
	border:1px solid var(--linea-negro);
}
.banda__grid { display:grid; grid-template-columns:1.4fr auto; gap:2rem; align-items:center; }
.banda__titulo { font-family:var(--f-display); font-weight:400;
	font-size:clamp(1.6rem,3.4vw,2.6rem); line-height:1.12; color:var(--crema); }
.banda__titulo em { font-style:italic; color:var(--rojo); }
.banda__texto { margin-top:1rem; color:var(--crema-70); max-width:52ch; }

/* --------------------------------------------------------------------------
   12. Panel técnico (estética forense) + barras de métrica
   -------------------------------------------------------------------------- */
.panel {
	background:var(--negro-2); border:1px solid var(--naranja);
	border-radius:var(--radio); padding:clamp(1.25rem,2.5vw,2rem); color:var(--crema);
}
.panel__cabecera { display:flex; justify-content:space-between; align-items:flex-start;
	gap:1rem; margin-bottom:1.5rem; }
.panel__marca { font-family:var(--f-mono); font-size:.72rem; letter-spacing:.14em;
	text-transform:uppercase; color:var(--naranja); }
.panel__sub { font-family:var(--f-sans); font-size:.82rem; color:var(--crema-70); margin-top:.25rem; }
.pildora-verde {
	font-family:var(--f-mono); font-size:.68rem; letter-spacing:.12em; text-transform:uppercase;
	color:var(--verde); border:1px solid var(--verde); border-radius:999px; padding:.4em .9em;
	display:inline-flex; gap:.5em; align-items:center;
}
.barra { margin-bottom:.9rem; }
.barra__fila { display:flex; justify-content:space-between; font-family:var(--f-mono);
	font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; color:var(--crema-70); margin-bottom:.35rem; }
.barra__valor { color:var(--verde); }
.barra__pista { height:3px; background:var(--linea-negro); overflow:hidden; }
.barra__relleno { height:100%; background:var(--verde);
	width:var(--pct,0%); transition:width 1s ease; }

/* Punto pulsante (en vivo / señal) */
.punto-vivo { display:inline-block; width:.55em; height:.55em; border-radius:50%;
	background:var(--rojo); box-shadow:0 0 0 0 rgba(195,31,43,.6); animation:pulso 2s infinite; }
@keyframes pulso { 0%{box-shadow:0 0 0 0 rgba(195,31,43,.55);} 70%{box-shadow:0 0 0 8px rgba(195,31,43,0);} 100%{box-shadow:0 0 0 0 rgba(195,31,43,0);} }
@media (prefers-reduced-motion:reduce){ .punto-vivo{ animation:none; } }

/* --------------------------------------------------------------------------
   13. Ticker
   -------------------------------------------------------------------------- */
.ticker { overflow:hidden; background:var(--negro); color:var(--crema);
	border-block:1px solid var(--linea-negro); }
.ticker__pista { display:flex; gap:0; width:max-content; animation:desliza 40s linear infinite; }
.ticker:hover .ticker__pista { animation-play-state:paused; }
.ticker__item { font-family:var(--f-mono); font-size:.72rem; letter-spacing:.14em;
	text-transform:uppercase; padding:.75rem 0; white-space:nowrap; color:var(--crema-70); }
.ticker__item::after { content:"·"; color:var(--rojo); padding-inline:1.25rem; }
.ticker__item strong { color:var(--rojo); font-weight:600; }
@keyframes desliza { from{transform:translateX(0);} to{transform:translateX(-50%);} }
@media (prefers-reduced-motion:reduce){ .ticker__pista{ animation:none; } }

/* --------------------------------------------------------------------------
   14. Formularios
   -------------------------------------------------------------------------- */
.formulario { display:grid; gap:1.1rem; }
.formulario__fila { display:grid; gap:1.1rem; grid-template-columns:1fr 1fr; }
.formulario label { font-family:var(--f-mono); font-size:.7rem; letter-spacing:.12em;
	text-transform:uppercase; color:var(--tenue); display:block; margin-bottom:.45rem; }
.formulario input,.formulario textarea {
	width:100%; background:var(--superficie); border:1px solid var(--borde);
	border-radius:var(--radio); padding:.85rem 1rem; font-family:var(--f-texto); font-size:1rem;
	transition:border-color .18s ease; }
.formulario input:focus,.formulario textarea:focus { outline:none; border-color:var(--rojo); }
.formulario textarea { min-height:170px; resize:vertical; }
.campo-miel { position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }
.aviso { border-left:3px solid var(--tenue); padding:.9rem 1.1rem; background:var(--superficie);
	font-family:var(--f-sans); font-size:.95rem; }
.aviso--gracias { border-color:var(--verde); }
.aviso--error { border-color:var(--rojo); }

/* --------------------------------------------------------------------------
   15. Compartir
   -------------------------------------------------------------------------- */
.compartir { display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; }
.compartir__etq { font-family:var(--f-mono); font-size:.68rem; letter-spacing:.14em;
	text-transform:uppercase; color:var(--tenue); }
.compartir__btn { display:inline-flex; align-items:center; gap:.45em;
	font-family:var(--f-mono); font-size:.66rem; letter-spacing:.1em; text-transform:uppercase;
	border:1px solid var(--borde); border-radius:var(--radio); padding:.5em .8em;
	transition:background .18s ease,color .18s ease,border-color .18s ease; }
.compartir__btn:hover { background:var(--fg); color:var(--bg); border-color:var(--fg); }

/* --------------------------------------------------------------------------
   16. Paginación
   -------------------------------------------------------------------------- */
.paginacion { margin-top:3rem; }
.paginacion .nav-links { display:flex; gap:.5rem; flex-wrap:wrap; justify-content:center; }
.paginacion .page-numbers { font-family:var(--f-mono); font-size:.75rem; letter-spacing:.08em;
	border:1px solid var(--borde); padding:.6em .95em; border-radius:var(--radio); }
.paginacion .page-numbers.current { background:var(--fg); color:var(--bg); border-color:var(--fg); }
.paginacion a.page-numbers:hover { border-color:var(--fg); }

/* --------------------------------------------------------------------------
   17. Revelado al hacer scroll
   -------------------------------------------------------------------------- */
.revelar { opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease; }
.revelar.es-visible { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .revelar{ opacity:1; transform:none; transition:none; } }

/* --------------------------------------------------------------------------
   18. Accesibilidad
   -------------------------------------------------------------------------- */
.saltar-al-contenido { position:absolute; left:-9999px; top:0; z-index:100;
	background:var(--rojo); color:var(--crema); padding:.8rem 1.2rem; font-family:var(--f-mono);
	font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; }
.saltar-al-contenido:focus { left:0; }
.oculto-visualmente { position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* --------------------------------------------------------------------------
   19. Responsive base
   -------------------------------------------------------------------------- */
@media (max-width:900px){
	.rejilla { grid-template-columns:repeat(2,1fr); }
	.banda__grid { grid-template-columns:1fr; }
	.formulario__fila { grid-template-columns:1fr; }
}
@media (max-width:640px){
	.rejilla,.rejilla--2 { grid-template-columns:1fr; }
	.cabecera-seccion { flex-direction:column; align-items:flex-start; gap:.6rem; }
}

/* ==========================================================================
   20. Chrome: cabecera (barra de fecha, marca, nav)
   ========================================================================== */
.cabecera { background:var(--bg); }

/* Barra de fecha */
.barra-fecha { border-bottom:1px solid var(--borde); }
.barra-fecha__grid { display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
	padding-block:.55rem; gap:1rem; }
.barra-fecha__item { font-family:var(--f-mono); font-size:.68rem; letter-spacing:.12em;
	text-transform:uppercase; color:var(--tenue); }
.barra-fecha__fecha { display:inline-flex; align-items:center; gap:.55em; justify-self:start; }
.barra-fecha__centro { justify-self:center; text-align:center; }
.barra-fecha__idioma { justify-self:end; color:var(--fg); }

/* Marca */
.cabecera__marca { text-align:center; padding-block:clamp(1.1rem,2.6vw,1.9rem); }
.marca { display:inline-flex; flex-direction:column; align-items:center; gap:.35rem; color:var(--fg); }
.marca__cuerpo { display:inline-flex; align-items:center; gap:.55rem; }
.marca__onda { width:clamp(38px,5vw,54px); height:auto; color:var(--fg); }
.marca__onda-rojo { fill:var(--rojo); }
.marca__texto { font-family:var(--f-display); font-weight:900; letter-spacing:-0.02em;
	font-size:clamp(1.7rem,4.4vw,2.6rem); line-height:1; }
.marca__punto { color:var(--rojo); }
.cabecera__lema { color:var(--tenue); font-size:.66rem; letter-spacing:.22em; }

/* Nav */
.nav { border-block:1px solid var(--borde); background:var(--bg); position:relative; z-index:20; }
.nav__grid { display:flex; align-items:center; justify-content:center; position:relative; }
.nav__lista { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; }
.nav__lista a { display:inline-block; font-family:var(--f-mono); font-size:.72rem; font-weight:500;
	letter-spacing:.14em; text-transform:uppercase; padding:1.05rem .95rem; color:var(--fg);
	transition:color .18s ease; }
.nav__lista a:hover { color:var(--rojo); }
.nav__lista .nav__accion a,
.nav__lista .menu-item:last-child a { color:var(--rojo); }
.nav__lista .nav__accion a:hover { color:var(--rojo-osc); }
.nav__lista .current-menu-item > a,
.nav__lista .current_page_item > a { color:var(--rojo); }

/* Toggle móvil */
.nav__toggle { display:none; position:absolute; left:var(--gutter); top:50%; transform:translateY(-50%);
	width:26px; height:22px; }
.nav__toggle-linea, .nav__toggle-linea::before, .nav__toggle-linea::after {
	content:''; position:absolute; left:0; width:26px; height:2px; background:var(--fg); transition:.2s ease; }
.nav__toggle-linea { top:10px; }
.nav__toggle-linea::before { top:-7px; }
.nav__toggle-linea::after { top:7px; }

/* ==========================================================================
   21. Cabecera de página (interiores)
   ========================================================================== */
.cabecera-pagina { text-align:center; max-width:840px; margin-inline:auto; }
.cabecera-pagina .kicker { margin-bottom:1.25rem; }
.cabecera-pagina__titulo { font-family:var(--f-display); font-weight:600;
	font-size:clamp(2.1rem,7vw,5.5rem); line-height:1; letter-spacing:-0.02em; overflow-wrap:break-word; }
.cabecera-pagina__titulo em { font-style:italic; color:var(--rojo); }
.cabecera-pagina__dek { margin:1.5rem auto 0; max-width:38ch; font-size:clamp(1.15rem,2vw,1.5rem);
	line-height:1.35; color:var(--fg-70); }
.cabecera-pagina--izq { text-align:left; margin-inline:0; max-width:none; }

/* ==========================================================================
   22. Chrome: pie
   ========================================================================== */
.pie { padding-block:clamp(3rem,5vw,4.5rem) 2.5rem; border-top:1px solid var(--borde); }
.pie__top { display:grid; grid-template-columns:1.7fr 1fr 1fr 1fr; gap:2rem; }
.pie__marca-col .marca { align-items:flex-start; }
.pie__marca-col .marca__texto { font-size:clamp(1.5rem,3vw,2rem); }
.pie__lema { margin-top:1rem; color:var(--fg-70); font-size:.98rem; max-width:34ch; line-height:1.5; }
.pie__titulo { color:var(--tenue); margin-bottom:1.1rem; font-size:.68rem; letter-spacing:.16em; }
.pie__lista li + li { margin-top:.55rem; }
.pie__lista a { transition:color .18s ease; }
.pie__lista a:hover { color:var(--rojo); }
.pie__nota { font-family:var(--f-display); font-style:italic; color:var(--fg-70);
	font-size:1.15rem; max-width:56ch; margin-block:1.75rem; line-height:1.4; }
.pie__ficha { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; margin-bottom:1.75rem; }
.pie__ficha-etq { color:var(--rojo); }
.pie__ficha-valor { font-family:var(--f-mono); font-size:.72rem; letter-spacing:.1em;
	color:var(--fg-70); border:1px solid var(--borde); padding:.6em 1em; border-radius:var(--radio);
	overflow-x:auto; white-space:nowrap; }
.pie__colofon { display:flex; align-items:center; justify-content:space-between; gap:1.25rem;
	flex-wrap:wrap; }
.pie__copy { color:var(--tenue); font-size:.68rem; letter-spacing:.08em; }
.pie__copy a:hover, .pie__promesa:hover { color:var(--rojo); }
.pie__promesa { color:var(--tenue); font-size:.68rem; letter-spacing:.1em; }
.pie__controles { display:flex; gap:.5rem; }
.control-toggle { border:1px solid var(--borde); border-radius:var(--radio); width:34px; height:30px;
	display:grid; place-items:center; font-family:var(--f-mono); font-size:.72rem; letter-spacing:.06em;
	color:var(--fg); transition:background .18s ease,color .18s ease,border-color .18s ease; }
.control-toggle:hover { background:var(--fg); color:var(--bg); }
.pie__contador { margin-top:1.75rem; color:var(--tenue); font-size:.68rem; letter-spacing:.1em; }
.pie__contador strong { color:var(--fg); font-weight:700; }

/* ==========================================================================
   23. Chrome responsive
   ========================================================================== */
@media (max-width:900px){
	.pie__top { grid-template-columns:1fr 1fr; }
	.pie__marca-col { grid-column:1 / -1; }
}
@media (max-width:760px){
	.nav__toggle { display:block; }
	.nav__grid { justify-content:flex-start; min-height:52px; }
	.nav__menu { display:none; position:absolute; top:100%; left:0; right:0; background:var(--bg);
		border-bottom:1px solid var(--borde); box-shadow:0 12px 24px rgba(0,0,0,.12); }
	.nav--abierto .nav__menu { display:block; }
	.nav__lista { flex-direction:column; align-items:stretch; }
	.nav__lista a { padding:.9rem var(--gutter); border-top:1px solid var(--borde); text-align:left; }
	.barra-fecha__centro { display:none; }
	.barra-fecha__grid { grid-template-columns:1fr auto; }
}
@media (max-width:560px){
	.pie__top { grid-template-columns:1fr; }
	.pie__colofon { flex-direction:column; align-items:flex-start; }
}

/* ==========================================================================
   24. 404 y buscador
   ========================================================================== */
.error404 { padding-block:clamp(4rem,10vw,8rem); }
.error404__num { font-size:clamp(6rem,20vw,15rem); -webkit-text-stroke:1.5px var(--borde);
	line-height:.9; margin-inline:auto; }
.error404__titulo { font-family:var(--f-display); font-weight:600; margin-top:1rem;
	font-size:clamp(1.8rem,4vw,3rem); }
.error404__titulo em { font-style:italic; color:var(--rojo); }
.error404__txt { color:var(--fg-70); margin-top:1rem; max-width:44ch; margin-inline:auto; }
.error404__acciones { display:flex; gap:.75rem; justify-content:center; flex-wrap:wrap; margin-top:2rem; }

.buscador { display:flex; align-items:center; gap:1rem; border-bottom:2px solid var(--fg);
	max-width:840px; margin:2.5rem auto 0; }
.buscador__campo { flex:1; background:transparent; border:0; padding:.6rem 0;
	font-family:var(--f-display); font-size:clamp(1.5rem,4vw,2.6rem); color:var(--fg); }
.buscador__campo:focus { outline:none; }
.buscador__campo::placeholder { color:var(--tenue); }
.buscador__btn { font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--rojo);
	white-space:nowrap; }
.buscador__resumen { color:var(--tenue); margin-bottom:2rem; }
.buscador__vacio { font-family:var(--f-display); font-style:italic; font-size:1.3rem; color:var(--fg-70); }
