/*
 * Esmeeting Evento · contenido.css
 * Componentes que se ven igual en la web y en el editor de bloques: tipografía, botones, secciones
 * y los patrones del tema. Los colores salen de las variables --ev-* que imprime el tema desde Personalizar
 * (nunca se escribe un color de marca aquí). Radios: 6 y 8 px como máximo. Texto: 15 px como mínimo.
 */

@font-face {
	font-family: "Barlow Condensed"; font-style: normal; font-weight: 600 800; font-display: swap;
	src: url("../fonts/barlow-condensed-latin-700.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Barlow Condensed"; font-style: normal; font-weight: 600 800; font-display: swap;
	src: url("../fonts/barlow-condensed-latin-ext-700.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Source Serif 4"; font-style: normal; font-weight: 200 900; font-display: swap;
	src: url("../fonts/source-serif-4-latin-wght-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Source Serif 4"; font-style: normal; font-weight: 200 900; font-display: swap;
	src: url("../fonts/source-serif-4-latin-ext-wght-normal.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: "Fredoka"; font-style: normal; font-weight: 300 700; font-display: swap;
	src: url("../fonts/fredoka-latin-wght-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Fredoka"; font-style: normal; font-weight: 300 700; font-display: swap;
	src: url("../fonts/fredoka-latin-ext-wght-normal.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
	--ev-font-display: "Barlow Condensed", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
	--ev-font-text: var(--wp--preset--font-family--geist, "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif);
	--ev-r: 6px;
	--ev-r-lg: 8px;
	/* Perfil de diseño (esm_ev_perfil): el PHP los vuelve a fijar. Estos valores son los del perfil «editorial». */
	--ev-peso: 700;
	--ev-caso: uppercase;
	--ev-k: 1;
	--ev-k3: 1;
	--ev-lh-h: 0.95;
	--ev-wrap: 75rem;
	--ev-prose: 46rem;
	--ev-gutter: clamp(1.25rem, 4vw, 2.5rem);
	--ev-sec: clamp(3.5rem, 8vw, 6.5rem);
	--ev-focus: var(--ev-primary);
}

/* Foco visible en todo lo que se puede pulsar. En secciones oscuras, blanco. */
.ev-pie, .ev-sec--primario, .ev-sec--profundo { --ev-focus: #ffffff; }
:is(a, button, summary, input, select, textarea, [tabindex], .wp-block-button__link):focus-visible {
	outline: 3px solid var(--ev-focus) !important; /* el foco no se negocia: ni el tema padre ni un plugin lo quitan */
	outline-offset: 3px !important;
}

/* ───────── Texto del contenido ───────── */
.entry-content,
.editor-styles-wrapper {
	font-family: var(--ev-font-text);
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--ev-ink);
}
.entry-content :where(p, li),
.editor-styles-wrapper :where(p, li) { font-size: inherit; line-height: inherit; }

.entry-content :where(h1, h2, h3, h4),
.editor-styles-wrapper :where(h1, h2, h3, h4) {
	font-family: var(--ev-font-display);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.04;
	color: var(--ev-ink);
	text-wrap: balance;
	margin: 0 0 0.6em;
}
.entry-content h1, .editor-styles-wrapper h1 { font-size: calc(clamp(2.5rem, 6vw, 4.5rem) * var(--ev-k)); line-height: 1; letter-spacing: 0; }
.entry-content h2, .editor-styles-wrapper h2 { font-size: clamp(2rem, 4.4vw, 3.4rem); letter-spacing: 0; line-height: 1; }
.entry-content h3, .editor-styles-wrapper h3 { font-size: clamp(1.3rem, 2vw, 1.6rem); line-height: 1.15; font-weight: 600; letter-spacing: 0; }
.entry-content h4, .editor-styles-wrapper h4 { font-family: var(--ev-font-text); font-size: 1.125rem; font-weight: 700; letter-spacing: 0; }

.entry-content :where(p, ul, ol, details, table, figure, blockquote),
.editor-styles-wrapper :where(p, ul, ol, details, table, figure, blockquote) { margin-block: 0 1.15em; }
.entry-content :where(p:last-child, ul:last-child, ol:last-child) { margin-bottom: 0; }

.entry-content a:not(.wp-block-button__link),
.editor-styles-wrapper a:not(.wp-block-button__link) {
	color: var(--ev-primary);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}
.entry-content a:not(.wp-block-button__link):hover { text-decoration-thickness: 2px; }

.entry-content :where(ul, ol), .editor-styles-wrapper :where(ul, ol) { padding-left: 1.4em; }
.entry-content li::marker { color: var(--ev-primary); }
.entry-content :where(li + li) { margin-top: 0.4em; }
.entry-content ol.ev-temas + p { margin-top: 2rem; }

.entry-content hr, .editor-styles-wrapper hr, .wp-block-separator {
	border: 0; border-top: 1px solid var(--ev-line); margin-block: 2.5rem; height: 0; background: none;
}

/* Dos tonos en un titular, como esmeeting.es: lo que va en cursiva se escribe en el color del evento */
.entry-content :is(h1, h2) em, .editor-styles-wrapper :is(h1, h2) em { font-style: normal; color: var(--ev-primary); }
.ev-banda :is(h1, h2) em { color: var(--ev-accent-text); }

/* ───────── Secciones ───────── */
.ev-sec { padding-block: var(--ev-sec); margin: 0; }
.ev-sec--tinte { background: #ffffff; }
.ev-sec--tinte-2 { background: var(--ev-tint-2); }
.ev-sec--primario { background: var(--ev-primary); color: #ffffff; }
.ev-sec--profundo { background: var(--ev-deep); color: #ffffff; }
.ev-sec--primario :where(h1, h2, h3, h4, p, li), .ev-sec--profundo :where(h1, h2, h3, h4, p, li) { color: #ffffff; }
.ev-sec--primario a:not(.wp-block-button__link), .ev-sec--profundo a:not(.wp-block-button__link) { color: #ffffff; }

.ev-wrap {
	max-width: var(--ev-wrap);
	margin-inline: auto;
	padding-inline: var(--ev-gutter);
	box-sizing: border-box;
	width: 100%;
}
.entry-content > .ev-sec.alignfull { margin-block: 0; }

/* Etiqueta de sección (la «tag» de esmeeting.es): pastilla blanca, cuadrado de color, 15 px / 500 */
.ev-kicker, .entry-content p.ev-kicker, .editor-styles-wrapper p.ev-kicker {
	display: inline-flex;
	align-items: center;
	margin: 0 0 1.25rem;
	padding: 0.3rem 0.8rem;
	background: var(--ev-tint-2);
	border-radius: var(--ev-r);
	font-family: var(--ev-font-text);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ev-deep);
}
.ev-sec--tinte .ev-kicker { background: #ffffff; }

/* ───────── Botones ───────── */
.wp-block-buttons { gap: 0.9rem; }
body .wp-block-button .wp-block-button__link, .ev-boton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5em;
	min-height: 3rem;
	padding: 0.85rem 1.6rem;
	font-family: var(--ev-font-text);
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: -0.01em;
	line-height: 1.2;
	text-decoration: none;
	color: var(--ev-on-primary);
	background: var(--ev-primary);
	border: 2px solid var(--ev-primary);
	border-radius: var(--ev-r);
	box-shadow: none;
	transition: background-color var(--ev-t1, 160ms) var(--ev-mueve, ease), color var(--ev-t1, 160ms) var(--ev-mueve, ease), border-color var(--ev-t1, 160ms) var(--ev-mueve, ease), filter var(--ev-t1, 160ms) var(--ev-mueve, ease);
	cursor: pointer;
}
body .wp-block-button .wp-block-button__link:hover, .ev-boton:hover {
	background: var(--ev-primary-hover);
	border-color: var(--ev-primary-hover);
	color: #ffffff;
}
body .wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--ev-primary);
	border-color: currentColor;
}
body .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--ev-primary); color: #ffffff; border-color: var(--ev-primary); }
body .wp-block-button.is-style-ev-claro .wp-block-button__link { background: #ffffff; color: var(--ev-primary); border-color: #ffffff; }
body .wp-block-button.is-style-ev-claro .wp-block-button__link:hover { background: var(--ev-tint-2); color: var(--ev-primary); border-color: var(--ev-tint-2); }
body .wp-block-button.is-style-ev-acento .wp-block-button__link { background: var(--ev-accent); color: var(--ev-on-accent); border-color: var(--ev-accent); }
body .wp-block-button.is-style-ev-acento .wp-block-button__link:hover { filter: brightness(0.94); color: var(--ev-on-accent); background: var(--ev-accent); border-color: var(--ev-accent); }

body .ev-banda .is-style-outline .wp-block-button__link, body .ev-sec--primario .is-style-outline .wp-block-button__link, body .ev-sec--profundo .is-style-outline .wp-block-button__link {
	color: #ffffff; border-color: #ffffff;
}
body .ev-banda .is-style-outline .wp-block-button__link:hover, body .ev-sec--primario .is-style-outline .wp-block-button__link:hover, body .ev-sec--profundo .is-style-outline .wp-block-button__link:hover {
	background: #ffffff; color: var(--ev-primary); border-color: #ffffff;
}

/* ───────── Portada (hero): clara, como esmeeting.es; el color del evento entra en el segundo tono ───────── */
.ev-hero {
	position: relative;
	background: #ffffff;
	color: var(--ev-ink);
	border-bottom: 6px solid var(--ev-primary);
	padding-block: clamp(2.5rem, 6vw, 4.5rem) clamp(2.5rem, 6vw, 4.5rem);
	margin: 0;
}
.entry-content .ev-hero h1, .editor-styles-wrapper .ev-hero h1 {
	font-size: calc(clamp(3.25rem, 8.5vw, 7.5rem) * var(--ev-k));
	line-height: calc(var(--ev-lh-h) - 0.03);
	letter-spacing: 0;
	text-transform: var(--ev-caso);
	font-weight: var(--ev-peso);
	color: var(--ev-ink);
	margin: 0 0 0.4em;
	max-width: 15ch;
}
.ev-hero__rejilla {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.8fr);
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: end;
}
.ev-hero__lead, .entry-content p.ev-hero__lead {
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	line-height: 1.4;
	max-width: 30em;
	margin: 0 0 2rem;
	color: var(--ev-muted);
}
.ev-hero .wp-block-buttons { margin-top: 0.5rem; }

/* Ficha de datos clave */
.ev-ficha {
	background: #ffffff;
	color: var(--ev-ink);
	border-radius: var(--ev-r-lg);
	box-shadow: 0 0 0 1px rgba(15, 15, 16, 0.07), 0 8px 30px -12px rgba(0, 0, 0, 0.15);
	padding: 1.5rem 1.75rem 0.5rem;
	border-top: 8px solid var(--ev-accent);
}
.ev-ficha :where(p) { color: var(--ev-ink); margin: 0; }
.ev-ficha__fila { padding-block: 1rem; border-top: 1px solid var(--ev-line); }
.ev-ficha__fila:first-child { border-top: 0; padding-top: 0.25rem; }
.ev-ficha__fila:first-child .ev-ficha__v, .entry-content .ev-ficha__fila:first-child p.ev-ficha__v { font-size: calc(clamp(2rem, 3.6vw, 3rem) * var(--ev-k)); color: var(--ev-primary); line-height: 1; text-transform: var(--ev-caso); }
.ev-ficha .ev-ficha__et, .entry-content .ev-ficha p.ev-ficha__et {
	font-size: 0.9375rem; font-weight: 500; color: var(--ev-muted); margin: 0 0 0.2rem; line-height: 1.3;
}
.ev-ficha .ev-ficha__v, .entry-content .ev-ficha p.ev-ficha__v {
	font-family: var(--ev-font-display); font-size: clamp(1.15rem, 1.7vw, 1.35rem); line-height: 1.25; font-weight: 600; letter-spacing: 0; color: var(--ev-ink); overflow-wrap: anywhere;
}

/* ───────── Cifras ───────── */
.ev-cifras {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
	gap: 0;
}
.ev-cifra { padding: 0.5rem clamp(1rem, 3vw, 2rem); border-left: 1px solid var(--ev-line); }
.ev-cifra:first-child { border-left: 0; padding-left: 0; }
.entry-content .ev-cifra p, .editor-styles-wrapper .ev-cifra p { margin: 0; }
.entry-content p.ev-cifra__n, .editor-styles-wrapper p.ev-cifra__n {
	font-family: var(--ev-font-display); font-size: calc(clamp(2.5rem, 5.5vw, 4.5rem) * var(--ev-k)); line-height: 1; font-weight: 600; letter-spacing: 0; color: var(--ev-primary);
}
.entry-content p.ev-cifra__t, .editor-styles-wrapper p.ev-cifra__t { font-size: 1rem; color: var(--ev-muted); margin-top: 0.4rem; }

/* ───────── Introducción a dos columnas ───────── */
.ev-dos {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: clamp(2rem, 6vw, 5rem);
	align-items: start;
}
.ev-dos--iguales { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ev-dos--sede { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
.ev-dos > :where(h2:first-child) { margin-bottom: 0; }
.ev-lead, .entry-content p.ev-lead, .editor-styles-wrapper p.ev-lead { font-size: clamp(1.2rem, 1.8vw, 1.4rem); line-height: 1.55; }

/* ───────── Tarjetas numeradas ───────── */
.ev-tarjetas {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 1.25rem;
	margin-top: clamp(1.5rem, 4vw, 2.5rem);
}
.ev-tarjeta {
	background: #ffffff;
	border: 1px solid var(--ev-line);
	border-radius: var(--ev-r-lg);
	padding: 1.75rem;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}
.ev-tarjeta .ev-tarjeta__n, .entry-content p.ev-tarjeta__n {
	font-family: var(--ev-font-display); font-size: calc(2.5rem * var(--ev-k3)); line-height: 1; font-weight: 600; color: var(--ev-primary); margin: 0 0 0.75rem; letter-spacing: 0;
}
.ev-tarjeta :where(h3) { margin: 0 0 0.4rem; }
.ev-tarjeta :where(p) { margin: 0; font-size: 1rem; line-height: 1.6; color: var(--ev-ink); }
.wp-block-group.is-style-ev-tarjeta { background: #ffffff; border: 1px solid var(--ev-line); border-radius: var(--ev-r-lg); padding: 1.75rem; }

/* Tarjetas sobre banda blanca: toman el fondo cálido */
.ev-sec--tinte .ev-tarjeta, .ev-sec--tinte .ev-cuota { background: var(--ev-bg); }

/* ───────── Lista numerada en columnas (temas) ───────── */
.entry-content ol.ev-temas, .editor-styles-wrapper ol.ev-temas {
	list-style: none;
	padding: 0;
	margin: clamp(1.5rem, 4vw, 2.5rem) 0 0;
	counter-reset: tema;
	columns: 2 24rem;
	column-gap: clamp(2rem, 5vw, 4rem);
}
.ev-temas li {
	counter-increment: tema;
	position: relative;
	break-inside: avoid;
	padding: 1rem 0 1rem 3.4rem;
	margin: 0;
	border-top: 1px solid var(--ev-line);
	font-size: 1.125rem;
	font-weight: 500;
	letter-spacing: -0.01em;
	line-height: 1.4;
}
.ev-temas li::before {
	content: counter(tema, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 0.85rem;
	font-family: var(--ev-font-display);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--ev-primary);
	letter-spacing: 0;
}
.ev-temas li::marker { content: none; }

/* ───────── Personas: ponentes y comité ───────── */
.ev-ponentes,
.gb-grid-wrapper:has(.esm-speaker-card) {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(17.5rem, 1fr));
	gap: 2rem 1.75rem;
	margin: 0;
	align-items: stretch;
}
.gb-grid-wrapper:has(.esm-speaker-card) > .gb-grid-column { width: auto !important; padding: 0 !important; }
.ev-ponente, .ev-persona, .esm-speaker-card {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
	border-top: 2px solid var(--ev-ink) !important;
	border-radius: 0 !important;
	padding: 1rem 0 0 !important;
	text-align: left !important;
	transform: none !important;
}
.entry-content .ev-ponente h3, .entry-content .ev-persona h3, .esm-card-title {
	font-family: var(--ev-font-display) !important;
	font-size: 1.35rem !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: 0;
	color: var(--ev-ink) !important;
	margin: 0 0 0.15rem !important;
}
.entry-content .ev-ponente p, .entry-content .ev-persona p, .esm-card-subtitle {
	font-size: 1rem !important;
	line-height: 1.55 !important;
	color: var(--ev-muted) !important;
	margin: 0 !important;
}
.ev-ponente figure, .esm-speaker-card figure { margin: 0 0 0.75rem; }
.ev-ponente figure img, .esm-speaker-card figure img {
	width: 6.5rem !important; height: 6.5rem !important; border-radius: 50% !important; object-fit: cover !important; filter: grayscale(1); display: block; margin: 0 !important;
}
.ev-ponente--fondo { background: var(--ev-tint) !important; padding: 1.25rem !important; border-top-color: var(--ev-primary) !important; }

/* ───────── Cuotas / inscripción ───────── */
.ev-cuotas {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr));
	gap: 1.25rem;
	margin-top: clamp(1.5rem, 4vw, 2.5rem);
}
.ev-cuota {
	background: #ffffff;
	border: 1px solid var(--ev-line);
	border-radius: var(--ev-r-lg);
	padding: 2rem 1.75rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.ev-cuota--destacada { border: 2px solid var(--ev-primary); }
.ev-cuota :where(h3) { margin: 0; }
.entry-content p.ev-cuota__precio, .editor-styles-wrapper p.ev-cuota__precio {
	font-family: var(--ev-font-display); font-size: calc(clamp(2.5rem, 4vw, 3.5rem) * var(--ev-k)); line-height: 1.05; font-weight: 600; letter-spacing: 0; color: var(--ev-primary); margin: 0.25rem 0 0.75rem;
}
.ev-cuota ul { margin: 0 0 1.25rem; padding-left: 1.2em; font-size: 1rem; }
.ev-cuota .wp-block-buttons { margin-top: auto; }

/* Pasos numerados */
.entry-content ol.ev-pasos, .editor-styles-wrapper ol.ev-pasos { list-style: none; padding: 0; margin: 0; counter-reset: paso; }
.ev-pasos li { counter-increment: paso; position: relative; padding: 1rem 0 1rem 3.5rem; margin: 0; border-top: 1px solid var(--ev-line); }
.ev-pasos li:first-child { border-top: 0; }
.ev-pasos li::before {
	content: counter(paso);
	position: absolute; left: 0; top: 0.9rem;
	width: 2.25rem; height: 2.25rem; border-radius: 50%;
	background: var(--ev-primary); color: #ffffff;
	font-family: var(--ev-font-display); font-size: 1.05rem; font-weight: 600;
	display: grid; place-items: center; line-height: 1;
}
.ev-pasos li::marker { content: none; }

/* Aviso destacado */
.ev-aviso {
	background: var(--ev-tint-2);
	border-left: 5px solid var(--ev-accent);
	border-radius: 0 var(--ev-r-lg) var(--ev-r-lg) 0;
	padding: 1.25rem 1.5rem;
}
.ev-aviso :where(p) { margin: 0; }
.ev-aviso :where(p + p) { margin-top: 0.6rem; }
.entry-content .ev-aviso p.ev-aviso__titulo { font-family: var(--ev-font-display); font-size: 1.3rem; font-weight: 600; letter-spacing: 0; line-height: 1.2; }

/* ───────── Sede ───────── */
.ev-sede-ficha {
	background: var(--ev-tint);
	border-radius: var(--ev-r-lg);
	padding: 1.75rem;
	border-top: 6px solid var(--ev-primary);
}
.ev-sede-ficha :where(p) { margin: 0 0 0.9rem; }
.ev-sede-ficha .ev-ficha__et { margin-bottom: 0.1rem; }
.ev-enlaces { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-top: 0.5rem; }

/* ───────── Banda de llamada a la acción: color del evento, con el motivo ───────── */
.ev-banda { background-color: var(--ev-primary); background-image: var(--ev-motivo, none); color: #ffffff; padding-block: clamp(3rem, 7vw, 5.5rem); margin: 0; --ev-focus: #ffffff; }
.ev-banda :where(h2, p) { color: #ffffff; }
.entry-content .ev-banda h2 { margin: 0 0 0.5rem; }
.entry-content .ev-banda p { margin: 0; font-size: 1.2rem; }
.ev-banda__rejilla { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: center; }
.ev-banda a:not(.wp-block-button__link) { color: #ffffff; }
body .ev-banda .wp-block-button .wp-block-button__link { background: var(--ev-accent); color: var(--ev-on-accent); border-color: var(--ev-accent); }
body .ev-banda .wp-block-button .wp-block-button__link:hover { filter: brightness(0.94); background: var(--ev-accent); border-color: var(--ev-accent); color: var(--ev-on-accent); }

/* ───────── Logotipos de organizadores ───────── */
.ev-logos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: clamp(1.5rem, 4vw, 3.5rem);
	margin-top: 1.5rem;
}
.ev-logos figure { margin: 0 !important; }
/* Logotipos de entidades, patrocinadores y sellos: el recuadro mide 80-96 px de alto (la orden de Alejandro del 14-oct-2026 es que la marca
   se vea de 56 px como mínimo y los PNG de la flota llevan margen transparente), en su color original, sin grises ni opacidad.
   Si un logo es muy ancho se reduce el ancho del recuadro, no se deforma. */
.ev-logos img { display: block; width: auto !important; height: clamp(5rem, 8vw, 6rem) !important; max-height: none; max-width: min(100%, 18rem); object-fit: contain; object-position: left center; filter: none; opacity: 1; }
.ev-logos { row-gap: 1.75rem; }

/* ───────── Preguntas frecuentes ───────── */
.entry-content details.ev-faq, .editor-styles-wrapper details.ev-faq {
	border-top: 1px solid var(--ev-line);
	padding: 0;
	margin: 0;
}
.ev-faq:last-of-type { border-bottom: 1px solid var(--ev-line); }
.ev-faq summary {
	list-style: none;
	cursor: pointer;
	padding: 1.15rem 3rem 1.15rem 0;
	position: relative;
	font-family: var(--ev-font-display);
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.25;
}
.ev-faq summary::-webkit-details-marker { display: none; }
.ev-faq summary::after {
	content: "+";
	position: absolute; right: 0.25rem; top: 50%; transform: translateY(-50%);
	font-family: var(--ev-font-text); font-size: 1.75rem; font-weight: 300; color: var(--ev-primary);
}
.ev-faq[open] summary::after { content: "−"; }
.ev-faq > :not(summary) { padding-bottom: 1.25rem; margin: 0; max-width: 40rem; }

/* ───────── Cuenta atrás ───────── */
.ev-cuenta { display: none; margin: 0 0 1.25rem; align-items: baseline; gap: 0.6rem; }
.ev-js .ev-cuenta.is-lista { display: flex; }
.ev-cuenta__n { font-size: 2.5rem; line-height: 1; font-weight: 600; letter-spacing: 0; color: var(--ev-primary); }
.ev-cuenta__t { font-size: 1rem; color: var(--ev-muted); }

/* ───────── Imágenes y citas ───────── */
.entry-content figure.wp-block-image img { border-radius: var(--ev-r-lg); }
.entry-content blockquote, .editor-styles-wrapper blockquote {
	margin-inline: 0; padding: 0.25rem 0 0.25rem 1.5rem; border-left: 4px solid var(--ev-accent);
	font-family: var(--ev-font-display); font-size: 1.5rem; line-height: 1.35; font-weight: 440;
}
.entry-content table, .editor-styles-wrapper table { width: 100%; border-collapse: collapse; font-size: 1rem; }
.entry-content th, .entry-content td { border-bottom: 1px solid var(--ev-line); padding: 0.75rem 0.5rem; text-align: left; vertical-align: top; }
.entry-content th { font-weight: 700; border-bottom: 2px solid var(--ev-ink); }

/* ───────── Pantallas pequeñas ───────── */
@media (max-width: 900px) {
	.ev-hero__rejilla, .ev-dos, .ev-dos--sede, .ev-dos--iguales, .ev-banda__rejilla { grid-template-columns: minmax(0, 1fr); }
	.ev-hero__rejilla { align-items: start; }
	.entry-content .ev-hero h1 { max-width: 12ch; }
	.ev-cifra { border-left: 0; padding-left: 0; border-top: 1px solid var(--ev-line); padding-top: 1.25rem; }
	.ev-cifra:first-child { border-top: 0; padding-top: 0.5rem; }
	.ev-cifras { gap: 1.25rem 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ev-cifra { border-top: 0; }
}
@media (max-width: 520px) {
	.ev-cifras { grid-template-columns: minmax(0, 1fr); }
	.wp-block-buttons > .wp-block-button, .wp-block-buttons > .wp-block-button .wp-block-button__link { width: 100%; }
	.ev-temas li { padding-left: 3rem; }
}
/* Móvil apaisado: el titular de la portada ocupaba toda la altura de la pantalla */
@media (max-height: 500px) and (orientation: landscape) {
	.entry-content .ev-hero h1, .editor-styles-wrapper .ev-hero h1 { font-size: clamp(2.25rem, 9vh, 3.5rem); max-width: none; }
	.ev-hero { padding-block: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: 0.01ms !important; transition-delay: 0s !important; animation-duration: 0.01ms !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
}

/* Franja de cifras: más baja que una sección normal */
.ev-sec--compacta { padding-block: clamp(2rem, 4.5vw, 3.25rem); border-bottom: 1px solid var(--ev-line); }


/* ───────── Tipografía display del evento: condensada, en mayúsculas en títulos de página y de sección ───────── */
.entry-content :where(h1, h2), .editor-styles-wrapper :where(h1, h2) { text-transform: var(--ev-caso); font-weight: var(--ev-peso); line-height: var(--ev-lh-h); letter-spacing: 0; }
.entry-content :where(h3), .editor-styles-wrapper :where(h3) { font-weight: var(--ev-peso); letter-spacing: 0.005em; }
.entry-content h2, .editor-styles-wrapper h2 { font-size: calc(clamp(2.5rem, 5.4vw, 4.25rem) * var(--ev-k)); }
.entry-content h3, .editor-styles-wrapper h3 { font-size: calc(clamp(1.6rem, 2.4vw, 2rem) * var(--ev-k3)); }
.entry-content p.ev-cifra__n, .editor-styles-wrapper p.ev-cifra__n { font-weight: var(--ev-peso); font-size: calc(clamp(2.75rem, 5.2vw, 4.5rem) * var(--ev-k)); white-space: nowrap; }
.ev-cifra { border-top: 4px solid var(--ev-accent); border-left: 0; padding-top: 0.9rem; }
.ev-cifra:first-child { padding-left: clamp(1rem, 3vw, 2rem); }
.ev-cifras { gap: 1.5rem; }
