/* =========================================================
   CRONÓMETRO — Nota Rápida
   Sistema de diseño: instrumento de medición editorial
   ========================================================= */

:root {
	/* Paleta */
	--nr-tinta: #12131a;
	--nr-tinta-90: #1c1e28;
	--nr-tinta-70: #3a3d4c;
	--nr-papel: #fbfaf7;
	--nr-cinta: #e8e6df;
	--nr-cinta-2: #f2f0ea;
	--nr-pulso: #ff4a1c;
	--nr-senal: #1b4dff;
	--nr-gris: #6e6f78;
	--nr-gris-claro: #a2a3ac;

	/* Tipografía */
	--nr-display: "Archivo", "Helvetica Neue", Arial, sans-serif;
	--nr-texto: "Instrument Sans", "Segoe UI", system-ui, sans-serif;
	--nr-dato: "DM Mono", "SFMono-Regular", Consolas, monospace;

	/* Métricas */
	--nr-ancho: 1320px;
	--nr-gutter: 28px;
	--nr-radio: 2px;
	--nr-borde: 1px solid var(--nr-cinta);
	--nr-borde-fuerte: 2px solid var(--nr-tinta);
}

/* ---------- Reset acotado ---------- */
*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
	margin: 0;
	background: var(--nr-papel);
	color: var(--nr-tinta);
	font-family: var(--nr-texto);
	font-size: 17px;
	line-height: 1.62;
	font-synthesis-weight: none;
	-webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
figure { margin: 0; }

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid var(--nr-senal);
	outline-offset: 2px;
}

.nr-salto {
	position: absolute;
	left: -9999px;
	top: 0;
	background: var(--nr-tinta);
	color: var(--nr-papel);
	padding: 12px 20px;
	z-index: 999;
	font-family: var(--nr-dato);
}
.nr-salto:focus { left: 0; }

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	overflow: hidden;
	position: absolute !important;
	word-wrap: normal !important;
}

/* ---------- Contenedor ---------- */
.nr-wrap {
	width: 100%;
	max-width: var(--nr-ancho);
	margin: 0 auto;
	padding: 0 var(--nr-gutter);
}

.nr-sitio {
	max-width: calc(var(--nr-ancho) + 40px);
	margin: 0 auto;
	background: var(--nr-papel);
	box-shadow: 0 0 0 1px var(--nr-cinta);
	min-height: 100vh;
	overflow-clip-margin: 0;
}

/* ---------- Tipografía base ---------- */
h1, h2, h3, h4, h5, h6 {
	font-family: var(--nr-display);
	font-weight: 800;
	letter-spacing: -0.028em;
	line-height: 1.03;
	margin: 0 0 .5em;
	text-wrap: balance;
}

.nr-dato,
.nr-meta,
.nr-eyebrow {
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	font-weight: 500;
}

/* =========================================================
   BARRA DE PROGRESO DE LECTURA
   ========================================================= */
.nr-progreso {
	position: fixed;
	top: 0; left: 0;
	height: 3px;
	width: 0;
	background: var(--nr-pulso);
	z-index: 9999;
	transition: width .08s linear;
}

/* =========================================================
   CABECERA
   ========================================================= */
.nr-topbar {
	background: var(--nr-tinta);
	color: var(--nr-papel);
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.nr-topbar__in {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 38px;
	padding-top: 6px;
	padding-bottom: 6px;
}
.nr-topbar__fecha { color: var(--nr-gris-claro); }
.nr-reloj {
	color: var(--nr-pulso);
	font-variant-numeric: tabular-nums;
	font-weight: 500;
}
.nr-reloj::before {
	content: "";
	display: inline-block;
	width: 6px; height: 6px;
	border-radius: 50%;
	background: var(--nr-pulso);
	margin-right: 8px;
	vertical-align: 1px;
	animation: nr-latido 1s steps(2, end) infinite;
}
@keyframes nr-latido { 50% { opacity: .15; } }

.nr-social { display: flex; gap: 14px; align-items: center; }
.nr-social a {
	color: var(--nr-gris-claro);
	display: inline-flex;
	transition: color .18s ease;
}
.nr-social a:hover { color: var(--nr-pulso); }
.nr-social svg { width: 15px; height: 15px; fill: currentColor; }

/* --- Masthead --- */
.nr-masthead {
	border-bottom: var(--nr-borde-fuerte);
	background: var(--nr-papel);
}
.nr-masthead__in {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 28px;
	padding-top: 26px;
	padding-bottom: 22px;
}

.nr-marca { display: flex; align-items: center; gap: 14px; }
.nr-marca__logo { display: block; }
.nr-marca__logo img { max-height: 62px; width: auto; }
.nr-cron { width: 52px; height: 52px; flex: 0 0 52px; }
.nr-cron .nr-cron__aguja { transform-origin: 32px 34px; }
.nr-titulo {
	font-family: var(--nr-display);
	font-weight: 900;
	font-size: clamp(30px, 4.4vw, 46px);
	letter-spacing: -0.05em;
	line-height: .9;
	margin: 0;
	text-transform: uppercase;
}
.nr-titulo a { display: block; }
.nr-tagline {
	font-family: var(--nr-dato);
	font-size: 10.5px;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--nr-gris);
	margin: 6px 0 0;
}

.nr-masthead__anuncio { justify-self: end; max-width: 468px; }

.nr-buscar-btn,
.nr-menu-btn {
	background: none;
	border: var(--nr-borde-fuerte);
	padding: 9px 14px;
	cursor: pointer;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--nr-tinta);
	transition: background .18s ease, color .18s ease;
}
.nr-buscar-btn:hover,
.nr-menu-btn:hover { background: var(--nr-tinta); color: var(--nr-papel); }
.nr-menu-btn { display: none; }

/* --- Navegación --- */
.nr-nav {
	background: var(--nr-papel);
	border-bottom: var(--nr-borde);
	position: sticky;
	top: 0;
	z-index: 400;
}
.nr-nav.is-fijo { box-shadow: 0 6px 24px rgba(18, 19, 26, .08); }
.nr-nav__in { display: flex; align-items: center; justify-content: space-between; gap: 20px; }

.nr-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.nr-menu li { position: relative; }
.nr-menu > li > a {
	display: block;
	padding: 15px 16px;
	font-family: var(--nr-display);
	font-weight: 700;
	font-size: 13.5px;
	letter-spacing: .02em;
	text-transform: uppercase;
	position: relative;
}
.nr-menu > li > a::after {
	content: "";
	position: absolute;
	left: 16px; right: 16px; bottom: 9px;
	height: 3px;
	background: var(--nr-pulso);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .22s cubic-bezier(.2, .8, .3, 1);
}
.nr-menu > li > a:hover::after,
.nr-menu > li.current-menu-item > a::after { transform: scaleX(1); }

.nr-menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 6px 0;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 210px;
	background: var(--nr-tinta);
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: all .2s ease;
	z-index: 500;
}
.nr-menu li:hover > .sub-menu,
.nr-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.nr-menu .sub-menu a {
	display: block;
	padding: 9px 18px;
	color: var(--nr-papel);
	font-size: 14px;
}
.nr-menu .sub-menu a:hover { color: var(--nr-pulso); }

.nr-nav__cta {
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	background: var(--nr-pulso);
	color: #fff;
	padding: 8px 14px;
	white-space: nowrap;
}
.nr-nav__cta:hover { background: var(--nr-tinta); }

/* --- Buscador desplegable --- */
.nr-buscador {
	display: none;
	border-bottom: var(--nr-borde);
	background: var(--nr-cinta-2);
	padding: 22px 0;
}
.nr-buscador.is-abierto { display: block; }
.nr-buscador form { display: flex; gap: 0; max-width: 640px; margin: 0 auto; }
.nr-buscador input[type="search"] {
	flex: 1;
	border: var(--nr-borde-fuerte);
	border-right: 0;
	background: var(--nr-papel);
	padding: 14px 16px;
	font-family: var(--nr-texto);
	font-size: 16px;
	color: var(--nr-tinta);
}
.nr-buscador button {
	border: var(--nr-borde-fuerte);
	background: var(--nr-tinta);
	color: var(--nr-papel);
	padding: 0 22px;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	cursor: pointer;
}

/* =========================================================
   CINTILLO DE ÚLTIMA HORA
   ========================================================= */
.nr-cintillo {
	background: var(--nr-tinta);
	color: var(--nr-papel);
	overflow: hidden;
	border-bottom: 3px solid var(--nr-pulso);
}
.nr-cintillo__in { display: flex; align-items: stretch; }
.nr-cintillo__et {
	background: var(--nr-pulso);
	color: #fff;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
	padding: 11px 18px;
	white-space: nowrap;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
}
.nr-cintillo__pista {
	flex: 1;
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: center;
}
.nr-cintillo__tren {
	display: flex;
	gap: 46px;
	white-space: nowrap;
	padding-left: 22px;
	animation: nr-corre 46s linear infinite;
}
.nr-cintillo__pista:hover .nr-cintillo__tren { animation-play-state: paused; }
.nr-cintillo__tren a { font-size: 14.5px; font-weight: 500; }
.nr-cintillo__tren a:hover { color: var(--nr-pulso); }
.nr-cintillo__tren .nr-h {
	font-family: var(--nr-dato);
	font-size: 11px;
	color: var(--nr-pulso);
	margin-right: 10px;
}
@keyframes nr-corre {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

/* =========================================================
   ETIQUETAS Y METADATOS
   ========================================================= */
.nr-cat {
	display: inline-block;
	font-family: var(--nr-dato);
	font-size: 10.5px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--nr-pulso);
	font-weight: 500;
	position: relative;
	padding-left: 14px;
}
.nr-cat::before {
	content: "";
	position: absolute;
	left: 0; top: 50%;
	width: 8px; height: 2px;
	background: var(--nr-pulso);
	transform: translateY(-50%);
}
.nr-cat--claro { color: var(--nr-papel); }
.nr-cat--claro::before { background: var(--nr-pulso); }

.nr-meta {
	color: var(--nr-gris);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	font-variant-numeric: tabular-nums;
}
.nr-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nr-meta .nr-sep { color: var(--nr-cinta); }
.nr-meta a { color: var(--nr-tinta); border-bottom: 1px solid var(--nr-cinta); }
.nr-meta a:hover { color: var(--nr-pulso); }

/* Reloj de lectura */
.nr-lectura {
	color: var(--nr-tinta);
	background: var(--nr-cinta-2);
	padding: 3px 8px;
	border-left: 2px solid var(--nr-pulso);
}

/* =========================================================
   ENCABEZADO DE SECCIÓN
   ========================================================= */
.nr-seccion {
	display: flex;
	align-items: baseline;
	gap: 18px;
	margin: 0 0 26px;
	border-bottom: var(--nr-borde-fuerte);
	padding-bottom: 12px;
}
.nr-seccion h2 {
	font-size: clamp(20px, 2.4vw, 27px);
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: -0.035em;
	margin: 0;
}
.nr-seccion__num {
	font-family: var(--nr-dato);
	font-size: 11px;
	color: var(--nr-pulso);
	letter-spacing: .12em;
}
.nr-seccion__link {
	margin-left: auto;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--nr-gris);
}
.nr-seccion__link:hover { color: var(--nr-pulso); }

/* =========================================================
   PORTADA — HERO ASIMÉTRICO
   ========================================================= */
.nr-portada { padding: 34px 0 0; }

.nr-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.62fr) minmax(0, 1fr);
	gap: 34px;
	margin-bottom: 46px;
}

.nr-hero__principal { position: relative; }
.nr-hero__fig {
	position: relative;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--nr-cinta);
}
.nr-hero__fig img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .7s cubic-bezier(.2, .8, .3, 1);
}
.nr-hero__principal:hover .nr-hero__fig img { transform: scale(1.035); }
.nr-hero__fig::after {
	content: "";
	position: absolute; inset: 0;
	background: linear-gradient(to top, rgba(18, 19, 26, .92) 0%, rgba(18, 19, 26, .45) 42%, rgba(18, 19, 26, 0) 72%);
}
.nr-hero__cuerpo {
	position: absolute;
	left: 0; right: 0; bottom: 0;
	padding: 32px 34px;
	color: var(--nr-papel);
	z-index: 2;
}
.nr-hero__cuerpo h2 {
	font-size: clamp(28px, 3.7vw, 50px);
	font-weight: 900;
	letter-spacing: -0.045em;
	line-height: .98;
	margin: 12px 0 14px;
	color: var(--nr-papel);
}
.nr-hero__cuerpo h2 a:hover { color: var(--nr-pulso); }
.nr-hero__sumario {
	color: rgba(251, 250, 247, .82);
	font-size: 16px;
	margin: 0 0 14px;
	max-width: 62ch;
}
.nr-hero__cuerpo .nr-meta { color: var(--nr-gris-claro); }
.nr-hero__cuerpo .nr-meta a { color: var(--nr-papel); border-bottom-color: rgba(251, 250, 247, .3); }

/* Hoja de tiempos parciales */
.nr-parciales {
	border-top: var(--nr-borde-fuerte);
	padding-top: 0;
}
.nr-parciales__et {
	font-family: var(--nr-dato);
	font-size: 10.5px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--nr-gris);
	padding: 12px 0 14px;
	display: flex;
	justify-content: space-between;
}
.nr-parcial {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr);
	gap: 14px;
	padding: 16px 0;
	border-top: var(--nr-borde);
	align-items: start;
}
.nr-parcial:first-of-type { border-top: 0; }
.nr-parcial__hora {
	font-family: var(--nr-dato);
	font-size: 12px;
	color: var(--nr-pulso);
	font-variant-numeric: tabular-nums;
	padding-top: 2px;
	position: relative;
}
.nr-parcial__hora::after {
	content: "";
	position: absolute;
	right: -8px; top: 6px;
	width: 5px; height: 5px;
	background: var(--nr-cinta);
	border-radius: 50%;
}
.nr-parcial:hover .nr-parcial__hora::after { background: var(--nr-pulso); }
.nr-parcial h3 {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.17;
	letter-spacing: -0.02em;
	margin: 0 0 6px;
}
.nr-parcial h3 a:hover { color: var(--nr-pulso); }
.nr-parcial .nr-cat { font-size: 9.5px; }

/* =========================================================
   REJILLA DE TARJETAS
   ========================================================= */
.nr-rejilla {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(258px, 1fr));
	gap: 30px 28px;
}
.nr-rejilla--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.nr-tarjeta { display: flex; flex-direction: column; }
.nr-tarjeta__fig {
	position: relative;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: var(--nr-cinta);
	margin-bottom: 14px;
}
.nr-tarjeta__fig img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform .6s cubic-bezier(.2, .8, .3, 1), filter .4s ease;
}
.nr-tarjeta:hover .nr-tarjeta__fig img { transform: scale(1.045); }
.nr-tarjeta__fig .nr-tiempo {
	position: absolute;
	left: 0; bottom: 0;
	background: var(--nr-tinta);
	color: var(--nr-papel);
	font-family: var(--nr-dato);
	font-size: 10.5px;
	letter-spacing: .1em;
	padding: 5px 10px;
	font-variant-numeric: tabular-nums;
}
.nr-tarjeta h3 {
	font-size: 20px;
	font-weight: 800;
	line-height: 1.12;
	letter-spacing: -0.03em;
	margin: 8px 0 10px;
}
.nr-tarjeta h3 a:hover { color: var(--nr-pulso); }
.nr-tarjeta p {
	margin: 0 0 12px;
	color: var(--nr-tinta-70);
	font-size: 15px;
	line-height: 1.55;
}
.nr-tarjeta .nr-meta { margin-top: auto; }

/* Variante compacta sin imagen */
.nr-tarjeta--texto {
	border-top: var(--nr-borde-fuerte);
	padding-top: 14px;
}
.nr-tarjeta--texto h3 { font-size: 18px; }

/* =========================================================
   BLOQUE "EN 30 SEGUNDOS" — elemento firma
   ========================================================= */
.nr-30 {
	background: var(--nr-tinta);
	color: var(--nr-papel);
	padding: 26px 30px 28px;
	margin: 0 0 34px;
	position: relative;
	border-left: 5px solid var(--nr-pulso);
}
.nr-30__et {
	display: flex;
	align-items: center;
	gap: 12px;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--nr-pulso);
	margin-bottom: 16px;
}
.nr-30__et svg { width: 16px; height: 16px; fill: currentColor; }
.nr-30 ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.nr-30 li {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	font-size: 16.5px;
	line-height: 1.45;
}
.nr-30 li::before {
	content: attr(data-t);
	font-family: var(--nr-dato);
	font-size: 11px;
	color: var(--nr-gris-claro);
	padding-top: 4px;
	font-variant-numeric: tabular-nums;
	border-right: 1px solid var(--nr-tinta-70);
}

/* =========================================================
   ENTRADA INDIVIDUAL
   ========================================================= */
.nr-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 46px;
	padding: 38px 0 60px;
	align-items: start;
}
.nr-layout--full { grid-template-columns: minmax(0, 1fr); }

.nr-miga {
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--nr-gris);
	margin-bottom: 20px;
}
.nr-miga a:hover { color: var(--nr-pulso); }
.nr-miga span { color: var(--nr-cinta); margin: 0 7px; }

.nr-entrada__titulo {
	font-size: clamp(31px, 4.4vw, 56px);
	font-weight: 900;
	letter-spacing: -0.048em;
	line-height: .98;
	margin: 14px 0 18px;
}
.nr-entrada__sumario {
	font-size: 20px;
	line-height: 1.5;
	color: var(--nr-tinta-70);
	font-weight: 500;
	margin: 0 0 22px;
	max-width: 68ch;
}
.nr-entrada__firma {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px 0;
	border-top: var(--nr-borde);
	border-bottom: var(--nr-borde);
	margin-bottom: 28px;
}
.nr-entrada__firma img { border-radius: 50%; width: 44px; height: 44px; }
.nr-entrada__firma .nr-quien { font-weight: 700; font-size: 15px; }
.nr-entrada__firma .nr-quien a:hover { color: var(--nr-pulso); }

.nr-entrada__fig { margin: 0 0 10px; }
.nr-entrada__fig figcaption {
	font-family: var(--nr-dato);
	font-size: 11px;
	color: var(--nr-gris);
	padding: 9px 0;
	border-bottom: var(--nr-borde);
	margin-bottom: 30px;
	letter-spacing: .03em;
}

.nr-contenido { font-size: 18px; line-height: 1.72; max-width: 72ch; }
.nr-contenido p { margin: 0 0 1.25em; }
.nr-contenido h2 {
	font-size: 28px;
	margin: 1.7em 0 .6em;
	letter-spacing: -0.035em;
}
.nr-contenido h3 { font-size: 22px; margin: 1.5em 0 .5em; }
.nr-contenido a {
	color: var(--nr-senal);
	border-bottom: 1px solid rgba(27, 77, 255, .35);
}
.nr-contenido a:hover { border-bottom-color: var(--nr-senal); }
.nr-contenido blockquote {
	margin: 1.8em 0;
	padding: 4px 0 4px 26px;
	border-left: 4px solid var(--nr-pulso);
	font-family: var(--nr-display);
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.028em;
}
.nr-contenido blockquote p:last-child { margin-bottom: 0; }
.nr-contenido ul, .nr-contenido ol { padding-left: 1.2em; margin: 0 0 1.25em; }
.nr-contenido li { margin-bottom: .5em; }
.nr-contenido img { margin: 1.6em 0; }
.nr-contenido table { width: 100%; border-collapse: collapse; margin: 1.6em 0; font-size: 15px; }
.nr-contenido th, .nr-contenido td { border: var(--nr-borde); padding: 10px 12px; text-align: left; }
.nr-contenido th { background: var(--nr-cinta-2); font-family: var(--nr-dato); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }

/* Compartir */
.nr-compartir {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin: 38px 0;
	padding: 18px 0;
	border-top: var(--nr-borde-fuerte);
	border-bottom: var(--nr-borde);
}
.nr-compartir__et {
	font-family: var(--nr-dato);
	font-size: 10.5px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--nr-gris);
	margin-right: 6px;
}
.nr-compartir a, .nr-compartir button {
	width: 38px; height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: var(--nr-borde-fuerte);
	background: none;
	color: var(--nr-tinta);
	cursor: pointer;
	transition: background .18s ease, color .18s ease;
}
.nr-compartir a:hover, .nr-compartir button:hover { background: var(--nr-tinta); color: var(--nr-papel); }
.nr-compartir svg { width: 16px; height: 16px; fill: currentColor; }

/* Etiquetas */
.nr-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 34px; }
.nr-tags a {
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .06em;
	text-transform: uppercase;
	border: var(--nr-borde);
	padding: 6px 11px;
	color: var(--nr-gris);
}
.nr-tags a:hover { border-color: var(--nr-tinta); color: var(--nr-tinta); }

/* Autor */
.nr-autor-caja {
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr);
	gap: 20px;
	background: var(--nr-cinta-2);
	padding: 24px;
	margin: 0 0 40px;
	border-left: 4px solid var(--nr-tinta);
}
.nr-autor-caja img { border-radius: 50%; }
.nr-autor-caja h4 { font-size: 18px; margin: 0 0 6px; }
.nr-autor-caja p { margin: 0; font-size: 15px; color: var(--nr-tinta-70); }

/* Navegación entre entradas */
.nr-nav-entradas {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	background: var(--nr-cinta);
	border: var(--nr-borde);
	margin-bottom: 46px;
}
.nr-nav-entradas > div { background: var(--nr-papel); padding: 20px 22px; }
.nr-nav-entradas .nr-dato { color: var(--nr-gris); display: block; margin-bottom: 8px; }
.nr-nav-entradas h4 { font-size: 17px; margin: 0; line-height: 1.15; }
.nr-nav-entradas h4 a:hover { color: var(--nr-pulso); }
.nr-nav-entradas .nr-sig { text-align: right; }

/* =========================================================
   BARRA LATERAL
   ========================================================= */
.nr-lateral { position: sticky; top: 76px; }
.nr-widget { margin-bottom: 38px; }
.nr-widget__t {
	font-family: var(--nr-display);
	font-size: 15px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: -0.01em;
	margin: 0 0 16px;
	padding-bottom: 10px;
	border-bottom: var(--nr-borde-fuerte);
	display: flex;
	align-items: center;
	gap: 10px;
}
.nr-widget__t::before {
	content: "";
	width: 9px; height: 9px;
	background: var(--nr-pulso);
	flex: 0 0 9px;
}
.nr-widget ul { list-style: none; margin: 0; padding: 0; }
.nr-widget ul li {
	padding: 9px 0;
	border-bottom: var(--nr-borde);
	font-size: 15px;
}
.nr-widget ul li a:hover { color: var(--nr-pulso); }

/* Lista numerada de lo más leído */
.nr-top { counter-reset: nrtop; list-style: none; margin: 0; padding: 0; }
.nr-top li {
	counter-increment: nrtop;
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	gap: 14px;
	padding: 14px 0;
	border-bottom: var(--nr-borde);
	align-items: start;
}
.nr-top li::before {
	content: counter(nrtop, decimal-leading-zero);
	font-family: var(--nr-display);
	font-weight: 900;
	font-size: 25px;
	line-height: 1;
	color: var(--nr-cinta);
	letter-spacing: -0.05em;
}
.nr-top li:hover::before { color: var(--nr-pulso); }
.nr-top h4 { font-size: 15.5px; font-weight: 700; line-height: 1.2; margin: 0 0 5px; letter-spacing: -0.015em; }

/* =========================================================
   ZONAS PUBLICITARIAS
   ========================================================= */
.nr-anuncio { margin: 0 0 34px; text-align: center; }
.nr-anuncio--cabecera { margin: 0; }
.nr-anuncio--cabecera .nr-anuncio__caja {
	min-height: 90px;
	padding: 14px 18px;
	gap: 6px;
}
.nr-anuncio--cabecera .nr-anuncio__caja strong { font-size: 16px; }
.nr-anuncio--franja { margin: 46px 0; }
.nr-anuncio__caja {
	border: 2px dashed var(--nr-cinta);
	background: var(--nr-cinta-2);
	padding: 30px 22px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 120px;
	transition: border-color .2s ease;
}
.nr-anuncio__caja:hover { border-color: var(--nr-pulso); }
.nr-anuncio__caja strong {
	font-family: var(--nr-display);
	font-weight: 900;
	font-size: 19px;
	text-transform: uppercase;
	letter-spacing: -0.02em;
}
.nr-anuncio__caja span {
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--nr-gris);
}
.nr-anuncio__caja .nr-btn { margin-top: 6px; }

.nr-btn {
	display: inline-block;
	background: var(--nr-pulso);
	color: #fff;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
	padding: 11px 20px;
	border: 0;
	cursor: pointer;
	transition: background .18s ease;
}
.nr-btn:hover { background: var(--nr-tinta); color: #fff; }
.nr-btn--linea {
	background: none;
	color: var(--nr-tinta);
	border: var(--nr-borde-fuerte);
}
.nr-btn--linea:hover { background: var(--nr-tinta); color: var(--nr-papel); }

/* =========================================================
   FRANJA DE BOLETÍN
   ========================================================= */
.nr-boletin {
	background: var(--nr-tinta);
	color: var(--nr-papel);
	padding: 46px 0;
	margin: 50px 0 0;
	position: relative;
	overflow: hidden;
}
.nr-boletin::before {
	content: "";
	position: absolute;
	top: 0; right: -80px;
	width: 300px; height: 100%;
	background: var(--nr-pulso);
	transform: skewX(-14deg);
	opacity: .14;
}
.nr-boletin__in {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 420px);
	gap: 40px;
	align-items: center;
	position: relative;
	z-index: 2;
}
.nr-boletin h2 {
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 900;
	letter-spacing: -0.04em;
	margin: 8px 0 8px;
	color: var(--nr-papel);
}
.nr-boletin p { margin: 0; color: var(--nr-gris-claro); font-size: 15.5px; }
.nr-boletin form { display: flex; }
.nr-boletin input[type="email"] {
	flex: 1;
	border: 0;
	padding: 14px 16px;
	font-family: var(--nr-texto);
	font-size: 15px;
	background: var(--nr-papel);
	color: var(--nr-tinta);
	min-width: 0;
}

/* =========================================================
   PAGINACIÓN
   ========================================================= */
.nr-paginacion {
	display: flex;
	justify-content: center;
	gap: 7px;
	flex-wrap: wrap;
	margin: 46px 0 0;
}
.nr-paginacion .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	border: var(--nr-borde);
	font-family: var(--nr-dato);
	font-size: 13px;
	color: var(--nr-tinta);
	font-variant-numeric: tabular-nums;
}
.nr-paginacion .page-numbers:hover { border-color: var(--nr-tinta); }
.nr-paginacion .page-numbers.current {
	background: var(--nr-tinta);
	border-color: var(--nr-tinta);
	color: var(--nr-papel);
}

/* =========================================================
   ARCHIVO / BÚSQUEDA / 404
   ========================================================= */
.nr-archivo-cab {
	border-bottom: var(--nr-borde-fuerte);
	padding: 40px 0 24px;
	margin-bottom: 34px;
}
.nr-archivo-cab h1 {
	font-size: clamp(34px, 5vw, 62px);
	font-weight: 900;
	letter-spacing: -0.05em;
	text-transform: uppercase;
	margin: 10px 0 8px;
}
.nr-archivo-cab p { margin: 0; color: var(--nr-gris); max-width: 62ch; }

.nr-404 { text-align: center; padding: 90px 0; }
.nr-404 .nr-cifra {
	font-family: var(--nr-display);
	font-weight: 900;
	font-size: clamp(90px, 18vw, 200px);
	letter-spacing: -0.07em;
	line-height: .8;
	color: var(--nr-cinta);
	margin: 0;
}
.nr-404 h1 { font-size: clamp(26px, 3.6vw, 40px); margin: 18px 0 12px; }
.nr-404 p { color: var(--nr-gris); max-width: 52ch; margin: 0 auto 26px; }

/* =========================================================
   DIRECTORIO
   ========================================================= */
.nr-directorio {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1px;
	background: var(--nr-cinta);
	border: var(--nr-borde);
	margin: 30px 0 44px;
}
.nr-directorio__item {
	background: var(--nr-papel);
	padding: 22px 20px;
	transition: background .2s ease;
}
.nr-directorio__item:hover { background: var(--nr-cinta-2); }
.nr-directorio__item .nr-dato { color: var(--nr-pulso); }
.nr-directorio__item h4 {
	font-size: 17px;
	margin: 8px 0 4px;
	letter-spacing: -0.02em;
}
.nr-directorio__item p { margin: 0; font-size: 13.5px; color: var(--nr-gris); }

/* =========================================================
   PIE
   ========================================================= */
.nr-pie {
	background: var(--nr-tinta);
	color: var(--nr-gris-claro);
	padding: 52px 0 0;
	margin-top: 0;
}
.nr-pie a { color: var(--nr-gris-claro); }
.nr-pie a:hover { color: var(--nr-pulso); }
.nr-pie__cols {
	display: grid;
	grid-template-columns: 1.5fr repeat(3, 1fr);
	gap: 40px;
	padding-bottom: 44px;
	border-bottom: 1px solid var(--nr-tinta-70);
}
.nr-pie__marca .nr-titulo { color: var(--nr-papel); font-size: 30px; }
.nr-pie__marca p { font-size: 14.5px; margin: 14px 0 0; max-width: 40ch; }
.nr-pie h4 {
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--nr-pulso);
	font-weight: 500;
	margin: 0 0 16px;
}
.nr-pie ul { list-style: none; margin: 0; padding: 0; }
.nr-pie ul li { margin-bottom: 9px; font-size: 14.5px; }
.nr-pie__legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 14px;
	padding: 22px 0 30px;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .06em;
	color: var(--nr-gris);
}
.nr-pie__legal a { color: var(--nr-gris); }

/* =========================================================
   BOTONES FLOTANTES
   ========================================================= */
.nr-arriba {
	position: fixed;
	right: 22px; bottom: 22px;
	width: 46px; height: 46px;
	background: var(--nr-tinta);
	color: var(--nr-papel);
	border: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all .24s ease;
	z-index: 600;
}
.nr-arriba.is-visible { opacity: 1; visibility: visible; transform: none; }
.nr-arriba svg { width: 17px; height: 17px; fill: currentColor; }

.nr-wa {
	position: fixed;
	right: 22px; bottom: 80px;
	width: 46px; height: 46px;
	background: var(--nr-pulso);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 600;
	box-shadow: 0 6px 22px rgba(255, 74, 28, .35);
}
.nr-wa:hover { background: var(--nr-tinta); color: #fff; }
.nr-wa svg { width: 21px; height: 21px; fill: currentColor; }

/* =========================================================
   COMENTARIOS
   ========================================================= */
.nr-comentarios { margin: 46px 0 0; }
.nr-comentarios .comment-list { list-style: none; margin: 0; padding: 0; }
.nr-comentarios .comment-list li { border-top: var(--nr-borde); padding: 20px 0; }
.nr-comentarios input[type="text"],
.nr-comentarios input[type="email"],
.nr-comentarios input[type="url"],
.nr-comentarios textarea {
	width: 100%;
	border: var(--nr-borde);
	padding: 12px 14px;
	font-family: var(--nr-texto);
	font-size: 15px;
	background: var(--nr-papel);
	margin-bottom: 12px;
}
.nr-comentarios .submit {
	background: var(--nr-tinta);
	color: var(--nr-papel);
	border: 0;
	padding: 13px 24px;
	font-family: var(--nr-dato);
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
	cursor: pointer;
}

/* =========================================================
   RESPONSIVO
   ========================================================= */
@media (max-width: 1080px) {
	.nr-layout { grid-template-columns: minmax(0, 1fr); }
	.nr-lateral { position: static; }
	.nr-pie__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
	:root { --nr-gutter: 20px; }
	.nr-hero { grid-template-columns: minmax(0, 1fr); gap: 26px; }
	.nr-masthead__in { grid-template-columns: 1fr auto; gap: 16px; }
	.nr-masthead__anuncio { display: none; }
	.nr-boletin__in { grid-template-columns: minmax(0, 1fr); gap: 22px; }
	.nr-rejilla--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
	body { font-size: 16px; }
	.nr-menu-btn { display: block; }
	.nr-nav__in { padding-top: 10px; padding-bottom: 10px; }
	.nr-menu {
		display: none;
		width: 100%;
		flex-direction: column;
		border-top: var(--nr-borde);
		margin-top: 10px;
	}
	.nr-menu.is-abierto { display: flex; }
	.nr-menu > li > a { padding: 13px 0; border-bottom: var(--nr-borde); }
	.nr-menu > li > a::after { left: 0; right: auto; width: 26px; bottom: 6px; }
	.nr-menu .sub-menu {
		position: static;
		opacity: 1;
		visibility: visible;
		transform: none;
		background: var(--nr-cinta-2);
		padding: 0;
	}
	.nr-menu .sub-menu a { color: var(--nr-tinta); }
	.nr-nav__cta { display: none; }
	.nr-hero__cuerpo { padding: 20px; position: static; color: var(--nr-tinta); }
	.nr-hero__fig::after { display: none; }
	.nr-hero__cuerpo h2 { color: var(--nr-tinta); }
	.nr-hero__sumario { color: var(--nr-tinta-70); }
	.nr-hero__cuerpo .nr-meta a { color: var(--nr-tinta); }
	.nr-rejilla--3 { grid-template-columns: minmax(0, 1fr); }
	.nr-pie__cols { grid-template-columns: minmax(0, 1fr); gap: 30px; }
	.nr-nav-entradas { grid-template-columns: minmax(0, 1fr); }
	.nr-nav-entradas .nr-sig { text-align: left; }
	.nr-30 { padding: 22px 20px; }
	.nr-30 li { grid-template-columns: 36px minmax(0, 1fr); font-size: 15.5px; }
	.nr-topbar__fecha { display: none; }
	.nr-contenido { font-size: 17px; }
}

@media (max-width: 480px) {
	.nr-autor-caja { grid-template-columns: minmax(0, 1fr); }
	.nr-marca { gap: 10px; }
	.nr-cron { width: 40px; height: 40px; flex: 0 0 40px; }
}

/* ---------- Accesibilidad: movimiento reducido ---------- */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
	.nr-cintillo__tren { animation: none; }
}

/* ---------- Impresión ---------- */
@media print {
	.nr-topbar, .nr-nav, .nr-cintillo, .nr-anuncio, .nr-lateral,
	.nr-pie, .nr-arriba, .nr-wa, .nr-compartir, .nr-boletin { display: none !important; }
	.nr-sitio { box-shadow: none; }
	.nr-layout { grid-template-columns: 1fr; }
}
