/* Sistema visual MTE 2026 (propuesta del 27-ago-2026).
   Las medidas se escriben en unidades del lienzo de 1920 de los PDF: calc(N * var(--u)).
   --u vale 100vw / 1920, acotado entre 0,5 px y --u-max (punto de control con el autor). */
:root {
	--mte-verde: #2EAB67;
	--mte-verde-oscuro: #006636;
	--mte-amarillo: #FCC418;
	--mte-titulo: #1D1D1B;
	--mte-texto: #000000;
	--mte-gris: #CECECE;
	--mte-gris-claro: #F2F2F2;
	--u-max: 0.7px;
	--u: clamp(0.5px, calc(100vw / 1920), var(--u-max));
	--mte-ancho: calc(1734 * var(--u));
	--mte-fuente: "Red Hat Text", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body {
	font-family: var(--mte-fuente);
	font-size: max(16px, calc(30 * var(--u)));
	line-height: 1.3;
	color: var(--mte-texto);
	background: #fff;
}
h1, h2, h3, h4, h5, h6,
.wp-block-heading {
	font-family: var(--mte-fuente);
	color: var(--mte-titulo);
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
}

.mte-contenedor {
	width: 100%;
	max-width: calc(var(--mte-ancho) + 32px);
	margin-inline: auto;
	padding-inline: 16px;
	box-sizing: border-box;
}

/* Botones en píldora */
.mte-boton,
.mte-boton .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: calc(69 * var(--u));
	padding: 0 calc(36 * var(--u));
	border-radius: 999px;
	font-family: var(--mte-fuente);
	font-size: max(12px, calc(22 * var(--u)));
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0;
	line-height: 1;
	text-decoration: none;
	border: 0;
	box-sizing: border-box;
	transition: filter .15s ease;
}
.wp-block-button.mte-boton { padding: 0; min-height: 0; background: none; }
.mte-boton:hover, .mte-boton .wp-block-button__link:hover { filter: brightness(1.08); }
.mte-boton--oscuro, .mte-boton--oscuro .wp-block-button__link { background: var(--mte-verde-oscuro); color: #fff; }
.mte-boton--verde, .mte-boton--verde .wp-block-button__link { background: var(--mte-verde); color: #fff; }
.mte-boton--amarillo, .mte-boton--amarillo .wp-block-button__link { background: var(--mte-amarillo); color: #000; }
/* El color del texto va con !important: las reglas de enlaces de zakra (.entry-content a…) lo pisarían. */
.mte-boton--oscuro, .mte-boton--verde,
.mte-boton--oscuro .wp-block-button__link, .mte-boton--verde .wp-block-button__link,
.mte-boton--oscuro:hover, .mte-boton--verde:hover,
.mte-boton--oscuro .wp-block-button__link:hover, .mte-boton--verde .wp-block-button__link:hover { color: #fff !important; }
.mte-boton--amarillo, .mte-boton--amarillo:hover { color: #000 !important; }

/* Cabecera: logo · menú · botones */
.mte-cabecera {
	background: #fff;
	position: relative;
	z-index: 50;
}
.mte-cabecera__fila {
	display: flex;
	align-items: center;
	gap: calc(28 * var(--u));
	padding-top: calc(100 * var(--u));
	padding-bottom: calc(60 * var(--u));
}
.mte-logo { flex: none; display: block; line-height: 0; }
.mte-logo img { width: calc(261 * var(--u)); min-width: 120px; height: auto; }
.mte-navegacion {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: calc(20 * var(--u));
}
.mte-menu {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	flex: none;
	gap: calc(24 * var(--u));
	list-style: none;
	margin: 0;
	padding: 0;
}
.mte-menu > li { margin: 0; }
.mte-menu > li > a {
	font-size: max(12px, calc(22 * var(--u)));
	font-weight: 400;
	text-transform: uppercase;
	color: var(--mte-titulo);
	text-decoration: none;
	white-space: nowrap;
}
.mte-menu > li > a:hover { color: var(--mte-verde); }
.mte-menu > .current-menu-item > a,
.mte-menu > .current_page_item > a,
.mte-menu > .current-menu-ancestor > a { font-weight: 700; }
.mte-cabecera__botones { display: flex; align-items: center; gap: calc(14 * var(--u)); flex: none; }
.mte-cabecera__botones .mte-boton { padding: 0 calc(20 * var(--u)); white-space: nowrap; }
.mte-hamburguesa { display: none; }

/* Botones de la cabecera: SIVE (degradado, «en vivo») y Control Panel (verde de la propuesta), con icono. */
.mte-boton__icono {
	width: 1.15em;
	height: 1.15em;
	flex: none;
	margin-right: 0.5em;
	background: currentColor;
	-webkit-mask: no-repeat center / contain var(--icono);
	mask: no-repeat center / contain var(--icono);
}
.mte-boton--panel { --icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h8v10H3zm10 0h8v6h-8zm0 8h8v10h-8zM3 15h8v6H3z'/%3E%3C/svg%3E"); }
.mte-boton--sive { --icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2 4 14h7l-1 8 9-12h-7z'/%3E%3C/svg%3E"); }
.mte-boton--sive {
	background: linear-gradient(135deg, #61CE70 0%, #2563eb 100%);
	color: #fff !important;
	box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
	animation: sive-brillo 2.8s ease-in-out infinite;
}
.mte-boton--sive:hover, .mte-boton--sive:focus-visible { color: #fff !important; filter: brightness(1.08); }
.mte-boton--sive:focus-visible, .mte-boton--panel:focus-visible { outline: 3px solid #fcb900; outline-offset: 2px; }
.mte-boton__etiqueta {
	margin-left: 0.5em;
	padding: 0.2em 0.55em;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.22);
	font-size: 0.72em;
	font-weight: 600;
	letter-spacing: 0.02em;
}
@keyframes sive-brillo {
	0%, 100% { box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35); }
	50%      { box-shadow: 0 4px 22px rgba(97, 206, 112, 0.65); }
}
@media (prefers-reduced-motion: reduce) {
	.mte-boton--sive { animation: none; }
}

/* Pie verde y copyright */
.mte-pie {
	background: var(--mte-verde);
	color: #fff;
	padding: calc(35 * var(--u)) 0 calc(55 * var(--u));
}
.mte-pie__fila {
	display: grid;
	grid-template-columns: calc(960 * var(--u)) 1fr;
	align-items: start;
}
.mte-pie__marca img { display: block; width: calc(583 * var(--u)); min-width: 220px; height: auto; margin-left: calc(-4 * var(--u)); }
.mte-pie__marca p {
	margin: calc(62 * var(--u)) 0 0 calc(21 * var(--u));
	max-width: calc(680 * var(--u));
	font-size: max(15px, calc(30 * var(--u)));
	line-height: 1.3;
	color: #fff;
}
.mte-pie__contacto { padding-top: calc(34 * var(--u)); }
.mte-pie__contacto h2 {
	font-size: max(20px, calc(43 * var(--u)));
	color: #fff;
	padding-bottom: calc(22 * var(--u));
	border-bottom: 1px solid rgba(255, 255, 255, .7);
}
.mte-pie__contacto p {
	margin: calc(34 * var(--u)) 0 0;
	font-size: max(15px, calc(30 * var(--u)));
	line-height: 1.3;
	color: #fff;
}
.mte-pie a { color: #fff; text-decoration: none; }
.mte-pie a:hover { text-decoration: underline; }
.mte-redes { display: flex; gap: calc(26 * var(--u)); list-style: none; margin: calc(26 * var(--u)) 0 0; padding: 0; }
.mte-red {
	display: block;
	width: calc(70 * var(--u));
	height: calc(70 * var(--u));
	min-width: 32px;
	min-height: 32px;
	border-radius: 50%;
	background: #fff;
	position: relative;
}
.mte-red::after {
	content: "";
	position: absolute;
	inset: 22%;
	background: var(--mte-verde);
	-webkit-mask: no-repeat center / contain var(--icono);
	mask: no-repeat center / contain var(--icono);
}
.mte-red--youtube { --icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23 7.2a3 3 0 0 0-2.1-2.1C19 4.6 12 4.6 12 4.6s-7 0-8.9.5A3 3 0 0 0 1 7.2 31 31 0 0 0 .5 12 31 31 0 0 0 1 16.8a3 3 0 0 0 2.1 2.1c1.9.5 8.9.5 8.9.5s7 0 8.9-.5a3 3 0 0 0 2.1-2.1 31 31 0 0 0 .5-4.8 31 31 0 0 0-.5-4.8zM9.7 15.1V8.9l5.8 3.1z'/%3E%3C/svg%3E"); }
.mte-red--facebook { --icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 8V6.2c0-.8.2-1.2 1.4-1.2H17V2h-2.6C11.3 2 10.3 3.5 10.3 6v2H8v3h2.3v11H14V11h2.7L17 8z'/%3E%3C/svg%3E"); }
.mte-red--instagram { --icono: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 7a5 5 0 1 0 0 10 5 5 0 0 0 0-10zm0 8.2a3.2 3.2 0 1 1 0-6.4 3.2 3.2 0 0 1 0 6.4zM17.3 5.5a1.2 1.2 0 1 0 0 2.4 1.2 1.2 0 0 0 0-2.4zM12 1.8c-2.8 0-3.1 0-4.2.1C3.9 2 2 3.9 1.9 7.8 1.8 8.9 1.8 9.2 1.8 12s0 3.1.1 4.2c.1 3.9 2 5.8 5.9 5.9 1.1.1 1.4.1 4.2.1s3.1 0 4.2-.1c3.9-.1 5.8-2 5.9-5.9.1-1.1.1-1.4.1-4.2s0-3.1-.1-4.2c-.1-3.9-2-5.8-5.9-5.9-1.1-.1-1.4-.1-4.2-.1z'/%3E%3C/svg%3E"); }
.mte-copy {
	margin: 0;
	padding: calc(52 * var(--u)) 16px;
	text-align: center;
	font-size: max(14px, calc(30 * var(--u)));
	color: #000;
	background: #fff;
}

/* zakra: sin el margen superior del contenido en las páginas propias */
.page-template-pagebuilder .zak-content { padding-top: 0; }

/* Barras de compartir de Sassy Social Share (flotante y horizontal): no están en la propuesta; se ocultan solo en las páginas propias. */
.page-template-pagebuilder .heateor_sss_sharing_container { display: none !important; }
