/* =========================================================================
   KICK & RUSH · HOME  —  mobile first
   Paleta de marca: azul, rojo, blanco y crema. Tipos: Anton, Oswald,
   Courier Prime y serif. Prefijo krh- para no chocar con kr- / krb-.
   ====================================================================== */

/* ---------- 0. Tema Gazette: página a sangre completa ---------- */
body.krh-page #masthead,
body.krh-page #colophon,
body.krh-page .entry-header,
body.krh-page .entry-footer,
body.krh-page #secondary,
body.krh-page .sidebar-toggle,
body.krh-page .jetpack-subscribe-floating-button,
body.krh-page .sharedaddy,
body.krh-page #jp-post-flair,
body.krh-page #jp-relatedposts,
body.krh-page .comments-area,
body.krh-page .post-navigation { display: none !important; }

body.krh-page { background: #0c1c46; overflow-x: hidden; }
body.krh-page #page,
body.krh-page .site-content,
body.krh-page .site-content-inner,
body.krh-page #primary,
body.krh-page .site-main,
body.krh-page article.page,
body.krh-page .entry-content {
	max-width: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	border: 0 !important;
	background: transparent !important;
}
body.krh-page .entry-content > p:empty { display: none; }

/* ---------- 1. Tokens ---------- */
.krh {
	--krh-navy: #0c1c46;
	--krh-navy-deep: #07112e;
	--krh-red: #c8102e;
	--krh-red-dark: #9b0b22;
	--krh-cream: #efe6d2;
	--krh-paper: #f6efe0;
	--krh-ink: #17140f;
	--krh-accent: var(--krh-red);
	--krh-rule: rgba(12, 28, 70, .18);
	--krh-dim: linear-gradient(180deg, rgba(7, 17, 46, .28) 0%, rgba(7, 17, 46, .48) 100%);

	--krh-display: "Anton", Impact, "Arial Narrow Bold", sans-serif;
	--krh-cond: "Oswald", "Arial Narrow", Arial, sans-serif;
	--krh-mono: "Courier Prime", "Courier New", monospace;
	--krh-serif: Georgia, "Times New Roman", serif;

	--krh-union: linear-gradient(180deg, var(--krh-navy) 0 33%, #fff 33% 44%, var(--krh-red) 44% 100%);
	--krh-scarf: repeating-linear-gradient(90deg, var(--krh-red) 0 28px, #fff 28px 36px, var(--krh-navy) 36px 64px, #fff 64px 72px);

	--krh-gutter: 16px;
	--krh-bar-h: 52px;
	--krh-top: 0px;

	position: relative;
	background: var(--krh-navy);
	color: var(--krh-cream);
	font-family: var(--krh-serif);
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}
.krh *, .krh *::before, .krh *::after { box-sizing: border-box; }
.krh img { display: block; max-width: 100%; height: auto; }
.krh a { color: inherit; text-decoration: none; font-weight: inherit; }
.krh ul { list-style: none; margin: 0; padding: 0; }
.krh h1, .krh h2, .krh h3, .krh p { margin: 0; }
.krh button { font-family: inherit; }
.krh :focus-visible { outline: 3px solid var(--krh-red); outline-offset: 3px; }
.krh-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.krh-wrap { width: 100%; max-width: 1320px; margin: 0 auto; padding: 0 var(--krh-gutter); }

.krh-dot {
	display: inline-block; width: 7px; height: 7px; border-radius: 50%;
	background: #fff; margin-right: 8px; vertical-align: middle;
	animation: krh-blink 1.4s steps(2, start) infinite;
}
@keyframes krh-blink { to { visibility: hidden; } }

.krh-roundel {
	flex: none; display: inline-block; width: 18px; height: 18px;
	background: url("https://condenadofanzine.com/wp-content/uploads/2026/09/pngtree-raf-flag-roundel-png-image_10574453.png") center / contain no-repeat;
}

/* Diana mod como control de cada tarjeta (igual que en el especial WHM) */
.krh-go {
	position: relative; flex: none; display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; border-radius: 50%;
	background: var(--krh-navy); border: 1px solid rgba(12, 28, 70, .5); overflow: hidden;
}
.krh-go__roundel { position: absolute; inset: 0; width: 100%; height: 100% !important; padding: 2px; object-fit: contain; transition: opacity .18s ease, transform .2s ease; }
.krh-go__arrow { position: relative; color: #fff; font: 400 20px/1 var(--krh-cond); opacity: 0; transform: translateX(-6px); transition: opacity .18s ease, transform .2s ease; }
a:hover .krh-go, a:focus-visible .krh-go { background: var(--krh-red); border-color: var(--krh-red); }
a:hover .krh-go__roundel, a:focus-visible .krh-go__roundel { opacity: 0; transform: scale(.8) rotate(-20deg); }
a:hover .krh-go__arrow, a:focus-visible .krh-go__arrow { opacity: 1; transform: none; }

.krh-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 50px; padding: 0 24px;
	font: 600 15px/1 var(--krh-cond); letter-spacing: .14em; text-transform: uppercase;
	border: 0; cursor: pointer; transition: background .2s, color .2s;
}
.krh .krh-btn--red { background: var(--krh-red); color: #fff; }
.krh .krh-btn--red:hover { background: var(--krh-red-dark); }
.krh .krh-btn--spotify { background: var(--krh-navy); color: #fff; width: 100%; }
.krh .krh-btn--spotify:hover { background: var(--krh-red); }
.krh-arrow { color: var(--krh-red); font-size: 20px; line-height: 1; transition: transform .2s; }

/* ---------- 2. Cabecera ---------- */
.krh-bar { position: sticky; top: var(--krh-top); z-index: 50; background: var(--krh-navy); color: #fff; }
.krh-bar::after { content: ""; display: block; height: 6px; background: var(--krh-union); }
.krh-bar__inner {
	display: flex; align-items: center; justify-content: space-between;
	height: var(--krh-bar-h); max-width: 1320px; margin: 0 auto; padding: 0 var(--krh-gutter);
}
.krh-brand {
	display: inline-flex; align-items: baseline; gap: .1em;
	font: 400 28px/1 var(--krh-display); letter-spacing: .01em; text-transform: uppercase; color: #fff;
}
.krh-brand__amp { color: var(--krh-red); font-size: .92em; }

.krh-burger {
	display: inline-flex; align-items: center; justify-content: center;
	width: 48px; height: 48px; margin-right: -10px; padding: 0;
	background: none; border: 0; color: #fff; cursor: pointer;
}
.krh-burger__lines { position: relative; width: 24px; height: 16px; }
.krh-burger__lines i { position: absolute; left: 0; width: 100%; height: 2px; background: currentColor; transition: transform .25s, opacity .2s, top .25s; }
.krh-burger__lines i:nth-child(1) { top: 0; }
.krh-burger__lines i:nth-child(2) { top: 7px; background: var(--krh-red); }
.krh-burger__lines i:nth-child(3) { top: 14px; }
.krh-menu-open .krh-burger__lines i:nth-child(1) { top: 7px; transform: rotate(45deg); }
.krh-menu-open .krh-burger__lines i:nth-child(2) { opacity: 0; }
.krh-menu-open .krh-burger__lines i:nth-child(3) { top: 7px; transform: rotate(-45deg); }

.krh-nav { display: none; }
.krh-menu-open .krh-nav {
	display: block; position: absolute; left: 0; right: 0; top: 100%;
	max-height: calc(100dvh - var(--krh-bar-h) - 6px - var(--krh-top));
	overflow-y: auto; overscroll-behavior: contain;
	background: var(--krh-navy-deep); border-bottom: 4px solid var(--krh-red);
	box-shadow: 0 24px 40px rgba(0, 0, 0, .5);
	animation: krh-drop .22s ease-out;
}
@keyframes krh-drop { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }

.krh-nav__list > li { border-bottom: 1px solid rgba(255, 255, 255, .1); }
.krh-nav__list > li > a,
.krh-nav summary,
.krh-nav__soon {
	display: flex; align-items: center; justify-content: space-between; gap: 10px;
	min-height: 56px; padding: 0 var(--krh-gutter);
	font: 600 19px/1 var(--krh-cond); letter-spacing: .1em; text-transform: uppercase; color: #fff;
	cursor: pointer; list-style: none;
}
.krh-nav__soon { color: rgba(255, 255, 255, .5); cursor: default; }
.krh-nav summary::-webkit-details-marker { display: none; }
.krh-nav summary::after {
	content: ""; width: 0; height: 0; margin-left: 10px;
	border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 7px solid var(--krh-red);
	transition: transform .2s;
}
.krh-nav details[open] summary::after { transform: rotate(180deg); }
.krh-nav__soon em, .krh-drop__row em {
	font: 700 10px/1 var(--krh-mono); font-style: normal; letter-spacing: .14em; text-transform: uppercase;
	padding: 4px 6px; background: var(--krh-red); color: #fff;
}
.krh-nav__soon em { margin-left: auto; }

.krh-drop { padding: 0 0 10px; background: rgba(255, 255, 255, .03); }
.krh-drop__row {
	display: flex; align-items: center; gap: 12px;
	min-height: 48px; padding: 8px var(--krh-gutter) 8px calc(var(--krh-gutter) + 8px);
	font: 500 16px/1.25 var(--krh-cond); letter-spacing: .06em; text-transform: uppercase; color: var(--krh-cream);
}
.krh-drop__row > span:last-child:not(.krh-roundel) { margin-left: auto; color: var(--krh-red); }
.krh-drop__row em { margin-left: auto; }
.krh-drop__row.is-soon { color: rgba(239, 230, 210, .55); }

.krh:not(.krh-js) .krh-burger { display: none; }
.krh:not(.krh-js) .krh-nav { display: block; overflow-x: auto; }
.krh:not(.krh-js) .krh-nav__list { display: flex; }
.krh:not(.krh-js) .krh-nav__list > li { border: 0; white-space: nowrap; }

/* ---------- 3. Franja de últimas publicaciones ---------- */
.krh-ticker {
	display: flex; align-items: stretch; height: 42px;
	background: var(--krh-navy-deep); color: #fff; overflow: hidden;
	border-bottom: 1px solid rgba(255, 255, 255, .12);
	font: 500 14px/42px var(--krh-cond); text-transform: uppercase; letter-spacing: .08em;
}
.krh-ticker__label {
	flex: none; display: flex; align-items: center; padding: 0 14px;
	background: var(--krh-red); color: #fff; font-weight: 700; letter-spacing: .14em; position: relative; z-index: 1;
}
.krh-ticker__viewport { flex: 1; overflow: hidden; }
.krh-ticker__track { display: flex; width: max-content; animation: krh-marquee 70s linear infinite; }
.krh-ticker:hover .krh-ticker__track,
.krh-ticker:focus-within .krh-ticker__track { animation-play-state: paused; }
.krh-ticker__track li { display: flex; align-items: center; white-space: nowrap; padding: 0 18px; }
.krh-ticker__track li::before { content: ""; width: 7px; height: 7px; margin-right: 18px; background: var(--krh-red); }
.krh-ticker__track a { display: inline-flex; align-items: center; color: #f7c81e; } /* amarillo teletexto: solo en esta franja */
.krh-ticker__track b { font-weight: 700; color: #fff; margin-right: 10px; padding: 3px 6px; border: 1px solid rgba(255, 255, 255, .6); line-height: 1.2; font-size: 11px; }
.krh-ticker__track a:hover { color: #fff; text-decoration: underline; text-decoration-color: var(--krh-red); }
.krh-ticker__track a:hover b { color: #fff; }
@keyframes krh-marquee { to { transform: translateX(-50%); } }

/* ---------- 4. Hero ---------- */
.krh-hero {
	position: relative; isolation: isolate;
	display: flex; flex-direction: column; justify-content: flex-end;
	min-height: max(540px, min(calc(100svh - var(--krh-bar-h) - 48px - var(--krh-top)), 780px));
	background: var(--krh-navy-deep); color: #fff; overflow: hidden;
}
.krh-hero__media { position: absolute; inset: 0; z-index: -2; display: block; }
.krh-hero__media::after { content: ""; position: absolute; inset: 0; background: var(--krh-dim); pointer-events: none; }
.krh-hero__img { width: 100%; height: 100% !important; object-fit: cover; object-position: 65% center; }
.krh-hero::before {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: linear-gradient(0deg, rgba(7, 17, 46, .98) 0%, rgba(7, 17, 46, .86) 42%, rgba(7, 17, 46, .1) 74%, rgba(7, 17, 46, .5) 100%);
}
.krh-hero::after {
	content: "K&R"; position: absolute; top: 14px; right: var(--krh-gutter);
	padding: 4px 8px 3px; border: 2px solid rgba(255, 255, 255, .75); border-radius: 6px;
	font: 400 18px/1 var(--krh-display); color: #fff; letter-spacing: .04em;
}
.krh-hero__bug {
	position: absolute; top: 14px; left: var(--krh-gutter);
	display: flex; font: 600 13px/1 var(--krh-cond); text-transform: uppercase; letter-spacing: .12em;
}
.krh-bug__live { display: flex; align-items: center; padding: 7px 10px; background: var(--krh-red); color: #fff; }
.krh-bug__clock { padding: 7px 10px; background: #fff; color: var(--krh-navy); }
.krh:not(.krh-js) .krh-bug__clock { display: none; }

.krh-hero__copy { padding: 0 var(--krh-gutter) 30px; max-width: 1320px; width: 100%; margin: 0 auto; }
.krh-hero__kicker {
	display: inline-flex; align-items: center; margin-bottom: 22px; padding: 7px 10px;
	background: var(--krh-red); color: #fff;
	font: 700 12px/1 var(--krh-mono); letter-spacing: .16em; text-transform: uppercase;
}
.krh-hero__title {
	font: 400 clamp(2.5rem, 11.5vw, 7.25rem)/1.04 var(--krh-display);
	text-transform: uppercase; letter-spacing: .01em; color: #fff;
	text-wrap: balance; margin-bottom: 22px;
}
.krh-hero__title a:hover { color: var(--krh-cream); }
.krh-hl { color: var(--krh-accent); }

.krh-lowerthird { display: flex; margin-bottom: 24px; max-width: 680px; }
.krh-lowerthird::before { content: ""; flex: none; width: 6px; background: linear-gradient(90deg, var(--krh-red) 0 60%, #fff 60% 100%); }
.krh-lowerthird > div { padding: 0 0 0 14px; }
.krh-hero__deck { font-size: 1rem; line-height: 1.55; color: rgba(255, 255, 255, .92); }
.krh-hero__meta {
	display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 10px;
	font: 400 12px/1.3 var(--krh-mono); letter-spacing: .1em; text-transform: uppercase; color: rgba(255, 255, 255, .7);
}
.krh-hero .krh-btn { width: 100%; }

/* ---------- 5. Secciones y rótulos ---------- */
.krh-section { padding: 42px 0 50px; position: relative; }
.krh-section--paper { background: var(--krh-paper); color: var(--krh-ink); }
.krh-section--night { background: var(--krh-navy-deep); color: var(--krh-cream); }
.krh-section::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 6px; background: var(--krh-scarf); }

.krh-sechead { display: flex; align-items: stretch; flex-wrap: wrap; margin-bottom: 26px; }
.krh-sechead__num { display: flex; align-items: center; padding: 0 12px; background: var(--krh-red); color: #fff; font: 400 24px/1 var(--krh-display); }
.krh-sechead__title {
	display: flex; align-items: center; padding: 10px 16px;
	background: var(--krh-navy); color: #fff;
	font: 600 21px/1 var(--krh-cond); letter-spacing: .14em; text-transform: uppercase;
}
.krh-section--night .krh-sechead__title { background: #fff; color: var(--krh-navy); }
.krh-sechead__more {
	flex-basis: 100%; margin-top: 12px;
	font: 700 12px/1 var(--krh-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--krh-red);
}

.krh-arrows { display: none; }
.krh-arrows__btn {
	width: 48px; height: 48px; display: inline-flex; align-items: center; justify-content: center;
	background: var(--krh-navy); color: #fff; border: 0; cursor: pointer; font: 400 22px/1 var(--krh-cond);
	transition: background .2s, opacity .2s;
}
.krh-arrows__btn:hover:not(:disabled) { background: var(--krh-red); }
.krh-arrows__btn:disabled { opacity: .3; cursor: default; }

/* ---------- 6. Listas: una debajo de otra en móvil ---------- */
.krh-list { display: grid; gap: 16px; }
.krh-js .krh-card--extra:not(.is-shown) { display: none; }
.krh-more {
	display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 52px; margin-top: 20px;
	background: transparent; border: 2px solid var(--krh-navy); color: var(--krh-navy); cursor: pointer;
	font: 600 15px/1 var(--krh-cond); letter-spacing: .14em; text-transform: uppercase;
}
.krh-more:hover { background: var(--krh-navy); color: #fff; }
.krh:not(.krh-js) .krh-more, .krh-more[hidden] { display: none; }

/* ---------- 7. Entradas (Historias y Short Reads) ----------
   Siempre con forma de entrada apaisada: cuerpo + matriz a la derecha,
   esquinas redondeadas y muescas troqueladas recortadas en la silueta
   (mask), con perforación de puntos y marco impreso interior.
   Móvil: imagen horizontal arriba. Tablet/escritorio: imagen a la izquierda. */
.krh-ticket {
	--krh-stub: var(--krh-navy); --krh-stub-w: 56px; --krh-notch: 12px;
	display: flex; color: var(--krh-ink);
	filter: drop-shadow(0 1px 0 rgba(12, 28, 70, .35)) drop-shadow(0 8px 16px rgba(12, 28, 70, .18));
	transition: transform .35s ease, filter .35s ease, opacity .35s ease;
}
.krh-ticket--short { --krh-stub: var(--krh-red); }
.krh-ticket__link {
	position: relative; flex: 1; display: grid; grid-template-columns: 1fr var(--krh-stub-w);
	border-radius: 12px; overflow: hidden;
	-webkit-mask:
		radial-gradient(circle var(--krh-notch) at calc(100% - var(--krh-stub-w)) 0, transparent 98%, #000 100%) top / 100% 51% no-repeat,
		radial-gradient(circle var(--krh-notch) at calc(100% - var(--krh-stub-w)) 100%, transparent 98%, #000 100%) bottom / 100% 51% no-repeat;
	mask:
		radial-gradient(circle var(--krh-notch) at calc(100% - var(--krh-stub-w)) 0, transparent 98%, #000 100%) top / 100% 51% no-repeat,
		radial-gradient(circle var(--krh-notch) at calc(100% - var(--krh-stub-w)) 100%, transparent 98%, #000 100%) bottom / 100% 51% no-repeat;
}
.krh-ticket__main {
	position: relative; display: flex; flex-direction: column; min-width: 0;
	background-color: #fffdf8;
	background-image:
		repeating-linear-gradient(135deg, rgba(12, 28, 70, .035) 0 1px, transparent 1px 7px),
		repeating-linear-gradient(45deg, rgba(200, 16, 46, .025) 0 1px, transparent 1px 9px);
}
/* Marco impreso interior */
.krh-ticket__main::after {
	content: ""; position: absolute; inset: 6px 8px 6px 6px; pointer-events: none;
	border: 1px solid rgba(12, 28, 70, .45); border-radius: 7px;
}

/* Imagen horizontal con filtro dim, como en los artículos */
.krh-ticket__media { position: relative; overflow: hidden; aspect-ratio: 16 / 9; background: var(--krh-navy); margin: 6px 8px 0 6px; border-radius: 6px 6px 0 0; }
.krh-ticket__media::after { content: ""; position: absolute; inset: 0; background: var(--krh-dim); pointer-events: none; transition: opacity .3s; }
.krh-ticket__img, .krh-img--empty { width: 100%; height: 100% !important; object-fit: cover; transition: transform .5s ease; }
.krh-img--empty { display: block; background: var(--krh-navy); }
.krh-ticket__link:hover .krh-ticket__img { transform: scale(1.04); }
.krh-ticket__link:hover .krh-ticket__media::after { opacity: .7; }

.krh-ticket__body { flex: 1; display: flex; flex-direction: column; padding: 14px 20px 16px 18px; min-width: 0; }
.krh-ticket__head {
	display: flex; align-items: center; justify-content: space-between; gap: 10px;
	padding-bottom: 9px; border-bottom: 3px double var(--krh-navy);
	font: 700 10px/1.2 var(--krh-mono); letter-spacing: .16em; text-transform: uppercase;
}
.krh-ticket__issuer { display: inline-flex; align-items: center; gap: 7px; color: var(--krh-navy); white-space: nowrap; }
.krh-ticket__issuer .krh-roundel { width: 14px; height: 14px; }
.krh-ticket__type { padding: 4px 7px; background: var(--krh-stub); color: #fff; white-space: nowrap; }
.krh-ticket__title { font: 400 23px/1.12 var(--krh-display); text-transform: uppercase; letter-spacing: .01em; color: var(--krh-navy); }
.krh-ticket__link:hover .krh-ticket__title { color: var(--krh-red); }
.krh-ticket__deck {
	font-size: 14.5px; line-height: 1.5; color: #3a352c;
	display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}

.krh-ticket__foot { display: flex; align-items: flex-end; gap: 12px; margin-top: auto; padding-top: 10px; border-top: 1px dashed rgba(12, 28, 70, .35); }
.krh-ticket__fields { flex: 1; min-width: 0; display: flex; gap: 4px 18px; }
.krh-ticket__foot .krh-go { flex: none; }
.krh-ticket__fields dt { font: 700 9px/1.2 var(--krh-mono); letter-spacing: .16em; text-transform: uppercase; color: var(--krh-red); }
.krh-ticket__fields dd { font: 600 14px/1.3 var(--krh-cond); letter-spacing: .06em; text-transform: uppercase; color: var(--krh-navy); white-space: nowrap; }
.krh-ticket__date { display: none; }

/* Matriz: perforación de puntos a la izquierda */
.krh-ticket__stub {
	position: relative; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 10px;
	padding: 18px 0; background: var(--krh-stub); color: #fff;
}
.krh-ticket__stub::before {
	content: ""; position: absolute; left: -3px; top: 14px; bottom: 14px; width: 6px;
	background: radial-gradient(circle, var(--krh-paper) 0 2.4px, transparent 2.8px) center top / 6px 10px repeat-y;
}
.krh-ticket__stub::after {
	content: ""; position: absolute; inset: 6px 6px 6px 8px; border: 1px solid rgba(255, 255, 255, .45); border-radius: 7px; pointer-events: none;
}
.krh-ticket__admit, .krh-ticket__serial {
	writing-mode: vertical-rl; transform: rotate(180deg);
	font: 700 10px/1 var(--krh-mono); letter-spacing: .22em; text-transform: uppercase;
}
.krh-ticket__serial { font-weight: 400; opacity: .85; }
.krh-ticket__no { font: 400 22px/1 var(--krh-display); letter-spacing: .02em; }
.krh-ticket__barcode {
	flex: 1; width: 22px; min-height: 40px; max-height: 150px; opacity: .9;
	background: repeating-linear-gradient(180deg, #fff 0 2px, transparent 2px 4px, #fff 4px 5px, transparent 5px 8px, #fff 8px 11px, transparent 11px 12px, #fff 12px 13px, transparent 13px 16px);
}

/* Carrusel: la que asoma, atenuada; la que se acaba de mostrar, destacada */
.krh-list--carousel > .krh-ticket.is-peek { opacity: .55; }
.krh-list--carousel > .krh-ticket.is-revealed {
	transform: translateY(-8px);
	filter: drop-shadow(0 1px 0 rgba(12, 28, 70, .35)) drop-shadow(0 16px 22px rgba(200, 16, 46, .35));
}
.krh-list--carousel > .krh-ticket.is-revealed .krh-ticket__type { animation: krh-flash .5s ease 2; }
@keyframes krh-flash { 50% { background: var(--krh-navy); } }
.krh-arrows__count { align-self: center; margin-right: 6px; font: 600 14px/1 var(--krh-cond); letter-spacing: .12em; color: var(--krh-navy); }
.krh-arrows__count b { color: var(--krh-red); font-weight: 700; }

/* ---------- 8. Especiales ---------- */
.krh-specials { display: grid; gap: 18px; }
.krh-special {
	position: relative; isolation: isolate; overflow: hidden;
	min-height: 460px; display: flex; flex-direction: column; justify-content: flex-end;
	background: var(--krh-navy); border: 2px solid rgba(255, 255, 255, .2);
}
.krh-special__link { display: flex; flex-direction: column; justify-content: flex-end; flex: 1; }
.krh-special__media { position: absolute; inset: 0; z-index: -2; }
.krh-special__img { width: 100%; height: 100% !important; object-fit: cover; }
.krh-special::before {
	content: ""; position: absolute; inset: 0; z-index: -1;
	background: linear-gradient(0deg, rgba(7, 17, 46, .98) 12%, rgba(7, 17, 46, .6) 55%, rgba(7, 17, 46, .1) 100%);
}
.krh-special__body { padding: 20px 16px 22px; }
.krh-special__kicker {
	display: inline-flex; align-items: center; margin-bottom: 14px; padding: 7px 10px;
	background: var(--krh-red); color: #fff; font: 600 13px/1 var(--krh-cond); text-transform: uppercase; letter-spacing: .12em;
}
.krh-special__title { font: 400 clamp(2rem, 9vw, 3.6rem)/1.04 var(--krh-display); text-transform: uppercase; color: #fff; margin-bottom: 14px; }
.krh-special__deck { font-size: 15px; line-height: 1.55; color: rgba(239, 230, 210, .92); margin-bottom: 18px; max-width: 60ch; }
.krh-special .krh-btn { width: 100%; }

.krh-scoreboard {
	display: grid; grid-template-columns: 1fr auto 1fr; align-items: stretch;
	margin-bottom: 16px; border: 2px solid #fff;
}
.krh-scoreboard__team {
	display: flex; align-items: center; justify-content: center; text-align: center;
	padding: 12px 8px; background: var(--krh-navy); color: #fff;
	font: 400 clamp(1.15rem, 5.4vw, 2.6rem)/1.08 var(--krh-display); text-transform: uppercase;
}
.krh-scoreboard__vs {
	display: flex; align-items: center; padding: 0 14px;
	background: var(--krh-red); color: #fff; font: 400 26px/1 var(--krh-display); text-transform: lowercase;
}

.krh-special--soon .krh-special__img { filter: grayscale(.9) contrast(1.1); opacity: .85; }
.krh-special--soon .krh-special__kicker { background: #fff; color: var(--krh-navy); }
.krh-soon-tag { display: contents; }
.krh-premiere {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px;
	border: 2px solid #fff; color: #fff;
	font: 600 14px/1 var(--krh-cond); text-transform: uppercase; letter-spacing: .12em;
}

/* Playlist */
.krh-playlist {
	display: flex; flex-direction: column; gap: 14px; padding: 20px 18px;
	background: var(--krh-cream); color: var(--krh-ink); border: 2px solid #fff;
}
.krh-playlist__label { font: 700 11px/1 var(--krh-mono); letter-spacing: .16em; text-transform: uppercase; color: var(--krh-red); }
.krh-playlist__title { font: 400 30px/1.08 var(--krh-display); text-transform: uppercase; color: var(--krh-navy); }
.krh-playlist__tape img { width: 100%; transition: transform .3s; }
.krh-playlist__tape:hover img { transform: rotate(-1.5deg) scale(1.02); }
.krh-playlist__text { font-size: 15px; line-height: 1.55; color: #3a352c; }
.krh-playlist .krh-btn { margin-top: auto; }

/* ---------- 9. Pie ---------- */
.krh-scarf { height: 8px; background: var(--krh-scarf); }
.krh-foot { background: var(--krh-navy); color: rgba(239, 230, 210, .85); }
.krh-foot__inner { display: flex; flex-direction: column; gap: 10px; padding-top: 32px; padding-bottom: 40px; }
.krh-brand--foot { font-size: 40px; }
.krh-foot p { font-size: 15px; }
.krh-foot p a { color: #fff; text-decoration: underline; text-decoration-color: var(--krh-red); }

/* =========================================================================
   TABLET ≥ 700px
   ====================================================================== */
@media (min-width: 700px) {
	.krh { --krh-gutter: 28px; }
	.krh-hero .krh-btn, .krh-special .krh-btn { width: auto; }
	.krh-sechead__more { flex-basis: auto; margin: 0 0 0 auto; align-self: center; }

	.krh-list { gap: 24px; }
	.krh-js .krh-card--extra:not(.is-shown) { display: flex; }
	.krh-more { display: none !important; }

	/* Entrada apaisada: imagen horizontal a la izquierda */
	.krh-ticket { --krh-stub-w: 64px; }
	.krh-ticket__main { flex-direction: row; min-height: 250px; }
	.krh-ticket__media { flex: 0 0 48%; aspect-ratio: auto; margin: 6px 0 6px 6px; border-radius: 6px 0 0 6px; }
	.krh-ticket__body { padding: 18px 22px 18px 20px; }
	.krh-ticket__deck { -webkit-line-clamp: 2; }
	.krh-ticket__title { font-size: 25px; }
	.krh-ticket__no { font-size: 26px; }

	.krh-list { grid-template-columns: 1fr; }
	.krh-list--1 { grid-template-columns: minmax(0, 820px); }
	.krh-list--carousel {
		grid-template-columns: none; grid-auto-flow: column;
		grid-auto-columns: calc((100% - 24px) / 1.18);
		overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; overscroll-behavior-x: contain;
		scrollbar-width: none; padding: 16px 10px 26px 2px; margin: -16px 0 -14px;
	}
	.krh-list--carousel::-webkit-scrollbar { display: none; }
	.krh-list--carousel > * { scroll-snap-align: start; }
	.krh-js .krh-arrows { display: flex; gap: 8px; margin-left: auto; align-self: center; }
	.krh-sechead__more + .krh-arrows { margin-left: 14px; }

	.krh-specials { grid-template-columns: repeat(12, 1fr); }
	.krh-specials > * { grid-column: span 12; }
	.krh-specials > .krh-special:not(:first-child):not(.krh-special--soon) { grid-column: span 6; }
	.krh-specials > .krh-special--soon { grid-column: span 7; }
	.krh-specials > .krh-playlist { grid-column: span 5; }
}

@media (min-width: 601px) {
	.admin-bar .krh { --krh-top: var(--wp-admin--admin-bar--height, 32px); }
}

/* =========================================================================
   ESCRITORIO ≥ 1024px
   ====================================================================== */
@media (min-width: 1024px) {
	.krh { --krh-gutter: 40px; --krh-bar-h: 60px; }

	.krh-brand { font-size: 34px; }
	.krh-burger { display: none; }
	.krh-nav, .krh-menu-open .krh-nav {
		display: block; position: static; max-height: none; overflow: visible;
		background: none; border: 0; box-shadow: none; animation: none;
	}
	.krh-nav__list { display: flex; align-items: center; gap: 4px; }
	.krh-nav__list > li { position: relative; border: 0; }
	.krh-nav__list > li > a, .krh-nav summary, .krh-nav__soon { min-height: 44px; padding: 0 12px; font-size: 16px; }
	.krh-nav__list > li > a:hover, .krh-nav summary:hover { text-decoration: underline; text-decoration-color: var(--krh-red); text-decoration-thickness: 3px; text-underline-offset: 8px; }
	.krh-nav__soon em { margin-left: 0; }
	.krh-drop {
		position: absolute; top: calc(100% + 9px); left: 0; width: max-content; min-width: 220px; padding: 4px 0;
		background: var(--krh-navy-deep); border-top: 4px solid var(--krh-red); box-shadow: 0 20px 40px rgba(0, 0, 0, .5);
	}
	/* Filas compactas en escritorio (móvil sin cambios) */
	/* Todas las filas con la misma altura exacta, tengan flecha o «Soon» */
	.krh .krh-drop li { margin: 0; padding: 0; line-height: 1; }
	.krh .krh-nav .krh-drop__row { box-sizing: border-box; height: 40px; min-height: 0; gap: 12px; padding: 0 14px; font-size: 14px; line-height: 1; white-space: nowrap; }
	.krh .krh-nav .krh-drop__row > span:last-child:not(.krh-roundel) { font: 400 15px/1 var(--krh-cond); }
	.krh-drop__row .krh-roundel { width: 14px; height: 14px; }
	.krh-drop__row em { padding: 3px 5px; font-size: 9px; }
	/* Subcategorías activas: fondo rojo y flecha blanca al pasar o pulsar (las «Soon» no cambian) */
	a.krh-drop__row { transition: background .15s ease, color .15s ease; }
	.krh .krh-nav a.krh-drop__row:hover,
	.krh .krh-nav a.krh-drop__row:focus-visible,
	.krh .krh-nav a.krh-drop__row:active { background-color: var(--krh-red); color: #fff; }
	.krh .krh-nav a.krh-drop__row:hover > span:last-child:not(.krh-roundel),
	.krh .krh-nav a.krh-drop__row:focus-visible > span:last-child:not(.krh-roundel),
	.krh .krh-nav a.krh-drop__row:active > span:last-child:not(.krh-roundel) { color: #fff; }
	/* Puente invisible para no perder el hover al bajar del título al desplegable */
	.krh-drop::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
	/* Desplegable pegado al borde derecho: se abre hacia la izquierda para no salirse */
	.krh-drop.krh-drop--right { left: auto; right: 0; }

	.krh-hero { min-height: max(620px, min(calc(100vh - var(--krh-bar-h) - 48px - var(--krh-top)), 860px)); justify-content: center; }
	.krh-hero::before {
		background:
			linear-gradient(90deg, rgba(7, 17, 46, 1) 0%, rgba(7, 17, 46, .88) 24%, rgba(7, 17, 46, .1) 68%),
			linear-gradient(0deg, rgba(7, 17, 46, .7), transparent 40%);
	}
	.krh-hero__img { object-position: right center; }
	.krh-hero::after { top: 26px; font-size: 24px; }
	.krh-hero__bug { top: 26px; font-size: 14px; }
	.krh-hero__copy { padding-top: 96px; padding-bottom: 72px; }
	.krh-hero__kicker { margin-bottom: 28px; }
	.krh-hero__title { max-width: 12ch; font-size: clamp(4.5rem, 7.2vw, 8.25rem); margin-bottom: 28px; }
	.krh-lowerthird { background: rgba(7, 17, 46, .82); }
	.krh-lowerthird > div { padding: 14px 18px; }
	.krh-hero__deck { font-size: 1.15rem; }

	.krh-section { padding: 68px 0 76px; }
	.krh-sechead { margin-bottom: 34px; }
	.krh-sechead__num { font-size: 30px; padding: 0 16px; }
	.krh-sechead__title { font-size: 25px; padding: 12px 20px; }

	.krh-list { gap: 28px; }
	.krh-list--carousel { grid-template-columns: none; grid-auto-columns: calc((100% - 28px) / 1.5); }
	.krh-ticket__main { min-height: 250px; }
	.krh-ticket__media { flex-basis: 50%; }
	.krh-ticket__title { font-size: 28px; }

	.krh-special { min-height: 520px; }
	.krh-specials > .krh-special:first-child:not(.krh-special--soon) { min-height: 580px; }
	.krh-specials > .krh-special:first-child:not(.krh-special--soon)::before {
		background: linear-gradient(90deg, rgba(7, 17, 46, .97) 0%, rgba(7, 17, 46, .75) 38%, rgba(7, 17, 46, .1) 75%);
	}
	.krh-specials > .krh-special:first-child .krh-special__link { justify-content: center; }
	.krh-special__body { padding: 36px 40px; max-width: 780px; }
	.krh-specials > .krh-special--soon .krh-special__body { max-width: none; }

	.krh-foot__inner { flex-direction: row; align-items: center; justify-content: space-between; }
}


/* =========================================================================
   Márgenes de componentes (especificidad .krh .x para ganar al reset
   y a los estilos del tema en .entry-content)
   ====================================================================== */
.krh .krh-hero__kicker { margin-bottom: 22px; }
.krh .krh-hero__title { margin-bottom: 22px; }
.krh .krh-hero__meta { margin-top: 10px; }
.krh .krh-ticket__head { margin: 0 0 14px; }
.krh .krh-ticket__title { margin: 0 0 10px; }
.krh .krh-ticket__deck { margin: 0 0 14px; }
.krh .krh-ticket__fields, .krh .krh-ticket__fields div, .krh .krh-ticket__fields dt, .krh .krh-ticket__fields dd { margin: 0; padding: 0; }
.krh .krh-special__kicker { margin-bottom: 14px; }
.krh .krh-special__title { margin-bottom: 14px; }
.krh .krh-special__deck { margin-bottom: 18px; }
.krh .krh-scoreboard { margin-bottom: 16px; }
/* Escritorio estrecho: el menú (seis entradas) más compacto para que quepa en una línea */
@media (min-width: 1024px) and (max-width: 1279px) {
	.krh { --krh-gutter: 24px; }
	.krh-brand { font-size: 32px; }
	.krh-nav__list { gap: 0; }
	.krh-nav__list > li > a, .krh-nav summary, .krh-nav__soon { padding: 0 8px; font-size: 14px; letter-spacing: .06em; gap: 7px; }
	.krh-nav summary::after { margin-left: 6px; border-left-width: 5px; border-right-width: 5px; border-top-width: 6px; }
	.krh-nav__soon em { font-size: 9px; padding: 3px 4px; }
}

@media (min-width: 1024px) {
	.krh .krh-hero__kicker { margin-bottom: 28px; }
	.krh .krh-hero__title { margin-bottom: 28px; }
}


/* Textos de lectura siempre en peso normal (el tema pone los enlaces en negrita) */
.krh .krh-ticket__deck, .krh .krh-special__deck, .krh .krh-hero__deck, .krh .krh-playlist__text { font-weight: 400; }

/* Tipografías de titulares: ganan a la fuente global del tema (.wf-active h1…) */
.krh h1.krh-hero__title,
.krh h3.krh-ticket__title,
.krh h3.krh-special__title,
.krh h3.krh-playlist__title,
.krh .krh-scoreboard__team,
.krh h3.krh-scoreboard { font-family: var(--krh-display); font-weight: 400; }
.krh h2.krh-sechead__title { font-family: var(--krh-cond); font-weight: 600; }


/* El tema pinta fondo gris en a:focus: dentro de K&R no */
.krh a:not(.krh-btn):focus, .krh a:not(.krh-btn):active, .krh a:not(.krh-btn):hover { background-color: transparent; }
.krh .krh-btn--red:focus { background: var(--krh-red); }
.krh .krh-btn--spotify:focus { background: var(--krh-navy); }

/* Encuadres de imagen */
.krh .krh-ticket__img { object-position: right center; }          /* evita los títulos incrustados a la izquierda */
.krh .krh-special--soon .krh-special__img { object-position: center; }
/* «Coming soon»: imagen a toda la caja, encuadrada hacia la acción (derecha) */
.krh .krh-special--soon .krh-special__img { object-position: 78% center; filter: grayscale(.25) contrast(1.05); opacity: 1; }
.krh .krh-special--soon::before { background: linear-gradient(0deg, rgba(7, 17, 46, .97) 30%, rgba(7, 17, 46, .45) 65%, rgba(7, 17, 46, .05) 100%); }
@media (min-width: 700px) {
	.krh .krh-special--soon::before { background: linear-gradient(90deg, rgba(7, 17, 46, .96) 0%, rgba(7, 17, 46, .8) 38%, rgba(7, 17, 46, 0) 70%); }
	.krh .krh-special--soon .krh-special__body { max-width: 62%; }
	.krh .krh-special--soon .krh-scoreboard__team { font-size: clamp(1.1rem, 2.2vw, 1.9rem); }
}


/* Análisis en la home: las mismas tarjetas que Especiales.
   La primera (la más reciente) va grande; el resto y los «Coming soon», a media anchura y más bajos.
   Una pieza sin ninguna imagen sale como tarjeta lisa, a la altura del texto. */
.krh .krh-special--minor { min-height: 320px; }
.krh .krh-special--minor .krh-special__title, .krh .krh-special--bare .krh-special__title { font-size: clamp(1.7rem, 7vw, 2.4rem); }
/* Móvil: en la tarjeta grande de Análisis se reserva una franja de foto libre por encima del
   texto (proporcional al ancho), ocupe el texto las líneas que ocupe: así no tapa la cara. */
@media (max-width: 699px) {
	.krh .krh-analisis > .krh-special--lead:not(.krh-special--noimg) .krh-special__link { padding-top: 80%; }
}
.krh .krh-special--noimg, .krh .krh-special--bare { min-height: 0; }
.krh .krh-special--noimg::before, .krh .krh-special--bare::before { content: none; }
.krh .krh-special--bare .krh-special__body { max-width: none; }
@media (min-width: 700px) {
	.krh .krh-specials.krh-analisis > .krh-special:not(:first-child) { grid-column: span 6; }
	.krh .krh-specials.krh-analisis > .krh-special:last-child:nth-child(even) { grid-column: span 12; }
	.krh .krh-specials.krh-analisis > .krh-special--soon .krh-special__body { max-width: none; }
	.krh .krh-specials.krh-analisis > .krh-special--soon::before { background: linear-gradient(0deg, rgba(7, 17, 46, .97) 30%, rgba(7, 17, 46, .45) 65%, rgba(7, 17, 46, .05) 100%); }
}
@media (min-width: 1024px) {
	.krh .krh-special--minor { min-height: 380px; }
	.krh .krh-special--minor.krh-special--noimg,
	.krh .krh-specials > .krh-special--noimg:first-child:not(.krh-special--soon) { min-height: 0; }
}

/* Menú de la home en los artículos de K&R */
.krh.krh--bar { position: sticky; top: var(--krh-top); z-index: 1000; background: transparent; }
.krh--bar .krh-bar { position: relative; top: 0; }
body.krh-bar-page .kr-header,
body.krh-bar-page header:has(.kr-nav),
body.krh-bar-page #masthead { display: none !important; }

@media (prefers-reduced-motion: reduce) {
	.krh *, .krh *::before, .krh *::after { animation: none !important; transition: none !important; }
	.krh-ticker__viewport { overflow-x: auto; }
	.krh-ticker__track li[aria-hidden="true"] { display: none; }
	.krh-list--carousel { scroll-behavior: auto; }
}
