.trey-sys--modulo {
	--pilar-ink: var(--wp--preset--color--navy, #111418);
	--pilar-muted: var(--wp--preset--color--gray-600, #5B6873);
	--pilar-line: var(--wp--preset--color--gray-200, #DBE1E8);
	--pilar-acc: var(--sys-verde, #40A17B);
	--pilar-acc-soft: var(--wp--preset--color--green, #7FE3BD);
	--pilar-surface: var(--wp--preset--color--white, #FFFFFF);
	--pilar-surface-alt: var(--wp--preset--color--gray-50, #F6F8FA);
	--pilar-radius: 14px;
}
.trey-sys--modulo .entry-content > .mod-sec,
.trey-sys--modulo .entry-content > .mod-cab {
	max-width: none;
	margin-inline: 0;
	padding-inline: max(clamp(1rem, 4vw, 2rem), (100% - 1200px) / 2);
}
.mod-sec > *,
.mod-cab > * {
	max-width: none;
	margin-inline-start: 0;
}
.mod-sec > .pilar-sello__img,
.mod-cab > .pilar-sello__img {
	max-width: 260px;
	margin-inline: auto;
}
.mod-sec > .pilar-figura,
.mod-cab > .pilar-figura,
.mod-sec > .pilar-prosa__img,
.mod-cab > .pilar-prosa__img {
	max-width: 720px;
	margin-inline: auto;
	width: 100%;
}
.mod-sec > .pilar-figura > img,
.mod-cab > .pilar-figura > img,
.mod-sec > .pilar-prosa__img > img,
.mod-cab > .pilar-prosa__img > img {
	width: 100%;
	height: auto;
}
.mod-cab {
	padding-block: clamp(3.5rem, 7vw, 6rem) clamp(2.5rem, 5vw, 4rem);
	--sys-banda: var(--pilar-surface) !important;
	background: var(--pilar-surface);
	color: var(--pilar-ink);
	overflow-x: clip;
}
.mod-cab h1 {
	font-size: clamp(2rem, 4.2vw, 3.1rem);
	line-height: 1.1;
	letter-spacing: -0.02em;
	font-weight: 800;
	max-width: 20ch;
	margin-block: 0 var(--wp--preset--spacing--6);
}
.mod-cab p {
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.65;
	color: var(--pilar-muted);
	max-width: 62ch;
	margin-block: 0 var(--wp--preset--spacing--4);
}
.mod-cab p:last-child {
	margin-block-end: 0;
}
.mod-sec--vacia {
	padding-block: clamp(2rem, 4vw, 3rem) 0;
}
.mod-sec--vacia + .mod-sec {
	padding-block-start: 0;
}
.mod-sec--vacia,
.mod-sec--vacia + .mod-sec {
	margin-block-start: 0;
}
.mod-sec--vacia.mod-sec--cola {
	padding-block: 0 clamp(2rem, 4vw, 3rem);
}
.mod-sec--vacia:has(+ .mod-sec > h2) h2 {
	font-size: clamp(0.95rem, 1.5vw, 1.125rem);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.01em;
	color: var(--wp--preset--color--gray-600, #5b6670);
	max-width: 44ch;
	margin-block: 0 var(--wp--preset--spacing--2);
}
.mod-sec--vacia:has(+ .mod-sec > h2) {
	padding-block-end: var(--wp--preset--spacing--2);
}
.mod-sec h2 {
	font-size: clamp(1.5rem, 2.9vw, 2.2rem);
	line-height: 1.15;
	letter-spacing: -0.015em;
	font-weight: 800;
	max-width: 26ch;
	margin-block: 0 var(--wp--preset--spacing--6);
}
.mod-sec h3 {
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.3;
	font-weight: 700;
	margin-block: 0 var(--wp--preset--spacing--2);
}
.mod-sec p {
	line-height: 1.7;
	color: var(--pilar-muted);
	margin-block: 0 var(--wp--preset--spacing--4);
}
.mod-sec p:last-child {
	margin-block-end: 0;
}
.mod-sec > .cata-num {
	grid-column: 1 / -1;
	flex: 1 0 100%;
	max-width: none;
}
.mod-cabecera-v1 > :is(h1, p),
.mod-prosa-v1 > :is(h2, p),
.mod-rotulos-v1 > :is(h2, h3),
.mod-fichas-v1 > :is(h2, h3, p) {
	max-width: 760px;
}
.mod-corto .mod-cab {
	padding-block: clamp(3rem, 5vw, 4rem) clamp(1.5rem, 3vw, 2.5rem);
}
.mod-corto .mod-sec {
	padding-block: clamp(2rem, 4vw, 3.25rem);
}
.mod-corto .sys-banda {
	padding-block: clamp(2.5rem, 4.5vw, 3.5rem);
}
.mod-cab.mod-cabecera-v2 {
	text-align: center;
}
.mod-cab.mod-cabecera-v2 h1 {
	max-width: 18ch;
	margin-inline: auto;
	margin-block-end: var(--wp--preset--spacing--4);
}
.mod-cab.mod-cabecera-v2 h1::after {
	content: "";
	display: block;
	inline-size: 4rem;
	block-size: 3px;
	background: var(--pilar-acc);
	margin: var(--wp--preset--spacing--6) auto 0;
}
.mod-cab.mod-cabecera-v2 p {
	margin-inline: auto;
	max-width: 58ch;
}
@media (min-width: 900px) {
	.mod-cab.mod-cabecera-v3 {
		display: grid;
		grid-template-columns: 7fr 5fr;
		gap: clamp(2rem, 5vw, 4rem);
		align-items: end;
	}
	.mod-cab.mod-cabecera-v3 h1 {
		grid-column: 1;
		max-width: none;
		margin-block-end: 0;
	}
	.mod-cab.mod-cabecera-v3 > p {
		grid-column: 2;
		max-width: none;
		padding-inline-start: var(--wp--preset--spacing--6);
		border-inline-start: 2px solid var(--pilar-acc);
	}
	.mod-cab.mod-cabecera-v3 > p ~ p {
		grid-column: 2;
		border-inline-start-color: var(--pilar-line);
	}
}
.mod-cab.mod-cabecera-v4 {
	--sys-banda: var(--pilar-surface-alt) !important;
	background: var(--pilar-surface-alt);
	border-block-start: 3px solid var(--pilar-acc);
	padding-block: clamp(3rem, 6vw, 5rem);
}
.mod-cab.mod-cabecera-v4 h1 {
	max-width: 22ch;
}
.mod-cab.mod-cabecera-v4 p {
	color: var(--pilar-ink);
	opacity: 0.78;
}
.mod-cab.mod-cabecera-v5 h1 {
	font-size: clamp(2.2rem, 6vw, 4.2rem);
	max-width: 16ch;
	letter-spacing: -0.03em;
}
@media (min-width: 900px) {
	.mod-cab.mod-cabecera-v5 > p {
		max-width: 46ch;
		margin-inline-start: auto;
		text-align: start;
	}
}
.mod-prosa-v2 p {
	max-width: 68ch;
}
@media (min-width: 900px) {
	.mod-prosa-v3 {
		display: grid;
		grid-template-columns: 4fr 8fr;
		gap: clamp(2rem, 5vw, 4rem);
	}
	.mod-prosa-v3 h2 {
		grid-column: 1;
		position: sticky;
		top: clamp(5rem, 9vw, 7rem);
		align-self: start;
		margin-block-end: 0;
	}
	.mod-prosa-v3 > :not(h2) {
		grid-column: 2;
	}
	.mod-prosa-v3 p {
		max-width: 64ch;
	}
}
@media (min-width: 900px) {
	.mod-prosa-v4.mod-prosa--ladrillo > p {
		columns: 2;
		column-gap: clamp(2rem, 4vw, 3.5rem);
		max-width: none;
	}
	.mod-prosa-v4.mod-prosa--ladrillo > p + p {
		margin-block-start: var(--wp--preset--spacing--4);
	}
}
.mod-prosa-v4:not(.mod-prosa--ladrillo) > p {
	max-width: 68ch;
}
.mod-prosa-v5 h2 {
	padding-block-start: var(--wp--preset--spacing--6);
	border-block-start: 3px solid var(--pilar-acc);
}
.mod-prosa-v5 > p:first-of-type {
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.6;
	color: var(--pilar-ink);
	max-width: 60ch;
}
.mod-prosa-v5 > p {
	max-width: 68ch;
}
.mod-rotulos-v2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 0 clamp(1.5rem, 3vw, 2.5rem);
	align-items: start;
}
.mod-rotulos-v2 > * {
	margin-block-start: 0;
}
.mod-rotulos-v2 h2 {
	grid-column: 1 / -1;
	margin-block-end: var(--wp--preset--spacing--8);
}
.mod-rotulos-v2 h3 {
	padding-block-end: var(--wp--preset--spacing--4);
	margin-block-end: var(--wp--preset--spacing--4);
	border-block-end: 1px solid var(--pilar-line);
	font-size: var(--wp--preset--font-size--base);
	font-weight: 600;
}
.mod-rotulos-v2 {
	align-items: stretch;
}
@media (min-width: 720px) {
	.mod-rotulos-v3 {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: clamp(2rem, 5vw, 4rem);
	}
	.mod-rotulos-v3 h2 {
		grid-column: 1 / -1;
	}
}
.mod-rotulos-v3 h3 {
	padding-block: var(--wp--preset--spacing--4);
	border-block-start: 1px solid var(--pilar-line);
	font-size: var(--wp--preset--font-size--base);
	font-weight: 600;
	margin-block-end: 0;
}
.mod-rotulos-v3 h3::before {
	inset-block-start: calc(var(--wp--preset--spacing--4) + 0.3em);
}
.mod-rotulos-v4 {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--3);
	align-items: start;
}
.mod-rotulos-v4 h2 {
	flex: 1 0 100%;
	margin-block-end: var(--wp--preset--spacing--6);
}
.mod-rotulos-v4 h3 {
	margin-block-end: 0;
	padding-block: var(--wp--preset--spacing--3);
	padding-inline: var(--wp--preset--spacing--6);
	padding-inline-start: calc(30px + var(--wp--preset--spacing--4));
	border: 1px solid var(--pilar-line);
	border-radius: 999px;
	background: var(--pilar-surface);
	font-size: var(--wp--preset--font-size--base);
	font-weight: 600;
	line-height: 1.4;
	max-inline-size: 100%;
}
.mod-rotulos-v4 h3::before {
	inset-inline-start: var(--wp--preset--spacing--4);
	inset-block-start: calc(var(--wp--preset--spacing--3) + 0.3em);
}
.pilar-sec--claro.mod-rotulos-v4 h3 {
	background: var(--pilar-surface-alt);
	border-color: transparent;
}
.mod-rotulos-v5 h3 {
	padding-block: var(--wp--preset--spacing--4);
	margin-block-end: 0;
	font-size: var(--wp--preset--font-size--base);
	font-weight: 600;
}
.mod-rotulos-v5 h3::before {
	inset-block-start: calc(var(--wp--preset--spacing--4) + 0.3em);
}
.mod-rotulos-v5 h3::after {
	content: "";
	position: absolute;
	inset-inline-start: 8px;
	inset-block-start: calc(var(--wp--preset--spacing--4) + 0.3em + 17px + 4px);
	block-size: calc(100% - var(--wp--preset--spacing--4) - 17px);
	inline-size: 1.6px;
	background: var(--pilar-line);
}
.mod-rotulos-v5 h3:last-child::after {
	display: none;
}
.mod-fichas-v2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(19rem, 1fr));
	gap: clamp(1.25rem, 2.5vw, 2rem);
	align-items: start;
}
.mod-fichas-v2 h2 {
	grid-column: 1 / -1;
}
.mod-fichas-v2 h3 {
	padding: var(--wp--preset--spacing--6) var(--wp--preset--spacing--6) 0;
	padding-inline-start: calc(30px + var(--wp--preset--spacing--6));
	background: var(--pilar-surface);
	border: 1px solid var(--pilar-line);
	border-block-end: 0;
	border-radius: var(--pilar-radius) var(--pilar-radius) 0 0;
	margin-block-end: 0;
}
.mod-fichas-v2 h3::before {
	inset-inline-start: var(--wp--preset--spacing--6);
	inset-block-start: calc(var(--wp--preset--spacing--6) + 0.3em);
}
.mod-fichas-v2 h3 + p {
	padding: var(--wp--preset--spacing--3) var(--wp--preset--spacing--6) var(--wp--preset--spacing--6);
	background: var(--pilar-surface);
	border: 1px solid var(--pilar-line);
	border-block-start: 0;
	border-radius: 0 0 var(--pilar-radius) var(--pilar-radius);
	margin-block-end: 0;
	block-size: 100%;
}
.mod-fichas-v3 h3 {
	padding-block-start: var(--wp--preset--spacing--6);
	border-block-start: 1px solid var(--pilar-line);
}
.mod-fichas-v3 h3::before {
	inset-block-start: calc(var(--wp--preset--spacing--6) + 0.3em);
}
@media (min-width: 900px) {
	.mod-fichas-v3 {
		display: grid;
		grid-template-columns: 4fr 8fr;
		column-gap: clamp(2rem, 5vw, 4rem);
	}
	.mod-fichas-v3 h2 {
		grid-column: 1 / -1;
	}
	.mod-fichas-v3 h3 {
		grid-column: 1;
	}
	.mod-fichas-v3 h3 + p {
		grid-column: 2;
		padding-block-start: var(--wp--preset--spacing--6);
		border-block-start: 1px solid var(--pilar-line);
		max-width: 62ch;
	}
}
.mod-fichas-v2 > :is(figure, .wp-block-image),
.mod-fichas-v3 > :is(figure, .wp-block-image) {
	grid-column: 1 / -1;
}
.mod-fichas-v4 h3 {
	position: relative;
	padding-block: var(--wp--preset--spacing--4);
	padding-inline-end: var(--wp--preset--spacing--8);
	border-block-start: 1px solid var(--pilar-line);
	margin-block-end: 0;
	cursor: default;
}
.mod-fichas-v4 h3::before {
	inset-block-start: calc(var(--wp--preset--spacing--4) + 0.3em);
}
.mod-fichas-v4 h3::after {
	content: "+";
	position: absolute;
	inset-inline-end: 0;
	inset-block-start: 50%;
	transform: translateY(-50%);
	color: var(--pilar-acc);
	font-size: var(--wp--preset--font-size--lg);
	font-weight: 400;
	line-height: 1;
}
.mod-fichas-v4 h3 + p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	max-width: 72ch;
	padding-block-end: var(--wp--preset--spacing--4);
}
.mod-fichas-v5 h3 {
	padding-inline-start: calc(30px + var(--wp--preset--spacing--6));
	border-inline-start: 3px solid var(--pilar-acc);
	padding-block: var(--wp--preset--spacing--2);
}
.mod-fichas-v5 h3::before {
	inset-inline-start: var(--wp--preset--spacing--6);
	inset-block-start: calc(var(--wp--preset--spacing--2) + 0.3em);
}
.mod-fichas-v5 h3 + p {
	padding-inline-start: var(--wp--preset--spacing--6);
	border-inline-start: 3px solid var(--pilar-line);
	padding-block-end: var(--wp--preset--spacing--8);
	max-width: 62ch;
}
.mod-equipo-v1 .mod-equipo__rejilla {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(14rem, 45%), 1fr));
	gap: clamp(1.5rem, 3vw, 2.5rem) clamp(1.25rem, 2.5vw, 2rem);
	align-items: start;
}
.mod-equipo-v1 .mod-equipo__rejilla > * {
	margin-block-start: 0;
}
.mod-equipo-v1 .mod-equipo__ficha > * {
	max-width: none;
	margin-inline-start: 0;
}
.mod-equipo-v1 .mod-equipo__ficha figure {
	margin: 0 0 var(--wp--preset--spacing--4);
}
.mod-equipo-v1 .mod-equipo__ficha img {
	display: block;
	inline-size: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: 50% 22%;
	border-radius: var(--pilar-radius);
}
.mod-equipo-v1 .mod-equipo__ficha h2 {
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.2;
	letter-spacing: -0.01em;
	font-weight: 800;
	max-width: none;
	margin-block: 0 var(--wp--preset--spacing--1);
}
.mod-equipo-v1 .mod-equipo__ficha h3 {
	font-size: var(--wp--preset--font-size--xs);
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--pilar-acc);
	margin-block: 0 var(--wp--preset--spacing--2);
	padding-inline-start: 0;
}
.mod-equipo-v1 .mod-equipo__ficha h3::before {
	content: none;
}
.mod-equipo-v1 .mod-equipo__rejilla .mod-equipo__ficha p {
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.5;
	color: var(--pilar-muted);
	margin-block: 0;
	padding-inline-start: 0;
}
.mod-tarjetas-v1 .mod-tarjetas__rejilla {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(16rem, 45%), 1fr));
	gap: clamp(1.5rem, 3vw, 2.5rem) clamp(1.25rem, 2.5vw, 2rem);
	align-items: start;
}
.mod-tarjetas-v1 .mod-tarjetas__rejilla > * {
	margin-block-start: 0;
}
.mod-tarjetas-v1 .mod-tarjetas__ficha > * {
	max-width: none;
	margin-inline-start: 0;
}
.mod-tarjetas-v1 .mod-tarjetas__ficha h2 {
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.25;
	letter-spacing: -0.01em;
	font-weight: 800;
	max-width: none;
	margin-block: 0 var(--wp--preset--spacing--2);
}
.mod-tarjetas-v1 .mod-tarjetas__rejilla .mod-tarjetas__ficha p {
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.55;
	color: var(--pilar-muted);
	margin-block: 0 var(--wp--preset--spacing--2);
	padding-inline-start: 0;
}
.mod-tarjetas-v1 .mod-tarjetas__ficha p:last-child {
	margin-block-end: 0;
}
.mod-tarjetas-v1 .mod-tarjetas__ficha figure {
	margin: 0 0 var(--wp--preset--spacing--4);
	min-block-size: 4.5rem;
}
.mod-tarjetas-v1 .mod-tarjetas__ficha img {
	display: block;
	inline-size: auto;
	max-inline-size: 100%;
	max-block-size: 4.5rem;
	object-fit: contain;
	object-position: left center;
}
@media (min-width: 900px) {
	.mod-rotulos-v2.mod-n5,
	.mod-rotulos-v2.mod-n6,
	.mod-rotulos-v2.mod-n9,
	.mod-tarjetas-v1.mod-n5 .mod-tarjetas__rejilla,
	.mod-tarjetas-v1.mod-n6 .mod-tarjetas__rejilla,
	.mod-tarjetas-v1.mod-n9 .mod-tarjetas__rejilla {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
@media (max-width: 719px) {
	.mod-rotulos-v4 h3 {
		padding-inline: var(--wp--preset--spacing--4);
		font-size: var(--wp--preset--font-size--sm);
	}
	.mod-cab.mod-cabecera-v5 h1 {
		max-width: none;
	}
}
