/* ==========================================================================
   FENAMA · Sistema de diseño "Rojo digno"
   Fuente de verdad: diseno-referencia/carta-de-colores.html
   Prefijo de clases: fen-  ·  Tokens: --fen-*
   ========================================================================== */

/* Fuentes alojadas en el tema (licencia SIL Open Font License 1.1) -------- */
@font-face {
	font-family: "Bricolage Grotesque";
	font-style: normal;
	font-weight: 700 800;
	font-display: swap;
	src: url("../../fonts/bricolage-grotesque-700-800-latin.woff2") format("woff2");
}
@font-face {
	font-family: "Atkinson Hyperlegible";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../../fonts/atkinson-hyperlegible-400-latin.woff2") format("woff2");
}
@font-face {
	font-family: "Atkinson Hyperlegible";
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url("../../fonts/atkinson-hyperlegible-400-italic-latin.woff2") format("woff2");
}
@font-face {
	font-family: "Atkinson Hyperlegible";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../../fonts/atkinson-hyperlegible-700-latin.woff2") format("woff2");
}

/* Tokens ------------------------------------------------------------------ */
:root {
	--fen-primary: #C8102E;  /* Rojo FENAMA */
	--fen-dark:    #7A0C1E;  /* Granate */
	--fen-accent:  #F5B731;  /* Amarillo choclo: siempre con texto oscuro */
	--fen-ok:      #2E6B4A;  /* Verde albahaca */
	--fen-gender:  #5B2C83;  /* Morado lucha */
	--fen-bg:      #FBF4EA;  /* Crema harina */
	--fen-surface: #FFFFFF;
	--fen-ink:     #2B1A1C;  /* Tinta */
	--fen-muted:   #6B5E5A;  /* Gris piedra */
	--fen-line:    #E8DCCB;
	--fen-tint:    #F9E1DE;

	--fen-font-head: "Bricolage Grotesque", system-ui, sans-serif;
	--fen-font-body: "Atkinson Hyperlegible", system-ui, sans-serif;

	--fen-max: 1280px;
	--fen-gutter: 24px;
	--fen-section-gap: 96px;
	--fen-radius-btn: 14px;
	--fen-radius-card: 22px;
	--fen-radius-hero: 28px;
	--fen-btn-height: 56px;
}

@media (max-width: 767px) {
	:root {
		--fen-gutter: 16px;
		--fen-section-gap: 48px;
	}
}

/* Base -------------------------------------------------------------------- */
html {
	-webkit-text-size-adjust: 100%;
}

body,
#page-container {
	background: var(--fen-bg);
}

body {
	color: var(--fen-ink);
	font-family: var(--fen-font-body);
	font-size: 18px;
	line-height: 1.55;
}

/* Extra pone los títulos en mayúsculas y peso 600-700; el sistema no. */
h1, h2, h3, h4,
.fen-titulo,
.post-header h1,
.page .post-wrap h1 {
	font-family: var(--fen-font-head);
	font-weight: 800;
	letter-spacing: -0.02em;
	text-transform: none;
	color: inherit;
	padding-bottom: 0;
}

h1 { font-size: clamp(44px, 6vw, 76px); line-height: 0.95; }
h2 { font-size: clamp(36px, 4.4vw, 56px); line-height: 1; }
h3 { font-size: clamp(22px, 2vw, 28px); line-height: 1.15; font-weight: 700; }

a {
	color: var(--fen-primary);
}
a:hover {
	color: var(--fen-dark);
}

/* Foco visible en cualquier fondo: anillo tinta con halo amarillo. */
:focus-visible {
	outline: 3px solid var(--fen-ink);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px var(--fen-accent);
}

/* Extra quita el foco a botones y enlaces con selectores más fuertes; el foco
   visible es obligatorio (WCAG 2.4.7), así que se refuerza con #page-container. */
#page-container :focus-visible,
#page-container button:focus-visible,
#page-container a:focus-visible {
	outline: 3px solid var(--fen-ink);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px var(--fen-accent);
}

/* Destino del salto al contenido: recibe el foco, pero no es un control. */
#page-container .fen-ancla:focus {
	outline: none;
	box-shadow: none;
}

.fen-saltar {
	position: absolute;
	left: 16px;
	top: -100px;
	z-index: 100000;
	padding: 14px 20px;
	border-radius: var(--fen-radius-btn);
	background: var(--fen-ink);
	color: #FFFFFF;
	font-weight: 700;
	text-decoration: none;
}
.fen-saltar:focus {
	top: 16px;
	color: #FFFFFF;
}

.fen-contenedor {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--fen-max);
	margin: 0 auto;
	padding-left: var(--fen-gutter);
	padding-right: var(--fen-gutter);
}

/* Filas de Divi con la clase fen-fila siguen el mismo ancho que .fen-contenedor. */
.et_pb_row.fen-fila {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--fen-max);
	padding-left: var(--fen-gutter);
	padding-right: var(--fen-gutter);
}

.fen-antetitulo {
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--fen-primary);
}

/* Dato pendiente de confirmar por la directiva. */
.fen-pendiente {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--fen-tint);
	color: var(--fen-dark);
	font-size: 0.85em;
	font-weight: 700;
}

/* Botones ----------------------------------------------------------------- */
.fen-boton {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: var(--fen-btn-height);
	padding: 0 26px;
	border: 2px solid transparent;
	border-radius: var(--fen-radius-btn);
	font-family: var(--fen-font-body);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
}
.fen-boton svg { flex: 0 0 auto; }

/* Doble clase en las variantes: Extra colorea ".post-content a" y debe perder. */
.fen-boton.fen-boton--principal,
.fen-boton.fen-boton--principal:visited { background: var(--fen-primary); color: #FFFFFF; }
.fen-boton.fen-boton--principal:hover { background: var(--fen-dark); color: #FFFFFF; }

.fen-boton.fen-boton--secundario,
.fen-boton.fen-boton--secundario:visited { background: var(--fen-accent); color: var(--fen-ink); }
.fen-boton.fen-boton--secundario:hover { background: #E9A91F; color: var(--fen-ink); }

.fen-boton.fen-boton--oscuro,
.fen-boton.fen-boton--oscuro:visited { background: var(--fen-ink); color: #FFFFFF; }
.fen-boton.fen-boton--oscuro:hover { background: #000000; color: #FFFFFF; }

.fen-boton.fen-boton--contorno,
.fen-boton.fen-boton--contorno:visited { border-color: currentColor; background: transparent; color: var(--fen-ink); }
.fen-boton.fen-boton--contorno:hover { background: var(--fen-ink); border-color: var(--fen-ink); color: #FFFFFF; }

.fen-boton.fen-boton--contorno-blanco,
.fen-boton.fen-boton--contorno-blanco:visited { border-color: #FFFFFF; background: transparent; color: #FFFFFF; }
.fen-boton.fen-boton--contorno-blanco:hover { background: #FFFFFF; color: var(--fen-primary); }

/* Módulo Botón de Divi: altura mínima táctil aunque el preset no la fije.
   Los colores, bordes y fuente los ponen los presets globales. */
.et_pb_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--fen-btn-height);
	box-sizing: border-box;
}

/* Tarjetas y etiquetas de estado ----------------------------------------- */
/* Doble clase: Extra pone borde de color de acento a ".page article". */
.fen-tarjeta.fen-tarjeta {
	background: var(--fen-surface);
	border: 2px solid var(--fen-line);
	border-radius: var(--fen-radius-card);
}

.fen-etiqueta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 32px;
	padding: 0 14px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
}
.fen-etiqueta--proxima   { background: var(--fen-accent);  color: var(--fen-ink); }
.fen-etiqueta--curso     { background: var(--fen-primary); color: #FFFFFF; }
.fen-etiqueta--realizada { background: var(--fen-ok);      color: #FFFFFF; }
.fen-etiqueta--genero    { background: var(--fen-gender);  color: #FFFFFF; }
.fen-etiqueta--suave     { background: var(--fen-tint);    color: var(--fen-dark); }

/* Íconos de trazo como máscaras CSS: heredan currentColor y no requieren SVG
   dentro de los módulos de Texto (que las dirigentas pueden editar). */
.fen-icono-megafono::before,
.fen-alerta__mensaje::before {
	content: "";
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l14-6v14L3 13z'/%3E%3Cpath d='M7 13v5a2 2 0 0 0 4 0v-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l14-6v14L3 13z'/%3E%3Cpath d='M7 13v5a2 2 0 0 0 4 0v-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Barra de alerta (sección global del encabezado) ------------------------- */
.fen-alerta {
	background: var(--fen-dark);
	color: #FFFFFF;
}
.fen-alerta__texto,
.fen-alerta__texto p {
	color: #FFFFFF;
	font-size: 16px;
	line-height: 1.45;
}
.fen-alerta__texto p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 24px;
	padding: 0;
}
.fen-alerta__mensaje {
	flex: 1 1 320px;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
.fen-alerta__mensaje::before {
	margin-top: 2px;
}
.fen-alerta__texto a,
.fen-alerta__texto a:visited {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--fen-accent);
	font-weight: 700;
	text-decoration: none;
}
.fen-alerta__texto a:hover {
	color: #FFFFFF;
	text-decoration: underline;
}

/* Encabezado --------------------------------------------------------------- */
.fen-encabezado {
	position: relative;
	background: var(--fen-surface);
	border-bottom: 1px solid var(--fen-line);
}
.fen-encabezado__fila {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	padding-top: 16px;
	padding-bottom: 16px;
}

.fen-marca {
	display: flex;
	align-items: center;
	gap: 14px;
	text-decoration: none;
	color: var(--fen-ink);
}
.fen-marca__logo {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
}
.fen-marca__texto {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
}
.fen-marca__nombre {
	font-family: var(--fen-font-head);
	font-weight: 800;
	font-size: 28px;
	letter-spacing: -0.01em;
	color: var(--fen-primary);
}
.fen-marca__bajada {
	font-size: 14px;
	color: var(--fen-muted);
}

.fen-nav__lista {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-nav__lista li {
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-nav__lista a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--fen-ink);
	font-size: 17px;
	font-weight: 700;
	text-decoration: none;
}
.fen-nav__lista a:hover,
.fen-nav__lista a[aria-current="page"] {
	color: var(--fen-primary);
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 6px;
}
/* Ítem "Afíliate": clase CSS fen-menu-boton-rojo en Apariencia → Menús. */
.fen-nav__lista .fen-menu-boton-rojo a {
	min-height: 48px;
	padding: 0 22px;
	border-radius: 12px;
	background: var(--fen-primary);
	color: #FFFFFF;
}
.fen-nav__lista .fen-menu-boton-rojo a:hover,
.fen-nav__lista .fen-menu-boton-rojo a[aria-current="page"] {
	background: var(--fen-dark);
	color: #FFFFFF;
	text-decoration: none;
}

/* Doble clase: Extra da display a los botones con un selector más específico. */
.fen-encabezado .fen-menu-boton {
	display: none;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 2px solid var(--fen-line);
	border-radius: 12px;
	background: var(--fen-surface);
	color: var(--fen-ink);
	cursor: pointer;
}
.fen-encabezado .fen-menu-boton:hover,
.fen-encabezado .fen-menu-boton:focus,
.fen-encabezado .fen-menu-boton[aria-expanded="true"] {
	border-color: var(--fen-ink);
	background: var(--fen-bg);
	color: var(--fen-ink);
}
.fen-menu-boton__cerrar { display: none; }
.fen-menu-boton[aria-expanded="true"] .fen-menu-boton__abrir { display: none; }
.fen-menu-boton[aria-expanded="true"] .fen-menu-boton__cerrar { display: inline; }

/* Bajo 1024 px el menú completo no cabe en una línea: se usa el botón hamburguesa. */
@media (max-width: 1023px) {
	.fen-encabezado__fila {
		gap: 12px;
		padding-top: 12px;
		padding-bottom: 12px;
	}
	.fen-marca { gap: 10px; }
	.fen-marca__logo { width: 44px; height: 44px; }
	.fen-marca__nombre { font-size: 24px; }

	/* Sin JavaScript el menú queda visible, en una lista bajo el logo. */
	.fen-nav { flex: 1 1 100%; }
	.fen-nav__lista {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}
	.fen-nav__lista a {
		display: flex;
		min-height: 52px;
		padding: 0 4px;
		border-top: 1px solid var(--fen-line);
		font-size: 18px;
	}
	.fen-nav__lista .fen-menu-boton-rojo {
		padding-top: 12px;
	}
	.fen-nav__lista .fen-menu-boton-rojo a {
		justify-content: center;
		min-height: 56px;
		border-top: 0;
	}

	.fen-js .fen-encabezado .fen-menu-boton { display: inline-flex; }
	.fen-js .fen-nav { display: none; }
	.fen-js .fen-nav.is-abierto { display: block; padding-bottom: 8px; }
}

@media (max-width: 767px) {
	.fen-marca__bajada { display: none; }
	.fen-alerta__texto p { gap: 0 24px; }
	.fen-alerta__texto a { padding-left: 30px; }
}

/* Pie de página ------------------------------------------------------------ */
.fen-pie,
.fen-pie p,
.fen-pie li {
	color: #FFFFFF;
	font-size: 17px;
	line-height: 1.5;
}
.fen-pie a,
.fen-pie a:visited {
	color: #FFFFFF;
	text-decoration: none;
}
.fen-pie a:hover {
	color: var(--fen-accent);
	text-decoration: underline;
}
.fen-pie ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-pie li {
	margin: 0;
	padding: 0;
}
.fen-pie li a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}
.fen-pie__marca {
	display: flex;
	align-items: center;
	gap: 16px;
}
.fen-pie__marca img {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	object-fit: cover;
}
.fen-pie__marca p {
	margin: 0;
	padding: 0;
}
.fen-pie .fen-pie__nombre {
	font-family: var(--fen-font-head);
	font-weight: 800;
	font-size: 28px;
	line-height: 1.1;
}
.fen-pie .fen-pie__lema {
	font-size: 16px;
	opacity: 0.92;
}
.fen-pie .fen-pie__titulo {
	padding-bottom: 4px;
	color: var(--fen-accent);
	font-weight: 700;
}
.fen-pie .fen-pendiente {
	background: rgba(255, 255, 255, 0.14);
	color: #FFFFFF;
}

/* Secciones de página (Divi) ----------------------------------------------- */
/* Divi pinta las secciones de blanco y les da 4 % de relleno: aquí manda el sistema. */
.et_pb_section.fen-seccion {
	padding-top: var(--fen-section-gap);
	padding-bottom: 0;
	background-color: transparent;
}
.et_pb_section.fen-seccion--hero {
	padding-top: 32px;
}
.et_pb_section.fen-seccion--destacada {
	padding-top: 24px;
}
.et_pb_section.fen-seccion--ultima {
	padding-bottom: var(--fen-section-gap);
}
.fen-seccion .et_pb_row.fen-fila {
	width: 100%;
	max-width: var(--fen-max);
	padding-top: 0;
	padding-bottom: 0;
}
.fen-seccion .et_pb_row + .et_pb_row {
	margin-top: 32px;
}
/* Espacio entre módulos (Divi usa márgenes en % con selectores de 3 clases). */
.fen-seccion .et_pb_row .et_pb_column > .et_pb_module {
	margin-bottom: 0;
}
.fen-seccion .et_pb_row .et_pb_column > .et_pb_module + .et_pb_module {
	margin-top: 24px;
}
.fen-seccion .et_pb_text p {
	padding-bottom: 0;
}
.fen-seccion .et_pb_text_inner > * {
	margin-top: 0;
	margin-bottom: 0;
}
.fen-seccion .et_pb_text_inner > * + * {
	margin-top: 8px;
}
.fen-seccion .et_pb_text_inner > p + p {
	margin-top: 16px;
}
.fen-seccion h2 {
	margin: 0;
}
.fen-encabezado-seccion {
	max-width: 720px;
}
.fen-antetitulo--verde {
	color: var(--fen-ok);
}
.fen-bajada,
.fen-seccion .fen-bajada {
	color: var(--fen-muted);
}
.fen-seccion .fen-enlace,
.fen-seccion .fen-enlace:visited {
	color: var(--fen-primary);
	font-weight: 700;
	text-decoration: none;
}
.fen-seccion .fen-enlace:hover {
	color: var(--fen-dark);
	text-decoration: underline;
}

@media (max-width: 980px) {
	.fen-seccion .et_pb_row > .et_pb_column {
		margin-bottom: 24px;
	}
	.fen-seccion .et_pb_row > .et_pb_column:last-child {
		margin-bottom: 0;
	}
}
@media (max-width: 767px) {
	.et_pb_section.fen-seccion--hero,
	.et_pb_section.fen-seccion--destacada {
		padding-top: 16px;
	}
}

/* Íconos en botones de Divi (máscara CSS, hereda el color del texto). */
.et_pb_button.fen-boton-icono::before {
	content: "";
	position: static;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
	opacity: 1;
	background: currentColor;
	-webkit-mask: var(--fen-icono) center / contain no-repeat;
	mask: var(--fen-icono) center / contain no-repeat;
}
/* !important: con el ícono de Divi apagado, Divi oculta ::before con
   "body #page-container .et_pb_section .et_pb_button_N::before { display: none !important }". */
body #page-container .et_pb_section .et_pb_button.fen-boton-icono::before {
	display: inline-block !important;
}
.fen-boton-icono--calendario {
	--fen-icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.fen-boton-icono--compartir {
	--fen-icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cpath d='M8.6 13.5l6.8 4M15.4 6.5l-6.8 4'/%3E%3C/svg%3E");
}

/* Hero --------------------------------------------------------------------- */
.fen-seccion .et_pb_row.fen-hero {
	width: calc(100% - 2 * var(--fen-gutter));
	max-width: calc(var(--fen-max) - 2 * var(--fen-gutter));
	padding: 0;
	border-radius: var(--fen-radius-hero);
	overflow: hidden;
	background: var(--fen-primary);
}
.fen-hero .et_pb_column.fen-hero__texto {
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-content: center;
	gap: 12px;
	padding: 56px 48px;
	color: #FFFFFF;
}
.fen-seccion .fen-hero .fen-hero__texto > .et_pb_module + .et_pb_module {
	margin-top: 0;
}
.fen-hero__texto .et_pb_button_module_wrapper {
	flex: 0 0 auto;
	width: auto;
}
.fen-hero__texto .et_pb_text {
	flex: 1 1 100%;
	margin-bottom: 12px;
	color: #FFFFFF;
}
.fen-hero__texto .et_pb_text_inner > * + * {
	margin-top: 24px;
}
.fen-hero .fen-antetitulo {
	color: #FFFFFF;
	opacity: 0.92;
	font-size: 16px;
}
.fen-hero__texto h1 {
	margin: 0;
	color: #FFFFFF;
	line-height: 0.95;
	letter-spacing: -0.03em;
}
.fen-hero .fen-hero__bajada {
	max-width: 520px;
	font-size: 21px;
	line-height: 1.5;
}
.fen-hero .et_pb_column.fen-hero__foto {
	position: relative;
	min-height: 520px;
}
/* Proporción de la maqueta (480/420): con 50/50 los dos botones no caben en una línea. */
@media (min-width: 981px) {
	.fen-seccion .et_pb_row.fen-hero > .et_pb_column.fen-hero__texto { width: 54%; }
	.fen-seccion .et_pb_row.fen-hero > .et_pb_column.fen-hero__foto { width: 46%; }
}
.fen-hero__foto .et_pb_image,
.fen-hero__foto .et_pb_image_wrap {
	position: absolute;
	inset: 0;
	display: block;
	margin: 0;
}
.fen-hero__foto .et_pb_image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width: 980px) {
	.fen-seccion .et_pb_row.fen-hero {
		display: flex;
		flex-direction: column-reverse;
	}
	.fen-seccion .fen-hero > .et_pb_column {
		margin-bottom: 0;
	}
	.fen-hero .et_pb_column.fen-hero__foto {
		min-height: 320px;
	}
}
@media (max-width: 767px) {
	.fen-seccion .et_pb_row.fen-hero {
		border-radius: 24px;
	}
	.fen-hero .et_pb_column.fen-hero__texto {
		padding: 24px 22px 26px;
	}
	.fen-hero .fen-antetitulo {
		display: none;
	}
	.fen-hero__texto h1 {
		font-size: 42px;
	}
	.fen-hero__texto .et_pb_text_inner > * + * {
		margin-top: 14px;
	}
	.fen-hero .fen-hero__bajada {
		font-size: 18px;
	}
	.fen-hero .et_pb_column.fen-hero__foto {
		min-height: 240px;
	}
	.fen-hero__texto .et_pb_button_module_wrapper {
		flex: 1 1 100%;
	}
	.fen-hero__texto .et_pb_button {
		width: 100%;
	}
}

/* Actividades: título a la izquierda y pestañas a la derecha (escritorio).
   display: contents deja que las piezas del shortcode entren en la grilla. */
@media (min-width: 981px) {
	.fen-actividades-fila > .et_pb_column {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: end;
		column-gap: 24px;
	}
	.fen-actividades-fila .et_pb_code,
	.fen-actividades-fila .et_pb_code_inner,
	.fen-actividades-fila .fen-actividades {
		display: contents;
	}
	.fen-actividades-fila .fen-encabezado-seccion {
		grid-column: 1;
		grid-row: 1;
	}
	.fen-js .fen-actividades-fila .fen-pestanas {
		grid-column: 2;
		grid-row: 1;
		margin-bottom: 0;
	}
	.fen-actividades-fila .fen-panel {
		grid-column: 1 / -1;
		margin-top: 32px;
	}
}
@media (max-width: 980px) {
	.fen-seccion .fen-actividades-fila .et_pb_column > .et_pb_module + .et_pb_module {
		margin-top: 18px;
	}
}

/* Boletín y noticias [fenama_noticias] -------------------------------------- */
.fen-seccion .et_pb_row.fen-boletin-encabezado {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}
.fen-seccion .fen-boletin-encabezado .et_pb_column > .et_pb_module + .et_pb_module {
	margin-top: 8px;
}
.fen-boletin-encabezado__pdf {
	display: flex;
	justify-content: flex-end;
}
@media (max-width: 980px) {
	.fen-boletin-encabezado__pdf {
		justify-content: flex-start;
	}
}

.fen-noticias {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
}
.fen-noticia-destacada.fen-tarjeta {
	display: flex;
	flex: 999 1 560px;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border-radius: 24px;
}
.fen-noticia-destacada__foto {
	display: block;
	width: 100%;
	height: 340px;
	object-fit: cover;
}
.fen-noticia-destacada__cuerpo {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
	padding: 32px;
}
.fen-noticia-destacada .fen-noticia-destacada__titulo {
	margin: 0;
	font-size: clamp(28px, 3vw, 38px);
	line-height: 1.05;
}
.fen-noticia-destacada .fen-noticia-destacada__titulo a,
.fen-noticia-destacada .fen-noticia-destacada__titulo a:visited {
	color: var(--fen-ink);
	text-decoration: none;
}
.fen-noticia-destacada .fen-noticia-destacada__titulo a:hover {
	color: var(--fen-primary);
	text-decoration: underline;
}
.fen-noticia-destacada .fen-noticia-destacada__bajada {
	margin: 0;
	padding: 0;
	font-size: 19px;
}
.fen-noticia-destacada .fen-noticia-destacada__enlace,
.fen-noticia-destacada .fen-noticia-destacada__enlace:visited {
	color: var(--fen-primary);
	font-weight: 700;
	text-decoration: none;
}

.fen-noticias__lista {
	display: flex;
	flex: 1 1 340px;
	flex-direction: column;
	gap: 16px;
}
.fen-noticia.fen-tarjeta {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 24px;
	border-radius: 20px;
}
.fen-noticia .fen-noticia__categoria {
	margin: 0;
	padding: 0;
	color: var(--fen-cat, var(--fen-primary));
	font-size: 15px;
	font-weight: 700;
}
.fen-noticia .fen-noticia__titulo {
	margin: 0;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.15;
}
.fen-noticia .fen-noticia__titulo a,
.fen-noticia .fen-noticia__titulo a:visited {
	color: var(--fen-ink);
	text-decoration: none;
}
/* Toda la tarjeta es clicable, pero el enlace sigue siendo solo el título. */
.fen-noticia .fen-noticia__titulo a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
}
.fen-noticia:hover .fen-noticia__titulo a {
	text-decoration: underline;
}
.fen-noticia:focus-within {
	outline: 3px solid var(--fen-ink);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px var(--fen-accent);
}
.fen-noticia .fen-noticia__titulo a:focus-visible {
	outline: none;
	box-shadow: none;
}
.fen-tarjeta.fen-noticia--genero {
	border-color: var(--fen-gender);
	background: var(--fen-gender);
	color: #FFFFFF;
}
.fen-noticia--genero .fen-noticia__categoria,
.fen-noticia--genero .fen-noticia__titulo a,
.fen-noticia--genero .fen-noticia__titulo a:visited {
	color: #FFFFFF;
}

.fen-suscripcion {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
	border-radius: 20px;
	background: var(--fen-accent);
	color: var(--fen-ink);
}
.fen-suscripcion p {
	margin: 0;
	padding: 0;
}
.fen-suscripcion .fen-suscripcion__titulo {
	font-family: var(--fen-font-head);
	font-size: 24px;
	font-weight: 800;
	line-height: 1.1;
}

@media (max-width: 767px) {
	.fen-noticia-destacada__foto {
		height: 220px;
	}
	.fen-noticia-destacada__cuerpo {
		padding: 22px;
	}
	.fen-noticia .fen-noticia__titulo {
		font-size: 21px;
	}
}

/* Lo que exigimos (sección global) ----------------------------------------- */
.et_pb_section.fen-exigimos {
	margin-top: var(--fen-section-gap);
	padding: 88px 0;
	background-color: var(--fen-ink);
	color: #FFFFFF;
}
.fen-exigimos .et_pb_text,
.fen-exigimos h2,
.fen-exigimos h3 {
	color: #FFFFFF;
}
.fen-exigimos .fen-antetitulo {
	color: var(--fen-accent);
}
.fen-seccion .et_pb_row.fen-exigimos__fila {
	display: flex;
	flex-wrap: wrap;
}
.fen-exigimos__fila > .et_pb_column:first-child {
	display: flex;
}
.fen-exigimos__principal.et_pb_module {
	flex: 1;
	box-sizing: border-box;
	padding: 40px;
	border-radius: 24px;
	background: var(--fen-primary);
}
.fen-exigimos__principal .et_pb_text_inner > * + * {
	margin-top: 16px;
}
.fen-exigimos .fen-cifra {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 16px;
	font-family: var(--fen-font-head);
	font-weight: 800;
	line-height: 0.9;
}
.fen-cifra__antes {
	font-size: 96px;
	text-decoration: line-through;
	text-decoration-thickness: 6px;
	opacity: 0.75;
}
.fen-cifra__flecha {
	font-size: 56px;
}
.fen-cifra__ahora {
	font-size: 120px;
	color: var(--fen-accent);
}
.fen-exigimos .fen-cifra__texto {
	font-family: var(--fen-font-head);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.1;
}
.fen-exigimos__principal p:last-child {
	font-size: 19px;
}
.fen-seccion .fen-exigimos__fila .et_pb_column.fen-exigencias {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 16px;
}
.fen-seccion .fen-exigencias > .et_pb_module + .et_pb_module {
	margin-top: 0;
}
.fen-exigencia.et_pb_module {
	box-sizing: border-box;
	padding: 26px;
	border: 2px solid rgba(255, 255, 255, 0.25);
	border-radius: 20px;
}
.fen-exigencia .et_pb_text_inner > * + * {
	margin-top: 10px;
}
.fen-exigimos .fen-exigencia__num {
	color: var(--fen-accent);
	font-family: var(--fen-font-head);
	font-size: 20px;
	font-weight: 800;
}
.fen-exigencia h3 {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.15;
}
.fen-exigencia p:last-child {
	font-size: 17px;
	opacity: 0.9;
}

@media (max-width: 767px) {
	.et_pb_section.fen-exigimos {
		padding: 48px 0;
	}
	.fen-exigimos__principal.et_pb_module {
		padding: 26px;
	}
	.fen-cifra__antes { font-size: 64px; }
	.fen-cifra__flecha { font-size: 40px; }
	.fen-cifra__ahora { font-size: 84px; }
	.fen-exigimos .fen-cifra__texto { font-size: 24px; }
	.fen-exigimos .et_pb_button_module_wrapper,
	.fen-exigimos .et_pb_button {
		width: 100%;
	}
}

/* Logros conquistados (sección global) -------------------------------------- */
.fen-seccion ol.fen-logros {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-logros li {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0;
	padding: 26px;
	border: 2px solid var(--fen-line);
	border-radius: 20px;
	background: var(--fen-surface);
	list-style: none;
}
.fen-logros .fen-logro__marca {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	color: var(--fen-ok);
	font-family: var(--fen-font-head);
	font-size: 28px;
	font-weight: 800;
	line-height: 1.1;
}
.fen-logro__marca::before {
	content: "";
	flex: 0 0 auto;
	width: 26px;
	height: 26px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center / contain no-repeat;
}
.fen-logros h3 {
	margin: 0;
	padding: 0;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.15;
}
.fen-logros li p:last-child {
	margin: 0;
	padding: 0;
	color: var(--fen-muted);
	font-size: 17px;
}
.fen-logros li.fen-logro--morado {
	border-color: var(--fen-gender);
	background: var(--fen-gender);
	color: #FFFFFF;
}
.fen-logros .fen-logro--morado .fen-logro__marca,
.fen-logros .fen-logro--morado h3,
.fen-logros .fen-logro--morado p:last-child {
	color: #FFFFFF;
}

/* Conoce tus derechos (sección global) -------------------------------------- */
.fen-seccion .et_pb_row.fen-derechos {
	display: flex;
	flex-wrap: wrap;
}
.fen-derechos > .et_pb_column:first-child {
	display: flex;
}
.fen-derecho.et_pb_module {
	box-sizing: border-box;
	padding: 32px;
	border: 2px solid var(--fen-line);
	border-radius: 24px;
	background: var(--fen-surface);
}
.fen-derecho--grande.et_pb_module {
	flex: 1;
	padding: 36px;
}
.fen-derecho .et_pb_text_inner > * + * {
	margin-top: 14px;
}
.fen-derecho--grande .et_pb_text_inner > * + * {
	margin-top: 18px;
}
.fen-derecho h3 {
	font-size: 28px;
	line-height: 1.1;
}
.fen-derecho--grande h3 {
	font-size: 32px;
}
.fen-seccion ul.fen-requisitos {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}
/* Posición absoluta para el visto: con flex, cada <strong> sería una columna. */
.fen-requisitos li {
	position: relative;
	min-height: 40px;
	margin: 0;
	padding: 6px 0 0 54px;
	font-size: 19px;
	list-style: none;
}
.fen-requisitos li::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--fen-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center / 22px no-repeat;
}
.fen-derecho .fen-aviso {
	padding: 16px 18px;
	border-radius: 14px;
	background: var(--fen-tint);
	color: var(--fen-dark);
	font-weight: 700;
}
.fen-seccion ul.fen-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-chips li {
	margin: 0;
	padding: 6px 14px;
	border: 2px solid var(--fen-line);
	border-radius: 999px;
	background: var(--fen-bg);
	font-size: 16px;
	list-style: none;
}
.fen-derecho--morado.et_pb_module {
	border-color: var(--fen-gender);
	background: var(--fen-gender);
	color: #FFFFFF;
}
.fen-derecho--morado h3,
.fen-derecho--morado .fen-enlace,
.fen-seccion .fen-derecho--morado .fen-enlace:visited,
.fen-seccion .fen-derecho--morado .fen-enlace:hover {
	color: #FFFFFF;
}

@media (max-width: 767px) {
	.fen-derecho.et_pb_module,
	.fen-derecho--grande.et_pb_module {
		padding: 24px;
	}
	.fen-derecho h3,
	.fen-derecho--grande h3 {
		font-size: 25px;
	}
}

/* Quiénes somos -------------------------------------------------------------- */
.fen-seccion .et_pb_row.fen-nosotras {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.fen-nosotras__imagen img {
	width: 100%;
	max-width: 560px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: var(--fen-radius-hero);
}
.fen-nosotras__texto .et_pb_text_inner > * + * {
	margin-top: 20px;
}
.fen-nosotras__texto p {
	font-size: 19px;
}
.fen-nosotras__texto h2 {
	font-size: clamp(36px, 4vw, 52px);
}
.fen-seccion .fen-cat {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
}
.fen-cat__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border: 2px dashed var(--fen-line);
	border-radius: 14px;
	color: var(--fen-muted);
	font-size: 12px;
	line-height: 1.15;
	text-align: center;
}
.fen-seccion .fen-cat p {
	flex: 1 1 240px;
	margin: 0;
	font-size: 17px;
}

/* Utilidades ---------------------------------------------------------------- */
.fen-visualmente-oculto {
	position: absolute !important; /* !important: debe ganar aunque un módulo de Divi fije position. */
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

.fen-icono {
	flex: 0 0 auto;
}

/* Pestañas de actividades [fenama_actividades] ------------------------------ */
/* Sin JavaScript no hay pestañas: se ven las tres listas con su título. */
.fen-pestanas {
	display: none;
}
.fen-js .fen-pestanas {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 32px;
	padding: 6px;
	border: 2px solid var(--fen-line);
	border-radius: 16px;
	background: var(--fen-surface);
}
.fen-pestanas .fen-pestanas__boton {
	min-height: 48px;
	padding: 0 20px;
	border: 0;
	border-radius: 12px;
	background: transparent;
	color: var(--fen-ink);
	font-family: var(--fen-font-body);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}
.fen-pestanas .fen-pestanas__boton:hover {
	background: var(--fen-bg);
}
.fen-pestanas .fen-pestanas__boton[aria-selected="true"] {
	background: var(--fen-ink);
	color: #FFFFFF;
}

.fen-panel + .fen-panel {
	margin-top: 48px;
}
.is-con-pestanas .fen-panel + .fen-panel {
	margin-top: 0;
}
.is-con-pestanas .fen-panel__titulo {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
.fen-panel .fen-panel__titulo {
	margin: 0 0 20px;
}
.fen-panel[hidden] {
	display: none;
}

.fen-grilla {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(320px, 100%), 1fr));
	gap: 24px;
}

.fen-actividades .fen-actividades__vacio {
	margin: 0;
	padding: 24px;
	border: 2px dashed var(--fen-line);
	border-radius: var(--fen-radius-card);
	color: var(--fen-muted);
}
.fen-actividades__mas {
	margin: 24px 0 0;
	padding: 0;
}

@media (max-width: 767px) {
	.fen-js .fen-pestanas {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 4px;
		width: 100%;
		box-sizing: border-box;
		margin-bottom: 18px;
		padding: 4px;
		border-radius: 14px;
	}
	.fen-pestanas .fen-pestanas__boton {
		min-height: 46px;
		padding: 0 6px;
		border-radius: 10px;
		font-size: 15px;
	}
	/* En celular no caben los números; quedan para lectores de pantalla. */
	.fen-pestanas__n {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
	}
	.fen-grilla {
		gap: 16px;
	}
}

/* Tarjeta de actividad -------------------------------------------------------- */
.fen-actividad {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.fen-actividad__media {
	flex: 0 0 auto;
}
.fen-actividad__foto {
	display: block;
	width: 100%;
	height: 220px;
	object-fit: cover;
}
.fen-actividad__sin-foto {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 8px;
	height: 220px;
	padding: 24px;
	background: var(--fen-primary);
	color: #FFFFFF;
}
.fen-actividad__sin-foto span {
	font-family: var(--fen-font-head);
	font-weight: 800;
	font-size: 34px;
	line-height: 1;
	letter-spacing: -0.02em;
}
.fen-actividad__cuerpo {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 12px;
	padding: 22px 24px 26px;
}
.fen-actividad__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
.fen-actividad__fecha {
	font-size: 16px;
	font-weight: 700;
}
.fen-actividad .fen-actividad__titulo {
	margin: 0;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.15;
}
.fen-actividad .fen-actividad__titulo a,
.fen-actividad .fen-actividad__titulo a:visited {
	color: var(--fen-ink);
	text-decoration: none;
}
.fen-actividad .fen-actividad__titulo a:hover {
	color: var(--fen-primary);
	text-decoration: underline;
}
.fen-actividad .fen-actividad__lugar {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	padding: 0;
	color: var(--fen-muted);
	font-size: 16px;
	line-height: 1.4;
}
.fen-actividad__lugar .fen-icono {
	margin-top: 1px;
}
.fen-actividad .fen-actividad__resumen {
	margin: 0;
	padding: 0;
	font-size: 17px;
	line-height: 1.5;
}
.fen-actividad .fen-actividad__enlace,
.fen-actividad .fen-actividad__enlace:visited {
	margin-top: auto;
	padding-top: 8px;
	color: var(--fen-primary);
	font-weight: 700;
	text-decoration: none;
}
.fen-actividad .fen-actividad__enlace:hover {
	color: var(--fen-dark);
	text-decoration: underline;
}

@media (max-width: 767px) {
	.fen-actividad__foto,
	.fen-actividad__sin-foto {
		height: 190px;
	}
	.fen-actividad__cuerpo {
		gap: 10px;
		padding: 18px 18px 20px;
	}
	.fen-actividad .fen-actividad__titulo {
		font-size: 23px;
	}
	/* En celular el enlace es un botón ancho, fácil de tocar. */
	.fen-actividad .fen-actividad__enlace,
	.fen-actividad .fen-actividad__enlace:visited {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 50px;
		padding: 0 16px;
		border-radius: 12px;
		background: var(--fen-primary);
		color: #FFFFFF;
	}
	.fen-actividad .fen-actividad__enlace:hover {
		background: var(--fen-dark);
		color: #FFFFFF;
		text-decoration: none;
	}
	.fen-actividad__enlace span[aria-hidden] {
		display: none;
	}
}

/* Próxima fecha destacada [fenama_destacada] -------------------------------- */
.fen-destacada {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 24px 32px;
	padding: 24px;
	border-radius: 24px;
}
.fen-destacada__fecha {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
	border-radius: 20px;
	background: var(--fen-accent);
	color: var(--fen-ink);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.2;
}
.fen-destacada__fecha .fen-destacada__dia {
	font-family: var(--fen-font-head);
	font-weight: 800;
	font-size: 52px;
	line-height: 1;
	letter-spacing: -0.02em;
}
.fen-destacada__texto {
	display: flex;
	flex: 1 1 360px;
	flex-direction: column;
	gap: 6px;
}
.fen-destacada .fen-destacada__cuenta,
.fen-destacada .fen-destacada__detalle {
	margin: 0;
	padding: 0;
}
.fen-destacada .fen-destacada__titulo {
	margin: 0;
	font-size: clamp(24px, 3vw, 36px);
	line-height: 1.05;
}
.fen-destacada .fen-destacada__titulo a,
.fen-destacada .fen-destacada__titulo a:visited {
	color: var(--fen-ink);
	text-decoration: none;
}
.fen-destacada .fen-destacada__titulo a:hover {
	color: var(--fen-primary);
	text-decoration: underline;
}
.fen-destacada .fen-destacada__detalle {
	color: var(--fen-muted);
}
.fen-destacada__acciones {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
.fen-destacada .fen-destacada__google,
.fen-destacada .fen-destacada__google:visited {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--fen-ink);
	font-size: 16px;
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 767px) {
	.fen-destacada {
		gap: 16px;
		padding: 18px;
		border-radius: 20px;
	}
	.fen-destacada__fecha {
		width: 84px;
		height: 92px;
		border-radius: 16px;
		font-size: 14px;
	}
	.fen-destacada__fecha .fen-destacada__dia {
		font-size: 38px;
	}
	.fen-destacada__texto {
		flex: 1 1 180px;
		gap: 4px;
	}
	.fen-destacada .fen-destacada__titulo {
		font-size: 21px;
		line-height: 1.1;
	}
	.fen-destacada .fen-destacada__cuenta {
		font-size: 14px;
		letter-spacing: 0.08em;
	}
	.fen-destacada__acciones {
		flex: 1 1 100%;
		align-items: stretch;
	}
	.fen-destacada__acciones .fen-boton {
		width: 100%;
	}
	.fen-destacada .fen-destacada__google {
		justify-content: center;
	}
}

/* Última edición [fenama_ultima_edicion] ------------------------------------- */
.fen-edicion {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 24px;
}
.fen-edicion .fen-edicion__nombre,
.fen-edicion .fen-edicion__sin-pdf {
	margin: 0;
	padding: 0;
}
.fen-edicion__peso {
	font-weight: 400;
}

/* Páginas internas ------------------------------------------------------------ */
.fen-pagina {
	padding-bottom: var(--fen-section-gap);
}
.fen-cabecera {
	padding-top: 56px;
	padding-bottom: 8px;
}
.fen-cabecera > * {
	max-width: 760px;
	margin: 0;
	padding: 0;
}
.fen-cabecera > * + * {
	margin-top: 8px;
}
.fen-cabecera .fen-bajada {
	font-size: 19px;
}
.et_pb_section.fen-seccion--cabecera {
	padding-top: 56px;
}
.fen-seccion--cabecera h1 {
	margin: 0;
}
.fen-seccion--cabecera .fen-bajada {
	max-width: 760px;
	font-size: 19px;
}
.fen-contenedor--lectura {
	max-width: calc(820px + 2 * var(--fen-gutter));
}
.fen-volver {
	margin: 0;
	padding: 32px 0 0;
}
#page-container .fen-volver a,
#page-container .fen-volver a:visited {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 44px;
	color: var(--fen-ink);
	font-weight: 700;
	text-decoration: none;
}
#page-container .fen-volver a:hover {
	color: var(--fen-primary);
	text-decoration: underline;
}
.fen-vacio {
	margin: 0;
	padding: 24px;
	border: 2px dashed var(--fen-line);
	border-radius: var(--fen-radius-card);
	color: var(--fen-muted);
}

/* Texto largo (cuerpo de noticias y fichas) */
.fen-texto-largo {
	font-size: 19px;
	line-height: 1.6;
}
.fen-texto-largo > * {
	max-width: 70ch;
}
.fen-texto-largo p,
.fen-texto-largo ul,
.fen-texto-largo ol {
	margin: 0 0 1em;
	padding-bottom: 0;
}
.fen-texto-largo ul,
.fen-texto-largo ol {
	padding-left: 1.4em;
}
.fen-texto-largo li {
	margin-bottom: 0.4em;
}
.fen-texto-largo h2 {
	margin: 1.6em 0 0.5em;
	font-size: clamp(26px, 3vw, 34px);
	line-height: 1.1;
}
.fen-texto-largo h3 {
	margin: 1.4em 0 0.4em;
	font-size: 24px;
}
#page-container .fen-texto-largo a {
	color: var(--fen-primary);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Archivo de actividades: pestañas-enlace y filtro por tipo */
.fen-archivo {
	padding-top: 32px;
}
.fen-archivo__filtros {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 24px;
	margin-bottom: 32px;
}
.fen-pestanas-enlaces ul {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 6px;
	border: 2px solid var(--fen-line);
	border-radius: 16px;
	background: var(--fen-surface);
	list-style: none;
}
.fen-pestanas-enlaces li {
	margin: 0;
	padding: 0;
	list-style: none;
}
#page-container .fen-pestanas-enlaces a,
#page-container .fen-pestanas-enlaces a:visited {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-height: 48px;
	padding: 0 20px;
	border-radius: 12px;
	color: var(--fen-ink);
	font-size: 17px;
	font-weight: 700;
	text-decoration: none;
}
#page-container .fen-pestanas-enlaces a:hover {
	background: var(--fen-bg);
}
#page-container .fen-pestanas-enlaces a[aria-current="page"] {
	background: var(--fen-ink);
	color: #FFFFFF;
}
.fen-filtro-tipos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.fen-filtro-tipos .fen-filtro-tipos__titulo {
	margin: 0;
	padding: 0;
	font-weight: 700;
}
.fen-filtro-tipos ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-filtro-tipos li {
	margin: 0;
	padding: 0;
	list-style: none;
}
#page-container .fen-filtro-tipos a,
#page-container .fen-filtro-tipos a:visited {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 16px;
	border: 2px solid var(--fen-line);
	border-radius: 999px;
	background: var(--fen-surface);
	color: var(--fen-ink);
	font-size: 16px;
	text-decoration: none;
}
#page-container .fen-filtro-tipos a:hover {
	border-color: var(--fen-ink);
}
#page-container .fen-filtro-tipos a[aria-current="page"] {
	border-color: var(--fen-ink);
	background: var(--fen-ink);
	color: #FFFFFF;
	font-weight: 700;
}

/* Paginación */
.fen-paginacion {
	margin-top: 40px;
}
.fen-paginacion ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-paginacion li {
	margin: 0;
	padding: 0;
	list-style: none;
}
#page-container .fen-paginacion .page-numbers a,
#page-container .fen-paginacion a.page-numbers,
#page-container .fen-paginacion span.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 48px;
	min-height: 48px;
	padding: 0 14px;
	border: 2px solid var(--fen-line);
	border-radius: 12px;
	background: var(--fen-surface);
	color: var(--fen-ink);
	font-weight: 700;
	text-decoration: none;
}
#page-container .fen-paginacion span.page-numbers.current {
	border-color: var(--fen-ink);
	background: var(--fen-ink);
	color: #FFFFFF;
}
#page-container .fen-paginacion span.page-numbers.dots {
	border-color: transparent;
	background: transparent;
}

@media (max-width: 767px) {
	.fen-cabecera,
	.et_pb_section.fen-seccion--cabecera {
		padding-top: 32px;
	}
	.fen-pestanas-enlaces,
	.fen-pestanas-enlaces ul {
		width: 100%;
		box-sizing: border-box;
	}
	.fen-pestanas-enlaces ul {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 4px;
		padding: 4px;
		border-radius: 14px;
	}
	#page-container .fen-pestanas-enlaces a {
		justify-content: center;
		min-height: 46px;
		padding: 0 6px;
		border-radius: 10px;
		font-size: 15px;
	}
}

/* Ficha de actividad */
.fen-ficha {
	padding-top: 16px;
}
.fen-ficha__cabecera {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	gap: 24px;
	align-items: stretch;
}
.fen-ficha__media {
	overflow: hidden;
	border-radius: var(--fen-radius-hero);
	background: var(--fen-line);
}
.fen-ficha__foto {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 360px;
	max-height: 560px;
	object-fit: cover;
}
.fen-actividad__sin-foto.fen-ficha__sin-foto {
	height: 100%;
	min-height: 360px;
}
.fen-ficha__datos.fen-tarjeta {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 32px;
	border-radius: var(--fen-radius-hero);
}
.fen-ficha__datos > * {
	margin: 0;
	padding: 0;
}
.fen-ficha .fen-ficha__titulo {
	margin: 0;
	font-size: clamp(32px, 3.4vw, 46px);
	line-height: 1.02;
}
.fen-ficha__lista {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
}
.fen-ficha__lista > div {
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
}
.fen-ficha__lista dt {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--fen-muted);
	font-weight: 700;
}
.fen-ficha__lista dd {
	margin: 0;
	font-weight: 700;
}
.fen-ficha .fen-ficha__resumen {
	font-size: 19px;
}
.fen-ficha__calendario {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	margin-top: auto;
}
.fen-ficha > .fen-texto-largo {
	margin-top: 40px;
}
.fen-ficha .fen-texto-largo .gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
	gap: 12px;
	max-width: none;
}
.fen-ficha .fen-texto-largo .gallery-item {
	width: auto;
	margin: 0;
}
.fen-ficha .fen-texto-largo .gallery img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	border-radius: 14px;
	border: 0;
}
@media (max-width: 980px) {
	.fen-ficha__cabecera {
		grid-template-columns: minmax(0, 1fr);
	}
	.fen-ficha__foto,
	.fen-actividad__sin-foto.fen-ficha__sin-foto {
		min-height: 240px;
		max-height: 420px;
	}
}
@media (max-width: 767px) {
	.fen-ficha__media,
	.fen-ficha__datos.fen-tarjeta {
		border-radius: 20px;
	}
	.fen-ficha__datos.fen-tarjeta {
		padding: 22px;
	}
	.fen-ficha__calendario .fen-boton {
		width: 100%;
	}
}

/* Compartir */
.fen-compartir-bloque {
	margin-top: 40px;
	padding: 24px;
	border-radius: var(--fen-radius-card);
	background: var(--fen-tint);
}
.fen-compartir-bloque > p {
	margin: 0;
	padding: 0;
}
.fen-compartir-bloque .fen-compartir-bloque__titulo {
	margin-bottom: 12px;
	font-family: var(--fen-font-head);
	font-size: 22px;
	font-weight: 800;
}
.fen-compartir-bloque__botones {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.fen-compartir-bloque .fen-compartir-bloque__aviso:not(:empty) {
	margin-top: 12px;
	font-weight: 700;
}
.fen-boton.fen-boton--verde,
.fen-boton.fen-boton--verde:visited,
#page-container .fen-boton--verde,
#page-container .fen-boton--verde:visited {
	background: var(--fen-ok);
	color: #FFFFFF;
}
.fen-boton.fen-boton--verde:hover,
#page-container .fen-boton--verde:hover {
	background: #22543A;
	color: #FFFFFF;
}
/* Copiar e imprimir necesitan JavaScript: sin él no se muestran. */
html:not(.fen-js) .fen-copiar,
html:not(.fen-js) .fen-imprimir {
	display: none;
}
@media (max-width: 767px) {
	.fen-compartir-bloque__botones .fen-boton,
	#page-container .fen-imprimir {
		width: 100%;
	}
}

/* Noticia completa */
.fen-noticia-completa {
	padding-top: 16px;
}
.fen-noticia-completa__cabecera > * {
	margin: 0;
	padding: 0;
}
.fen-noticia-completa__cabecera > * + * {
	margin-top: 12px;
}
.fen-noticia-completa .entry-title {
	font-size: clamp(36px, 4.6vw, 56px);
	line-height: 1.02;
}
.fen-noticia-completa__categoria a,
#page-container .fen-noticia-completa__categoria a {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 14px;
	border-radius: 999px;
	background: var(--fen-tint);
	color: var(--fen-dark);
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
}
#page-container .fen-noticia-completa__categoria.is-genero a {
	background: var(--fen-gender);
	color: #FFFFFF;
}
.fen-noticia-completa .fen-noticia-completa__fecha {
	color: var(--fen-muted);
	font-size: 16px;
}
.fen-noticia-completa .fen-noticia-completa__bajada {
	font-size: 21px;
	line-height: 1.5;
}
.fen-noticia-completa__foto {
	margin: 32px 0;
}
.fen-noticia-completa__foto img {
	display: block;
	width: 100%;
	max-height: 520px;
	object-fit: cover;
	border-radius: var(--fen-radius-card);
}
.fen-noticia-completa .post-content {
	margin-top: 32px;
}
.fen-noticia-completa__foto + .post-content {
	margin-top: 0;
}
.fen-noticia-completa__acciones .fen-imprimir {
	margin-top: 16px;
}
.fen-solo-impresion {
	display: none;
}

/* Grilla de noticias [fenama_noticias_lista] */
.fen-noticia-tarjeta.fen-tarjeta {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
.fen-noticia-tarjeta__foto {
	display: block;
	width: 100%;
	height: 200px;
	object-fit: cover;
}
.fen-noticia-tarjeta__cuerpo {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 10px;
	padding: 22px 24px 24px;
}
.fen-noticia-tarjeta__cuerpo > * {
	margin: 0;
	padding: 0;
}
.fen-noticia-tarjeta .fen-noticia-tarjeta__titulo {
	font-size: 23px;
	font-weight: 700;
	line-height: 1.15;
}
#page-container .fen-noticia-tarjeta__titulo a,
#page-container .fen-noticia-tarjeta__titulo a:visited {
	color: var(--fen-ink);
	text-decoration: none;
}
.fen-noticia-tarjeta__titulo a::after {
	content: "";
	position: absolute;
	inset: 0;
}
.fen-noticia-tarjeta:hover .fen-noticia-tarjeta__titulo a {
	text-decoration: underline;
}
.fen-noticia-tarjeta:focus-within {
	outline: 3px solid var(--fen-ink);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px var(--fen-accent);
}
.fen-noticia-tarjeta .fen-noticia-tarjeta__titulo a:focus-visible {
	outline: none;
	box-shadow: none;
}
.fen-noticia-tarjeta .fen-noticia-tarjeta__extracto {
	font-size: 17px;
}
.fen-noticia-tarjeta .fen-noticia-tarjeta__fecha {
	margin-top: auto;
	color: var(--fen-muted);
	font-size: 15px;
}
.fen-tarjeta.fen-noticia-tarjeta--genero {
	border-color: var(--fen-gender);
	background: var(--fen-gender);
	color: #FFFFFF;
}
#page-container .fen-noticia-tarjeta--genero .fen-noticia-tarjeta__titulo a,
.fen-noticia-tarjeta--genero .fen-noticia__categoria,
.fen-noticia-tarjeta--genero .fen-noticia-tarjeta__fecha {
	color: #FFFFFF;
}
.fen-noticia-tarjeta .fen-noticia__categoria {
	color: var(--fen-cat, var(--fen-primary));
	font-size: 15px;
	font-weight: 700;
}
.fen-tarjeta.fen-noticia-tarjeta--genero .fen-noticia__categoria {
	color: #FFFFFF;
}

/* Ediciones en PDF [fenama_ediciones] */
.fen-seccion ul.fen-ediciones,
ul.fen-ediciones {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-edicion-item.fen-tarjeta {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	padding: 24px;
	list-style: none;
}
.fen-edicion-item > * {
	margin: 0;
	padding: 0;
}
.fen-edicion-item__portada {
	width: 100%;
	height: auto;
	border-radius: 12px;
}
.fen-edicion-item .fen-edicion-item__titulo {
	font-size: 24px;
}
.fen-edicion-item .fen-edicion-item__mes {
	color: var(--fen-muted);
}

/* Bloques de detalle en páginas (Lo que exigimos, Tus derechos, Nosotras) */
.fen-seccion .et_pb_row.fen-detalle {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(360px, 100%), 1fr));
	gap: 24px;
}
.fen-seccion .et_pb_row.fen-detalle > .et_pb_column {
	width: auto;
	margin: 0;
}
.fen-seccion .et_pb_row.fen-detalle > .et_pb_column:empty {
	display: none;
}
.fen-detalle .fen-derecho.et_pb_module:only-child {
	height: 100%;
}
/* El clearfix de Divi (::after) contaría como una celda más de la grilla. */
.fen-seccion .et_pb_row.fen-detalle::after,
.fen-seccion .et_pb_row.fen-detalle::before {
	display: none;
}
/* La última sección de cada página deja aire antes del pie. */
.et_pb_section.fen-seccion:last-child {
	padding-bottom: var(--fen-section-gap);
}
.fen-derecho ul:not(.fen-chips):not(.fen-requisitos) {
	margin: 0;
	padding-left: 1.3em;
	list-style: disc;
}
.fen-derecho ul:not(.fen-chips):not(.fen-requisitos) li + li {
	margin-top: 6px;
}
.fen-texto-ancho {
	max-width: 760px;
}
.fen-derecho .fen-exigencia__num {
	color: var(--fen-primary);
	font-family: var(--fen-font-head);
	font-size: 20px;
	font-weight: 800;
}
.fen-seccion .et_pb_column.fen-formulario-columna {
	box-sizing: border-box;
	padding: 32px;
	border: 2px solid var(--fen-line);
	border-radius: 24px;
	background: var(--fen-surface);
}
.fen-edicion-actual.fen-tarjeta {
	padding: 24px;
	border-radius: 24px;
}
@media (max-width: 767px) {
	.fen-seccion .et_pb_column.fen-formulario-columna {
		padding: 22px;
	}
}

/* Línea de tiempo (Nosotras) */
.fen-seccion ol.fen-linea-tiempo {
	position: relative;
	margin: 0;
	padding: 0 0 0 32px;
	list-style: none;
}
.fen-seccion ol.fen-linea-tiempo::before {
	content: "";
	position: absolute;
	top: 8px;
	bottom: 8px;
	left: 9px;
	width: 3px;
	border-radius: 3px;
	background: var(--fen-line);
}
.fen-linea-tiempo li {
	position: relative;
	margin: 0;
	padding: 0 0 28px;
	list-style: none;
}
.fen-linea-tiempo li::before {
	content: "";
	position: absolute;
	top: 6px;
	left: -30px;
	width: 16px;
	height: 16px;
	border: 3px solid var(--fen-bg);
	border-radius: 50%;
	background: var(--fen-primary);
}
.fen-linea-tiempo li > * {
	margin: 0;
	padding: 0;
}
.fen-linea-tiempo .fen-linea-tiempo__fecha {
	color: var(--fen-primary);
	font-family: var(--fen-font-head);
	font-size: 22px;
	font-weight: 800;
}
.fen-linea-tiempo h3 {
	margin-top: 2px;
	font-size: 24px;
}
.fen-linea-tiempo li p:last-child {
	margin-top: 6px;
	max-width: 70ch;
}

/* Contacto y formulario (Afíliate) */
.fen-contacto-lista {
	margin: 0;
	padding: 0;
	list-style: none;
}
.fen-seccion .fen-contacto-lista li {
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid var(--fen-line);
	list-style: none;
}
.fen-formulario .et_pb_contact_form_label {
	display: block;
	margin-bottom: 6px;
	color: var(--fen-ink);
	font-weight: 700;
}
.fen-formulario input.input,
.fen-formulario textarea.input,
#page-container .fen-formulario .input {
	box-sizing: border-box;
	text-transform: none;
	letter-spacing: 0;
	width: 100%;
	min-height: 52px;
	padding: 12px 14px;
	border: 2px solid var(--fen-ink);
	border-radius: 12px;
	background: #FFFFFF;
	color: var(--fen-ink);
	font-family: var(--fen-font-body);
	font-size: 18px;
}
.fen-formulario textarea.input {
	min-height: 160px;
}
.fen-formulario .et_pb_contact_field_options_title {
	display: none;
}
.fen-formulario .et_pb_contact_field_checkbox label {
	font-size: 17px;
}
#page-container .fen-formulario .input::placeholder {
	color: var(--fen-muted);
	text-transform: none;
	letter-spacing: 0;
}
#page-container .fen-formulario .et_pb_contact_submit {
	min-height: var(--fen-btn-height);
	padding: 0 26px;
	letter-spacing: 0;
	text-transform: none;
}
#page-container .fen-formulario textarea.input {
	height: auto;
	min-height: 160px;
}
/* Casilla de consentimiento: Divi la dibuja con un <i>; la hacemos grande y visible. */
#page-container .fen-formulario .et_pb_contact_field_checkbox label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
}
#page-container .fen-formulario .et_pb_contact_field_checkbox label i {
	flex: 0 0 auto;
	width: 26px;
	height: 26px;
	margin: 0;
	border: 2px solid var(--fen-ink);
	border-radius: 6px;
	background-color: #FFFFFF;
}
.fen-formulario .et_contact_bottom_container {
	float: none;
	display: flex;
	justify-content: flex-start;
}

/* Colores de enlaces en componentes ---------------------------------------- */
/* En páginas hechas con Divi, Extra colorea los enlaces con selectores como
   ".et_pb_pagebuilder_layout .et_pb_code a" y carga su CSS después de este.
   El prefijo #page-container (contenedor de Extra) gana sin usar !important. */
#page-container .fen-alerta__texto a,
#page-container .fen-alerta__texto a:visited { color: var(--fen-accent); }
#page-container .fen-alerta__texto a:hover { color: #FFFFFF; }

#page-container .fen-marca,
#page-container .fen-marca:visited,
#page-container .fen-nav__lista a,
#page-container .fen-nav__lista a:visited { color: var(--fen-ink); }
#page-container .fen-nav__lista a:hover,
#page-container .fen-nav__lista a[aria-current="page"] { color: var(--fen-primary); }
#page-container .fen-nav__lista .fen-menu-boton-rojo a,
#page-container .fen-nav__lista .fen-menu-boton-rojo a:visited,
#page-container .fen-nav__lista .fen-menu-boton-rojo a:hover { color: #FFFFFF; }

#page-container .fen-pie a,
#page-container .fen-pie a:visited { color: #FFFFFF; }
#page-container .fen-pie a:hover { color: var(--fen-accent); }

#page-container .fen-boton--principal,
#page-container .fen-boton--principal:visited,
#page-container .fen-boton--principal:hover,
#page-container .fen-boton--oscuro,
#page-container .fen-boton--oscuro:visited,
#page-container .fen-boton--oscuro:hover,
#page-container .fen-boton--contorno-blanco,
#page-container .fen-boton--contorno-blanco:visited,
#page-container .fen-boton--contorno:hover { color: #FFFFFF; }
#page-container .fen-boton--secundario,
#page-container .fen-boton--secundario:visited,
#page-container .fen-boton--secundario:hover,
#page-container .fen-boton--contorno,
#page-container .fen-boton--contorno:visited { color: var(--fen-ink); }
#page-container .fen-boton--contorno-blanco:hover { color: var(--fen-primary); }

#page-container .fen-actividad__titulo a,
#page-container .fen-actividad__titulo a:visited,
#page-container .fen-destacada__titulo a,
#page-container .fen-destacada__titulo a:visited,
#page-container .fen-destacada__google,
#page-container .fen-destacada__google:visited,
#page-container .fen-noticia-destacada__titulo a,
#page-container .fen-noticia-destacada__titulo a:visited,
#page-container .fen-noticia__titulo a,
#page-container .fen-noticia__titulo a:visited { color: var(--fen-ink); }
#page-container .fen-actividad__titulo a:hover,
#page-container .fen-destacada__titulo a:hover,
#page-container .fen-noticia-destacada__titulo a:hover { color: var(--fen-primary); }
#page-container .fen-noticia--genero .fen-noticia__titulo a,
#page-container .fen-noticia--genero .fen-noticia__titulo a:visited { color: #FFFFFF; }

#page-container .fen-actividad__enlace,
#page-container .fen-actividad__enlace:visited,
#page-container .fen-noticia-destacada__enlace,
#page-container .fen-noticia-destacada__enlace:visited,
#page-container .fen-enlace,
#page-container .fen-enlace:visited { color: var(--fen-primary); }
#page-container .fen-actividad__enlace:hover,
#page-container .fen-noticia-destacada__enlace:hover,
#page-container .fen-enlace:hover { color: var(--fen-dark); }
#page-container .fen-derecho--morado .fen-enlace,
#page-container .fen-derecho--morado .fen-enlace:visited,
#page-container .fen-derecho--morado .fen-enlace:hover { color: #FFFFFF; }

@media (max-width: 767px) {
	#page-container .fen-actividad__enlace,
	#page-container .fen-actividad__enlace:visited,
	#page-container .fen-actividad__enlace:hover { color: #FFFFFF; }
}

/* Movimiento reducido ------------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important; /* !important: debe ganar a cualquier animación de Divi. */
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* Ajustes sobre estilos de Extra en páginas internas ------------------------------ */
/* Extra fija interlineados de títulos y estiliza article/button con selectores que
   ganan a los de componentes; el prefijo #page-container los devuelve al sistema. */
#page-container .fen-pagina h1,
#page-container .fen-seccion h1 { line-height: 0.98; }
#page-container .fen-pagina h2,
#page-container .fen-seccion h2 { line-height: 1.04; }
#page-container .fen-pagina h3,
#page-container .fen-seccion h3 { line-height: 1.15; }

#page-container article.fen-ficha,
#page-container article.fen-noticia-completa {
	margin: 0;
	padding: 16px 0 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
#page-container .fen-noticia-completa .post-header,
#page-container .fen-noticia-completa .post-content {
	margin-left: 0;
	margin-right: 0;
	padding: 0;
	border: 0;
	text-align: left;
}

#page-container button.fen-boton {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: var(--fen-btn-height);
	padding: 0 26px;
	border: 2px solid transparent;
	border-radius: var(--fen-radius-btn);
	box-shadow: none;
	font-family: var(--fen-font-body);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: none;
}
#page-container button.fen-boton--contorno {
	border-color: var(--fen-ink);
	background: transparent;
	color: var(--fen-ink);
}
#page-container button.fen-boton--contorno:hover {
	background: var(--fen-ink);
	color: #FFFFFF;
}

.fen-ficha__media {
	max-height: 560px;
}
.fen-ficha .fen-ficha__foto {
	height: 100%;
	max-height: none;
}
.fen-ficha .fen-destacada__google,
#page-container .fen-ficha .fen-destacada__google {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-size: 16px;
	text-decoration: underline;
	text-underline-offset: 3px;
}
@media (max-width: 980px) {
	.fen-ficha__media {
		max-height: 420px;
	}
}

/* Impresión de noticias -------------------------------------------------------- */
/* Fondo blanco, sin menú, alerta ni pie, y con la dirección de la noticia visible. */
@media print {
	@page {
		margin: 18mm 16mm;
	}
	body,
	#page-container,
	.fen-pagina {
		background: #FFFFFF;
		color: #000000;
	}
	.et-l--header,
	.et-l--footer,
	.fen-saltar,
	.fen-volver,
	.fen-noticia-completa__acciones,
	.fen-compartir-bloque,
	#cookieadmin_wrapper,
	[class*="cookieadmin"] {
		display: none !important; /* !important: el aviso de cookies fija su display en línea. */
	}
	.fen-contenedor--lectura {
		max-width: none;
		padding: 0;
	}
	.fen-noticia-completa .entry-title {
		font-size: 28pt;
	}
	.fen-texto-largo {
		font-size: 13pt;
		line-height: 1.5;
	}
	.fen-texto-largo > * {
		max-width: none;
	}
	.fen-noticia-completa__foto img {
		max-height: 9cm;
	}
	#page-container .fen-texto-largo a[href^="http"]::after {
		content: " (" attr(href) ")";
		font-size: 10pt;
		word-break: break-all;
	}
	.fen-solo-impresion {
		display: block;
		margin-top: 16pt;
		padding-top: 8pt;
		border-top: 1pt solid #000000;
		font-size: 11pt;
	}
	h1, h2, h3 {
		break-after: avoid;
	}
	img {
		break-inside: avoid;
	}
}
