/*
Theme Name: EPITA Técnico
Theme URI: https://ingenieriatopograficayagrimensura.com
Author: Escuela Profesional de Ingeniería Topográfica y Agrimensura
Author URI: https://ingenieriatopograficayagrimensura.com
Description: Tema de bloques (Full Site Editing) para la Escuela Profesional de Ingeniería Topográfica y Agrimensura (EPITA) de la Universidad Nacional del Altiplano de Puno. Implementa la propuesta 9B: navegación flotante, hero con foto velada y tarjeta tipo orden de trabajo, secciones centradas con etiquetas técnicas monospace, tarjetas con foto, cifras con íconos, FAQ sin JavaScript y bloque de servicios UNA. Amarillo institucional como color principal y verde como apoyo.
Requires at least: 6.5
Tested up to: 6.7
Requires PHP: 8.1
Version: 0.5.18
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: epita-tecnico
Tags: full-site-editing, block-patterns, block-styles, education, accessibility-ready, custom-colors, custom-logo, editor-style
*/

/* ---------------------------------------------------------------------------
 * 0. Tokens
 * ------------------------------------------------------------------------- */
:root {
	--tec-radio: 20px;
	--tec-sombra: 0 1px 2px rgba(17, 20, 18, 0.04), 0 16px 40px -16px rgba(17, 20, 18, 0.16);
	--tec-mono: var(--wp--preset--font-family--plex-mono);
	--tec-display: var(--wp--preset--font-family--archivo);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* Desktop scale: the layout reads best at the density of a 90% browser
 * zoom, so the root size drops to 90% from 1024px up. Sizes in rem (type,
 * spacing, layout widths) follow it. */
@media (min-width: 1024px) {
	html {
		font-size: 90%;
	}

	/* Header band above the hero (~5.4rem) + credentials ribbon (~3.2rem). */
	.wp-site-blocks .tec-hero {
		--tec-hero-offset: 8.6rem;
		padding-block: 3rem;
	}
}

body {
	-webkit-font-smoothing: antialiased;
	text-wrap: pretty;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

:focus-visible {
	outline: 3px solid var(--wp--preset--color--amarillo-oscuro);
	outline-offset: 2px;
}

/* ---------------------------------------------------------------------------
 * 1. Shared primitives
 * ------------------------------------------------------------------------- */
.tec-mono {
	font-family: var(--tec-mono);
	font-size: var(--wp--preset--font-size--etiqueta);
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--amarillo-tinta);
	margin: 0;
}

.tec-mono::before {
	content: "// ";
}

.tec-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	background: var(--wp--preset--color--amarillo-suave);
	color: var(--wp--preset--color--amarillo-tinta);
	font-size: 0.74rem;
	font-weight: 600;
	padding: 0.4rem 0.9rem;
	border-radius: 999px;
	margin: 0;
}

.tec-chip::before {
	content: "";
	width: 0.38rem;
	height: 0.38rem;
	border-radius: 50%;
	background: var(--wp--preset--color--amarillo);
}

.tec-boton,
.wp-block-button__link,
.wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 46px;
	padding: 0.7rem 1.3rem;
	border-radius: 12px;
	font-family: var(--wp--preset--font-family--public-sans);
	font-weight: 600;
	font-size: 0.9rem;
	line-height: 1.2;
	text-decoration: none;
	border: 1px solid transparent;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
	transition: transform 180ms ease, background-color 180ms ease;
}

.tec-boton:hover,
.wp-block-button__link:hover {
	background: var(--wp--preset--color--amarillo-oscuro);
	color: var(--wp--preset--color--tinta);
	transform: translateY(-2px);
}

.tec-boton--blanco,
.is-style-outline .wp-block-button__link {
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
	border-color: var(--wp--preset--color--linea);
}

.tec-boton--blanco:hover,
.is-style-outline .wp-block-button__link:hover {
	background: var(--wp--preset--color--fondo-alt);
	color: var(--wp--preset--color--tinta);
}

.tec-boton--sm {
	min-height: 38px;
	padding: 0.45rem 0.9rem;
	font-size: 0.8rem;
	border-radius: 10px;
}

.tec-boton-verde .wp-block-button__link {
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
	min-height: 38px;
	padding: 0.45rem 0.9rem;
	font-size: 0.8rem;
	border-radius: 10px;
}

.tec-boton-verde .wp-block-button__link:hover {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

/* Secondary header link (Campus Virtual): same size as Aula Virtual, outlined. */
.tec-boton-campus .wp-block-button__link,
.tec-boton-campus.is-style-outline > .wp-block-button__link {
	min-height: 38px;
	padding: 0.45rem 0.9rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 10px;
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
	font-size: 0.8rem;
}

.tec-boton-campus .wp-block-button__link:hover,
.tec-boton-campus.is-style-outline > .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--amarillo);
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-centro {
	text-align: center;
	margin-top: 2.5rem;
}

.tec-icono {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--wp--preset--color--amarillo-suave);
	display: grid;
	place-items: center;
	flex: none;
}

.tec-icono--amarillo {
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: var(--wp--preset--color--amarillo);
}

.tec-icono svg {
	width: 24px;
	height: 24px;
	stroke: var(--wp--preset--color--amarillo-tinta);
	fill: none;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.tec-icono--amarillo svg {
	width: 20px;
	height: 20px;
	stroke: var(--wp--preset--color--tinta);
}

/* Section scaffold */
.tec-seccion {
	padding-block: 5.5rem;
}

.tec-seccion--sin-arriba {
	padding-top: 0;
}

.tec-seccion--alt {
	background: var(--wp--preset--color--fondo-alt);
}

.tec-seccion-cabecera {
	text-align: center;
	max-width: 720px;
	margin: 0 auto 3rem;
}

.wp-block-group .tec-seccion-cabecera h2,
.tec-seccion-cabecera h2 {
	font-family: var(--tec-display);
	font-size: var(--wp--preset--font-size--titulo-2);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.03em;
	margin: 1rem 0 0.8rem;
}

.tec-seccion-cabecera > p:last-child,
.tec-seccion-cabecera + * {
	font-size: var(--wp--preset--font-size--cuerpo);
}

.tec-seccion-cabecera h2 b,
.tec-servicios h2 b {
	color: var(--wp--preset--color--amarillo-oscuro);
	font-weight: 800;
}

.tec-seccion-cabecera > p:last-child {
	color: var(--wp--preset--color--tinta-suave);
	margin: 0;
}

/* ---------------------------------------------------------------------------
 * 2. Header — floating pill
 * ------------------------------------------------------------------------- */
/* The sticky box is the header template part: .tec-identidad sits inside two
 * header wrappers of its own height, so sticking it there never engages. */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 40;
}

/* Logged-in editors: stay below the WordPress admin bar (fixed above 600 px). */
.admin-bar .wp-site-blocks > header.wp-block-template-part {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .wp-site-blocks > header.wp-block-template-part {
		top: 46px;
	}
}

@media (max-width: 600px) {
	.admin-bar .wp-site-blocks > header.wp-block-template-part {
		top: 0;
	}
}

.tec-identidad {
	position: relative;
	padding-block: 0.875rem 0;
	margin-bottom: -4.75rem;
}

.tec-identidad > .alignwide {
	position: relative;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 999px;
	box-shadow: var(--tec-sombra);
	min-height: 3.75rem;
	padding: 0 0.6rem 0 1rem;
	gap: 0.75rem;
}

/* Blur lives on a pseudo-element: backdrop-filter on the container would
   become the containing block of the core nav's fixed overlay. */
.tec-identidad > .alignwide::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	border-radius: inherit;
	background: rgba(255, 255, 255, 0.88);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.tec-marca {
	gap: 0.6rem;
}

.tec-escudo {
	margin: 0;
}

.tec-titulo-sitio {
	font-family: var(--tec-display);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1;
	margin: 0;
}

.tec-titulo-sitio a {
	text-decoration: none;
	display: inline-block;
	max-width: 15ch;
	line-height: 1.05;
}

.tec-identidad > .alignwide {
	flex-wrap: nowrap;
}

.tec-identidad .wp-block-navigation {
	flex: 1;
	justify-content: center;
	flex-wrap: nowrap;
}

.tec-subtitulo {
	font-size: 0.6rem;
	color: var(--wp--preset--color--gris);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin: 0;
	line-height: 1;
}

.tec-identidad .wp-block-navigation {
	font-size: 0.84rem;
	font-weight: 600;
	gap: 0.1rem;
}

.tec-identidad .wp-block-navigation-item__content {
	padding: 0.5rem 0.7rem;
	border-radius: 999px;
	color: var(--wp--preset--color--tinta-suave);
	text-decoration: none;
}

.tec-identidad .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--tinta);
	background: var(--wp--preset--color--fondo-alt);
}

.tec-identidad .current-menu-item > .wp-block-navigation-item__content,
.tec-identidad .wp-block-navigation-item__content[aria-current="page"] {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

/* Tight seam between the floating header and the page: the global block
 * gap (~22px) left a white band above the hero. */
.wp-site-blocks > main {
	margin-block-start: 0.6rem;
}

/* Section marker: the group that holds the current page ("Nosotros" on
 * "Presentación"), and a soft tint for the current page inside the
 * dropdown. */
.tec-identidad .wp-block-navigation-submenu:has(.current-menu-item) > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-identidad .wp-block-navigation__submenu-container .current-menu-item > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--amarillo-suave);
	font-weight: 600;
}

.tec-identidad .wp-block-navigation__submenu-container {
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 14px;
	box-shadow: var(--tec-sombra);
	padding: 0.4rem;
	min-width: 240px;
}

.tec-identidad .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	border-radius: 8px;
	padding: 0.5rem 0.7rem;
	font-weight: 500;
}

.tec-nav-cta {
	margin: 0;
	flex-shrink: 0;
	gap: 0.4rem;
}

/* Phones: only Aula Virtual fits next to the menu button, so Campus Virtual
 * moves into the menu (.tec-nav-movil) and stays in the footer. */
.tec-identidad .tec-nav-movil,
.tec-identidad .wp-block-navigation .wp-block-navigation-item.tec-nav-movil {
	display: none;
}

@media (max-width: 639.98px) {
	.tec-nav-cta .tec-boton-campus {
		display: none;
	}

	.tec-identidad .tec-nav-movil,
	.tec-identidad .wp-block-navigation .wp-block-navigation-item.tec-nav-movil {
		display: flex;
	}
}

.tec-nav-cta .wp-block-button__link {
	white-space: nowrap;
}

/* Flattened groups: a urlless submenu renders an inert caption whose list
 * is shown statically inside the parent panel. Selectors carry the
 * .wp-block-navigation .has-child weight so they beat core's hidden-submenu
 * rule (0,3,0), which used to hide the grouped items. */
.tec-identidad .wp-block-navigation .tec-nav-grupo > .wp-block-navigation-item__content {
	pointer-events: none;
	color: var(--wp--preset--color--gris);
	font-family: var(--tec-mono);
	font-size: 0.64rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 0.7rem 0.7rem 0.3rem;
	background: none;
}

.tec-identidad .wp-block-navigation .tec-nav-grupo > .wp-block-navigation__submenu-icon {
	display: none;
}

.tec-identidad .wp-block-navigation .has-child.tec-nav-grupo > .wp-block-navigation__submenu-container {
	position: static;
	display: block;
	visibility: visible;
	opacity: 1;
	width: auto;
	height: auto;
	min-width: 0;
	overflow: visible;
	border: 0;
	box-shadow: none;
	padding: 0;
	transform: none;
	background: transparent;
}

.tec-identidad .tec-nav-grupo {
	display: block;
}

/* Estudiantes: wide panel with one column per group. */
.tec-identidad .wp-block-navigation .has-child.tec-nav-mega > .wp-block-navigation__submenu-container {
	display: grid;
	grid-template-columns: repeat(3, minmax(12.5rem, 1fr));
	column-gap: 0.4rem;
	left: 50%;
	transform: translateX(-50%);
	padding: 0.5rem;
}

.tec-identidad .tec-nav-mega .tec-nav-grupo + .tec-nav-grupo {
	border-left: 1px dashed var(--wp--preset--color--linea);
	padding-left: 0.4rem;
}

/* ---------------------------------------------------------------------------
 * 3. Hero
 * ------------------------------------------------------------------------- */
.tec-hero {
	position: relative;
	/* Fill the first screen but leave the credentials ribbon visible
	 * below it: --tec-hero-offset is the header band above the hero plus
	 * the ribbon height. */
	min-height: calc(100svh - var(--tec-hero-offset, 0px));
	display: grid;
	align-items: center;
	overflow: hidden;
	padding: 8rem 0 5rem;
}

.tec-hero-fondo {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.tec-hero-fondo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
}

/* Background carousel: six photos crossfade behind the veil, pure CSS.
 * The first slide starts visible so a frozen carousel (reduced motion)
 * still shows one photo. 6 slides x 6s = 36s loop. */
.tec-hero-fondo img:first-child {
	opacity: 1;
}

@media (prefers-reduced-motion: no-preference) {
	.tec-hero-fondo img {
		animation: tec-carrusel 36s linear infinite;
	}

	.tec-hero-fondo img:nth-child(1) { animation-delay: 0s; }
	.tec-hero-fondo img:nth-child(2) { animation-delay: 6s; }
	.tec-hero-fondo img:nth-child(3) { animation-delay: 12s; }
	.tec-hero-fondo img:nth-child(4) { animation-delay: 18s; }
	.tec-hero-fondo img:nth-child(5) { animation-delay: 24s; }
	.tec-hero-fondo img:nth-child(6) { animation-delay: 30s; }

	.tec-hero-toma { animation: tec-carrusel 36s linear infinite; }
	.tec-hero-toma:nth-of-type(1) { animation-delay: 0s; }
	.tec-hero-toma:nth-of-type(2) { animation-delay: 6s; }
	.tec-hero-toma:nth-of-type(3) { animation-delay: 12s; }
	.tec-hero-toma:nth-of-type(4) { animation-delay: 18s; }
	.tec-hero-toma:nth-of-type(5) { animation-delay: 24s; }
	.tec-hero-toma:nth-of-type(6) { animation-delay: 30s; }

	@keyframes tec-carrusel {
		0%     { opacity: 0; }
		3.5%   { opacity: 1; }
		16.66% { opacity: 1; }
		20.2%  { opacity: 0; }
		100%   { opacity: 0; }
	}
}

.tec-hero-velo {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 0.86) 38%, rgba(255, 255, 255, 0.5) 62%, rgba(255, 255, 255, 0.22) 100%);
}

/* Slide captions, synced with the carousel. */
.tec-hero-toma {
	position: absolute;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 2;
	background: var(--wp--preset--color--tinta);
	color: var(--wp--preset--color--blanco);
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.1em;
	padding: 0.5rem 0.875rem;
	border-left: 3px solid var(--wp--preset--color--amarillo);
	opacity: 0;
}

.tec-hero-toma:nth-of-type(1) {
	opacity: 1;
}

.tec-hero-grilla {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(31, 90, 68, 0.07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(31, 90, 68, 0.07) 1px, transparent 1px);
	background-size: 64px 64px;
	mask-image: linear-gradient(to bottom, #000 60%, transparent);
	-webkit-mask-image: linear-gradient(to bottom, #000 60%, transparent);
}

.tec-hero-grid {
	position: relative;
	z-index: 1;
	width: min(100% - 3rem, var(--wp--style--global--wide-size));
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: 4rem;
	align-items: center;
}

.tec-coords {
	display: inline-flex;
	gap: 0.9rem;
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	color: var(--wp--preset--color--tinta-suave);
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	padding: 0.4rem 0.8rem;
	border-radius: 8px;
	margin: 0 0 1rem;
}

.tec-coords b {
	color: var(--wp--preset--color--verde);
	font-weight: 500;
}

.tec-hero-titulo {
	font-size: var(--wp--preset--font-size--display);
	font-weight: 800;
	margin: 1.2rem 0 1rem;
	max-width: 14ch;
}

.tec-hero-titulo b {
	color: var(--wp--preset--color--amarillo-oscuro);
	font-weight: 800;
}

.tec-hero-bajada {
	font-size: var(--wp--preset--font-size--destacado);
	color: var(--wp--preset--color--tinta-suave);
	max-width: 46ch;
	margin: 0 0 2rem;
}

.tec-hero-botones {
	gap: 0.75rem;
}

/* Work-order card */
.tec-orden {
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	box-shadow: var(--tec-sombra);
	overflow: hidden;
	font-size: 0.84rem;
}

.tec-orden-cabecera {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	padding: 1.2rem 1.4rem;
	border-bottom: 1px solid var(--wp--preset--color--linea);
	background: var(--wp--preset--color--fondo-alt);
}

.tec-orden-cabecera small {
	display: block;
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	color: var(--wp--preset--color--gris);
	text-transform: uppercase;
}

.tec-orden-cabecera b {
	font-family: var(--tec-mono);
	font-weight: 500;
}

.tec-orden-lista {
	list-style: none;
	margin: 0;
	padding: 0.6rem 1.4rem;
}

.tec-orden-lista li {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	padding: 0.7rem 0;
	border-bottom: 1px dashed var(--wp--preset--color--linea);
}

.tec-orden-lista li:last-child {
	border-bottom: 0;
}

.tec-orden-lista a {
	flex: 1;
	text-decoration: none;
	font-weight: 600;
}

.tec-orden-lista a:hover {
	color: var(--wp--preset--color--verde);
}

.tec-orden-lista a small {
	display: block;
	font-family: var(--tec-mono);
	font-size: 0.6rem;
	font-weight: 400;
	color: var(--wp--preset--color--gris);
	letter-spacing: 0.05em;
}

.tec-check {
	flex: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	font-size: 0.75rem;
	font-weight: 700;
	background: var(--wp--preset--color--verde-suave);
	color: var(--wp--preset--color--verde);
}

.tec-check--now {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-check--next {
	background: var(--wp--preset--color--fondo-alt);
	color: var(--wp--preset--color--gris);
	border: 1px dashed var(--wp--preset--color--linea);
}

.tec-orden-num {
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	color: var(--wp--preset--color--gris);
}

.tec-orden-pie {
	margin: 0;
	padding: 0.8rem 1.4rem;
	border-top: 1px solid var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	color: var(--wp--preset--color--gris);
	letter-spacing: 0.04em;
}

/* Credentials ribbon */
.tec-cinta {
	border-block: 1px solid var(--wp--preset--color--linea);
	background: var(--wp--preset--color--blanco);
}

.tec-cinta-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding: 1rem 1.5rem;
	display: flex;
	gap: 2.2rem;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-cinta-inner span::before {
	content: "✓ ";
	color: var(--wp--preset--color--verde);
}

.tec-cinta-inner b {
	font-weight: 500;
	color: var(--wp--preset--color--gris);
	letter-spacing: 0.1em;
}

/* ---------------------------------------------------------------------------
 * 4. Process steps
 * ------------------------------------------------------------------------- */
.tec-pasos {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.4rem;
}

.tec-paso {
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	padding: 1.6rem;
	box-shadow: var(--tec-sombra);
}

.tec-paso-num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--wp--preset--color--amarillo);
	display: grid;
	place-items: center;
	font-family: var(--tec-mono);
	font-size: 0.72rem;
	font-weight: 500;
	margin-bottom: 1rem;
}

.tec-paso h3,
.tec-tarjeta-cuerpo h3,
.tec-acceso strong {
	font-family: var(--tec-display);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.02em;
}

.tec-paso h3 {
	font-size: 1.05rem;
	margin: 0 0 0.4rem;
}

.tec-paso p {
	color: var(--wp--preset--color--tinta-suave);
	font-size: 0.88rem;
	margin: 0;
}

/* ---------------------------------------------------------------------------
 * 5. Photo cards (formation + news)
 * ------------------------------------------------------------------------- */
.tec-tarjetas,
.tec-query .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.4rem;
}

.tec-tarjeta {
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	overflow: hidden;
	box-shadow: var(--tec-sombra);
	display: flex;
	flex-direction: column;
	transition: transform 200ms ease;
}

.tec-tarjeta:hover {
	transform: translateY(-4px);
}

.tec-tarjeta-foto {
	position: relative;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--wp--preset--color--fondo-alt);
}

.tec-tarjeta-foto img,
.tec-tarjeta-foto .wp-block-post-featured-image,
.tec-tarjeta-foto .wp-block-post-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin: 0;
}

.tec-etiqueta,
.tec-etiqueta a {
	position: absolute;
	top: 0.8rem;
	left: 0.8rem;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
	font-size: 0.68rem;
	font-weight: 600;
	padding: 0.3rem 0.7rem;
	border-radius: 999px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none;
}

.tec-etiqueta.wp-block-post-terms {
	position: absolute;
	inset: 0.8rem auto auto 0.8rem;
	background: none;
	padding: 0;
}

.tec-etiqueta.wp-block-post-terms a {
	position: static;
}

.tec-etiqueta.wp-block-post-terms .wp-block-post-terms__separator {
	display: none;
}

.tec-tarjeta-cuerpo {
	padding: 1.3rem 1.4rem 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.8rem;
	flex: 1;
}

.tec-tarjeta-cuerpo h3,
.tec-tarjeta-cuerpo .wp-block-post-title {
	font-size: 1.15rem;
	margin: 0;
}

.tec-tarjeta-cuerpo h3 a,
.tec-tarjeta-cuerpo .wp-block-post-title a {
	text-decoration: none;
}

.tec-tarjeta-cuerpo h3 a:hover,
.tec-tarjeta-cuerpo .wp-block-post-title a:hover {
	color: var(--wp--preset--color--verde);
}

.tec-tarjeta-cuerpo p,
.tec-tarjeta-cuerpo .wp-block-post-excerpt__excerpt {
	color: var(--wp--preset--color--tinta-suave);
	font-size: 0.9rem;
	margin: 0;
}

.tec-tarjeta-cuerpo .wp-block-post-excerpt__more-text {
	display: none;
}

.tec-meta {
	display: flex;
	gap: 1rem;
	font-size: 0.78rem;
	color: var(--wp--preset--color--gris);
	padding-top: 0.6rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
	margin-top: auto;
}

.tec-meta b,
.tec-meta time {
	color: var(--wp--preset--color--tinta);
	font-weight: 600;
}

.tec-meta p {
	margin: 0;
	color: var(--wp--preset--color--gris);
	font-size: 0.78rem;
}

.tec-acciones {
	display: flex;
	gap: 0.6rem;
}

.tec-query .wp-block-read-more {
	align-self: flex-start;
}

/* ---------------------------------------------------------------------------
 * 6. Figures
 * ------------------------------------------------------------------------- */
.tec-cifras {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.4rem;
}

.tec-cifra {
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	padding: 2rem 1.5rem;
	text-align: center;
	box-shadow: var(--tec-sombra);
}

.tec-cifra .tec-icono {
	margin: 0 auto 1rem;
}

.tec-cifra strong {
	display: block;
	font-family: var(--tec-display);
	font-size: 2.4rem;
	letter-spacing: -0.04em;
	color: var(--wp--preset--color--verde);
	line-height: 1;
}

.tec-cifra > span {
	display: block;
	color: var(--wp--preset--color--tinta-suave);
	font-size: 0.9rem;
	margin-top: 0.4rem;
}

.tec-cifra small {
	color: var(--wp--preset--color--gris);
	font-size: 0.68rem;
}

/* ---------------------------------------------------------------------------
 * 7. Quick access split + notice
 * ------------------------------------------------------------------------- */
.tec-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3rem;
	align-items: center;
}

.tec-lista-accesos {
	display: grid;
	gap: 1rem;
}

.tec-acceso {
	display: flex;
	gap: 1rem;
	padding: 1.2rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 16px;
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
	text-decoration: none;
	transition: transform 180ms ease;
}

.tec-acceso:hover {
	transform: translateX(4px);
}

.tec-acceso strong {
	display: block;
	font-family: var(--tec-display);
	font-size: 1rem;
	margin-bottom: 0.2rem;
}

.tec-acceso small {
	font-size: 0.86rem;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-split-foto {
	margin: 0;
	border-radius: 28px;
	overflow: hidden;
	box-shadow: var(--tec-sombra);
	aspect-ratio: 4 / 4.6;
}

.tec-split-foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tec-aviso {
	display: flex;
	gap: 0.9rem;
	align-items: flex-start;
	background: var(--wp--preset--color--amarillo-suave);
	border: 1px solid #f1dd9a;
	border-radius: 14px;
	padding: 1.1rem 1.3rem;
	font-size: 0.88rem;
	color: var(--wp--preset--color--amarillo-tinta);
	margin-top: 2.5rem;
}

.tec-aviso i {
	flex: none;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
	display: grid;
	place-items: center;
	font-style: normal;
	font-weight: 700;
	font-size: 0.75rem;
}

.tec-aviso p {
	margin: 0;
}

/* ---------------------------------------------------------------------------
 * 8. FAQ (native details)
 * ------------------------------------------------------------------------- */
.tec-faq {
	max-width: 820px;
	margin: 0 auto;
	display: grid;
	gap: 0.6rem;
}

.tec-faq details {
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 14px;
	padding: 0 1.2rem;
}

.tec-faq summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem 0;
	font-weight: 600;
	font-size: 0.95rem;
}

.tec-faq summary::-webkit-details-marker {
	display: none;
}

.tec-faq summary::after {
	content: "+";
	font-family: var(--tec-mono);
	color: var(--wp--preset--color--gris);
}

.tec-faq details[open] summary::after {
	content: "–";
}

.tec-faq p {
	padding: 0 0 1rem;
	margin: 0;
	color: var(--wp--preset--color--tinta-suave);
	font-size: 0.9rem;
}

/* ---------------------------------------------------------------------------
 * 9. Services block
 * ------------------------------------------------------------------------- */
.tec-servicios {
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
	border-radius: 28px;
	padding: 3.5rem;
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 3rem;
	align-items: center;
}

.wp-block-group .tec-servicios h2,
.tec-servicios h2 {
	font-family: var(--tec-display);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.03em;
	font-size: var(--wp--preset--font-size--titulo-2);
	margin: 0;
	color: var(--wp--preset--color--blanco);
}

.tec-servicios h2 b {
	color: var(--wp--preset--color--amarillo);
}

.tec-servicios p {
	color: #cfe0d6;
	margin: 0.8rem 0 1.5rem;
}

.tec-servicios-lista {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.7rem;
}

.tec-servicios-lista a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0.9rem 1.1rem;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.08);
	color: var(--wp--preset--color--blanco);
	font-weight: 600;
	font-size: 0.9rem;
	text-decoration: none;
	transition: background-color 180ms ease, color 180ms ease;
}

.tec-servicios-lista a:hover {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

/* ---------------------------------------------------------------------------
 * 10. Footer
 * ------------------------------------------------------------------------- */
.tec-pie {
	background: var(--wp--preset--color--tinta);
	color: #c9cdc9;
	padding-block: 4rem 2rem;
	margin-top: 2rem;
}

.tec-pie-grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: 3rem;
	margin-bottom: 3rem;
}

.tec-pie-marca {
	font-family: var(--tec-display);
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--wp--preset--color--blanco);
	margin: 0 0 0.6rem;
}

.tec-pie-descripcion {
	font-size: 0.9rem;
	max-width: 34ch;
	margin: 0;
}

.tec-pie-titulo {
	font-size: 0.74rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--amarillo);
	margin: 0 0 0.8rem;
	font-weight: 600;
}

.tec-pie ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.tec-pie li a {
	display: block;
	padding: 0.25rem 0;
	font-size: 0.9rem;
	color: #c9cdc9;
	text-decoration: none;
}

.tec-pie li a:hover {
	color: var(--wp--preset--color--blanco);
}

.tec-pie-legal {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 0.75rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--gris);
}

/* ---------------------------------------------------------------------------
 * 11. Inner pages
 * ------------------------------------------------------------------------- */
.tec-interior-cabecera {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: 4.5rem 0 3.5rem;
	background: var(--wp--preset--color--fondo-alt);
	border-bottom: 1px solid var(--wp--preset--color--linea);
	text-align: center;
}

/* Survey grid, same texture as the home hero: a major 64px grid plus a
 * faint 16px subgrid, fading out toward the bottom and the center so the
 * title stays clean. */
.tec-interior-cabecera::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image:
		linear-gradient(rgba(31, 90, 68, 0.16) 1px, transparent 1px),
		linear-gradient(90deg, rgba(31, 90, 68, 0.16) 1px, transparent 1px),
		linear-gradient(rgba(31, 90, 68, 0.06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(31, 90, 68, 0.06) 1px, transparent 1px);
	background-size: 64px 64px, 64px 64px, 16px 16px, 16px 16px;
	background-position: center top;
	mask-image: radial-gradient(ellipse 80% 140% at 50% 0%, #000 45%, transparent 95%);
	-webkit-mask-image: radial-gradient(ellipse 80% 140% at 50% 0%, #000 45%, transparent 95%);
}

/* Yellow survey stake on the bottom edge, under the title. */
.tec-interior-cabecera::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -1px;
	width: 72px;
	height: 4px;
	transform: translateX(-50%);
	background: var(--wp--preset--color--amarillo);
	border-radius: 2px 2px 0 0;
}

.tec-interior-cabecera .wp-block-post-title,
.tec-interior-cabecera h1 {
	font-size: var(--wp--preset--font-size--titulo-1);
	max-width: 22ch;
	margin: 0.8rem auto 0;
}

/* The section label reads as a chip, like the home hero badge. */
.tec-interior-cabecera .tec-mono {
	padding: 0.35rem 0.8rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 999px;
	background: var(--wp--preset--color--blanco);
}

.tec-interior-cabecera .tec-mono {
	display: inline-block;
}

.tec-interior-contenido {
	padding-block: 3.5rem 5rem;
}

.tec-interior-contenido h2 {
	font-size: 1.6rem;
	margin-top: 2.5rem;
}

.tec-interior-contenido a {
	color: var(--wp--preset--color--verde);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.tec-interior-contenido .wp-block-post-date {
	font-family: var(--tec-mono);
	font-size: 0.72rem;
	color: var(--wp--preset--color--gris);
}

.tec-archivo .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.4rem;
}

.tec-archivo .wp-block-query-pagination {
	margin-top: 2.5rem;
	justify-content: center;
	font-weight: 600;
}

.tec-404 {
	text-align: center;
	padding-block: 10rem 6rem;
}

.tec-404 h1 {
	font-size: var(--wp--preset--font-size--display);
}

.tec-404 .tec-codigo {
	font-family: var(--tec-mono);
	color: var(--wp--preset--color--amarillo-tinta);
	letter-spacing: 0.1em;
}

/* ---------------------------------------------------------------------------
 * 12. Responsive
 * ------------------------------------------------------------------------- */
@media (max-width: 1023.98px) {
	.tec-hero-grid,
	.tec-split,
	.tec-servicios {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.tec-hero {
		padding-top: 7rem;
	}

	.tec-tarjetas,
	.tec-query .wp-block-post-template,
	.tec-archivo .wp-block-post-template {
		grid-template-columns: 1fr 1fr;
	}

	.tec-pasos {
		grid-template-columns: 1fr;
	}

	.tec-pie-grid {
		grid-template-columns: 1fr 1fr;
	}

}

@media (max-width: 639.98px) {
	.tec-identidad {
		padding-top: 0.5rem;
		margin-bottom: -4rem;
	}

	.tec-identidad > .alignwide {
		padding-inline: 0.75rem 0.5rem;
		min-height: 54px;
	}

	.tec-subtitulo,
	.tec-nav-cta {
		display: none;
	}

	.tec-hero {
		padding: 6rem 0 3rem;
		min-height: 0;
	}

	.tec-hero-titulo {
		max-width: none;
	}

	.tec-hero-velo {
		background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.86) 55%, rgba(255, 255, 255, 0.55) 100%);
	}

	.tec-hero-toma {
		display: none;
	}

	.tec-orden-cabecera {
		grid-template-columns: 1fr;
		gap: 0.6rem;
	}

	.tec-seccion {
		padding-block: 4rem;
	}

	.tec-seccion--sin-arriba {
		padding-top: 0;
	}

	.tec-tarjetas,
	.tec-query .wp-block-post-template,
	.tec-archivo .wp-block-post-template,
	.tec-cifras,
	.tec-servicios-lista,
	.tec-pie-grid {
		grid-template-columns: 1fr;
	}

	.tec-cifras {
		grid-template-columns: 1fr 1fr;
	}

	.tec-servicios {
		padding: 2rem 1.5rem;
	}

	.tec-split-foto {
		aspect-ratio: 4 / 3;
	}

	.tec-cinta-inner {
		gap: 0.75rem 1.4rem;
	}

	.tec-interior-cabecera {
		padding-top: 3.5rem;
	}
}

/* Core nav is set to always-overlay; show it inline from 1200px up (nine
 * top items plus the Aula Virtual button need that width). */
@media (min-width: 1200px) {
	.tec-identidad .wp-block-navigation__responsive-container-open {
		display: none;
	}

	.tec-identidad .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: flex;
		position: static;
		width: auto;
		background: transparent;
	}

	.tec-identidad .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-container-close {
		display: none;
	}
}

/* Desktop: the pill holds brand + nine items + two buttons (Campus Virtual,
 * Aula Virtual), so it may grow past the content wide size, and items
 * tighten until there is room. */
@media (min-width: 1200px) {
	.tec-identidad.is-layout-constrained > .alignwide {
		max-width: min(86rem, calc(100% - 2rem));
	}
}

@media (min-width: 1200px) and (max-width: 1399.98px) {
	.tec-identidad .wp-block-navigation-item__content {
		padding-inline: 0.45rem;
	}

	.tec-nav-cta .wp-block-button__link,
	.tec-boton-campus.is-style-outline > .wp-block-button__link {
		padding-inline: 0.65rem;
	}
}

@media (max-width: 1199.98px) {
	.tec-identidad .wp-block-navigation {
		flex: none;
	}

	.tec-identidad .wp-block-navigation__responsive-container-open {
		display: flex;
	}
}

@media (max-width: 1023.98px) {
	.tec-split-foto {
		aspect-ratio: 16 / 9;
		max-height: 420px;
	}
}

/* Overlay: the Estudiantes panel collapses back to one column. */
.tec-identidad .wp-block-navigation .is-menu-open .has-child.tec-nav-mega > .wp-block-navigation__submenu-container {
	display: block;
	transform: none;
	padding: 0 0 0.5rem;
}

.tec-identidad .is-menu-open .tec-nav-mega .tec-nav-grupo + .tec-nav-grupo {
	border-left: 0;
	padding-left: 0;
}

.tec-identidad .wp-block-navigation .is-menu-open .tec-nav-grupo > .wp-block-navigation-item__content {
	padding: 0.8rem 0.5rem 0.2rem 1.1rem;
	font-family: var(--tec-mono);
	font-size: 0.64rem;
	font-weight: 500;
}

/* Mobile overlay menu from core navigation. */
.wp-block-navigation__responsive-container.is-menu-open {
	padding: 4.5rem 1.5rem 2rem;
	background: var(--wp--preset--color--blanco) !important;
	color: var(--wp--preset--color--tinta) !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	gap: 0.25rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: 0;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid var(--wp--preset--color--linea);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon {
	margin-left: auto;
	margin-right: 0.5rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block;
	padding: 0.85rem 0.5rem;
	font-family: var(--tec-display);
	font-size: 1.05rem;
	font-weight: 700;
	background: transparent;
	border-radius: 0;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	position: static;
	box-shadow: none;
	border: 0;
	padding: 0 0 0.5rem !important;
	min-width: 0;
	width: 100%;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item {
	border: 0;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--public-sans);
	font-weight: 500;
	font-size: 0.95rem;
	padding: 0.45rem 0.5rem 0.45rem 1.1rem !important;
	color: var(--wp--preset--color--tinta-suave);
}

.wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--amarillo-suave);
	color: var(--wp--preset--color--tinta);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	top: 1rem;
	right: 1rem;
	color: var(--wp--preset--color--tinta);
}

/* ---------------------------------------------------------------------------
 * 13. Motion gate
 * ------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition: none !important;
		animation: none !important;
	}
}

/* Search form */
.tec-busqueda {
	max-width: 520px;
	margin: 1.5rem auto 0;
}

.tec-busqueda .wp-block-search__input {
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 12px;
	padding: 0.7rem 1rem;
	font-family: inherit;
}

.tec-busqueda .wp-block-search__button {
	background: var(--wp--preset--color--amarillo);
	border: 0;
	border-radius: 12px;
	color: var(--wp--preset--color--tinta);
}

/* ---------------------------------------------------------------------------
 * 13b. Editable pages (core blocks stored in the page). Declared before the
 *      component sections so their own margins keep winning, as they did
 *      when these pages were raw-HTML patterns inside post-content.
 * ------------------------------------------------------------------------- */
.tec-editable > * {
	margin-block: 1.5rem 0;
}

.tec-editable > :first-child {
	margin-block-start: 0;
}

.tec-editable :where(.wp-block-group) > * {
	margin-block: 0;
}

/* ---------------------------------------------------------------------------
 * 14. Inner-page content patterns
 * ------------------------------------------------------------------------- */
.tec-pasos--2 {
	grid-template-columns: 1fr 1fr;
}

.tec-autoridades-cab {
	text-align: center;
	margin-bottom: 2.5rem;
}

.wp-block-group .tec-autoridades-cab h2 {
	font-family: var(--tec-display);
	font-size: var(--wp--preset--font-size--titulo-2);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.1;
	margin: 0.5rem 0 0.8rem;
}

.tec-autoridades-cab p:last-child {
	max-width: 56ch;
	margin-inline: auto;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-autoridades {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.2rem;
}

.tec-autoridad {
	display: flex;
	flex-direction: column;
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	overflow: hidden;
	box-shadow: var(--tec-sombra);
	transition: transform 200ms ease, border-color 200ms ease;
}

.tec-autoridad:hover {
	transform: translateY(-4px);
	border-color: var(--wp--preset--color--amarillo);
}

/* Photo slot: survey grid + monogram until the official portrait exists. */
.tec-autoridad-foto {
	position: relative;
	display: grid;
	place-items: center;
	aspect-ratio: 5 / 4;
	background-color: var(--wp--preset--color--fondo-alt);
	background-image:
		linear-gradient(rgba(31, 90, 68, 0.1) 1px, transparent 1px),
		linear-gradient(90deg, rgba(31, 90, 68, 0.1) 1px, transparent 1px);
	background-size: 24px 24px;
	background-position: center;
	border-bottom: 1px solid var(--wp--preset--color--linea);
}

.tec-autoridad-monograma {
	display: grid;
	place-items: center;
	width: 92px;
	height: 92px;
	border-radius: 50%;
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
	font-family: var(--tec-display);
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	box-shadow: 0 0 0 6px var(--wp--preset--color--blanco), 0 0 0 7px var(--wp--preset--color--linea);
}

.tec-autoridad--destacada .tec-autoridad-monograma {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-autoridad-chip {
	position: absolute;
	top: 0.9rem;
	left: 0.9rem;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-autoridad--destacada .tec-autoridad-chip {
	background: var(--wp--preset--color--amarillo);
	border-color: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-autoridad-cuerpo {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 1.1rem 1.2rem 1.2rem;
}

.wp-block-group .tec-autoridad h3 {
	font-family: var(--tec-display);
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	margin: 0 0 0.3rem;
}

.tec-autoridad p {
	font-size: 0.88rem;
	line-height: 1.5;
	color: var(--wp--preset--color--tinta-suave);
	margin: 0 0 0.9rem;
}

.tec-autoridad small,
.tec-editable .tec-autoridad p.tec-autoridad-nota {
	margin-top: auto;
	padding-top: 0.7rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.6rem;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--gris);
}

@media (max-width: 1023.98px) {
	.tec-autoridades {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 539.98px) {
	.tec-autoridades {
		grid-template-columns: 1fr;
	}

	/* Horizontal card: monogram column + text. */
	.tec-autoridad {
		flex-direction: row;
	}

	.tec-autoridad-foto {
		flex: 0 0 104px;
		aspect-ratio: auto;
		border-bottom: 0;
		border-right: 1px solid var(--wp--preset--color--linea);
	}

	.tec-autoridad-monograma {
		width: 60px;
		height: 60px;
		font-size: 1.3rem;
		box-shadow: 0 0 0 4px var(--wp--preset--color--blanco), 0 0 0 5px var(--wp--preset--color--linea);
	}

	/* The role line already names the scope; drop the chip here. */
	.tec-autoridad-chip {
		display: none;
	}
}

.tec-contacto {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 2rem;
	align-items: start;
}

.tec-datos {
	margin: 0 0 1.5rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	overflow: hidden;
}

.tec-datos > div {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 1rem;
	padding: 0.9rem 1.2rem;
	border-bottom: 1px dashed var(--wp--preset--color--linea);
	font-size: 0.9rem;
}

.tec-datos > div:last-child {
	border-bottom: 0;
}

.tec-datos dt {
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
	padding-top: 0.2rem;
}

.tec-datos dd {
	margin: 0;
}

.tec-contacto .tec-aviso {
	margin-top: 0;
}

.tec-contacto-red {
	font-size: 0.86rem;
	color: var(--wp--preset--color--tinta-suave);
	margin-top: 1.2rem;
}

.tec-contacto-mapa {
	aspect-ratio: 4 / 3;
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--fondo-alt);
	border: 1px dashed var(--wp--preset--color--linea);
	display: grid;
	place-items: center;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	color: var(--wp--preset--color--gris);
	letter-spacing: 0.06em;
}

.tec-orden--ficha {
	max-width: 560px;
	margin: 2rem 0;
}

.tec-interior-contenido .tec-tarjeta-cuerpo a,
.tec-archivo .tec-tarjeta-cuerpo a {
	color: inherit;
	text-decoration: none;
}

.tec-interior-cabecera .wp-block-query-title {
	font-size: var(--wp--preset--font-size--titulo-1);
	margin: 0.8rem auto 0;
}

.tec-archivo {
	width: min(100% - 3rem, var(--wp--style--global--wide-size));
	margin-inline: auto;
}

@media (max-width: 767.98px) {
	.tec-pasos--2,
	.tec-contacto {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 15. Historia · Misión y visión
 * ------------------------------------------------------------------------- */
.tec-prueba {
	max-width: var(--wp--style--global--wide-size);
	margin: 0 auto 2.5rem;
	padding: 0.6rem 1rem;
	border: 1px dashed var(--wp--preset--color--amarillo-oscuro);
	border-radius: 10px;
	background: var(--wp--preset--color--amarillo-suave);
	color: var(--wp--preset--color--amarillo-tinta);
	font-size: 0.82rem;
	text-align: center;
}

.wp-block-group .tec-historia-intro h2,
.wp-block-group .tec-mv h2,
.wp-block-group .tec-valores h2 {
	font-family: var(--tec-display);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

/* Intro: lead text + figures card */
.tec-historia-intro {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: 3rem;
	align-items: center;
	margin-bottom: 4rem;
}

.wp-block-group .tec-historia-intro h2 {
	font-size: var(--wp--preset--font-size--titulo-2);
	margin: 0.6rem 0 1rem;
}

.tec-historia-intro p:last-child {
	color: var(--wp--preset--color--tinta-suave);
	font-size: 1.05rem;
	line-height: 1.7;
}

.tec-historia-cifras {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 0;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	overflow: hidden;
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
}

.tec-historia-cifras > div {
	padding: 1.4rem 1.5rem;
	border-right: 1px dashed var(--wp--preset--color--linea);
	border-bottom: 1px dashed var(--wp--preset--color--linea);
}

.tec-historia-cifras > div:nth-child(2n) {
	border-right: 0;
}

.tec-historia-cifras > div:nth-child(n + 3) {
	border-bottom: 0;
}

.tec-historia-cifras dt,
.tec-historia-cifras p.tec-dt {
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-historia-cifras dd,
.tec-historia-cifras p.tec-dd {
	margin: 0.3rem 0 0;
	font-family: var(--tec-display);
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: -0.03em;
	white-space: nowrap;
	color: var(--wp--preset--color--verde);
}

/* Timeline: year · node on a survey line · card */
.tec-linea {
	list-style: none;
	margin: 0 auto 4rem;
	padding: 0;
	position: relative;
}

.tec-linea::before {
	content: "";
	position: absolute;
	top: 0.5rem;
	bottom: 0.5rem;
	left: 7.5rem;
	border-left: 2px dashed var(--wp--preset--color--linea);
}

.tec-hito {
	display: grid;
	grid-template-columns: 6rem 3rem 1fr;
	align-items: start;
	gap: 0;
	padding-bottom: 1.6rem;
}

.tec-hito-anio {
	font-family: var(--tec-mono);
	font-size: 1.15rem;
	font-weight: 500;
	color: var(--wp--preset--color--verde);
	text-align: right;
	padding-top: 1.15rem;
}

.tec-hito-anio--texto {
	font-size: 0.78rem;
	padding-top: 1.35rem;
}

.tec-hito-nodo,
.tec-hito::before {
	position: relative;
	justify-self: center;
	width: 18px;
	height: 18px;
	margin-top: 1.25rem;
	border-radius: 50%;
	background: var(--wp--preset--color--amarillo);
	box-shadow: 0 0 0 5px var(--wp--preset--color--blanco), 0 0 0 6px var(--wp--preset--color--amarillo-oscuro);
}

.tec-hito-tarjeta {
	padding: 1.1rem 1.4rem 1.2rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 16px;
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
	transition: transform 180ms ease, border-color 180ms ease;
}

.tec-hito-tarjeta:hover {
	transform: translateX(4px);
	border-color: var(--wp--preset--color--amarillo);
}

.tec-hito-tarjeta small,
.tec-hito-tarjeta p.tec-small {
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.1em;
	color: var(--wp--preset--color--gris);
}

.wp-block-group .tec-hito-tarjeta h3 {
	font-family: var(--tec-display);
	font-size: 1.2rem;
	font-weight: 700;
	margin: 0.25rem 0 0.35rem;
}

.tec-hito-tarjeta p {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.6;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-hito:last-child .tec-hito-nodo,
.tec-hito:last-child::before {
	background: var(--wp--preset--color--verde);
	box-shadow: 0 0 0 5px var(--wp--preset--color--blanco), 0 0 0 6px var(--wp--preset--color--verde);
}

/* Closing quote */
.tec-cita {
	margin: 0 auto;
	padding: 2.2rem 2.5rem;
	border: 0;
	border-left: 4px solid var(--wp--preset--color--amarillo);
	border-radius: 0 var(--tec-radio) var(--tec-radio) 0;
	background: var(--wp--preset--color--fondo-alt);
}

.tec-cita p {
	margin: 0;
	font-family: var(--tec-display);
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.3;
}

.tec-cita cite {
	display: block;
	margin-top: 0.8rem;
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	font-style: normal;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

/* Mission / vision cards */
.tec-mv {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
	margin-bottom: 4.5rem;
}

.tec-mv-tarjeta {
	position: relative;
	overflow: hidden;
	padding: 2.4rem 2.2rem 2.6rem;
	border-radius: var(--tec-radio);
	isolation: isolate;
}

/* Survey grid on the cards, same texture as the headers. */
.tec-mv-tarjeta::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image:
		linear-gradient(currentColor 1px, transparent 1px),
		linear-gradient(90deg, currentColor 1px, transparent 1px);
	background-size: 32px 32px;
	opacity: 0.07;
	mask-image: linear-gradient(135deg, transparent 30%, #000);
	-webkit-mask-image: linear-gradient(135deg, transparent 30%, #000);
}

.tec-mv-tarjeta--mision {
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
}

.tec-mv-tarjeta--vision {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-mv-icono {
	display: inline-grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	margin-bottom: 1.4rem;
}

.tec-mv-icono svg {
	width: 28px;
	height: 28px;
}

.tec-mv-tarjeta--mision .tec-mv-icono {
	background: rgba(255, 255, 255, 0.12);
	color: var(--wp--preset--color--amarillo);
}

.tec-mv-tarjeta--vision .tec-mv-icono {
	background: rgba(17, 20, 18, 0.08);
	color: var(--wp--preset--color--tinta);
}

.tec-mv-tarjeta .tec-mono {
	margin: 0;
	color: inherit;
	opacity: 0.75;
}

.wp-block-group .tec-mv h2 {
	font-size: 1.75rem;
	color: inherit;
	margin: 0.5rem 0 1rem;
}

.tec-mv-tarjeta p:last-child {
	margin: 0;
	font-size: 1rem;
	line-height: 1.7;
	opacity: 0.92;
}

/* Values */
.tec-valores header {
	text-align: center;
	margin-bottom: 2rem;
}

.wp-block-group .tec-valores h2 {
	font-size: var(--wp--preset--font-size--titulo-2);
	margin: 0.5rem 0 0;
}

.tec-valores-grilla {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.2rem;
}

.tec-valor {
	position: relative;
	padding: 1.6rem 1.5rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 16px;
	background: var(--wp--preset--color--blanco);
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

.tec-valor:hover {
	border-color: var(--wp--preset--color--amarillo);
	box-shadow: var(--tec-sombra);
}

.tec-valor-icono {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-valor-icono svg {
	width: 22px;
	height: 22px;
}

.tec-valor small {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	color: var(--wp--preset--color--gris);
}

.wp-block-group .tec-valor h3 {
	font-family: var(--tec-display);
	font-size: 1.1rem;
	font-weight: 700;
	margin: 1rem 0 0.35rem;
}

.tec-valor p {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.6;
	color: var(--wp--preset--color--tinta-suave);
}

@media (max-width: 1023.98px) {
	.tec-historia-intro,
	.tec-mv {
		grid-template-columns: 1fr;
	}

	.tec-valores-grilla {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 639.98px) {
	.tec-valores-grilla {
		grid-template-columns: 1fr;
	}

	.tec-linea::before {
		left: 0.55rem;
	}

	.tec-hito {
		grid-template-columns: 1.2rem 1fr;
		column-gap: 1rem;
	}

	.tec-hito-anio {
		grid-column: 2;
		grid-row: 1;
		text-align: left;
		padding-top: 0;
		font-size: 1rem;
	}

	.tec-hito-nodo,
.tec-hito::before {
		grid-column: 1;
		grid-row: 1 / span 2;
		margin-top: 0.2rem;
	}

	.tec-hito-tarjeta {
		grid-column: 2;
		margin-top: 0.4rem;
	}

	.tec-cita p {
		font-size: 1.25rem;
	}
}

/* ---------------------------------------------------------------------------
 * 16. Plana docente
 * ------------------------------------------------------------------------- */
.tec-docentes-cifras {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 0 0 1.6rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
	overflow: hidden;
}

.tec-docentes-cifras > div {
	display: flex;
	flex-direction: column-reverse;
	padding: 1.2rem 1.4rem;
	border-right: 1px dashed var(--wp--preset--color--linea);
}

.tec-docentes-cifras > div:last-child {
	border-right: 0;
}

.tec-docentes-cifras dd {
	margin: 0;
	font-family: var(--tec-display);
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--wp--preset--color--verde);
}

.tec-docentes-cifras dt {
	margin-top: 0.35rem;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

/* Area jump chips */
.tec-docentes-areas {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: center;
	margin-bottom: 2.8rem;
}

.tec-docentes-areas a {
	padding: 0.45rem 0.9rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 999px;
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.tec-docentes-areas a:hover {
	background: var(--wp--preset--color--amarillo-suave);
	border-color: var(--wp--preset--color--amarillo);
}

/* Area block */
.tec-docentes-area {
	margin-bottom: 2.6rem;
	scroll-margin-top: 6rem;
}

.tec-docentes-area > header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	padding-bottom: 0.8rem;
	margin-bottom: 1rem;
	border-bottom: 2px solid var(--wp--preset--color--tinta);
}

.wp-block-group .tec-docentes-area h3 {
	display: flex;
	align-items: baseline;
	gap: 0.7rem;
	margin: 0;
	font-family: var(--tec-display);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.tec-docentes-area h3 span {
	font-family: var(--tec-mono);
	font-size: 0.8rem;
	font-weight: 500;
	color: var(--wp--preset--color--amarillo-oscuro);
}

.tec-docentes-area > header small,
.tec-docentes-area > header p.tec-small {
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-docentes-grilla {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.9rem;
}

.tec-docente {
	display: flex;
	gap: 0.9rem;
	align-items: center;
	padding: 0.9rem 1rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 14px;
	background: var(--wp--preset--color--blanco);
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.tec-docente:hover {
	border-color: var(--wp--preset--color--amarillo);
	box-shadow: var(--tec-sombra);
}

.tec-docente-monograma {
	flex: 0 0 48px;
	display: grid;
	place-items: center;
	height: 48px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--fondo-alt);
	background-image:
		linear-gradient(rgba(31, 90, 68, 0.12) 1px, transparent 1px),
		linear-gradient(90deg, rgba(31, 90, 68, 0.12) 1px, transparent 1px);
	background-size: 8px 8px;
	border: 1px solid var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.85rem;
	font-weight: 500;
	color: var(--wp--preset--color--verde);
}

.wp-block-group .tec-docente h4 {
	margin: 0 0 0.2rem;
	font-family: var(--tec-display);
	font-size: 0.98rem;
	font-weight: 700;
}

.tec-docente p {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.45;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-docente-meta {
	font-family: var(--tec-mono);
	font-size: 0.68rem !important;
	color: var(--wp--preset--color--gris) !important;
	margin-top: 0.15rem !important;
}

.tec-docente-chip {
	display: inline-block;
	padding: 0.05rem 0.4rem;
	border-radius: 6px;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	font-weight: 500;
	background: var(--wp--preset--color--fondo-alt);
	color: var(--wp--preset--color--tinta);
}

.tec-docente-chip--dr {
	background: var(--wp--preset--color--amarillo);
}

.tec-docente-chip--mg {
	background: var(--wp--preset--color--verde-suave);
	color: var(--wp--preset--color--verde);
}

.tec-docentes-nota {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
	font-size: 0.8rem;
	color: var(--wp--preset--color--gris);
}

@media (max-width: 1023.98px) {
	.tec-docentes-grilla {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 639.98px) {
	.tec-docentes-cifras {
		grid-template-columns: 1fr 1fr;
	}

	.tec-docentes-cifras > div:nth-child(2) {
		border-right: 0;
	}

	.tec-docentes-cifras > div:nth-child(-n + 2) {
		border-bottom: 1px dashed var(--wp--preset--color--linea);
	}

	.tec-docentes-grilla {
		grid-template-columns: 1fr;
	}

	.tec-docentes-area > header {
		flex-direction: column;
		gap: 0.2rem;
	}
}

/* ---------------------------------------------------------------------------
 * 17. Hero: photo first (front page)
 * ------------------------------------------------------------------------- */
.tec-hero--foto {
	color: var(--wp--preset--color--blanco);
	padding-bottom: 8.5rem;
}

/* No white veil: a dark scrim only behind the copy and the filmstrip. */
.tec-hero--foto .tec-hero-velo {
	background:
		linear-gradient(90deg, rgba(10, 14, 12, 0.78) 0%, rgba(10, 14, 12, 0.5) 38%, rgba(10, 14, 12, 0.08) 70%, rgba(10, 14, 12, 0) 100%),
		linear-gradient(0deg, rgba(10, 14, 12, 0.7) 0%, rgba(10, 14, 12, 0) 32%);
}

.tec-hero--foto .tec-hero-grilla {
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.07) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.07) 1px, transparent 1px);
}

.tec-hero--foto .tec-hero-grid {
	grid-template-columns: minmax(0, 1fr);
	/* Static so the filmstrip anchors to the hero's bottom edge; the copy
	 * keeps its own stacking context above the photos. */
	position: static;
}

.tec-hero--foto .tec-hero-texto {
	position: relative;
	z-index: 1;
}

.tec-hero--foto .tec-hero-texto {
	max-width: 40rem;
}

.tec-hero--foto .tec-hero-titulo {
	color: var(--wp--preset--color--blanco);
	text-shadow: 0 2px 24px rgba(0, 0, 0, 0.25);
}

.tec-hero--foto .tec-hero-titulo b {
	color: var(--wp--preset--color--amarillo);
}

.tec-hero--foto .tec-hero-bajada {
	color: rgba(255, 255, 255, 0.86);
}

.tec-hero--foto .tec-coords {
	background: rgba(10, 14, 12, 0.45);
	border-color: rgba(255, 255, 255, 0.2);
	color: rgba(255, 255, 255, 0.75);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.tec-hero--foto .tec-coords b {
	color: var(--wp--preset--color--amarillo);
}

.tec-hero--foto .tec-chip {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-hero--foto .tec-chip::before {
	background: var(--wp--preset--color--tinta);
}

.tec-hero--foto .is-style-outline .wp-block-button__link {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--blanco);
}

/* Filmstrip: one thumbnail per slide with a progress bar synced to the
 * carousel cycle (6 × 6s). */
.tec-tira {
	position: absolute;
	left: 50%;
	bottom: 1.6rem;
	z-index: 2;
	width: min(100% - 3rem, var(--wp--style--global--wide-size));
	transform: translateX(-50%);
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 0.7rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.tec-tira li {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.45rem;
	border-radius: 12px;
	background: rgba(10, 14, 12, 0.42);
	border: 1px solid rgba(255, 255, 255, 0.14);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	overflow: hidden;
}

.tec-tira img {
	flex: 0 0 56px;
	width: 56px;
	height: 38px;
	object-fit: cover;
	border-radius: 7px;
}

.tec-tira span {
	min-width: 0;
	font-family: var(--tec-mono);
	font-size: 0.58rem;
	letter-spacing: 0.06em;
	line-height: 1.35;
	color: rgba(255, 255, 255, 0.8);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tec-tira b {
	display: block;
	font-size: 0.72rem;
	color: var(--wp--preset--color--amarillo);
}

.tec-tira i {
	position: absolute;
	left: 0;
	bottom: 0;
	height: 3px;
	width: 100%;
	background: var(--wp--preset--color--amarillo);
	transform: scaleX(0);
	transform-origin: left;
}

/* Static state (reduced motion): first item marked as current. */
.tec-tira li:first-child i {
	transform: scaleX(1);
}

@media (prefers-reduced-motion: no-preference) {
	/* Slow push-in on each photo while it is on screen. */
	.tec-hero--foto .tec-hero-fondo img {
		animation: tec-carrusel 36s linear infinite, tec-acercar 36s linear infinite;
	}

	.tec-hero--foto .tec-hero-fondo img:nth-child(2) { animation-delay: 6s, 6s; }
	.tec-hero--foto .tec-hero-fondo img:nth-child(3) { animation-delay: 12s, 12s; }
	.tec-hero--foto .tec-hero-fondo img:nth-child(4) { animation-delay: 18s, 18s; }
	.tec-hero--foto .tec-hero-fondo img:nth-child(5) { animation-delay: 24s, 24s; }
	.tec-hero--foto .tec-hero-fondo img:nth-child(6) { animation-delay: 30s, 30s; }

	@keyframes tec-acercar {
		0%     { transform: scale(1); }
		20.2%  { transform: scale(1.08); }
		100%   { transform: scale(1.08); }
	}

	.tec-tira li:first-child i {
		transform: scaleX(0);
	}

	.tec-tira i {
		animation: tec-progreso 36s linear infinite;
	}

	.tec-tira li {
		animation: tec-tira-activa 36s linear infinite;
	}

	.tec-tira li:nth-child(2) i, .tec-tira li:nth-child(2) { animation-delay: 6s; }
	.tec-tira li:nth-child(3) i, .tec-tira li:nth-child(3) { animation-delay: 12s; }
	.tec-tira li:nth-child(4) i, .tec-tira li:nth-child(4) { animation-delay: 18s; }
	.tec-tira li:nth-child(5) i, .tec-tira li:nth-child(5) { animation-delay: 24s; }
	.tec-tira li:nth-child(6) i, .tec-tira li:nth-child(6) { animation-delay: 30s; }

	@keyframes tec-progreso {
		0%      { transform: scaleX(0); }
		16.66%  { transform: scaleX(1); }
		16.67%  { transform: scaleX(0); }
		100%    { transform: scaleX(0); }
	}

	@keyframes tec-tira-activa {
		0%, 16.66% { background-color: rgba(10, 14, 12, 0.72); border-color: rgba(242, 183, 5, 0.7); }
		16.67%, 100% { background-color: rgba(10, 14, 12, 0.42); border-color: rgba(255, 255, 255, 0.14); }
	}
}

@media (max-width: 1023.98px) {
	/* Thumbnails only, one row. */
	.tec-tira {
		grid-template-columns: repeat(6, 1fr);
		gap: 0.4rem;
	}

	.tec-tira li {
		padding: 0.3rem;
	}

	.tec-tira img {
		flex-basis: 100%;
		width: 100%;
		height: 46px;
	}

	.tec-tira span {
		display: none;
	}

	/* Fit the first screen below the header so the filmstrip is visible. */
	.wp-site-blocks .tec-hero--foto {
		--tec-hero-offset: 5.5rem;
		padding-bottom: 7rem;
	}
}

@media (max-width: 639.98px) {
	.tec-hero--foto .tec-hero-velo {
		background: linear-gradient(180deg, rgba(10, 14, 12, 0.55) 0%, rgba(10, 14, 12, 0.75) 100%);
	}

	.tec-tira {
		gap: 0.35rem;
	}

	.tec-tira img {
		height: 34px;
	}

	.tec-hero--foto {
		padding-bottom: 6rem;
	}
}

/* ---------------------------------------------------------------------------
 * 18. Autoridades by level · Laboratorios
 * ------------------------------------------------------------------------- */
/* Fewer people → narrower centered grid instead of empty columns. */
.tec-autoridades--1 {
	grid-template-columns: minmax(0, 18rem);
	justify-content: center;
}

.tec-autoridades--2 {
	grid-template-columns: repeat(2, minmax(0, 18rem));
	justify-content: center;
}

.tec-autoridades--3 {
	grid-template-columns: repeat(3, minmax(0, 18rem));
	justify-content: center;
}

/* Opt-in block styles override the initial person-count class only on grids. */
.tec-autoridades.is-style-autoridades-2 {
	grid-template-columns: repeat(2, minmax(0, 18rem));
	justify-content: center;
}

.tec-autoridades.is-style-autoridades-3 {
	grid-template-columns: repeat(3, minmax(0, 18rem));
	justify-content: center;
}

.tec-autoridades-plana {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	max-width: 37rem;
	margin: 2.4rem auto 0;
}

.tec-autoridades-plana a {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	padding: 1rem 1.2rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 14px;
	background: var(--wp--preset--color--fondo-alt);
	color: var(--wp--preset--color--tinta);
	text-decoration: none;
	transition: border-color 160ms ease, background-color 160ms ease;
}

.tec-autoridades-plana a:hover {
	border-color: var(--wp--preset--color--amarillo);
	background: var(--wp--preset--color--amarillo-suave);
}

.tec-autoridades-plana small {
	grid-column: 1;
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-autoridades-plana b {
	grid-column: 1;
	font-family: var(--tec-display);
	font-size: 1.05rem;
}

.tec-autoridades-plana span {
	grid-column: 2;
	grid-row: 1 / span 2;
	font-size: 1.2rem;
}

/* Laboratorios */
.tec-labs {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
	gap: 1.2rem;
}

.tec-lab {
	display: flex;
	flex-direction: column;
	padding: 1.4rem 1.4rem 1.2rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
	transition: transform 200ms ease, border-color 200ms ease;
}

.tec-lab:hover {
	transform: translateY(-4px);
	border-color: var(--wp--preset--color--amarillo);
}

.tec-lab header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1rem;
}

.tec-lab-icono {
	display: inline-grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--amarillo);
}

.tec-lab-icono svg {
	width: 24px;
	height: 24px;
}

.tec-lab header small,
.tec-lab header p.tec-small {
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	letter-spacing: 0.08em;
	color: var(--wp--preset--color--gris);
}

.wp-block-group .tec-lab h3 {
	margin: 0 0 0.9rem;
	font-family: var(--tec-display);
	font-size: 1.12rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.25;
}

.tec-lab dl {
	margin: 0 0 1rem;
}

.tec-lab dt {
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
	margin-bottom: 0.25rem;
}

.tec-lab dd {
	margin: 0;
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.45;
}

.tec-lab-pie {
	margin: auto 0 0;
	padding-top: 0.75rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.6rem;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--gris);
}

@media (max-width: 1023.98px) {
	.tec-autoridades.is-style-autoridades-3,
	.tec-autoridades--3 {
		grid-template-columns: repeat(2, minmax(0, 18rem));
	}
}

@media (max-width: 539.98px) {
	.tec-autoridades.is-style-autoridades-2,
	.tec-autoridades.is-style-autoridades-3,
	.tec-autoridades--1,
	.tec-autoridades--2,
	.tec-autoridades--3 {
		grid-template-columns: 1fr;
	}

	.tec-autoridades-plana {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 19. Promociones
 * ------------------------------------------------------------------------- */
.tec-promos {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.2rem;
}

.tec-promo {
	margin: 0;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	overflow: hidden;
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
}

.tec-promo-foto {
	position: relative;
	aspect-ratio: 3 / 2;
	overflow: hidden;
}

.tec-promo-foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 400ms ease;
}

.tec-promo:hover .tec-promo-foto img {
	transform: scale(1.04);
}

.tec-promo-anio {
	position: absolute;
	left: 0.9rem;
	bottom: 0.9rem;
	padding: 0.3rem 0.7rem;
	border-radius: 8px;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
	font-family: var(--tec-mono);
	font-size: 0.85rem;
	font-weight: 500;
}

.tec-promo figcaption {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding: 1rem 1.2rem 1.1rem;
}

.tec-promo figcaption b {
	font-family: var(--tec-display);
	font-size: 1.05rem;
}

.tec-promo figcaption span {
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--gris);
}

@media (max-width: 1023.98px) {
	.tec-promos {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 539.98px) {
	.tec-promos {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 20. Transparencia (editable blocks: rows number themselves)
 * ------------------------------------------------------------------------- */
.tec-transp {
	counter-reset: tec-cat tec-doc;
}

.tec-transp .tec-docentes-areas {
	margin: 0 0 2.6rem;
}

.tec-transp-cuerpo {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 19rem;
	gap: 2.5rem;
	align-items: start;
}

.tec-transp .tec-transp-cuerpo > *,
.tec-transp .tec-transp-docs > *,
.tec-transp .tec-transp-cat > *,
.tec-transp .tec-doc > *,
.tec-transp .tec-doc-texto > *,
.tec-transp .tec-transp-aside > *,
.tec-transp .tec-transp-tarjeta > * {
	margin: 0;
}

.tec-transp-docs {
	display: grid;
	gap: 2.4rem;
}

/* Category: numbered heading + rows */
.tec-transp-cat {
	display: grid;
	gap: 0.6rem;
	scroll-margin-top: 6rem;
}

.tec-transp .tec-transp-cat h3 {
	display: flex;
	align-items: baseline;
	gap: 0.7rem;
	padding-bottom: 0.8rem;
	margin-bottom: 0.4rem;
	border-bottom: 2px solid var(--wp--preset--color--tinta);
	font-family: var(--tec-display);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.tec-transp .tec-transp-cat h3::before {
	counter-increment: tec-cat;
	content: counter(tec-cat, decimal-leading-zero);
	font-family: var(--tec-mono);
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--wp--preset--color--amarillo-oscuro);
}

/* Document row: file icon · title + meta · PDF button */
.tec-doc {
	counter-increment: tec-doc;
	display: grid;
	grid-template-columns: 2.6rem minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem;
	padding: 0.85rem 1rem;
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 14px;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.tec-doc:hover {
	border-color: var(--wp--preset--color--amarillo);
	box-shadow: var(--tec-sombra);
}

.tec-doc::before {
	content: "";
	width: 2.6rem;
	aspect-ratio: 1;
	border-radius: 10px;
	background: var(--wp--preset--color--verde-suave) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F5A44' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E") center / 1.25rem no-repeat;
}

.tec-transp .tec-doc-titulo {
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.35;
	color: var(--wp--preset--color--tinta);
}

.tec-transp .tec-doc-meta {
	margin-top: 0.2rem;
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--gris);
}

.tec-transp .tec-doc-meta::before {
	content: "DOC " counter(tec-doc, decimal-leading-zero) " · ";
	color: var(--wp--preset--color--amarillo-oscuro);
}

.tec-transp .tec-doc .wp-block-buttons {
	flex-wrap: nowrap;
}

.tec-transp .tec-doc-pdf .wp-block-button__link {
	padding: 0.5rem 0.95rem;
	border: 1px solid var(--wp--preset--color--verde);
	border-radius: 999px;
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
	font-size: 0.8rem;
	font-weight: 600;
	white-space: nowrap;
	transition: background-color 160ms ease, color 160ms ease;
}

.tec-transp .tec-doc-pdf .wp-block-button__link[href]::after {
	content: " ↓";
}

.tec-transp .tec-doc-pdf .wp-block-button__link[href]:hover {
	background: var(--wp--preset--color--amarillo);
	border-color: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

/* No link yet: the button reads as pending, not as an action */
.tec-transp .tec-doc-pdf .wp-block-button__link:not([href]) {
	border-style: dashed;
	border-color: var(--wp--preset--color--linea);
	background: var(--wp--preset--color--fondo-alt);
	color: var(--wp--preset--color--gris);
	cursor: default;
}

/* Aside: legal frame + request card */
.tec-transp-aside {
	display: grid;
	gap: 1rem;
	position: sticky;
	top: 6rem;
}

.tec-transp-tarjeta {
	display: grid;
	gap: 0.7rem;
	padding: 1.3rem 1.4rem;
	background: var(--wp--preset--color--blanco);
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	box-shadow: var(--tec-sombra);
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-transp .tec-transp-fecha {
	padding-top: 0.7rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-transp-tarjeta--verde {
	background: var(--wp--preset--color--verde);
	border-color: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
}

.tec-transp-tarjeta--verde .tec-mono {
	color: var(--wp--preset--color--amarillo);
}

.tec-transp .tec-transp-tarjeta--verde .wp-block-button__link {
	padding: 0.6rem 1.1rem;
	border-radius: 999px;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
	font-size: 0.85rem;
	font-weight: 600;
}

.tec-transp .tec-transp-tarjeta--verde .wp-block-button__link:hover {
	background: var(--wp--preset--color--blanco);
}

@media (max-width: 1023.98px) {
	.tec-transp-cuerpo {
		grid-template-columns: 1fr;
	}

	.tec-transp-aside {
		position: static;
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 639.98px) {
	.tec-transp-aside {
		grid-template-columns: 1fr;
	}

	.tec-doc {
		grid-template-columns: 2.2rem minmax(0, 1fr);
		gap: 0.6rem 0.8rem;
	}

	.tec-doc::before {
		width: 2.2rem;
	}

	.tec-transp .tec-doc .wp-block-buttons {
		grid-column: 2;
	}
}

/* ---------------------------------------------------------------------------
 * 21. Formación: plan de estudios · malla curricular (official plan data)
 * ------------------------------------------------------------------------- */
/* Area colour tokens shared by bar, legend, course rows and malla blocks */
.tec-area--g,
.is-style-area-g {
	--tec-area: var(--wp--preset--color--gris);
	--tec-area-suave: var(--wp--preset--color--fondo-alt);
}

.tec-area--e,
.is-style-area-e {
	--tec-area: var(--wp--preset--color--verde);
	--tec-area-suave: var(--wp--preset--color--verde-suave);
}

.tec-area--s,
.is-style-area-s {
	--tec-area: var(--wp--preset--color--amarillo-oscuro);
	--tec-area-suave: var(--wp--preset--color--amarillo-suave);
}

/* Credits by area: stacked bar + legend */
.tec-plan-areas {
	margin: 0 0 2rem;
	padding: 1.2rem 1.4rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
}

.tec-plan-barra {
	display: flex;
	gap: 3px;
	height: 2.1rem;
	border-radius: 10px;
	overflow: hidden;
}

.tec-plan-barra span {
	display: flex;
	align-items: center;
	padding-inline: 0.7rem;
	background: var(--tec-area);
	color: var(--wp--preset--color--blanco);
	font-family: var(--tec-mono);
	font-size: 0.72rem;
	font-weight: 500;
}

.tec-plan-barra .tec-area--s {
	color: var(--wp--preset--color--tinta);
	background: var(--wp--preset--color--amarillo);
}

.tec-plan-areas ul,
.tec-malla-leyenda {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem 1.8rem;
	margin: 0.9rem 0 0;
	padding: 0;
	list-style: none;
}

.tec-plan-areas li,
.tec-malla-leyenda li {
	display: flex;
	align-items: baseline;
	gap: 0.5rem;
	font-size: 0.88rem;
}

.tec-plan-areas li::before,
.tec-malla-leyenda li::before {
	content: "";
	flex: none;
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 3px;
	background: var(--tec-area);
	transform: translateY(1px);
}

.tec-plan-areas li span {
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	color: var(--wp--preset--color--gris);
}

.tec-plan-saltos a {
	min-width: 2.6rem;
	text-align: center;
	font-family: var(--tec-mono);
}

/* Cycle cards, two per row */
.tec-plan-ciclos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.2rem;
	align-items: start;
}

.tec-plan-ciclo {
	scroll-margin-top: 6rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
	overflow: hidden;
}

.tec-plan-ciclo header {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 0.9rem 1.2rem;
	border-bottom: 1px solid var(--wp--preset--color--linea);
	background: var(--wp--preset--color--fondo-alt);
}

.tec-plan-romano {
	display: grid;
	place-items: center;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 10px;
	background: var(--wp--preset--color--tinta);
	color: var(--wp--preset--color--amarillo);
	font-family: var(--tec-display);
	font-weight: 700;
	font-size: 0.95rem;
}

.wp-block-group .tec-plan-ciclo h3 {
	margin: 0;
	font-family: var(--tec-display);
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: -0.01em;
}

.tec-plan-ciclo header small {
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-plan-ciclo ol {
	margin: 0;
	padding: 0.4rem 0;
	list-style: none;
}

.tec-plan-ciclo li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.55rem 1.2rem 0.55rem 1.05rem;
	border-left: 4px solid var(--tec-area);
	margin-left: 0;
}

.tec-plan-ciclo li + li {
	border-top: 1px dashed var(--wp--preset--color--linea);
}

.tec-plan-ciclo li b {
	display: block;
	font-weight: 600;
	font-size: 0.93rem;
	line-height: 1.35;
}

.tec-plan-ciclo li small {
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	color: var(--wp--preset--color--gris);
}

.tec-plan-cr {
	flex: none;
	display: grid;
	place-items: center;
	width: 1.9rem;
	height: 1.9rem;
	border-radius: 50%;
	background: var(--tec-area-suave);
	color: var(--wp--preset--color--tinta);
	font-family: var(--tec-mono);
	font-size: 0.78rem;
	font-weight: 600;
}

.tec-docentes-nota a {
	color: var(--wp--preset--color--verde);
}

/* Malla: 10 columns; scrolls inside its own box below 1200px */
.tec-malla-leyenda {
	justify-content: center;
	margin: 0 0 1.4rem;
}

.tec-malla-pista {
	display: none;
	margin: 0 0 0.5rem;
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	color: var(--wp--preset--color--gris);
	text-align: right;
}

.tec-malla {
	overflow-x: auto;
	padding: 1rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background:
		linear-gradient(var(--wp--preset--color--linea) 1px, transparent 1px) 0 0 / 100% 24px,
		var(--wp--preset--color--blanco);
	scroll-snap-type: x proximity;
}

.tec-malla:focus-visible {
	outline: 2px solid var(--wp--preset--color--amarillo);
	outline-offset: 3px;
}

/* Wider than the content column so ten cycles fit on desktop */
.is-layout-constrained > .tec-malla.alignwide,
.tec-malla.alignwide {
	position: relative;
	left: 50%;
	width: min(88rem, calc(100vw - 4rem));
	max-width: none;
	transform: translateX(-50%);
}

.tec-malla-grilla {
	display: grid;
	grid-template-columns: repeat(10, minmax(7rem, 1fr));
	gap: 0.5rem;
}

.tec-malla-col {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	scroll-snap-align: start;
}

.wp-block-group .tec-malla-col h3 {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin: 0 0 0.2rem;
	padding: 0.45rem 0.6rem;
	border-radius: 8px;
	background: var(--wp--preset--color--tinta);
	color: var(--wp--preset--color--amarillo);
	font-family: var(--tec-display);
	font-size: 0.95rem;
	font-weight: 700;
}

.tec-malla-col h3 small {
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	font-weight: 500;
	color: var(--wp--preset--color--blanco);
}

.tec-malla-curso {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-height: 4.6rem;
	padding: 0.45rem 0.55rem 0.5rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-top: 3px solid var(--tec-area);
	border-radius: 8px;
	background: var(--tec-area-suave);
	font-size: 0.74rem;
	line-height: 1.3;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.tec-malla-curso:hover {
	border-color: var(--tec-area);
	box-shadow: var(--tec-sombra);
}

.tec-malla-curso small {
	display: flex;
	justify-content: space-between;
	font-family: var(--tec-mono);
	font-size: 0.6rem;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-malla-curso small b {
	font-weight: 600;
	color: var(--wp--preset--color--tinta);
}

.tec-malla-curso span {
	font-weight: 600;
	color: var(--wp--preset--color--tinta);
}

.tec-malla-pie {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1rem;
}

.tec-malla-pie p {
	margin: 0;
}

.tec-malla-pie .tec-docentes-nota {
	padding: 0;
	border: 0;
}

.tec-malla-pie .tec-boton {
	margin-left: 0.4rem;
}

@media (max-width: 1199.98px) {
	.tec-malla-pista {
		display: block;
	}
}

@media (max-width: 1023.98px) {
	.tec-plan-ciclos {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 639.98px) {
	.tec-plan-ciclo li {
		padding-inline: 0.85rem 0.9rem;
	}

	.tec-malla-pie .tec-boton {
		margin: 0.4rem 0.4rem 0 0;
	}
}

/* ---------------------------------------------------------------------------
 * 22. Formación: perfil profesional · campo laboral (school's own texts)
 * ------------------------------------------------------------------------- */
.tec-perfil-intro {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
	gap: 2.5rem;
	align-items: center;
	margin-bottom: 3rem;
}

.wp-block-group .tec-perfil-intro h2 {
	margin: 0.5rem 0 1rem;
	font-family: var(--tec-display);
	font-size: var(--wp--preset--font-size--titulo-2);
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.tec-perfil-lead {
	margin: 0 0 1.4rem;
	font-size: 1.05rem;
	line-height: 1.65;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-perfil-enlaces {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0;
}

/* Technical sheet card */
.tec-perfil-ficha {
	margin: 0;
	padding: 1.5rem 1.6rem;
	border-radius: var(--tec-radio);
	background:
		linear-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1px) 0 0 / 22px 22px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px) 0 0 / 22px 22px,
		var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
}

.tec-perfil-ficha > div {
	padding: 0.75rem 0;
}

.tec-perfil-ficha > div + div {
	border-top: 1px dashed rgba(255, 255, 255, 0.22);
}

.tec-perfil-ficha dt,
.tec-perfil-ficha p.tec-dt {
	font-family: var(--tec-mono);
	font-size: 0.64rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--amarillo);
}

.tec-perfil-ficha dd,
.tec-perfil-ficha p.tec-dd {
	margin: 0.2rem 0 0;
	font-weight: 600;
	line-height: 1.4;
}

/* Competency grids */
.tec-competencias {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.tec-competencias--genericas {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tec-competencia {
	scroll-margin-top: 6rem;
	padding: 1.2rem 1.3rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	box-shadow: var(--tec-sombra);
}

.tec-competencia:target {
	border-color: var(--wp--preset--color--amarillo);
	box-shadow: 0 0 0 3px var(--wp--preset--color--amarillo-suave);
}

.tec-competencia header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0.8rem;
	padding-bottom: 0;
	border-bottom: 0;
}

.tec-competencia header small,
.tec-competencia header p.tec-small {
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	background: var(--wp--preset--color--amarillo-suave);
	color: var(--wp--preset--color--amarillo-tinta);
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.06em;
}

.tec-competencias--genericas .tec-competencia {
	background: var(--wp--preset--color--fondo-alt);
	box-shadow: none;
}

.tec-competencias--genericas .tec-competencia header small,
.tec-competencias--genericas .tec-competencia header p.tec-small {
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta-suave);
}

.tec-competencia p {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--wp--preset--color--tinta-suave);
}

/* Campo laboral: fields of practice */
.tec-ambitos {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.2rem;
	margin-bottom: 3rem;
}

.tec-ambito > p {
	margin: 0 0 1rem;
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-ambito .tec-ambito-ce {
	display: flex;
	gap: 0.4rem;
	margin: auto 0 0;
	padding-top: 0.75rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
}

.tec-ambito-ce a {
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	background: var(--wp--preset--color--amarillo-suave);
	color: var(--wp--preset--color--amarillo-tinta);
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-decoration: none;
}

.tec-ambito-ce a:hover {
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

/* Occupational field: public sector */
.tec-sectores {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(0, 1fr);
	gap: 1.5rem;
	margin-bottom: 1.5rem;
	padding: 1.8rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--fondo-alt);
}

.wp-block-group .tec-sectores h3,
.wp-block-group .tec-campo-cta h3 {
	margin: 0.4rem 0 0.5rem;
	font-family: var(--tec-display);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.tec-sectores-texto p:last-child {
	margin: 0;
	font-size: 0.92rem;
	color: var(--wp--preset--color--tinta-suave);
}

.wp-block-group .tec-sectores h4 {
	margin: 0 0 0.6rem;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-sectores ul {
	display: grid;
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.tec-sectores li {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.6rem 0.8rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 10px;
	background: var(--wp--preset--color--blanco);
	font-size: 0.9rem;
	font-weight: 600;
}

.tec-sectores li::before {
	content: "";
	flex: none;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--wp--preset--color--verde);
}

/* CTA band */
.tec-campo-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.4rem 1.8rem;
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--tinta);
	color: var(--wp--preset--color--blanco);
}

.tec-campo-cta .tec-mono {
	color: var(--wp--preset--color--amarillo);
}

.wp-block-group .tec-campo-cta h3 {
	margin-bottom: 0;
}

.tec-campo-cta > p,
.tec-campo-cta > .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0;
}

@media (max-width: 1023.98px) {
	.tec-perfil-intro,
	.tec-sectores {
		grid-template-columns: 1fr;
	}

	.tec-competencias,
	.tec-ambitos,
	.tec-competencias--genericas {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 639.98px) {
	.tec-competencias,
	.tec-ambitos,
	.tec-competencias--genericas {
		grid-template-columns: 1fr;
	}

	.tec-sectores,
	.tec-campo-cta {
		padding: 1.3rem;
	}
}

/* ---------------------------------------------------------------------------
 * 23. Formación: sumillas (core Details blocks, editable)
 * ------------------------------------------------------------------------- */
.tec-sumillas .tec-sumillas-ciclo > * {
	margin-block: 0;
}

.tec-sumillas .tec-plan-saltos {
	margin: 0 0 2.4rem;
}

.tec-sumillas-ciclo {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.6rem 1rem;
	align-items: start;
	margin-bottom: 2.4rem;
	scroll-margin-top: 6rem;
}

.tec-sumillas .tec-sumillas-ciclo h3 {
	grid-column: 1 / -1;
	padding-bottom: 0.8rem;
	margin-bottom: 0.4rem;
	border-bottom: 2px solid var(--wp--preset--color--tinta);
	font-family: var(--tec-display);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.tec-sumilla {
	border: 1px solid var(--wp--preset--color--linea);
	border-left: 4px solid var(--tec-area);
	border-radius: 12px;
	background: var(--wp--preset--color--blanco);
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.tec-sumilla:hover,
.tec-sumilla[open] {
	box-shadow: var(--tec-sombra);
}

.tec-sumilla summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.8rem 1rem;
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1.35;
	cursor: pointer;
	list-style: none;
}

.tec-sumilla summary::-webkit-details-marker {
	display: none;
}

.tec-sumilla summary::after {
	content: "+";
	flex: none;
	display: grid;
	place-items: center;
	width: 1.6rem;
	height: 1.6rem;
	border-radius: 50%;
	background: var(--tec-area-suave);
	color: var(--wp--preset--color--tinta);
	font-family: var(--tec-mono);
	font-size: 0.95rem;
	transition: transform 200ms ease;
}

.tec-sumilla[open] summary::after {
	transform: rotate(45deg);
}

.tec-sumilla summary:focus-visible {
	outline: 2px solid var(--wp--preset--color--amarillo);
	outline-offset: 2px;
	border-radius: 10px;
}

.tec-sumilla > :not(summary) {
	margin: 0;
	padding: 0 1rem;
	font-size: 0.92rem;
	line-height: 1.6;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-sumilla > :last-child {
	padding-bottom: 1rem;
}

.tec-sumillas .tec-sumilla-meta {
	padding-top: 0.75rem;
	margin-bottom: 0.5rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	letter-spacing: 0.03em;
	color: var(--wp--preset--color--gris);
}

@media (max-width: 1023.98px) {
	.tec-sumillas-ciclo {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 24. Nosotros: presentación (entry page of the section)
 * ------------------------------------------------------------------------- */
.tec-pres-intro {
	align-items: stretch;
}

/* Director card */
.tec-pres-director {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 0;
	padding: 1.6rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background:
		linear-gradient(var(--wp--preset--color--linea) 1px, transparent 1px) 0 0 / 22px 22px,
		linear-gradient(90deg, var(--wp--preset--color--linea) 1px, transparent 1px) 0 0 / 22px 22px,
		var(--wp--preset--color--fondo-alt);
	box-shadow: var(--tec-sombra);
}

.tec-pres-monograma {
	display: grid;
	place-items: center;
	width: 4.5rem;
	height: 4.5rem;
	border: 4px solid var(--wp--preset--color--blanco);
	border-radius: 50%;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
	font-family: var(--tec-display);
	font-size: 1.5rem;
	font-weight: 700;
	box-shadow: var(--tec-sombra);
}

.tec-pres-director blockquote {
	margin: 0;
	padding: 0 0 0 1rem;
	border-left: 3px solid var(--wp--preset--color--amarillo);
}

.tec-pres-director blockquote p {
	margin: 0;
	font-size: 1.02rem;
	font-style: italic;
	line-height: 1.55;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-pres-director figcaption {
	display: grid;
	gap: 0.15rem;
	margin-top: auto;
	padding-top: 0.9rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
}

.tec-pres-director figcaption b {
	font-size: 1rem;
}

.tec-pres-director figcaption span {
	font-size: 0.85rem;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-pres-director > a {
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--wp--preset--color--verde);
	text-decoration: none;
}

.tec-pres-director > a:hover {
	text-decoration: underline;
}

/* Accreditation band */
.tec-pres-acred {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 1.4rem;
	margin: 0 0 2.6rem;
	padding: 1.4rem 1.6rem;
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
}

.tec-pres-sello {
	display: grid;
	place-items: center;
	width: 3.4rem;
	height: 3.4rem;
	border-radius: 14px;
	background: var(--wp--preset--color--amarillo);
	color: var(--wp--preset--color--tinta);
}

.tec-pres-sello svg {
	width: 1.8rem;
	height: 1.8rem;
}

.tec-pres-acred .tec-mono {
	color: var(--wp--preset--color--amarillo);
}

.wp-block-group .tec-pres-acred h3,
.wp-block-group .tec-pres-ficha h3,
.wp-block-group .tec-pres-mas h3 {
	margin: 0.35rem 0 0.4rem;
	font-family: var(--tec-display);
	font-size: 1.35rem;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.tec-pres-acred div > p:not(.tec-mono) {
	margin: 0 0 0.35rem;
	font-size: 0.92rem;
	color: rgba(255, 255, 255, 0.85);
}

.tec-pres-acred small {
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.7);
}

/* Technical sheet */
.tec-pres-ficha {
	margin: 0 0 2.6rem;
	scroll-margin-top: 6rem;
}

.tec-pres-ficha header,
.tec-pres-mas header {
	padding-bottom: 0.8rem;
	margin-bottom: 1rem;
	border-bottom: 2px solid var(--wp--preset--color--tinta);
}

.tec-pres-ficha dl {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	overflow: hidden;
}

.tec-pres-ficha dl > div {
	display: grid;
	grid-template-columns: 9rem minmax(0, 1fr);
	gap: 1rem;
	padding: 0.85rem 1.2rem;
	border-bottom: 1px dashed var(--wp--preset--color--linea);
}

.tec-pres-ficha dl > div:nth-child(odd) {
	border-right: 1px dashed var(--wp--preset--color--linea);
}

.tec-pres-ficha dl > div:nth-last-child(-n + 2) {
	border-bottom: 0;
}

.tec-pres-ficha dt {
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
	padding-top: 0.15rem;
}

.tec-pres-ficha dd {
	margin: 0;
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.4;
}

/* Section links */
.tec-pres-enlaces {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.tec-pres-enlace {
	display: grid;
	gap: 0.3rem;
	padding: 1.1rem 1.2rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
	text-decoration: none;
	transition: transform 200ms ease, border-color 200ms ease;
}

.tec-pres-enlace:hover {
	transform: translateY(-3px);
	border-color: var(--wp--preset--color--amarillo);
}

.tec-pres-enlace small {
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	color: var(--wp--preset--color--amarillo-oscuro);
}

.tec-pres-enlace b {
	font-family: var(--tec-display);
	font-size: 1.05rem;
}

.tec-pres-enlace b::after {
	content: " →";
	color: var(--wp--preset--color--verde);
}

.tec-pres-enlace span {
	font-size: 0.86rem;
	line-height: 1.45;
	color: var(--wp--preset--color--tinta-suave);
}

@media (max-width: 1023.98px) {
	.tec-pres-ficha dl {
		grid-template-columns: 1fr;
	}

	.tec-pres-ficha dl > div:nth-child(odd) {
		border-right: 0;
	}

	.tec-pres-ficha dl > div:nth-last-child(2) {
		border-bottom: 1px dashed var(--wp--preset--color--linea);
	}

	.tec-pres-enlaces {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 639.98px) {
	.tec-pres-acred {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.tec-pres-acred .tec-boton {
		justify-self: start;
	}

	.tec-pres-ficha dl > div {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}

	.tec-pres-enlaces {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 25. Nosotros: misión (official text) · objetivos educacionales
 * ------------------------------------------------------------------------- */
.tec-mv-tarjeta .tec-mv-texto {
	margin: 0.6rem 0 0;
	font-family: var(--tec-display);
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.45;
	opacity: 1;
}

.tec-mv-tarjeta--vision .tec-mv-texto + p {
	margin-top: 0.8rem;
	font-size: 0.9rem;
}

.tec-valores-grilla--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 639.98px) {
	.tec-mv-tarjeta .tec-mv-texto {
		font-size: 1.12rem;
	}

	.tec-valores-grilla--2 {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 26. Menu parents are labels: hover (or the chevron) opens the list, click
 *     goes nowhere (no href, rendered by core as a plain anchor).
 * ------------------------------------------------------------------------- */
.tec-identidad .wp-block-navigation-submenu > .wp-block-navigation-item__content:not([href]) {
	cursor: default;
}

/* ---------------------------------------------------------------------------
 * 27. Misión y visión as editable blocks (icons drawn by CSS so editing the
 *     text can never break them)
 * ------------------------------------------------------------------------- */
.tec-mv-pagina .tec-mv > *,
.tec-mv-pagina .tec-mv-tarjeta > *,
.tec-mv-pagina .tec-valores > *,
.tec-mv-pagina .tec-valores-cab > *,
.tec-mv-pagina .tec-valores-grilla > *,
.tec-mv-pagina .tec-valor > * {
	margin-block: 0;
}

.tec-mv-pagina .tec-mv-tarjeta > .tec-mono {
	padding-top: calc(52px + 1.4rem);
	background: no-repeat 0 0 / 52px 52px;
}

.tec-mv-pagina .tec-mv-tarjeta--mision > .tec-mono {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='52' viewBox='0 0 52 52'%3E%3Crect width='52' height='52' rx='14' fill='rgba(255,255,255,0.12)'/%3E%3Cg transform='translate(12 12) scale(1.1667)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15.5 8.5l-2 5-5 2 2-5z'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-mv-tarjeta--vision > .tec-mono {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='52' viewBox='0 0 52 52'%3E%3Crect width='52' height='52' rx='14' fill='rgba(17,20,18,0.08)'/%3E%3Cg transform='translate(12 12) scale(1.1667)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 17l5-6 4 4 3-3 6 5'/%3E%3Ccircle cx='17' cy='7' r='2.5'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-mv-tarjeta .tec-mv-texto {
	margin-top: 0.6rem;
}

.tec-mv-pagina .tec-mv-tarjeta--vision .tec-mv-texto + p {
	margin-top: 0.8rem;
}

.tec-valores-cab {
	text-align: center;
	margin-bottom: 2rem;
}

.tec-mv-pagina .tec-valores > .tec-valores-cab {
	margin-bottom: 2rem;
}

.tec-mv-pagina .tec-valores-cab h2 {
	margin-top: 0.5rem;
}

.tec-mv-pagina .tec-valor::before {
	content: "";
	display: block;
	width: 44px;
	height: 44px;
	background: no-repeat 0 0 / 44px 44px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l4 4 10-10'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor:nth-child(1)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 2v4M12 18v4M2 12h4M18 12h4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor:nth-child(2)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6l-5 9a2 2 0 0 0 1.7 3h10.6a2 2 0 0 0 1.7-3l-5-9V3'/%3E%3Cpath d='M7 15h10'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor:nth-child(3)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20a6 6 0 0 1 12 0'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M15.5 14.2A5 5 0 0 1 21 19'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor:nth-child(4)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor .tec-valor-codigo {
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	color: var(--wp--preset--color--gris);
}

.tec-mv-pagina .tec-valor h3 {
	margin: 1rem 0 0.35rem;
}

.tec-mv-pagina > .tec-docentes-nota {
	margin-top: 2rem;
}

/* ---------------------------------------------------------------------------
 * 28. Presentación: director photo and message from the Customizer
 * ------------------------------------------------------------------------- */
.tec-pres-foto {
	width: 4.5rem;
	height: 4.5rem;
	border: 4px solid var(--wp--preset--color--blanco);
	border-radius: 50%;
	object-fit: cover;
	box-shadow: var(--tec-sombra);
}

.tec-pres-director blockquote p + p {
	margin-top: 0.7rem;
}

/* ---------------------------------------------------------------------------
 * 29. Historia as editable blocks: the timeline node is drawn by CSS
 * ------------------------------------------------------------------------- */
.tec-hito::before {
	content: "";
	display: block;
}

@media (min-width: 640px) {
	.tec-editable .tec-hito::before {
		grid-column: 2;
		grid-row: 1;
	}

	.tec-editable .tec-hito-anio {
		grid-column: 1;
		grid-row: 1;
	}

	.tec-editable .tec-hito-tarjeta {
		grid-column: 3;
		grid-row: 1;
	}
}

/* "small" used to sit on a full line of the card text: keep that line box */
.tec-editable .tec-hito-tarjeta p.tec-small {
	line-height: 1.55rem;
}

/* The lead paragraph used to keep the browser's 1em margins */
.tec-editable .tec-historia-texto > p:last-child {
	margin-block: 1em;
}

/* ---------------------------------------------------------------------------
 * 30. Editable pages: shared pieces (section numbers, small buttons, card
 *     icons drawn by CSS so editing the text cannot break them)
 * ------------------------------------------------------------------------- */
.tec-editable {
	counter-reset: tec-grupo;
}

.tec-editable .tec-docentes-area > header h3::before {
	counter-increment: tec-grupo;
	content: counter(tec-grupo, decimal-leading-zero);
	font-family: var(--tec-mono);
	font-size: 0.8rem;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--wp--preset--color--amarillo-oscuro);
}

/* The bajada under a centred section title kept the browser's 1em margins */
.tec-editable .tec-autoridades-cab > p:last-child {
	margin-block: 1em;
}

/* Small buttons (old .tec-boton--sm); outline = old .tec-boton--blanco */
.tec-editable .tec-btn-sm {
	gap: 0.5rem;
}

.tec-editable .tec-btn-sm .wp-block-button .wp-block-button__link {
	min-height: 38px;
	padding: 0.45rem 0.9rem;
	border-radius: 10px;
	font-size: 0.8rem;
}

.tec-editable .tec-btn-sm .wp-block-button.is-style-outline > .wp-block-button__link {
	border: 1px solid var(--wp--preset--color--linea);
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
}

.tec-editable .tec-btn-sm .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--fondo-alt);
}

/* Card icons (46 px, green box, yellow stroke) */
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia-cab::before,
.tec-editable .tec-ambito > header::before {
	content: "";
	flex: none;
	width: 46px;
	height: 46px;
	background: no-repeat 0 0 / 46px 46px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l4 4 10-10'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia:nth-child(1) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia:nth-child(2) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m13 7 4-4 4 4-4 4zM3 17l4-4 4 4-4 4z'/%3E%3Cpath d='m9 11 4 4M14 18a4 4 0 0 0 4-4'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia:nth-child(3) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v6M7 21l5-12 5 12M9 16h6'/%3E%3Ccircle cx='12' cy='3' r='1'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia:nth-child(4) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M6 20V9l6-5 6 5v11'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia:nth-child(5) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3 4 21M16 3l4 18M12 5v2M12 11v2M12 17v2'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-competencias:not(.tec-competencias--genericas) .tec-competencia:nth-child(6) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 20 6-10 4 6 3-4 5 8z'/%3E%3Cpath d='M14 4l2 2-2 2'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-ambito:nth-child(1) > header::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v6M7 21l5-12 5 12M9 16h6'/%3E%3Ccircle cx='12' cy='3' r='1'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-ambito:nth-child(2) > header::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 10h8v11M11 10l10-3M14 21v-8h7'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-ambito:nth-child(3) > header::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l9 5-9 5-9-5z'/%3E%3Cpath d='M3 12l9 5 9-5M3 17l9 5 9-5'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-ambito:nth-child(4) > header::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3 4 21M16 3l4 18M12 5v2M12 11v2M12 17v2'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-ambito:nth-child(5) > header::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M6 20V9l6-5 6 5v11'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/g%3E%3C/svg%3E");
}
.tec-editable .tec-ambito:nth-child(6) > header::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/g%3E%3C/svg%3E");
}

/* 31. Editable authority portraits and teaching-staff access cards. */
.tec-editable .tec-autoridad-retrato {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
}
.tec-editable .tec-autoridad-retrato img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.tec-editable .tec-autoridad p.tec-autoridad-monograma {
	position: relative;
	margin: 0;
	font-size: 2rem;
	line-height: normal;
	color: var(--wp--preset--color--blanco);
}
.tec-editable .tec-autoridad--destacada p.tec-autoridad-monograma {
	color: var(--wp--preset--color--tinta);
}
.tec-autoridad-foto:has(.tec-autoridad-retrato img:not([src*="retrato-pendiente.svg"])) .tec-autoridad-monograma {
	display: none;
}
.tec-editable .tec-autoridad p.tec-autoridad-chip {
	margin: 0;
	font-size: 0.62rem;
	line-height: 1.55;
}
.tec-editable .tec-autoridad--destacada p.tec-autoridad-chip {
	color: var(--wp--preset--color--tinta);
}
.tec-editable .tec-autoridad p.tec-autoridad-nota {
	margin-bottom: 0;
	line-height: 1.55;
}
.tec-editable .tec-plana-acceso {
	position: relative;
	padding: 1rem 1.2rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 14px;
	background: var(--wp--preset--color--fondo-alt);
}
.tec-editable .tec-plana-acceso:has(a:hover) {
	border-color: var(--wp--preset--color--amarillo);
	background: var(--wp--preset--color--amarillo-suave);
}
.tec-editable .tec-plana-etiqueta {
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}
.tec-editable .tec-plana-link {
	padding-right: 1.4rem;
	font-family: var(--tec-display);
	font-size: 1.05rem;
	font-weight: 700;
}
.tec-editable .tec-plana-link a {
	display: inline;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}
.tec-editable .tec-plana-link a::before {
	content: "";
	position: absolute;
	inset: 0;
}
.tec-editable .tec-plana-acceso::after {
	content: "→";
	position: absolute;
	right: 1.2rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.2rem;
	pointer-events: none;
}
@media (max-width: 539.98px) {
	.tec-editable .tec-autoridad p.tec-autoridad-monograma { font-size: 1.3rem; }
}

/* 32. Opt-in column styles for inner-page card grids. */
.wp-block-group:is(
	.tec-autoridades, .tec-autoridades-plana, .tec-docentes-grilla,
	.tec-labs, .tec-promos, .tec-competencias, .tec-ambitos, .tec-mv,
	.tec-valores-grilla, .tec-pres-enlaces, .tec-plan-ciclos, .tec-sumillas-ciclo
).is-style-tarjetas-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.wp-block-group:is(
	.tec-autoridades, .tec-autoridades-plana, .tec-docentes-grilla,
	.tec-labs, .tec-promos, .tec-competencias, .tec-ambitos, .tec-mv,
	.tec-valores-grilla, .tec-pres-enlaces, .tec-plan-ciclos, .tec-sumillas-ciclo
).is-style-tarjetas-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1023.98px) {
	.wp-block-group:is(
		.tec-autoridades, .tec-autoridades-plana, .tec-docentes-grilla,
		.tec-labs, .tec-promos, .tec-competencias, .tec-ambitos, .tec-mv,
		.tec-valores-grilla, .tec-pres-enlaces, .tec-plan-ciclos, .tec-sumillas-ciclo
	).is-style-tarjetas-3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 639.98px) {
	.wp-block-group:is(
		.tec-autoridades, .tec-autoridades-plana, .tec-docentes-grilla,
		.tec-labs, .tec-promos, .tec-competencias, .tec-ambitos, .tec-mv,
		.tec-valores-grilla, .tec-pres-enlaces, .tec-plan-ciclos, .tec-sumillas-ciclo
	):is(.is-style-tarjetas-2, .is-style-tarjetas-3) {
		grid-template-columns: 1fr;
	}
}

/* 33. Editable staff and presentation: aliases for semantic core blocks. */
.tec-editable .tec-docentes-cifras p.tec-dd,
.tec-editable .tec-docentes-cifras .tec-cifra-valor {
	margin: 0;
	font-family: var(--tec-display);
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--wp--preset--color--verde);
}
.tec-editable .tec-docentes-cifras p.tec-dt {
	margin: 0.35rem 0 0;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}
.tec-plana-editable .tec-docente-cuerpo { min-width: 0; }
.tec-plana-editable .tec-docente-cuerpo p { margin-bottom: 0; }
.tec-plana-editable .tec-docente-avatar {
	width: 48px;
	min-width: 48px;
	height: 48px;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, 1fr);
	overflow: hidden;
}
.tec-plana-editable .tec-docente-avatar > * { grid-area: 1 / 1; }
.tec-plana-editable .tec-docente-avatar p.tec-persona-iniciales {
	margin: 0;
	font: inherit;
	color: inherit;
}
.tec-editable .tec-persona-retrato {
	width: 100%;
	height: 100%;
	min-width: 0;
	min-height: 0;
	margin: 0;
	border-radius: inherit;
	overflow: hidden;
}
.tec-editable .tec-persona-retrato img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}
.tec-editable :is(.tec-docente-avatar, .tec-pres-avatar):has(.tec-persona-retrato img:not([src*="retrato-pendiente.svg"])) .tec-persona-iniciales {
	display: none;
}
.tec-plana-editable .tec-docentes-areas .wp-block-button__link {
	border: 1px solid var(--wp--preset--color--linea);
	padding: 0.45rem 0.9rem;
	border-radius: 999px;
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
	font-size: 0.85rem;
	font-weight: 600;
	line-height: normal;
}
.tec-pres-editable .tec-pres-avatar {
	flex: 0 0 auto;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, 1fr);
}
.tec-pres-editable .tec-pres-avatar > * { grid-area: 1 / 1; }
.tec-pres-editable .tec-pres-avatar p.tec-persona-iniciales {
	margin: 0;
	font: inherit;
	color: inherit;
}
.tec-pres-editable .tec-pres-firma {
	display: grid;
	gap: 0.15rem;
	margin-top: auto;
	padding-top: 0.9rem;
	border-top: 1px dashed var(--wp--preset--color--linea);
}
.tec-pres-editable .tec-pres-firma p { margin: 0; }
.tec-pres-editable .tec-pres-nombre { font-size: 1rem; }
.tec-pres-editable .tec-pres-cargo {
	font-size: 0.85rem;
	color: var(--wp--preset--color--tinta-suave);
}
.tec-pres-editable .tec-pres-autoridades {
	margin: 0;
	font-size: 0.85rem;
	font-weight: 600;
}
.tec-pres-editable .tec-pres-autoridades a {
	color: var(--wp--preset--color--verde);
	text-decoration: none;
}
.tec-pres-editable .tec-pres-autoridades a:hover { text-decoration: underline; }
.tec-pres-editable .tec-pres-acred::before {
	content: "";
	display: block;
	width: 3.4rem;
	height: 3.4rem;
	border-radius: 14px;
	background: var(--wp--preset--color--amarillo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E") no-repeat center / 1.8rem 1.8rem;
}
.tec-pres-editable .tec-pres-acred-texto p.tec-small {
	margin: 0;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.7);
}
.tec-pres-editable .tec-pres-datos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: var(--tec-radio);
	background: var(--wp--preset--color--blanco);
	overflow: hidden;
}
.tec-pres-editable .tec-pres-dato {
	display: grid;
	grid-template-columns: 9rem minmax(0, 1fr);
	gap: 1rem;
	padding: 0.85rem 1.2rem;
	border-bottom: 1px dashed var(--wp--preset--color--linea);
}
.tec-pres-editable .tec-pres-dato:nth-child(odd) {
	border-right: 1px dashed var(--wp--preset--color--linea);
}
.tec-pres-editable .tec-pres-dato:nth-last-child(-n + 2) { border-bottom: 0; }
.tec-pres-editable .tec-pres-dato p.tec-dt {
	margin: 0;
	padding-top: 0.15rem;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}
.tec-pres-editable .tec-pres-dato p.tec-dd {
	margin: 0;
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.4;
}
.tec-pres-editable .tec-pres-enlace { position: relative; }
.tec-pres-editable .tec-pres-enlace p { margin: 0; }
.tec-pres-editable .tec-pres-enlace p.tec-small {
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	color: var(--wp--preset--color--amarillo-oscuro);
}
.tec-pres-editable .tec-pres-link {
	font-family: var(--tec-display);
	font-size: 1.05rem;
	font-weight: 700;
}
.tec-pres-editable .tec-pres-link a { color: inherit; text-decoration: none; }
.tec-pres-editable .tec-pres-link a::before { content: ""; position: absolute; inset: 0; }
.tec-pres-editable .tec-pres-link a::after { content: " →"; color: var(--wp--preset--color--verde); }
.tec-pres-editable .tec-pres-descripcion {
	font-size: 0.86rem;
	line-height: 1.45;
	color: var(--wp--preset--color--tinta-suave);
}
@media (max-width: 1023.98px) {
	.tec-pres-editable .tec-pres-datos { grid-template-columns: 1fr; }
	.tec-pres-editable .tec-pres-dato:nth-child(odd) { border-right: 0; }
	.tec-pres-editable .tec-pres-dato:nth-last-child(2) {
		border-bottom: 1px dashed var(--wp--preset--color--linea);
	}
}
@media (max-width: 639.98px) {
	.tec-pres-editable .tec-pres-dato { grid-template-columns: 1fr; gap: 0.2rem; }
}

/* ---------------------------------------------------------------------------
 * 34. Single full-width card (pending Perfil del graduado / del ingresante)
 * ------------------------------------------------------------------------- */
.tec-mv.tec-mv--una {
	grid-template-columns: 1fr;
}

/* ---------------------------------------------------------------------------
 * 35. Objetivos educacionales and profiles: several card sections, no titles
 * ------------------------------------------------------------------------- */
.tec-objetivos-pagina > .tec-valores + .tec-valores {
	margin-top: 4.5rem;
}

.tec-objetivos-pagina > .tec-perfil-lead {
	max-width: 60rem;
	margin: 0 auto 3rem;
	text-align: center;
}

.tec-objetivos-pagina .tec-valor > p:not(.tec-valor-codigo) {
	margin-top: 1rem;
}

/* ---------------------------------------------------------------------------
 * 36. Card icon chosen from the editor (Estilos → Ícono · …) on competency
 *     cards; overrides the positional default and works on any card order.
 * ------------------------------------------------------------------------- */
.tec-editable .tec-competencias .tec-competencia[class*="is-style-icono-"] .tec-competencia-cab::before {
	content: "";
	flex: none;
	width: 46px;
	height: 46px;
	background: no-repeat 0 0 / 46px 46px;
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-topografia:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v6M7 21l5-12 5 12M9 16h6'/%3E%3Ccircle cx='12' cy='3' r='1'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-mapa:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-satelite:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3Cpath d='M4.9 19.1a10 10 0 0 1 0-14.2M19.1 4.9a10 10 0 0 1 0 14.2M7.8 16.2a6 6 0 0 1 0-8.4M16.2 7.8a6 6 0 0 1 0 8.4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-capas:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l9 5-9 5-9-5z'/%3E%3Cpath d='M3 12l9 5 9-5M3 17l9 5 9-5'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-catastro:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 10h8v11M11 10l10-3M14 21v-8h7'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-vias:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3 4 21M16 3l4 18M12 5v2M12 11v2M12 17v2'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-obras:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M6 20V9l6-5 6 5v11'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-mineria:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 20 6-10 4 6 3-4 5 8z'/%3E%3Cpath d='M14 4l2 2-2 2'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-agua:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 7 6 11a6 6 0 0 1-12 0c0-4 6-11 6-11z'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-riesgo:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-investigacion:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6l-5 9a2 2 0 0 0 1.7 3h10.6a2 2 0 0 0 1.7-3l-5-9V3'/%3E%3Cpath d='M7 15h10'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-equipo:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20a6 6 0 0 1 12 0'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M15.5 14.2A5 5 0 0 1 21 19'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-gestion:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4V3h6v1M9 11h6M9 15h4'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------------
 * 37. The same editor-chosen icons on yellow tec-valor cards (Objetivos
 *     educacionales, Perfil del graduado / del ingresante).
 * ------------------------------------------------------------------------- */
.tec-mv-pagina .tec-valor.is-style-icono-topografia:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v6M7 21l5-12 5 12M9 16h6'/%3E%3Ccircle cx='12' cy='3' r='1'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-mapa:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-satelite:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3Cpath d='M4.9 19.1a10 10 0 0 1 0-14.2M19.1 4.9a10 10 0 0 1 0 14.2M7.8 16.2a6 6 0 0 1 0-8.4M16.2 7.8a6 6 0 0 1 0 8.4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-capas:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l9 5-9 5-9-5z'/%3E%3Cpath d='M3 12l9 5 9-5M3 17l9 5 9-5'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-catastro:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 10h8v11M11 10l10-3M14 21v-8h7'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-vias:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3 4 21M16 3l4 18M12 5v2M12 11v2M12 17v2'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-obras:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M6 20V9l6-5 6 5v11'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-mineria:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 20 6-10 4 6 3-4 5 8z'/%3E%3Cpath d='M14 4l2 2-2 2'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-agua:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 7 6 11a6 6 0 0 1-12 0c0-4 6-11 6-11z'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-riesgo:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-investigacion:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6l-5 9a2 2 0 0 0 1.7 3h10.6a2 2 0 0 0 1.7-3l-5-9V3'/%3E%3Cpath d='M7 15h10'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-equipo:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20a6 6 0 0 1 12 0'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M15.5 14.2A5 5 0 0 1 21 19'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-gestion:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4V3h6v1M9 11h6M9 15h4'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------------
 * 38. Investigación: research lines (sublines list) and publication cards.
 *     Cards use .tec-linea-inv; .tec-linea is the Historia timeline.
 * ------------------------------------------------------------------------- */
.tec-mv-pagina .tec-linea-inv > .tec-sublineas {
	margin: 0.8rem 0 0;
	padding: 0;
	list-style: none;
}

.tec-mv-pagina .tec-linea-inv > .tec-sublineas li {
	padding: 0.55rem 0;
	border-top: 1px solid var(--wp--preset--color--linea);
	font-size: 0.95rem;
	line-height: 1.5;
}

.tec-mv-pagina .tec-linea-inv > .tec-sublineas strong {
	margin-right: 0.4rem;
	font-family: var(--tec-mono);
	font-size: 0.8rem;
	color: var(--wp--preset--color--verde);
}

.tec-publicaciones-pagina > .tec-valores-cab {
	margin-bottom: 1.5rem;
	text-align: center;
}

.tec-publicaciones {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.2rem;
	margin-top: 1.5rem;
}

.tec-publicacion {
	padding: 1.6rem 1.5rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-left: 4px solid var(--wp--preset--color--amarillo);
	border-radius: 16px;
	background: var(--wp--preset--color--blanco);
}

.tec-publicacion > * {
	margin-block: 0;
}

.tec-publicacion > .tec-publicacion-tipo {
	font-family: var(--tec-mono);
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.wp-block-group .tec-publicacion > h3 {
	margin-top: 0.6rem;
	font-size: 1.15rem;
}

.tec-publicacion > .tec-publicacion-autores {
	margin-top: 0.5rem;
	font-weight: 600;
}

.tec-publicacion > .tec-publicacion-revista {
	margin-top: 0.2rem;
	font-style: italic;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-publicacion > .wp-block-buttons {
	margin-top: 1rem;
}

@media (max-width: 639.98px) {
	.tec-publicaciones {
		grid-template-columns: 1fr;
	}
}

/* ---------------------------------------------------------------------------
 * 39. Estudiantes pages (editable blocks): titled blocks, tables, chips,
 *     photo cards. Document rows reuse §20 (.tec-transp), people reuse the
 *     authority cards (§31) and steps reuse the yellow cards (§27).
 * ------------------------------------------------------------------------- */
.tec-est > .tec-prueba {
	margin-bottom: 2rem;
}

.tec-est > .tec-autoridades-cab,
.tec-est > .tec-autoridades {
	margin-bottom: 2.5rem;
}

.tec-est-bloques {
	display: grid;
	gap: 1.5rem;
}

/* Grid and flow children may shrink below their content, so wide tables
 * scroll inside their figure instead of widening the page on phones. */
.tec-est-bloques > *,
.tec-est-bloque > * {
	min-width: 0;
}

.tec-est-bloques--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tec-est-bloque {
	padding: 1.5rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 18px;
	background: var(--wp--preset--color--blanco);
}

.tec-est > .tec-est-bloque {
	margin-top: 2rem;
}

.tec-est-bloque > *,
.tec-est-bloque-cab > * {
	margin-block: 0;
}

.tec-est-bloque > * + * {
	margin-top: 1rem;
}

.tec-est-bloque-cab {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 1rem;
}

.wp-block-group .tec-est-bloque-cab h3 {
	font-size: 1.2rem;
}

.tec-est-chip {
	display: inline-block;
	padding: 0.25rem 0.7rem;
	border-radius: 999px;
	background: var(--wp--preset--color--fondo-alt);
	color: var(--wp--preset--color--tinta-suave);
	font-family: var(--tec-mono);
	font-size: 0.72rem;
	letter-spacing: 0.04em;
}

.tec-tabla {
	max-width: 100%;
	margin: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tec-tabla table,
.tec-tabla table.has-fixed-layout {
	width: 100%;
	min-width: 40rem;
	table-layout: auto;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.tec-tabla th,
.tec-tabla td {
	padding: 0.65rem 0.75rem;
	border: 0;
	border-bottom: 1px solid var(--wp--preset--color--linea);
	text-align: left;
	vertical-align: top;
}

/* Core breaks words in fixed-layout tables (0,2,1); whole words read better
 * and the table scrolls sideways on phones instead. */
.tec-tabla.wp-block-table .has-fixed-layout td,
.tec-tabla.wp-block-table .has-fixed-layout th {
	word-break: normal;
	overflow-wrap: normal;
}

/* First two columns hold short values (day, time, week): keep them on one line. */
.tec-tabla.wp-block-table td:nth-child(-n + 2),
.tec-tabla.wp-block-table th:nth-child(-n + 2) {
	white-space: nowrap;
}

.tec-tabla thead th {
	background: var(--wp--preset--color--verde);
	color: var(--wp--preset--color--blanco);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.tec-tabla thead th:first-child {
	border-top-left-radius: 10px;
}

.tec-tabla thead th:last-child {
	border-top-right-radius: 10px;
}

.tec-tabla tbody tr:nth-child(even) td {
	background: var(--wp--preset--color--fondo-alt);
}

.tec-est-lista {
	margin: 0;
	padding-left: 1.2rem;
	line-height: 1.7;
}

.tec-est .tec-est-pasos {
	margin-bottom: 1rem;
}

.tec-est-tarjetas {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.4rem;
}

.tec-est-tarjeta {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 18px;
	background: var(--wp--preset--color--blanco);
	transition: box-shadow 180ms ease, border-color 180ms ease;
}

.tec-est-tarjeta:hover {
	border-color: var(--wp--preset--color--amarillo);
	box-shadow: var(--tec-sombra);
}

.tec-est-tarjeta > .tec-est-tarjeta-foto {
	margin: 0;
	aspect-ratio: 16 / 10;
}

.tec-est-tarjeta > .tec-est-tarjeta-foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tec-est-tarjeta-cuerpo {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.55rem;
	padding: 1.2rem 1.3rem 1.4rem;
}

.tec-est-tarjeta-cuerpo > * {
	margin: 0;
}

.tec-est-tarjeta-cuerpo > .tec-est-chip {
	align-self: flex-start;
}

.wp-block-group .tec-est-tarjeta-cuerpo h3 {
	font-size: 1.15rem;
}

.tec-est-tarjeta-cuerpo > p:not(.tec-est-chip) {
	color: var(--wp--preset--color--tinta-suave);
	font-size: 0.92rem;
	line-height: 1.6;
}

.tec-est-tarjeta-cuerpo > .wp-block-buttons {
	margin-top: auto;
	padding-top: 0.4rem;
}

.tec-est .tec-est-docs {
	margin-top: 0.5rem;
}

@media (max-width: 1023.98px) {
	.tec-est-tarjetas {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tec-est-bloques--2 {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 639.98px) {
	.tec-est-tarjetas {
		grid-template-columns: 1fr;
	}

	.tec-est-bloque {
		padding: 1.1rem;
	}
}

/* ---------------------------------------------------------------------------
 * 40. Formación editable: Laboratorios, Plan de estudios and Malla stored as
 *     core blocks. Paragraph/group aliases for the former dl/ol/small markup;
 *     flow-layout margins reset inside the components.
 * ------------------------------------------------------------------------- */
.tec-formacion-editable :is(.tec-labs, .tec-lab, .tec-lab-cab, .tec-docentes-cifras, .tec-cifra-editable, .tec-plan-areas, .tec-plan-barra, .tec-plan-ciclos, .tec-plan-ciclo, .tec-plan-ciclo-cab, .tec-plan-ciclo-titulo, .tec-plan-cursos, .tec-plan-curso, .tec-plan-curso-texto, .tec-malla, .tec-malla-grilla, .tec-malla-col, .tec-malla-col-cab, .tec-malla-curso, .tec-malla-curso-cab, .tec-malla-pie) > * {
	margin-block: 0;
}

/* Laboratorios */
.tec-formacion-editable .tec-lab > .tec-lab-cab {
	margin-bottom: 1rem;
}

.tec-formacion-editable .tec-lab > h3 {
	margin-bottom: 0.9rem;
}

.tec-formacion-editable .tec-lab-cab::before {
	content: "";
	flex: none;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: var(--wp--preset--color--verde) no-repeat 0 0 / 46px 46px;
}

.tec-formacion-editable .tec-lab > p.tec-dt {
	margin-bottom: 0.25rem;
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-formacion-editable .tec-lab > p.tec-dd {
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.45;
}

.tec-formacion-editable .tec-lab > p.tec-dd:has(+ .tec-lab-pie) {
	margin-bottom: 1rem;
}

.tec-formacion-editable .tec-lab > .tec-lab-pie {
	margin-top: auto;
}

/* Plan de estudios */
.tec-formacion-editable .tec-plan-areas .tec-plan-barra {
	align-items: stretch;
	gap: 3px;
	flex-wrap: nowrap;
	height: 2.1rem;
	border-radius: 10px;
	overflow: hidden;
}

.tec-formacion-editable .tec-plan-barra > p {
	display: flex;
	align-items: center;
	min-width: 0;
	padding-inline: 0.7rem;
	background: var(--tec-area);
	color: var(--wp--preset--color--blanco);
	font-family: var(--tec-mono);
	font-size: 0.72rem;
	font-weight: 500;
}

.tec-formacion-editable .tec-plan-barra > p.tec-area--s {
	color: var(--wp--preset--color--tinta);
	background: var(--wp--preset--color--amarillo);
}

.tec-formacion-editable .tec-plan-barra > p:last-child {
	flex-grow: 1;
}

.tec-formacion-editable .tec-plan-areas > .tec-plan-leyenda {
	margin-top: 0.9rem;
}

.tec-plan-areas li em {
	font-family: var(--tec-mono);
	font-size: 0.7rem;
	font-style: normal;
	color: var(--wp--preset--color--gris);
}

.tec-formacion-editable .tec-docentes-areas .wp-block-button__link {
	min-width: 2.6rem;
	min-height: 0;
	padding: 0.4rem 0.75rem;
	border: 1px solid var(--wp--preset--color--linea);
	border-radius: 999px;
	background: var(--wp--preset--color--blanco);
	color: var(--wp--preset--color--tinta);
	font-family: var(--tec-mono);
	font-size: 0.85rem;
	font-weight: 600;
	line-height: normal;
	text-align: center;
}

.tec-formacion-editable .tec-docentes-areas .wp-block-button__link:hover {
	background: var(--wp--preset--color--amarillo-suave);
	border-color: var(--wp--preset--color--amarillo);
}

.tec-formacion-editable .tec-plan-ciclo-cab {
	display: flex;
	align-items: center;
	gap: 0.9rem;
}

.tec-formacion-editable .tec-plan-ciclo-meta {
	font-family: var(--tec-mono);
	font-size: 0.68rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

.tec-formacion-editable .tec-plan-cursos {
	padding: 0.4rem 0;
}

.tec-formacion-editable .tec-plan-curso {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.55rem 1.2rem 0.55rem 1.05rem;
	border-left: 4px solid var(--tec-area);
}

.tec-formacion-editable .tec-plan-curso + .tec-plan-curso {
	border-top: 1px dashed var(--wp--preset--color--linea);
}

.tec-formacion-editable .tec-plan-curso-texto {
	min-width: 0;
}

.tec-formacion-editable .tec-plan-curso-nombre {
	font-weight: 600;
	font-size: 0.93rem;
	line-height: 1.35;
}

.tec-formacion-editable .tec-plan-curso-meta {
	margin-top: 0.3rem;
	line-height: 1.7;
	font-family: var(--tec-mono);
	font-size: 0.66rem;
	color: var(--wp--preset--color--gris);
}

/* Malla curricular */
.tec-formacion-editable .tec-malla-col-cab {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 0.2rem;
	padding: 0.45rem 0.6rem;
	border-radius: 8px;
	background: var(--wp--preset--color--tinta);
}

.wp-block-group .tec-formacion-editable .tec-malla-col-cab h3,
.tec-formacion-editable .tec-malla-col-cab h3 {
	margin: 0;
	padding: 0;
	background: none;
	color: var(--wp--preset--color--amarillo);
	font-family: var(--tec-display);
	font-size: 0.95rem;
	font-weight: 700;
}

.tec-formacion-editable .tec-malla-col-cr {
	font-family: var(--tec-mono);
	font-size: 0.62rem;
	font-weight: 500;
	color: var(--wp--preset--color--blanco);
}

.tec-formacion-editable .tec-malla-curso-cab {
	display: flex;
	justify-content: space-between;
	gap: 0.3rem;
	font-family: var(--tec-mono);
	font-size: 0.6rem;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--tinta-suave);
}

.tec-formacion-editable .tec-malla-cr {
	font-weight: 600;
	color: var(--wp--preset--color--tinta);
}

.tec-formacion-editable .tec-malla-nombre {
	font-weight: 600;
	color: var(--wp--preset--color--tinta);
}

.tec-formacion-editable .tec-lab.is-style-icono-agua .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 7 6 11a6 6 0 0 1-12 0c0-4 6-11 6-11z'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-camara .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Ccircle cx='12' cy='13.5' r='3.5'/%3E%3Cpath d='M8 7l1.5-3h5L16 7'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-capas .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l9 5-9 5-9-5z'/%3E%3Cpath d='M3 12l9 5 9-5M3 17l9 5 9-5'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-catastro .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 10h8v11M11 10l10-3M14 21v-8h7'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-computo .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-equipo .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20a6 6 0 0 1 12 0'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M15.5 14.2A5 5 0 0 1 21 19'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-gestion .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4V3h6v1M9 11h6M9 15h4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-investigacion .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6l-5 9a2 2 0 0 0 1.7 3h10.6a2 2 0 0 0 1.7-3l-5-9V3'/%3E%3Cpath d='M7 15h10'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-mapa .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-mineria .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 20 6-10 4 6 3-4 5 8z'/%3E%3Cpath d='M14 4l2 2-2 2'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-obras .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M6 20V9l6-5 6 5v11'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-riesgo .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v6c0 4.5-3 7.5-7 9-4-1.5-7-4.5-7-9V6z'/%3E%3Cpath d='M12 8v5M12 16h.01'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-satelite .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3Cpath d='M4.9 19.1a10 10 0 0 1 0-14.2M19.1 4.9a10 10 0 0 1 0 14.2M7.8 16.2a6 6 0 0 1 0-8.4M16.2 7.8a6 6 0 0 1 0 8.4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-topografia .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v6M7 21l5-12 5 12M9 16h6'/%3E%3Ccircle cx='12' cy='3' r='1'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-vias .tec-lab-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3 4 21M16 3l4 18M12 5v2M12 11v2M12 17v2'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-computo:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-computo:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-editable .tec-competencias .tec-competencia.is-style-icono-camara:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Ccircle cx='12' cy='13.5' r='3.5'/%3E%3Cpath d='M8 7l1.5-3h5L16 7'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-camara:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Ccircle cx='12' cy='13.5' r='3.5'/%3E%3Cpath d='M8 7l1.5-3h5L16 7'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-formacion-editable .tec-lab.is-style-icono-globo .tec-lab-cab::before,
.tec-editable .tec-competencias .tec-competencia.is-style-icono-globo:nth-child(n) .tec-competencia-cab::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46'%3E%3Crect width='46' height='46' rx='12' fill='%231F5A44'/%3E%3Cg transform='translate(11 11) scale(1.0000)' fill='none' stroke='%23F2B705' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18'/%3E%3C/g%3E%3C/svg%3E");
}

.tec-mv-pagina .tec-valor.is-style-icono-globo:nth-child(n)::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Crect width='44' height='44' rx='12' fill='%23F2B705'/%3E%3Cg transform='translate(11 11) scale(0.9167)' fill='none' stroke='%23111412' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------------------------------------------------------------------------
 * 41. Misión y visión (Escuela, Universidad, Facultad) and Convocatorias as
 *     editable blocks
 * ------------------------------------------------------------------------- */
.tec-mv-escuela > .tec-mv-intro {
	margin-bottom: 2.5rem;
}

.tec-mv-escuela .tec-mv-intro .tec-valores-cab > p:not(.tec-mono) {
	max-width: 40rem;
	margin: 1rem auto 0;
	color: var(--wp--preset--color--tinta-suave);
	line-height: 1.6;
}

.tec-mv-escuela > .tec-mv,
.tec-mv-escuela > .tec-mv-instituciones {
	margin-bottom: 1.5rem;
}

.tec-mv-escuela > .tec-mv:last-of-type {
	margin-bottom: 2.5rem;
}

.tec-mv-pagina .tec-mv-tarjeta h3 {
	margin-top: 0.5rem;
	color: inherit;
	font-size: clamp(1.3rem, 2.2vw, 1.6rem);
	line-height: 1.3;
}

.tec-mv-pagina .tec-mv-tarjeta h3 + .tec-mv-texto {
	margin-top: 1rem;
	font-family: inherit;
	font-size: 1.08rem;
	font-weight: 400;
	line-height: 1.75;
}

.tec-mv-pagina .tec-valor > .tec-valor-codigo + h3 {
	margin-top: 0.35rem;
}

.tec-mv-pagina .tec-valor > h3 + p {
	margin-top: 0.7rem;
}

.tec-valores-grilla--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 999.98px) {
	.tec-valores-grilla--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 639.98px) {
	.tec-valores-grilla--4 {
		grid-template-columns: 1fr;
	}
}

.tec-conv-vacio {
	padding: 1.4rem 1.5rem;
	border: 1px dashed var(--wp--preset--color--linea);
	border-radius: 14px;
	background: var(--wp--preset--color--fondo-alt);
}

.tec-conv-vacio > * {
	margin-block: 0;
}

.tec-conv-vacio > h4 {
	font-size: 1.05rem;
}

.tec-conv-vacio > h4 + p {
	margin-top: 0.5rem;
}

.tec-conv-portales .tec-valores-cab h3 {
	margin-top: 0;
	font-size: var(--wp--preset--font-size--titulo-3, 1.5rem);
}

.tec-conv-portales .tec-valores-cab h3 + p {
	margin-top: 0.5rem;
}

.tec-conv-portal {
	display: flex;
	flex-direction: column;
}

.tec-conv-portal > .wp-block-buttons {
	margin-top: auto;
	padding-top: 1.1rem;
}
