/* Romper el Silencio - Core: estilos de etapas (single + índice). Reutiliza la paleta de Fase 1B/2:
   fondo oscuro #101218/#16181f, texto #EAECEF/#c7cad1, acento amarillo #F9D548, rojo #D63637.

   1.0.1: renombrado de .res-etapa-single__* a .res-etapa-content__* porque el contenido ya no se
   envuelve en un <main> propio del plugin (eso rompía el layout del tema de bloques): ahora se
   inyecta dentro del área de contenido que ya proporciona la plantilla "single" del tema (FSE),
   por lo que ya no se fuerzan max-width/padding propios ni "bleed" con márgenes negativos. */

.res-breadcrumbs {
	font-size: 13px;
	color: #aeb2bb;
	margin-bottom: 24px;
}
.res-breadcrumbs a {
	color: #c7cad1;
}

.res-etapa-content__meta {
	margin-bottom: 8px;
}
.res-etapa-content__eyebrow {
	color: #D63637;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .08em;
	text-transform: uppercase;
	margin: 0 0 8px;
}
.res-etapa-content__info {
	color: #c7cad1;
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 0 8px;
}
.res-etapa-content__status {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
}
.res-etapa-content__status--planned { background: rgba(249,213,72,.15); color: #F9D548; }
.res-etapa-content__status--current { background: rgba(214,54,55,.15); color: #ff6b6c; }
.res-etapa-content__status--completed { background: rgba(255,255,255,.1); color: #c7cad1; }
.res-etapa-content__status--pending_confirmation { background: rgba(154,158,167,.15); color: #aeb2bb; }
.res-etapa-item--pending_confirmation .res-etapa-item__estado { color: #aeb2bb; }

.res-etapa-content__ruta {
	color: #aeb2bb;
	margin: 0 0 24px;
}

.res-etapa-content__body {
	line-height: 1.7;
	max-width: 68ch;
}

.res-etapa-content__block {
	margin-top: 32px;
}
.res-etapa-content__block h2 {
	font-size: 18px;
	margin-bottom: 12px;
}
.res-etapa-content__block ul {
	padding-left: 20px;
}
.res-etapa-content__ig {
	color: #F9D548;
	text-decoration: underline;
}

.res-etapa-content__nav {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid rgba(255,255,255,.08);
}
.res-etapa-content__nav a {
	text-decoration: none;
}
.res-etapa-content__nav a:hover,
.res-etapa-content__nav a:focus-visible {
	color: #F9D548;
}
.res-etapa-content__index {
	order: 2;
	flex: 1 1 100%;
	text-align: center;
}
@media (min-width: 600px) {
	.res-etapa-content__index { flex: 0 0 auto; order: 0; }
}

.res-etapa-content__cta,
.res-etapa-content__help {
	margin-top: 40px;
}

/* Índice /etapas/ */
.res-etapas-filtros {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin: 0 0 24px;
}
.res-etapas-filtros a {
	color: #c7cad1;
	background: #16181f;
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 999px;
	padding: 6px 14px;
	font-size: 13px;
	text-decoration: none;
	min-height: 32px;
	display: inline-flex;
	align-items: center;
}
.res-etapas-filtros a.is-active {
	background: #F9D548;
	color: #101218;
	border-color: #F9D548;
	font-weight: 700;
}
.res-etapas-filtros a:focus-visible {
	outline: 2px solid #F9D548;
	outline-offset: 2px;
}

.res-etapas-lista {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 12px;
}
.res-etapa-item a {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 16px;
	border-radius: 14px;
	background: linear-gradient(160deg,#20232b 0%,#101218 100%);
	border: 1px solid rgba(255,255,255,.08);
	text-decoration: none;
	min-height: 44px;
}
.res-etapa-item a:hover,
.res-etapa-item a:focus-visible {
	border-color: #F9D548;
}
.res-etapa-item__n {
	color: #D63637;
	font-weight: 800;
	font-size: 12px;
}
.res-etapa-item__dest {
	color: #EAECEF;
	font-weight: 700;
}
.res-etapa-item__fecha {
	color: #aeb2bb;
	font-size: 13px;
}
.res-etapa-item__estado {
	color: #c7cad1;
	font-size: 12px;
	text-transform: uppercase;
}
.res-etapa-item--current a {
	border-color: rgba(214,54,55,.5);
}
.res-etapas-vacio {
	color: #aeb2bb;
}

/* Tabla-calendario de etapas: recupera la lectura semanal de la versión anterior. */
.res-etapas-calendar-wrap {
	width: 100%;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	padding: 2px 2px 10px;
	scrollbar-color: var(--res-yellow, #FFD43B) #16181f;
}
.res-etapas-calendar {
	width: 100%;
	min-width: 920px;
	border-collapse: separate;
	border-spacing: 8px;
	table-layout: fixed;
	margin: -8px;
}
.res-etapas-calendar th {
	padding: 10px 8px;
	color: var(--res-muted, #B2B8C3);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .08em;
	text-align: left;
	text-transform: uppercase;
}
.res-etapas-calendar td {
	height: 142px;
	padding: 0;
	vertical-align: top;
	border: 1px solid transparent;
	border-radius: 14px;
	background: rgba(255,255,255,.018);
}
.res-calendar-stage a {
	display: flex;
	min-height: 140px;
	height: 100%;
	box-sizing: border-box;
	flex-direction: column;
	gap: 5px;
	padding: 15px;
	border: 1px solid var(--res-border, #303744);
	border-radius: 14px;
	background: linear-gradient(145deg, var(--res-card, #181c24), #12151c);
	color: var(--res-text, #F5F6F8);
	text-decoration: none;
	transition: transform .18s ease, border-color .18s ease, background-color .18s ease;
}
.res-calendar-stage a:hover,
.res-calendar-stage a:focus-visible {
	transform: translateY(-3px);
	border-color: var(--res-yellow, #FFD43B);
	background: var(--res-card-hover, #202530);
	outline: none;
}
.res-calendar-stage__n {
	color: var(--res-red, #E33B47);
	font-size: 13px;
	font-weight: 850;
}
.res-calendar-stage__dest {
	font-size: 17px;
	line-height: 1.15;
	letter-spacing: -.02em;
}
.res-calendar-stage__date {
	color: var(--res-muted, #B2B8C3);
	font-size: 12px;
	margin-top: auto;
}
.res-calendar-stage__status {
	color: var(--res-subtle, #858D9B);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}
.res-calendar-stage--completed a { border-bottom: 3px solid rgba(255,212,59,.72); }
.res-calendar-stage--completed .res-calendar-stage__n { color: var(--res-yellow, #FFD43B); }
.res-calendar-stage--current a {
	border: 2px solid var(--res-red, #E33B47);
	background: linear-gradient(145deg, rgba(227,59,71,.22), #181c24);
	box-shadow: 0 10px 30px rgba(227,59,71,.14);
}
.res-calendar-stage--current .res-calendar-stage__status,
.res-calendar-stage--current .res-calendar-stage__n { color: #ff6b76; }
.res-calendar-stage--planned a { opacity: .82; }
.res-calendar-stage--pending_confirmation a { border-style: dashed; }
.res-calendar-filtered {
	display: grid;
	place-items: center;
	min-height: 140px;
	color: #555c68;
}
.res-calendar-hint {
	display: none;
	margin: 6px 0 0;
	color: var(--res-subtle, #858D9B);
	font-size: 13px;
}
@media (max-width: 980px) {
	.res-etapas-calendar { min-width: 840px; }
	.res-calendar-hint { display: block; }
}

@media (prefers-reduced-motion: reduce) {
	.res-etapa-item a { transition: none; }
}

/* Fase 5: patrocinadores/instituciones y prensa (comparten paleta con el resto del plugin). */
.res-partners-grid {
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 20px;
	align-items: center;
}
.res-partners-grid__item {
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255,255,255,.04);
	border-radius: 12px;
	padding: 16px;
	min-height: 64px;
}
.res-partners-grid__item img {
	max-width: 100%;
	max-height: 48px;
	width: auto;
	height: auto;
	filter: grayscale(20%);
}

.res-press-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 20px;
}
.res-press-filtros a {
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(255,255,255,.06);
	color: #c7cad1;
	text-decoration: none;
	font-size: 13px;
}
.res-press-filtros a.is-active {
	background: #F9D548;
	color: #101218;
	font-weight: 700;
}
.res-press-lista {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}
/* Fase 8 (ajuste visual): cabecera de agrupacion por año dentro de la lista de menciones.
   Rompe la "pared" de 121 tarjetas identicas sin anadir contenido nuevo ni tocar el orden. */
.res-press-year {
	margin: 28px 0 4px;
	padding-top: 20px;
	border-top: 1px solid rgba(255,255,255,.1);
	color: #F9D548;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .04em;
}
.res-press-year:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}
.res-press-item {
	padding: 14px 0;
	border-bottom: 1px solid rgba(255,255,255,.07);
}
.res-press-item:last-child {
	border-bottom: none;
}
.res-press-item__outlet {
	color: #F9D548;
	font-weight: 700;
	font-size: 12px;
	text-transform: uppercase;
	margin-right: 8px;
}
.res-press-item__date {
	color: #aeb2bb;
	font-size: 12px;
}
.res-press-item__title {
	margin: 4px 0;
	font-size: 16px;
	line-height: 1.35;
	color: #EAECEF;
}
.res-press-item__summary {
	color: #c7cad1;
	font-size: 14px;
	margin: 0 0 6px;
}
.res-press-item__link,
.res-press-item__stage {
	display: inline-block;
	margin-right: 16px;
	color: #F9D548;
	font-size: 13px;
	text-decoration: underline;
}
.res-press-vacio {
	color: #aeb2bb;
}

/* Mapa del recorrido [res_route_map] (reconstruido en la auditoria post-Fase 7, ver class-res-map.php) */
.res-route-map-wrap {
	margin: 24px 0;
}
.res-route-map {
	width: 100%;
	height: 360px;
	border-radius: 14px;
	border: 1px solid rgba(255,255,255,.08);
	background: #16181f; /* visible mientras cargan los tiles o si Leaflet no llega a inicializar */
}
@media (max-width: 480px) {
	.res-route-map { height: 280px; }
}
.res-route-map__legend {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	font-size: 13px;
	color: #c7cad1;
}
.res-route-map__legend li {
	display: flex;
	align-items: center;
	gap: 6px;
}
.res-route-map__dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex: 0 0 auto;
}
.res-route-map__fallback {
	margin-top: 16px;
	color: #c7cad1;
}
.res-route-map__fallback summary {
	cursor: pointer;
	color: #F9D548;
	font-size: 14px;
	min-height: 44px;
	display: flex;
	align-items: center;
}
.res-route-map__list {
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 8px;
}
.res-route-map__list-item a {
	display: flex;
	gap: 8px;
	align-items: baseline;
	padding: 8px 10px;
	border-radius: 8px;
	background: rgba(255,255,255,.04);
	text-decoration: none;
	color: #c7cad1;
	min-height: 44px;
}
.res-route-map__list-n {
	color: #D63637;
	font-weight: 800;
	font-size: 12px;
}
.res-route-map__list-dest {
	color: #EAECEF;
	font-weight: 600;
	flex: 1 1 auto;
}
.res-route-map__list-estado {
	color: #aeb2bb;
	font-size: 12px;
}
/* Leaflet: controles y popups sobre nuestra paleta oscura */
.res-route-map .leaflet-popup-content-wrapper {
	background: #16181f;
	color: #EAECEF;
	border-radius: 10px;
}
.res-route-map .leaflet-popup-content a {
	color: #F9D548;
}
.res-route-map .leaflet-popup-tip {
	background: #16181f;
}
.res-route-map .leaflet-control-zoom a {
	background: #16181f;
	color: #EAECEF;
	border-color: rgba(255,255,255,.15);
}

/* --------------------------------------------------------------------------
 * Sistema visual 1.3.1 — identidad transversal
 * ----------------------------------------------------------------------- */
:root {
	--res-bg: #0c0e13;
	--res-surface: #12151c;
	--res-card: #181c24;
	--res-card-hover: #202530;
	--res-border: #303744;
	--res-text: #f5f6f8;
	--res-muted: #b2b8c3;
	--res-subtle: #858d9b;
	--res-yellow: #ffd43b;
	--res-yellow-hover: #ffe16a;
	--res-red: #e33b47;
	--res-help-bg: #15232b;
	--res-help-border: #3d7788;
	--res-help-accent: #79c2d0;
	--res-radius: 16px;
	--res-container: 1280px;
	--res-gutter: clamp(20px, 4vw, 48px);
	--res-section: clamp(72px, 8vw, 112px);
}

body {
	background: var(--res-bg);
	color: var(--res-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Cabecera compacta, estable y en una sola fila en escritorio. */
.res-site-header {
	background: rgba(12,14,19,.96);
	border-bottom: 1px solid rgba(255,255,255,.08);
	padding-block: 20px !important;
	padding-inline: var(--res-gutter) !important;
	position: relative;
	z-index: 1000;
}
.res-site-header > .wp-block-group {
	box-sizing: border-box;
	width: 100% !important;
	max-width: var(--res-container) !important;
	margin-inline: auto !important;
	padding-inline: 0 !important;
	gap: clamp(24px, 4vw, 64px);
	flex-wrap: nowrap !important;
}
.res-site-header .wp-block-site-logo img {
	width: 58px;
	height: auto;
}
.res-site-header .wp-block-site-title {
	margin: 0;
	font-size: clamp(17px, 1.55vw, 24px) !important;
	line-height: 1.12;
	letter-spacing: -.02em;
	white-space: nowrap;
}
.res-site-header .wp-block-site-title a { color: var(--res-text); text-decoration: none; }
.res-site-header .wp-block-navigation__container {
	column-gap: clamp(18px, 2.2vw, 34px) !important;
	row-gap: 12px !important;
	flex-wrap: nowrap !important;
}
.res-site-header .wp-block-navigation-item__content {
	color: var(--res-text);
	font-size: 16px;
	font-weight: 550;
	white-space: nowrap;
	text-decoration-thickness: 2px;
	text-underline-offset: 7px;
}
.res-site-header .wp-block-navigation-item__content:hover,
.res-site-header .wp-block-navigation-item__content:focus-visible { color: var(--res-yellow); }
.res-site-header .wp-block-navigation-item:nth-last-child(3) .wp-block-navigation-item__content {
	border: 1px solid rgba(255,212,59,.75);
	border-radius: 999px;
	padding: 10px 16px;
}

/* 1.5.4: el CTA se identifica por destino, no por la posición que ocupe en el menú. */
.res-site-header .res-nav-extra .wp-block-navigation-item__content {
	border: 0;
	border-radius: 0;
	padding: 0;
}
.res-site-header .wp-block-navigation-item__content[href*="/corre-con-jaime/"] {
	border: 1px solid rgba(255,212,59,.75);
	border-radius: 999px;
	padding: 10px 16px;
}

@media (min-width: 901px) {
	.res-site-header .wp-block-navigation__container { column-gap: clamp(10px, 1.15vw, 18px) !important; }
	.res-site-header .wp-block-navigation-item__content { font-size: 14px; }
	.res-site-header .wp-block-site-title { max-width: 390px; font-size: 18px !important; }
}

/* Botones coherentes. */
.wp-block-button__link,
.res-cta-final a,
button[type="submit"],
input[type="submit"] {
	border-radius: 999px !important;
	min-height: 48px;
	font-weight: 750;
	letter-spacing: -.01em;
	transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}
.wp-block-button__link:hover,
.res-cta-final a:hover,
button[type="submit"]:hover,
input[type="submit"]:hover { transform: translateY(-2px); }

/* Impacto: mayor profundidad y mejor lectura sin alterar los datos. */
.res-impact-summary { max-width: var(--res-container); margin-inline: auto; }
.res-impact-summary__grid { gap: 16px; }
.res-impact-card {
	background: linear-gradient(145deg, var(--res-card), #14171e);
	border: 1px solid var(--res-border);
	border-radius: var(--res-radius);
	min-height: 180px;
	box-shadow: 0 14px 32px rgba(0,0,0,.14);
}
.res-impact-card:hover { background: var(--res-card-hover); transform: translateY(-3px); }

/* Etapas: tarjetas algo más compactas y con interacción clara. */
.res-etapas-list { gap: 16px !important; }
.res-etapa-card {
	background: linear-gradient(145deg, var(--res-card), #14171e);
	border-color: var(--res-border) !important;
	border-radius: var(--res-radius) !important;
	transition: transform .18s ease, border-color .18s ease, background-color .18s ease;
}
.res-etapa-card:hover { transform: translateY(-3px); border-color: rgba(255,212,59,.42) !important; background: var(--res-card-hover); }

/* Mapa protagonista. */
.res-route-map-wrap { max-width: var(--res-container); margin: 36px auto 0; }
.res-route-map {
	height: clamp(340px, 42vw, 540px);
	border-radius: 18px;
	border-color: rgba(255,255,255,.12);
	box-shadow: 0 24px 60px rgba(0,0,0,.32);
}
.res-route-map__note { margin: 10px 0 0; color: var(--res-subtle); font-size: 13px; }

/* Patrocinadores: retícula alineada y logos con escala óptica uniforme. */
.res-sponsors-title,
.res-sponsors-grid,
.res-sponsors-title + .res-partners,
body.home > .res-sponsors-title,
body.home > .res-sponsors-title ~ .res-partners {
	width: min(100% - (2 * var(--res-gutter)), var(--res-container));
	max-width: var(--res-container);
	margin-inline: auto;
}
.res-sponsors-title { font-size: clamp(34px, 4vw, 52px) !important; letter-spacing: -.035em; }
.res-partner-card,
.res-sponsors-grid li {
	background: var(--res-card);
	border: 1px solid var(--res-border);
	border-radius: var(--res-radius);
}
.res-partner-card img,
.res-sponsors-grid img { max-width: 170px; max-height: 82px; width: auto; height: auto; object-fit: contain; }

/* Instagram: eliminar la sensación de bloque vacío y reforzar la composición. */
.res-ig-feed { padding-block: var(--res-section) !important; min-height: 0 !important; }
.res-ig-grid { gap: 20px; }
.res-ig-card { background: var(--res-card); border-color: var(--res-border); border-radius: var(--res-radius); }

/* Formulario equilibrado: más espacio útil y fotografía subordinada al objetivo. */
.res-form-section { max-width: var(--res-container); margin-inline: auto; border-radius: 20px; overflow: hidden; }
.res-form-section .wp-block-media-text__content { padding: clamp(32px, 5vw, 72px) !important; }
.res-form-section .wp-block-media-text__media { min-height: 620px; }
.res-form-section .wp-block-media-text__media img { object-position: center 28%; }
.res-form-container input,
.res-form-container textarea,
.res-form-container select {
	width: 100%;
	min-height: 52px;
	border: 1px solid #5b6472;
	border-radius: 10px;
	background: #11141a;
	color: var(--res-text);
	padding: 12px 14px;
}
.res-form-container textarea { min-height: 150px; }
.res-form-container input:focus,
.res-form-container textarea:focus,
.res-form-container select:focus { border-color: var(--res-yellow); outline: 3px solid rgba(255,212,59,.22); }

/* Ayuda: identidad serena, independiente del amarillo promocional. */
.res-help-band {
	background: var(--res-help-bg) !important;
	border-block: 1px solid var(--res-help-border);
	color: var(--res-text);
}
.res-help-band a { color: var(--res-help-accent) !important; }

/* Footer más compacto. */
footer.wp-block-template-part { border-top: 1px solid rgba(255,255,255,.08); }
footer.wp-block-template-part .wp-block-group { padding-block: clamp(48px, 6vw, 80px) !important; }

@media (max-width: 1180px) {
	.res-site-header .wp-block-site-title { white-space: normal; max-width: 330px; }
	.res-site-header .wp-block-navigation__container { column-gap: 16px !important; }
	.res-site-header .wp-block-navigation-item__content { font-size: 15px; }
}

@media (max-width: 900px) {
	.res-site-header { padding-block: 14px !important; }
	.res-site-header .wp-block-site-logo img { width: 48px; }
	.res-site-header .wp-block-site-title { font-size: 17px !important; max-width: 220px; }
	.res-site-header .wp-block-navigation__responsive-container-open { display: flex !important; min-width: 48px; min-height: 48px; align-items: center; justify-content: center; }
	.res-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open { background: var(--res-bg) !important; color: var(--res-text) !important; }
	.res-site-header .wp-block-navigation__container { align-items: flex-start !important; }
	.res-site-header .wp-block-navigation-item__content { font-size: 22px; padding-block: 8px; }
	.res-form-section .wp-block-media-text__media { min-height: 380px; }
}

/* Validación 1.5.5: prioridad global frente al antiguo selector posicional. */
.res-site-header .wp-block-navigation-item.res-nav-extra > .wp-block-navigation-item__content {
	border: 0 !important;
	border-radius: 0 !important;
	padding-inline: 0 !important;
}
.res-site-header .wp-block-navigation-item > .wp-block-navigation-item__content[href*="/corre-con-jaime/"] {
	border: 1px solid rgba(255,212,59,.75) !important;
	border-radius: 999px !important;
	padding: 10px 16px !important;
}

/* Los nueve destinos caben sin scroll horizontal en portátiles de 1366 px. */
@media (min-width: 901px) and (max-width: 1450px) {
	.res-site-header > .wp-block-group { gap: 14px !important; }
	.res-site-header .wp-block-site-logo img { width: 46px !important; }
	.res-site-header .wp-block-site-title {
		max-width: 275px !important;
		font-size: 16px !important;
		line-height: 1.12 !important;
	}
	.res-site-header .wp-block-navigation__container { column-gap: 9px !important; }
	.res-site-header .wp-block-navigation-item__content { font-size: 13px !important; }
	.res-site-header .wp-block-navigation-item > .wp-block-navigation-item__content[href*="/corre-con-jaime/"] {
		padding: 8px 11px !important;
	}
}

/* Debe ir después de las neutralizaciones específicas de Extendable. */
@media (max-width: 700px) {
	footer.wp-block-template-part .res-site-footer {
		gap: 20px !important;
		padding-block: 36px !important;
	}
	footer.wp-block-template-part .res-site-footer .res-footer-legal {
		padding: 8px 20px !important;
		font-size: 0 !important;
		line-height: 1.35 !important;
	}
}

/* Prioridad final 1.5.4: al crecer el menú no se hereda el CTA por posición. */
@media (max-width: 900px) {
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .res-nav-extra .wp-block-navigation-item__content,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .res-nav-extra .wp-block-navigation-item__content:focus,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .res-nav-extra .wp-block-navigation-item__content:focus-visible {
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content[href*="/corre-con-jaime/"] {
		border: 1px solid rgba(255,212,59,.75) !important;
		border-radius: 999px !important;
		padding-inline: 18px !important;
	}
}

/* 1.4.0 — cierre responsive de portada y calendario. */
@media (max-width: 700px) {
	/* Mantiene la lectura semanal sin comprimir siete columnas hasta hacerlas ilegibles. */
	.res-etapas-calendar-wrap::before {
		content: "Desliza horizontalmente para ver los 7 días  →";
		display: block;
		position: sticky;
		left: 0;
		z-index: 2;
		width: fit-content;
		max-width: calc(100vw - 48px);
		margin: 0 0 12px;
		padding: 9px 12px;
		border-left: 3px solid var(--res-yellow);
		border-radius: 0 8px 8px 0;
		background: #181c24;
		color: var(--res-muted);
		font-size: 13px;
		line-height: 1.35;
	}
	.res-calendar-hint {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip: rect(0,0,0,0) !important;
		white-space: nowrap !important;
	}

	/* Las tarjetas tenían height:100%; al pasar a una columna compartían la altura de la rejilla. */
	.res-ig-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-auto-rows: auto !important;
		gap: 16px !important;
	}
	.res-ig-card {
		box-sizing: border-box !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 22px !important;
		justify-content: flex-start !important;
	}
	.res-ig-card + .res-ig-card { margin-top: 0 !important; }
	.res-ig-btn {
		align-self: flex-start !important;
		width: auto !important;
		max-width: 100% !important;
		margin: 24px 0 0 !important;
		padding: 12px 18px !important;
		white-space: normal !important;
		text-align: center !important;
	}
	.res-ig-footer {
		margin-top: 22px !important;
		padding-inline: 8px;
		line-height: 1.45;
	}

	/* Una retícula impar queda equilibrada en vez de dejar una celda vacía visualmente. */
	.res-partners-grid__item:last-child:nth-child(odd) {
		grid-column: 1 / -1;
		width: calc(50% - 8px);
		min-width: 150px;
		justify-self: center;
	}
	.res-sponsors-cta { padding-inline: 8px; }
	.res-sponsors-cta a { line-height: 1.45; }

	/* Los separadores son nodos de texto: font-size:0 los oculta y los enlaces forman chips limpios. */
	footer.wp-block-template-part .res-site-footer .res-footer-legal {
		display: flex !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 10px 16px !important;
		padding: 8px 20px !important;
		font-size: 0 !important;
		line-height: 1.35 !important;
	}
	footer.wp-block-template-part .res-site-footer .res-footer-legal a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		padding: 6px 2px;
		font-size: 14px !important;
		line-height: 1.35 !important;
	}
	footer.wp-block-template-part .res-site-footer {
		gap: 20px !important;
		padding-block: 36px !important;
	}
}

@media (max-width: 600px) {
	.res-site-header .wp-block-site-title { max-width: 185px; font-size: 15px !important; }
	.res-site-header > .wp-block-group { gap: 12px; }
	.res-impact-card { min-height: 140px; }
	.res-route-map { height: 320px; border-radius: 12px; }
	.res-route-map__legend { gap: 10px 14px; }
	.res-form-section .wp-block-media-text__content { padding: 28px 20px !important; }
	.res-form-section .wp-block-media-text__media { min-height: 300px; }
}

/* Menú móvil FSE: neutraliza los márgenes/alturas del patrón anterior que desplazaban y
 * recortaban los enlaces fuera de la pantalla en iPhone. */
@media (max-width: 900px) {
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open {
		box-sizing: border-box !important;
		width: 100vw !important;
		max-width: 100vw !important;
		height: 100dvh !important;
		min-height: 100vh !important;
		margin: 0 !important;
		padding: max(20px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom)) !important;
		overflow-y: auto !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: none !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	.res-site-header .wp-block-navigation__responsive-container-close {
		position: absolute !important;
		top: max(20px, env(safe-area-inset-top)) !important;
		right: 20px !important;
		display: grid !important;
		place-items: center;
		width: 52px !important;
		height: 52px !important;
		margin: 0 !important;
		padding: 12px !important;
		border-radius: 50% !important;
		background: #202530 !important;
		color: #f5f6f8 !important;
	}
	.res-site-header .site-logo-title {
		box-sizing: border-box !important;
		display: flex !important;
		align-items: center !important;
		gap: 14px !important;
		width: 100% !important;
		min-height: 76px !important;
		margin: 0 !important;
		padding: 0 72px 0 0 !important;
	}
	.res-site-header .site-logo-title .mobile-logo {
		flex: 0 0 auto !important;
		width: 48px !important;
		height: auto !important;
		max-height: 62px !important;
		object-fit: contain;
	}
	.res-site-header .site-logo-title .site-title {
		display: block !important;
		max-width: 285px !important;
		margin: 0 !important;
		font-size: clamp(18px, 5vw, 24px) !important;
		font-weight: 800 !important;
		line-height: 1.12 !important;
		letter-spacing: -.025em !important;
		text-transform: uppercase;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		box-sizing: border-box !important;
		display: block !important;
		width: 100% !important;
		margin: 24px 0 0 !important;
		padding: 0 !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0 !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		box-sizing: border-box !important;
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		border-top: 1px solid rgba(255,255,255,.09);
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child {
		border-bottom: 1px solid rgba(255,255,255,.09);
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		box-sizing: border-box !important;
		display: flex !important;
		align-items: center !important;
		width: 100% !important;
		min-height: 64px !important;
		margin: 0 !important;
		padding: 14px 4px !important;
		border: 0 !important;
		border-radius: 0 !important;
		font-size: clamp(21px, 6vw, 27px) !important;
		font-weight: 650 !important;
		line-height: 1.15 !important;
		text-align: left !important;
		justify-content: flex-start !important;
		white-space: normal !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-last-child(3) .wp-block-navigation-item__content {
		width: fit-content !important;
		min-height: 50px !important;
		margin: 10px 0 !important;
		padding: 10px 20px !important;
		border: 2px solid rgba(255,212,59,.8) !important;
		border-radius: 999px !important;
	}
}

@media (max-width: 600px) {
	.res-etapas-calendar { min-width: 720px; border-spacing: 6px; }
	.res-etapas-calendar td { height: 122px; }
	.res-calendar-stage a { min-height: 120px; padding: 11px; }
	.res-calendar-stage__dest { font-size: 15px; }
	.res-calendar-stage__date,
	.res-calendar-stage__status { font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Cierre de auditoría visual: Extendify dejaba grupos completos con opacity:0 si el observador de
 * entrada no se disparaba. El contenido del proyecto debe estar siempre visible, también sin JS. */
.ext-animate,
.ext-animate--on {
	opacity: 1 !important;
	transform: none !important;
	animation: none !important;
}

/* Patrocinadores: una sola retícula y escala óptica común. */
.res-sponsors-title,
.res-partners-grid,
.res-sponsors-cta {
	box-sizing: border-box;
	width: min(calc(100% - (2 * var(--res-gutter))), var(--res-container)) !important;
	max-width: var(--res-container) !important;
	margin-inline: auto !important;
}
.res-partners-grid {
	margin-top: 28px !important;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 16px;
}
.res-partners-grid__item {
	min-height: 118px;
	padding: 20px;
	border: 1px solid var(--res-border);
	border-radius: var(--res-radius);
	background: var(--res-card);
}
.res-partners-grid__item img {
	max-width: 180px;
	max-height: 72px;
	filter: none;
}
.res-sponsors-cta {
	margin-top: 26px !important;
	text-align: center !important;
}
.res-sponsors-cta a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 8px 4px;
	color: var(--res-yellow);
	font-weight: 650;
	text-underline-offset: 5px;
}

/* Más aire entre patrocinadores, actualidad y CTA; el bloque final gana jerarquía propia. */
#res-ig-feed,
.res-ig-feed { margin-top: clamp(56px, 7vw, 96px) !important; }
.res-cta-final {
	box-sizing: border-box;
	width: min(calc(100% - (2 * var(--res-gutter))), var(--res-container));
	margin: clamp(64px, 8vw, 104px) auto !important;
	padding: clamp(52px, 7vw, 88px) var(--res-gutter) !important;
	border: 1px solid var(--res-border);
	border-radius: 22px;
	background:
		radial-gradient(circle at 85% 20%, rgba(227,59,71,.14), transparent 34%),
		linear-gradient(145deg, #181c24, #101218) !important;
	box-shadow: 0 24px 60px rgba(0,0,0,.24);
	text-align: center;
}
.res-cta-final__title {
	margin-bottom: 28px !important;
	font-size: clamp(30px, 4vw, 52px) !important;
	line-height: 1.05;
	letter-spacing: -.035em;
}
.res-cta-final a { box-shadow: none !important; }
.wp-block-button__link { box-shadow: none !important; }

/* Footer: conserva toda la información reduciendo más de 300 px de espacio innecesario. */
.res-site-footer {
	gap: 28px !important;
	padding-block: 48px !important;
}
.res-site-footer > .wp-block-group:first-child {
	min-height: 0 !important;
	height: auto !important;
}
.res-site-footer > .wp-block-group:first-child .wp-block-site-logo img {
	width: 80px !important;
	height: auto !important;
	max-height: 100px !important;
}
.res-site-footer > .wp-block-group:nth-child(2) {
	min-height: 0 !important;
	height: auto !important;
	margin-top: 12px !important;
	padding-top: 24px !important;
}
.res-footer-legal {
	min-height: 0 !important;
	margin: 0 auto !important;
	padding: 8px var(--res-gutter) !important;
	line-height: 2;
}

@media (max-width: 700px) {
	.res-partners-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.res-partners-grid__item { min-height: 96px; padding: 14px; }
	.res-partners-grid__item img { max-width: 130px; max-height: 58px; }
	.res-cta-final { border-radius: 16px; padding-inline: 20px !important; }
	.res-site-footer > .wp-block-group:nth-child(2) { flex-direction: column; gap: 20px; }
}

/* El tema Extendable aplica padding vertical a todos los grupos del footer con una regla más
 * específica. Neutralización final, limitada exclusivamente al template part del pie. */
footer.wp-block-template-part .res-site-footer {
	box-sizing: border-box;
	padding-block: 44px !important;
}
footer.wp-block-template-part .res-site-footer > .wp-block-group {
	min-height: 0 !important;
	height: auto !important;
	padding-block: 0 !important;
}
footer.wp-block-template-part .res-site-footer > .wp-block-group:nth-child(2) {
	margin-top: 8px !important;
	padding-top: 24px !important;
	padding-bottom: 0 !important;
}
footer.wp-block-template-part .res-site-footer .res-footer-legal {
	box-sizing: border-box;
	width: 100% !important;
	max-width: var(--res-container) !important;
	height: auto !important;
	min-height: 0 !important;
	margin-inline: auto !important;
	padding: 4px var(--res-gutter) !important;
	font-size: 14px;
	line-height: 1.9;
	text-align: center;
}

/* Menú móvil 1.3.8: el overlay debe quedar por encima de wp-admin/edición rápida.
 * El foco conserva contraste sin convertir el enlace completo en un marco discontinuo. */
@media (max-width: 900px) {
	/* El overlay es hijo del header: elevar también sus contextos padre para superar wp-admin. */
	html.has-modal-open header.wp-block-template-part,
	body.admin-bar:has(.wp-block-navigation__responsive-container.is-menu-open) header.wp-block-template-part,
	html.has-modal-open .res-site-header,
	body.admin-bar .res-site-header:has(.wp-block-navigation__responsive-container.is-menu-open) {
		position: relative !important;
		z-index: 2147483000 !important;
		isolation: auto !important;
		transform: none !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open {
		inset: 0 !important;
		z-index: 2147483001 !important;
		padding: max(18px, env(safe-area-inset-top)) 20px max(22px, env(safe-area-inset-bottom)) !important;
	}
	.res-site-header .wp-block-navigation__responsive-container-close {
		top: max(16px, env(safe-area-inset-top)) !important;
		right: 16px !important;
		width: 48px !important;
		height: 48px !important;
	}
	.res-site-header .site-logo-title {
		min-height: 66px !important;
		padding-right: 64px !important;
	}
	.res-site-header .site-logo-title .mobile-logo {
		width: 42px !important;
		max-height: 54px !important;
	}
	.res-site-header .site-logo-title .site-title {
		max-width: min(70vw, 300px) !important;
		font-size: clamp(17px, 4.7vw, 22px) !important;
		line-height: 1.08 !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		margin-top: 12px !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		min-height: 56px !important;
		padding: 12px 10px !important;
		font-size: clamp(20px, 5.5vw, 24px) !important;
		outline: none !important;
		box-shadow: none !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:focus,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:focus-visible,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:focus-within {
		outline: none !important;
		box-shadow: none !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
		background: rgba(255,212,59,.08) !important;
		box-shadow: inset 4px 0 0 var(--res-yellow) !important;
		color: var(--res-text) !important;
	}
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-last-child(3) .wp-block-navigation-item__content:focus,
	.res-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:nth-last-child(3) .wp-block-navigation-item__content:focus-visible {
		box-shadow: 0 0 0 3px rgba(255,212,59,.24) !important;
	}
}

/* Cierre 1.4.0: prioridad final frente a las reglas específicas del footer del tema. */
@media (max-width: 700px) {
	footer.wp-block-template-part .res-site-footer {
		gap: 20px !important;
		padding-block: 36px !important;
	}
	footer.wp-block-template-part .res-site-footer .res-footer-legal {
		padding: 8px 20px !important;
		font-size: 0 !important;
		line-height: 1.35 !important;
	}
}

/* 1.5.6: CTA de Instagram on-brand (Plan A auditoria direccion de arte), sustituye la imagen
   compuesta estatica de /etapas/ (mockup de perfil con cifras desactualizadas) por un enlace de
   texto siempre vivo. Usa las variables del sistema visual transversal (1.3.1) con fallback fijo
   por si esta hoja se carga en un contexto donde :root aun no se ha resuelto. */
.res-ig-cta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
	background: var(--res-card, #181c24);
	border: 1px solid var(--res-border, rgba(255,255,255,.08));
	border-radius: var(--res-radius, 14px);
	padding: 20px 24px;
	margin: 32px 0;
}
.res-ig-cta__icon {
	flex: 0 0 auto;
	display: flex;
}
.res-ig-cta__text {
	flex: 1 1 auto;
	min-width: 160px;
}
.res-ig-cta__text strong {
	display: block;
	color: var(--res-text, #EAECEF);
}
.res-ig-cta__text span {
	display: block;
	color: var(--res-muted, #aeb2bb);
	font-size: 13px;
}
.res-ig-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 20px;
	border-radius: 999px;
	background: var(--res-yellow, #F9D548);
	color: #101218;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}
.res-ig-cta__btn:hover,
.res-ig-cta__btn:focus-visible {
	background: var(--res-yellow-hover, #fbe27a);
	color: #101218;
}

/* 1.5.7: jerarquía primario/secundario en los bloques CTA finales (portada, /impacto/,
   plantilla single de etapa). Antes .res-cta-primary y .res-cta-secondary no tenían estilo
   propio y ambos heredaban el mismo botón relleno del tema -> se veían idénticos, sin indicar
   cuál es la acción principal. Replica el patrón que ya funciona en el hero. */
.res-cta-primary.wp-block-button__link,
a.res-cta-primary,
.wp-block-button.res-cta-primary .wp-block-button__link {
	background-color: var(--res-yellow, #F9D548) !important;
	color: #101218 !important;
	border: 1px solid var(--res-yellow, #F9D548) !important;
}
.res-cta-primary.wp-block-button__link:hover,
a.res-cta-primary:hover,
.wp-block-button.res-cta-primary .wp-block-button__link:hover {
	background-color: var(--res-yellow-hover, #fbe27a) !important;
	border-color: var(--res-yellow-hover, #fbe27a) !important;
}
.res-cta-secondary.wp-block-button__link,
a.res-cta-secondary,
.wp-block-button.res-cta-secondary .wp-block-button__link {
	background-color: transparent !important;
	color: var(--res-text, #EAECEF) !important;
	border: 1px solid rgba(255,255,255,.55) !important;
}
.res-cta-secondary.wp-block-button__link:hover,
a.res-cta-secondary:hover,
.wp-block-button.res-cta-secondary .wp-block-button__link:hover {
	border-color: var(--res-yellow, #F9D548) !important;
	color: var(--res-yellow, #F9D548) !important;
}

/* 1.5.7: la foto de la entrevista de televisión ("Por qué este reto", portada) usa una
   paleta de plató (morado/turquesa) que contrasta fuerte con el resto del sitio. Viñeta y
   ligera reducción de saturación para integrarla sin perder la fotografía real. */
img.wp-image-88 {
	filter: saturate(.82) contrast(1.03);
	border-radius: var(--res-radius, 14px);
	box-shadow: inset 0 0 0 2000px rgba(16,18,24,.06), 0 24px 50px rgba(0,0,0,.28);
}

/* 1.5.7: hueco vertical vacío en las tarjetas de Instagram del home (@jimmy_go /
   @proyectorompeelsilencio). El bloque wp:html de la portada fija min-height:180px con
   justify-content:space-between sobre un contenido de dos líneas -> deja un hueco entre el
   texto y el botón que parece un embed roto. Se reduce aquí en vez de tocar el bloque HTML
   para no duplicar la definición de estilos. */
#res-ig-feed .res-ig-card {
	min-height: 0 !important;
	justify-content: flex-start !important;
	gap: 18px;
}
/* 1.5.8: el hueco no lo causaba justify-content del contenedor (ya corregido en 1.5.7) sino
   .res-ig-btn{margin-top:auto} definido en el <style> de la propia pagina, que ignora el
   justify-content del padre y empuja el boton al fondo por su cuenta. Verificado en vivo:
   con solo el fix de 1.5.7 el hueco entre el texto y el boton seguia siendo de ~67px. */
#res-ig-feed .res-ig-card .res-ig-btn {
	margin-top: 0 !important;
}


/* Theme refinement 2026-09-09: scoped editorial hierarchy and component rhythm. */
body.wp-theme-extendable main h1,body.wp-theme-extendable main h2,body.wp-theme-extendable main h3{text-wrap:balance}
body.wp-theme-extendable main p{text-wrap:pretty}
.res-impact-summary__grid{align-items:stretch}
.res-impact-summary .res-impact-summary__card{background:transparent!important;box-shadow:none!important;border-radius:0!important;border:0!important;border-top:2px solid rgba(249,213,72,.5)!important;padding:20px 14px!important;text-align:left!important}
.res-impact-summary .res-impact-summary__value{font-variant-numeric:tabular-nums;line-height:1.3!important}
.res-impact-summary .res-impact-summary__label{line-height:1.5!important;letter-spacing:.035em}
.home .res-partners-grid--named{width:100%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch}
.home .res-partners-grid--named .res-partners-grid__item{min-width:0;box-shadow:none!important;background:transparent!important;border-radius:8px!important}
.home .res-sponsors-title{font-size:clamp(28px,3.3vw,40px)!important;line-height:1.15!important}
body.wp-theme-extendable .res-cta-final{background:#171c24!important;box-shadow:none!important;padding:clamp(30px,5vw,56px) 24px!important}
.res-cta-final .res-cta-final__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px!important}
.res-cta-final a.res-cta-primary,.res-cta-final a.res-cta-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;box-sizing:border-box}
.home img.wp-image-82,.home img.wp-image-88{box-shadow:none!important;border-radius:12px!important}
#res-ig-feed .res-ig-footer{clear:both;margin-top:24px!important;padding-top:8px;overflow-wrap:anywhere}
#res-ig-feed .res-ig-card{box-shadow:none!important;border-radius:10px!important}
.res-site-header a[aria-current="page"]{text-decoration:underline;text-decoration-color:#F9D548;text-underline-offset:7px}
@media(max-width:600px){.home .res-partners-grid--named{grid-template-columns:repeat(2,minmax(0,1fr))!important}.home .res-partners-grid--named .res-partners-grid__item:last-child:nth-child(odd){grid-column:1/-1}.res-impact-summary .res-impact-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.res-impact-summary .res-impact-summary__card:last-child:nth-child(odd){grid-column:1/-1}.res-cta-final .res-cta-final__actions{flex-direction:column;align-items:stretch}.res-cta-final .wp-block-button,.res-cta-final .wp-block-button__link{width:100%;box-sizing:border-box}}
