/*
 * Suministros Industriales · piezas del tema.
 *
 * Regla: este archivo NO inventa valores. Todo color, tamaño, aire y radio sale
 * de theme.json (variables --wp--preset--* y --wp--custom--*). Si hace falta un
 * valor nuevo, se agrega como token en theme.json y se anota en MARCA.md.
 *
 * Puntos de corte del tema (los únicos):
 *   640  teléfono  → una columna, botones a todo el ancho
 *   900  tableta   → menú en cajón, héroe y contacto apilados
 *   1100 escritorio angosto → grillas de 5 pasan a 3
 */

:root {
	--si-transicion: var(--wp--custom--movimiento--rapido) var(--wp--custom--movimiento--curva);
}

/* Las piezas de la plantilla van pegadas: cada sección trae su propio aire. */
.wp-site-blocks > * { margin-block: 0; }
main.wp-block-group > * { margin-block: 0; }

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* ---------- Íconos: SVG como máscara, toman el color del texto ---------- */

.si-icono::before,
.si-dato::before {
	content: "";
	display: inline-block;
	flex: none;
	width: var(--wp--custom--icono--l);
	height: var(--wp--custom--icono--l);
	background-color: currentColor;
	-webkit-mask: var(--si-i) center / contain no-repeat;
	mask: var(--si-i) center / contain no-repeat;
}
.si-i-ventilador { --si-i: url(../iconos/ventilador.svg); }
.si-i-rejilla    { --si-i: url(../iconos/rejilla.svg); }
.si-i-filtro     { --si-i: url(../iconos/filtro.svg); }
.si-i-campana    { --si-i: url(../iconos/campana.svg); }
.si-i-ducto      { --si-i: url(../iconos/ducto.svg); }
.si-i-helice     { --si-i: url(../iconos/helice.svg); }
.si-i-ozono      { --si-i: url(../iconos/ozono.svg); }
.si-i-clima      { --si-i: url(../iconos/clima.svg); }
.si-i-motor      { --si-i: url(../iconos/motor.svg); }
.si-i-fabrica    { --si-i: url(../iconos/fabrica.svg); }
.si-i-asesoria   { --si-i: url(../iconos/asesoria.svg); }
.si-i-medida     { --si-i: url(../iconos/medida.svg); }
.si-i-servicio   { --si-i: url(../iconos/servicio.svg); }
.si-i-telefono   { --si-i: url(../iconos/telefono.svg); }
.si-i-correo     { --si-i: url(../iconos/correo.svg); }
.si-i-ubicacion  { --si-i: url(../iconos/ubicacion.svg); }
.si-i-whatsapp   { --si-i: url(../iconos/whatsapp.svg); }
.si-i-check      { --si-i: url(../iconos/check.svg); }
.si-i-humedad      { --si-i: url(../iconos/humedad.svg); }
.si-i-calefaccion  { --si-i: url(../iconos/calefaccion.svg); }
.si-i-recuperacion { --si-i: url(../iconos/recuperacion.svg); }
.si-i-eficiencia   { --si-i: url(../iconos/eficiencia.svg); }
.si-i-calidad      { --si-i: url(../iconos/calidad.svg); }
.si-i-entrega      { --si-i: url(../iconos/entrega.svg); }
.si-i-consejo      { --si-i: url(../iconos/consejo.svg); }
.si-i-comercio     { --si-i: url(../iconos/comercio.svg); }
.si-i-residencia   { --si-i: url(../iconos/residencia.svg); }
.si-i-documento    { --si-i: url(../iconos/documento.svg); }
.si-i-salas        { --si-i: url(../iconos/salas.svg); }
.si-i-pregunta     { --si-i: url(../iconos/pregunta.svg); }
.si-i-reloj        { --si-i: url(../iconos/reloj.svg); }

/* Dato con ícono chico delante (barra superior, beneficios del héroe) */
.si-dato {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--10);
	margin: 0;
}
.si-dato::before {
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
}
.si-dato.si-i-check::before { color: var(--wp--preset--color--brand-200); }

/* Caja de ícono (pilares, contacto) */
.si-caja-icono {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--wp--custom--icono--caja);
	height: var(--wp--custom--icono--caja);
	margin: 0;
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--brand-100);
	color: var(--wp--preset--color--brand-500);
}
.si-caja-icono::before {
	width: var(--wp--custom--icono--m);
	height: var(--wp--custom--icono--m);
}
.si-caja-icono.si-i-whatsapp {
	background: var(--wp--preset--color--whatsapp);
	color: var(--wp--preset--color--superficie);
}

/* ---------- Textos con rol ---------- */

/* Etiqueta técnica sobre un título: «CÓMO TRABAJAMOS» */
.si-etiqueta {
	margin: 0;
	font-family: var(--wp--preset--font-family--datos);
	font-size: var(--wp--preset--font-size--xs);
	letter-spacing: var(--wp--custom--espaciado-letra--etiqueta);
	text-transform: uppercase;
	color: var(--wp--preset--color--brand-500);
}
.si-etiqueta--raya {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--brand-200);
}
.si-etiqueta--raya::before {
	content: "";
	width: var(--wp--custom--raya--ancho);
	height: var(--wp--custom--raya--grosor);
	background: var(--wp--preset--color--acento-500);
}
.si-etiqueta--gris { color: var(--wp--preset--color--texto-3); }

.si-bajada {
	margin: 0;
	max-width: var(--wp--custom--ancho--bajada);
	font-size: var(--wp--preset--font-size--m);
	color: var(--wp--preset--color--texto-2);
}
.si-sobre-oscuro .si-bajada { color: var(--wp--preset--color--oscuro-2); }

.si-encabezado { max-width: var(--wp--custom--ancho--encabezado); }
.si-encabezado > * { margin: 0; }

/* ---------- Botones (estilos registrados en functions.php) ---------- */

.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--10);
	min-height: var(--wp--custom--control--alto);
	border: var(--wp--custom--borde) solid transparent;
	transition: background-color var(--si-transicion), border-color var(--si-transicion), color var(--si-transicion);
}
.si-flecha .wp-block-button__link::after {
	content: "";
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
	background: currentColor;
	-webkit-mask: url(../iconos/flecha.svg) center / contain no-repeat;
	mask: url(../iconos/flecha.svg) center / contain no-repeat;
}
.is-style-acento .wp-block-button__link {
	background: var(--wp--preset--color--acento-500);
	color: var(--wp--preset--color--marino-900);
}
.is-style-acento .wp-block-button__link:hover {
	background: var(--wp--preset--color--acento-600);
	color: var(--wp--preset--color--marino-900);
}
.is-style-fantasma .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--superficie);
	border-color: var(--wp--preset--color--oscuro-3);
}
.is-style-fantasma .wp-block-button__link:hover {
	background: transparent;
	border-color: var(--wp--preset--color--superficie);
}
.is-style-contorno .wp-block-button__link {
	background: var(--wp--preset--color--superficie);
	color: var(--wp--preset--color--brand-700);
	border-color: var(--wp--preset--color--linea);
}
.is-style-contorno .wp-block-button__link:hover {
	background: var(--wp--preset--color--superficie);
	color: var(--wp--preset--color--brand-500);
	border-color: var(--wp--preset--color--brand-500);
}

/* Enlace con flecha: «Ver ficha técnica» */
.si-enlace-flecha { margin: 0; }
.si-enlace-flecha a {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--10);
	min-height: var(--wp--custom--control--toque);
	font-weight: 600;
}
.si-enlace-flecha a::after {
	content: "";
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
	background: currentColor;
	-webkit-mask: url(../iconos/flecha.svg) center / contain no-repeat;
	mask: url(../iconos/flecha.svg) center / contain no-repeat;
}

/* ---------- Cabecera ---------- */

.si-cabecera {
	background: var(--wp--preset--color--marino-900);
	color: var(--wp--preset--color--oscuro-1);
}
.si-cabecera a { color: var(--wp--preset--color--oscuro-1); }
.si-cabecera a:hover { color: var(--wp--preset--color--superficie); }

.si-barra {
	min-height: var(--wp--custom--cabecera--barra);
	border-bottom: var(--wp--custom--borde) solid color-mix(in srgb, var(--wp--preset--color--superficie) 8%, transparent);
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--oscuro-3);
}
.si-barra a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--custom--control--toque);
}
.si-barra .wp-block-social-links { margin: 0; }
.si-barra .wp-social-link { background: transparent !important; color: var(--wp--preset--color--oscuro-1) !important; }
.si-barra .wp-social-link a { padding: var(--wp--preset--spacing--20); }

.si-principal { min-height: var(--wp--custom--cabecera--principal); }
.si-logo { margin: 0; }
.si-logo img {
	display: block;
	height: var(--wp--custom--cabecera--logo);
	width: auto;
}

.si-nav .wp-block-navigation-item__content {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--custom--control--toque);
	font-weight: 500;
	font-size: var(--wp--preset--font-size--base);
}
.si-nav .wp-block-navigation__submenu-container {
	min-width: var(--wp--custom--ancho--submenu);
	padding: var(--wp--preset--spacing--10) 0;
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea) !important;
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--superficie) !important;
	color: var(--wp--preset--color--texto-1) !important;
	box-shadow: var(--wp--preset--shadow--elevada);
}
.si-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--texto-1);
	font-size: var(--wp--preset--font-size--s);
}
.si-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--brand-500);
}
.si-nav .wp-block-navigation__responsive-container-open,
.si-nav .wp-block-navigation__responsive-container-close {
	width: var(--wp--custom--control--alto);
	height: var(--wp--custom--control--alto);
	align-items: center;
	justify-content: center;
	border-radius: var(--wp--custom--radio--control);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--oscuro-3);
}
.si-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--marino-900) !important;
	color: var(--wp--preset--color--oscuro-1) !important;
	padding: var(--wp--preset--spacing--40);
}
.si-nav .is-menu-open .wp-block-navigation-item__content {
	font-size: var(--wp--preset--font-size--l);
}
/* En el cajón, todo a la izquierda: la barra está alineada a la derecha y el
   cajón lo heredaba, con los ítems largos desparejos. */
.si-nav .is-menu-open .wp-block-navigation__responsive-container-content,
.si-nav .is-menu-open .wp-block-navigation__container,
.si-nav .is-menu-open .wp-block-navigation-item,
.si-nav .is-menu-open .wp-block-navigation__submenu-container {
	align-items: flex-start !important;
	text-align: left !important;
}
.si-nav .is-menu-open .wp-block-navigation__submenu-container {
	padding-left: var(--wp--preset--spacing--30) !important;
	border-left: var(--wp--custom--borde) solid var(--wp--preset--color--oscuro-3) !important;
}
.si-nav .is-menu-open .wp-block-navigation__submenu-container {
	box-shadow: none;
	border: 0 !important;
	background: transparent !important;
	color: var(--wp--preset--color--oscuro-2) !important;
}
.si-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	color: var(--wp--preset--color--oscuro-2);
	font-size: var(--wp--preset--font-size--base);
}

/* ---------- Secciones ---------- */

.si-seccion--blanca {
	background: var(--wp--preset--color--superficie);
	border-top: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-bottom: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
}
.si-sobre-oscuro { color: var(--wp--preset--color--superficie); }
.si-sobre-oscuro :where(h1, h2, h3) { color: var(--wp--preset--color--superficie); }

/* Héroe: foto de ductos bajo un velo marino que se abre hacia la derecha */
.si-heroe {
	background-color: var(--wp--preset--color--marino-900);
	background-image:
		linear-gradient(90deg, var(--wp--preset--color--marino-900) 0%, var(--wp--preset--color--marino-900) 42%, color-mix(in srgb, var(--wp--preset--color--marino-900) 72%, transparent) 100%),
		url(../img/slider.jpg);
	background-size: cover;
	background-position: center right;
}
.si-grilla-heroe { align-items: center; }
.si-beneficios {
	font-size: var(--wp--preset--font-size--s);
	color: var(--wp--preset--color--oscuro-2);
}

/* Ficha técnica (tarjeta del héroe) */
.si-ficha {
	justify-self: end;
	width: 100%;
	max-width: var(--wp--custom--ancho--ficha);
	padding: var(--wp--preset--spacing--40);
	border-radius: var(--wp--custom--radio--destacado);
	background: var(--wp--preset--color--superficie);
	color: var(--wp--preset--color--texto-1);
	box-shadow: var(--wp--preset--shadow--elevada);
}
.si-ficha h2,
.si-ficha h3 { color: var(--wp--preset--color--marino-900); }
.si-ficha__foto {
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: var(--wp--custom--foto--heroe);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--fondo);
}
.si-ficha__foto img {
	max-height: 90%;
	width: auto !important;
	object-fit: contain;
}
.si-ficha .wp-block-button,
.si-ficha .wp-block-button__link { width: 100%; }

/* Tabla de especificaciones (estilo «ficha» de core/table) */
.wp-block-table.is-style-ficha { margin: 0; }
.wp-block-table.is-style-ficha table { border-collapse: collapse; width: 100%; }
.wp-block-table.is-style-ficha td {
	padding: var(--wp--preset--spacing--10) 0;
	border: 0;
	border-top: var(--wp--custom--borde) solid var(--wp--preset--color--linea-suave);
	font-size: var(--wp--preset--font-size--s);
	vertical-align: top;
}
.wp-block-table.is-style-ficha td:first-child {
	font-weight: 500;
	color: var(--wp--preset--color--texto-2);
}
.wp-block-table.is-style-ficha td:last-child {
	font-family: var(--wp--preset--font-family--datos);
	font-size: var(--wp--preset--font-size--xs);
	text-align: right;
}

/* Cifras */
.si-cifra {
	padding-left: var(--wp--preset--spacing--30);
	border-left: var(--wp--custom--raya--cifra) solid var(--wp--preset--color--acento-500);
}
.si-cifra > * { margin: 0; }
.si-cifra__numero {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xxl);
	font-weight: 700;
	line-height: 1;
	color: var(--wp--preset--color--marino-900);
}
.si-cifra__texto { color: var(--wp--preset--color--texto-2); }

/* Tarjeta con enlace estirado: toda la tarjeta se toca, el enlace real es el título */
.si-tile {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: var(--wp--preset--spacing--40);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--superficie);
	transition: border-color var(--si-transicion);
}
.si-tile:hover { border-color: var(--wp--preset--color--brand-500); }
.si-tile > * { margin: 0; }
.si-tile a { color: inherit; }
.si-tile a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.si-tile a:focus-visible { outline: none; }
.si-tile:has(a:focus-visible) { outline: var(--wp--custom--foco) solid var(--wp--preset--color--brand-500); outline-offset: var(--wp--custom--foco); }

.si-familia { min-height: var(--wp--custom--alto--familia); }
.si-familia.si-icono::before { color: var(--wp--preset--color--brand-500); }
.si-familia h3 {
	margin-top: auto;
	font-family: var(--wp--preset--font-family--texto);
	font-size: var(--wp--preset--font-size--m);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0;
	color: var(--wp--preset--color--texto-1);
}
.si-familia p {
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--texto-3);
}

.si-pilar p:not([class]) { color: var(--wp--preset--color--texto-2); }
.si-pilar .si-caja-icono::before { width: var(--wp--custom--icono--pilar); height: var(--wp--custom--icono--pilar); }

/* Tarjeta de equipo destacado */
.si-equipo {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--superficie);
}
.si-equipo > .wp-block-image {
	margin: 0;
	height: var(--wp--custom--foto--alto);
	border-bottom: var(--wp--custom--borde) solid var(--wp--preset--color--linea-suave);
}
.si-equipo > .wp-block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.si-equipo__cuerpo { flex: 1; display: flex; flex-direction: column; }
.si-equipo__cuerpo > * { margin: 0; }
.si-equipo__cuerpo p:not([class]) {
	font-size: var(--wp--preset--font-size--s);
	color: var(--wp--preset--color--texto-2);
}
.si-equipo .wp-block-table { margin-top: auto; }

/* Contacto */
.si-contacto.si-tile p:not([class]) { font-size: var(--wp--preset--font-size--s); color: var(--wp--preset--color--texto-2); }
.si-contacto .si-contacto__rotulo {
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 600;
	letter-spacing: var(--wp--custom--espaciado-letra--rotulo);
	text-transform: uppercase;
	color: var(--wp--preset--color--texto-3);
}
.si-contacto h3 { overflow-wrap: anywhere; }
.si-contacto--oscuro {
	background: var(--wp--preset--color--marino-900);
	border-color: var(--wp--preset--color--marino-900);
	color: var(--wp--preset--color--superficie);
}
.si-contacto--oscuro h3 { color: var(--wp--preset--color--superficie); }
.si-tile.si-contacto--oscuro p:not([class]),
.si-tile.si-contacto--oscuro .si-contacto__rotulo { color: var(--wp--preset--color--oscuro-2); }

/* Encabezado arriba y las tres vías debajo: a la derecha quedaban angostas y el
   correo se partía a mitad de palabra. */
.si-grilla-contacto > * { margin-block: 0; }
.si-grilla-contacto {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--wp--preset--spacing--50);
}

/* Banda «a medida» */
.si-banda {
	background-color: var(--wp--preset--color--marino-900);
	background-image:
		linear-gradient(0deg, color-mix(in srgb, var(--wp--preset--color--marino-900) 82%, transparent), color-mix(in srgb, var(--wp--preset--color--marino-900) 82%, transparent)),
		url(../img/slider.jpg);
	background-size: cover;
	background-position: center;
}
.si-banda .si-bajada { max-width: var(--wp--custom--ancho--banda); font-size: var(--wp--preset--font-size--l); }

/* ---------- Pie ---------- */

.si-pie {
	background: var(--wp--preset--color--marino-900);
	color: var(--wp--preset--color--oscuro-3);
	font-size: var(--wp--preset--font-size--s);
}
.si-pie a { color: var(--wp--preset--color--oscuro-3); }
.si-pie a:hover { color: var(--wp--preset--color--superficie); }
.si-pie h3 {
	margin: 0;
	font-size: var(--wp--preset--font-size--l);
	letter-spacing: var(--wp--custom--espaciado-letra--etiqueta);
	color: var(--wp--preset--color--superficie);
}
.si-pie strong { color: var(--wp--preset--color--superficie); font-weight: 600; }
.si-pie p { margin: 0; }
.si-pie .si-lista-enlaces a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--custom--control--toque);
	font-size: var(--wp--preset--font-size--base);
}
.si-pie .si-enlace-flecha a { color: var(--wp--preset--color--brand-200); }
.si-pie__legal {
	border-top: var(--wp--custom--borde) solid color-mix(in srgb, var(--wp--preset--color--superficie) 10%, transparent);
}
.si-pie__legal a { color: var(--wp--preset--color--superficie); }
.si-grilla-pie {
	display: grid;
	grid-template-columns: 1.3fr 0.8fr 1fr 1fr;
	gap: var(--wp--preset--spacing--50);
}

/* ---------- Adaptación ---------- */

@media (max-width: 1099px) {
	.si-grilla-pie { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	/* El menú pasa a cajón antes que el 600 de WordPress: con seis enlaces y
	   el botón de cotizar no entra en una fila por debajo de 1100. */
	.si-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.si-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.si-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { display: flex; }
}

@media (max-width: 899px) {
	.si-oculto-tableta { display: none !important; }
	.si-heroe {
		background-image:
			linear-gradient(180deg, var(--wp--preset--color--marino-900) 0%, var(--wp--preset--color--marino-900) 55%, color-mix(in srgb, var(--wp--preset--color--marino-900) 78%, transparent) 100%),
			url(../img/slider.jpg);
	}
	.si-ficha { justify-self: stretch; max-width: none; }
}

@media (max-width: 639px) {
	.si-oculto-telefono { display: none !important; }
	.si-grilla-pie { grid-template-columns: minmax(0, 1fr); }
	.si-apilar-telefono { flex-direction: column; align-items: stretch !important; }
	.si-apilar-telefono .wp-block-button,
	.si-apilar-telefono .wp-block-button__link { width: 100%; }
}

/* ---------- WooCommerce: controles sueltos hasta rediseñar tienda y ficha ---------- */

/* Los desplegables y cantidades de WooCommerce miden lo mismo que un botón. */
.woocommerce-ordering select,
.woocommerce .variations select,
.woocommerce .quantity input.qty {
	min-height: var(--wp--custom--control--alto);
	padding: 0 var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background-color: var(--wp--preset--color--superficie);
	font: inherit;
	color: var(--wp--preset--color--texto-1);
}

/* =====================================================================
   Páginas interiores, catálogo, ficha, blog y formularios (8/11/2026)
   ===================================================================== */

/* ---------- Encabezados de página ---------- */

.si-encabezado--ancho { max-width: var(--wp--custom--ancho--banda); }

.si-heroe-pagina {
	background-color: var(--wp--preset--color--marino-900);
	background-image:
		linear-gradient(90deg, var(--wp--preset--color--marino-900) 0%, color-mix(in srgb, var(--wp--preset--color--marino-900) 86%, transparent) 100%),
		url(../img/slider.jpg);
	background-size: cover;
	background-position: center;
}
.si-heroe-pagina .si-bajada { color: var(--wp--preset--color--oscuro-2); }
.si-texto-corrido > * { margin: 0; color: var(--wp--preset--color--texto-2); }
.si-sobre-oscuro .si-texto-corrido > * { color: var(--wp--preset--color--oscuro-2); }

/* Migas de pan */
.si-migas {
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--texto-3);
}
.si-migas a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--custom--control--toque);
}

/* Términos (categorías) como etiqueta técnica */
.si-terminos a,
.si-etiqueta a { color: inherit; }
.si-terminos .wp-block-post-terms__separator { color: var(--wp--preset--color--texto-3); }

/* ---------- Nosotros y servicios ---------- */

.si-area { align-items: center; }
.si-area h3 { font-size: var(--wp--preset--font-size--l); }
.si-area .si-caja-icono { flex: none; }

.si-linea {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	margin: 0;
	padding: var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--fondo);
	font-weight: 600;
	color: var(--wp--preset--color--texto-1);
}
.si-linea::before { color: var(--wp--preset--color--brand-500); }

.si-marca {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--superficie);
}
.si-marca img {
	height: var(--wp--custom--foto--marca);
	width: 100%;
	object-fit: contain;
}

.si-servicio h3 { font-size: var(--wp--preset--font-size--xl); }
.si-ilustracion {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	min-height: var(--wp--custom--foto--ilustracion);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--brand-100);
	color: var(--wp--preset--color--brand-500);
}
.si-ilustracion::before {
	width: var(--wp--custom--foto--miniatura);
	height: var(--wp--custom--foto--miniatura);
}

/* ---------- Preguntas frecuentes ---------- */

.si-pregunta {
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--superficie);
}
.si-pregunta summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	min-height: var(--wp--custom--control--alto);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--l);
	font-weight: 600;
	color: var(--wp--preset--color--marino-900);
	cursor: pointer;
	list-style: none;
}
.si-pregunta summary::-webkit-details-marker { display: none; }
.si-pregunta summary::after {
	content: "";
	flex: none;
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
	background: currentColor;
	-webkit-mask: url(../iconos/flecha.svg) center / contain no-repeat;
	mask: url(../iconos/flecha.svg) center / contain no-repeat;
	transform: rotate(90deg);
	transition: transform var(--si-transicion);
}
.si-pregunta[open] summary::after { transform: rotate(-90deg); }
.si-pregunta > :not(summary) {
	margin: 0;
	padding: 0 var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--texto-2);
}
.si-pregunta > :last-child { padding-bottom: var(--wp--preset--spacing--40); }
.si-pregunta > ul { padding-left: var(--wp--preset--spacing--60); }

/* ---------- Catálogo: familias, grilla y tarjeta ---------- */

.si-familias ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--10);
	margin: 0;
	padding: 0;
	list-style: none;
}
.si-familias + .si-familias { margin-top: var(--wp--preset--spacing--20); }
.si-familias a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--custom--ancho--chip);
	padding: 0 var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background: var(--wp--preset--color--superficie);
	font-size: var(--wp--preset--font-size--s);
	font-weight: 500;
	color: var(--wp--preset--color--texto-1);
}
.si-familias a:hover { border-color: var(--wp--preset--color--brand-500); color: var(--wp--preset--color--brand-700); }
.si-familias a[aria-current] {
	border-color: var(--wp--preset--color--marino-900);
	background: var(--wp--preset--color--marino-900);
	color: var(--wp--preset--color--superficie);
}
.si-familias + .si-familias a { background: var(--wp--preset--color--fondo); }
.si-familias + .si-familias a[aria-current] { background: var(--wp--preset--color--marino-900); }

.si-grilla-productos {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
	gap: var(--wp--preset--spacing--40);
}
.si-producto {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--tarjeta);
	background: var(--wp--preset--color--superficie);
	transition: border-color var(--si-transicion);
}
.si-producto:hover { border-color: var(--wp--preset--color--brand-500); }
.si-producto:has(a:focus-visible) { outline: var(--wp--custom--foco) solid var(--wp--preset--color--brand-500); outline-offset: var(--wp--custom--foco); }
.si-producto__foto {
	margin: 0;
	aspect-ratio: 1;
	border-bottom: var(--wp--custom--borde) solid var(--wp--preset--color--linea-suave);
	background: var(--wp--preset--color--superficie);
}
.si-producto__foto img { width: 100%; height: 100%; object-fit: contain; }
.si-producto__cuerpo {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--40);
}
.si-producto__cuerpo > * { margin: 0; }
.si-producto h3 {
	font-size: var(--wp--preset--font-size--l);
	font-weight: 600;
	line-height: 1.2;
}
.si-producto h3 a { color: var(--wp--preset--color--marino-900); }
.si-producto h3 a::after { content: ""; position: absolute; inset: 0; }
.si-producto h3 a:focus-visible { outline: none; }
.si-producto__ver {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--10);
	margin-top: auto !important;
	padding-top: var(--wp--preset--spacing--10);
	font-weight: 600;
	color: var(--wp--preset--color--brand-700);
}
.si-producto__ver::after {
	content: "";
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
	background: currentColor;
	-webkit-mask: url(../iconos/flecha.svg) center / contain no-repeat;
	mask: url(../iconos/flecha.svg) center / contain no-repeat;
}

/* Paginación (catálogo y blog) */
.si-paginacion ul,
.si-paginacion.wp-block-query-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--10);
	margin: var(--wp--preset--spacing--50) 0 0;
	padding: 0;
	list-style: none;
}
.si-paginacion .page-numbers,
.si-paginacion a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: var(--wp--custom--control--alto);
	min-height: var(--wp--custom--control--alto);
	padding: 0 var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background: var(--wp--preset--color--superficie);
	font-weight: 600;
}
.si-paginacion .page-numbers.current {
	border-color: var(--wp--preset--color--brand-500);
	background: var(--wp--preset--color--brand-500);
	color: var(--wp--preset--color--superficie);
}

/* ---------- Ficha de producto ---------- */

.si-ficha-producto { align-items: start; }
.si-ficha-producto__datos > * { margin: 0; }
.si-ficha-producto .wp-block-post-title { line-height: 1.05; }

.si-galeria { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--20); }
.si-galeria__principal {
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	overflow: hidden;
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--destacado);
	background: var(--wp--preset--color--superficie);
}
.si-galeria__principal img { width: 100%; height: 100%; object-fit: contain; }
.si-galeria__principal--vacia { color: var(--wp--preset--color--linea); }
.si-galeria__miniaturas {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(var(--wp--custom--foto--miniatura), 1fr));
	gap: var(--wp--preset--spacing--10);
	margin: 0;
	padding: 0;
	list-style: none;
}
.si-galeria__miniaturas a {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background: var(--wp--preset--color--superficie);
}
.si-galeria__miniaturas a[aria-current] { border-color: var(--wp--preset--color--brand-500); box-shadow: 0 0 0 var(--wp--custom--borde) var(--wp--preset--color--brand-500); }
.si-galeria__miniaturas img { width: 100%; height: 100%; object-fit: contain; }

/* La descripción del producto: títulos en negrita como etiquetas, listas con tilde */
.si-descripcion { color: var(--wp--preset--color--texto-2); }
.si-descripcion > * { margin: 0 0 var(--wp--preset--spacing--20); }
.si-descripcion > :last-child { margin-bottom: 0; }
.si-descripcion p > strong:first-child {
	display: block;
	margin-top: var(--wp--preset--spacing--30);
	font-family: var(--wp--preset--font-family--datos);
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 500;
	letter-spacing: var(--wp--custom--espaciado-letra--etiqueta);
	text-transform: uppercase;
	color: var(--wp--preset--color--brand-500);
}
.si-descripcion > p:first-child > strong:first-child { margin-top: 0; }
.si-descripcion ul { padding: 0; list-style: none; }
.si-descripcion li {
	display: flex;
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--10) 0;
	border-top: var(--wp--custom--borde) solid var(--wp--preset--color--linea-suave);
}
.si-descripcion li::before {
	content: "";
	flex: none;
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
	margin-top: var(--wp--custom--borde);
	background: var(--wp--preset--color--brand-500);
	-webkit-mask: url(../iconos/check.svg) center / contain no-repeat;
	mask: url(../iconos/check.svg) center / contain no-repeat;
}

.si-modelos > * { margin: 0; }
.si-modelos ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--10);
	margin-top: var(--wp--preset--spacing--20);
	padding: 0;
	list-style: none;
}
.si-modelos li {
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background: var(--wp--preset--color--superficie);
	font-family: var(--wp--preset--font-family--datos);
	font-size: var(--wp--preset--font-size--xs);
}

.si-documentos { margin: 0; padding: 0; list-style: none; }
.si-documento {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: var(--wp--preset--spacing--20);
	min-height: var(--wp--custom--control--alto);
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background: var(--wp--preset--color--superficie);
	font-weight: 600;
}
.si-documento::before {
	content: "";
	width: var(--wp--custom--icono--m);
	height: var(--wp--custom--icono--m);
	background: currentColor;
	-webkit-mask: url(../iconos/documento.svg) center / contain no-repeat;
	mask: url(../iconos/documento.svg) center / contain no-repeat;
}
.si-documento span { font-weight: 400; font-size: var(--wp--preset--font-size--s); color: var(--wp--preset--color--texto-3); }

.si-whatsapp .wp-block-button__link::before {
	content: "";
	width: var(--wp--custom--icono--s);
	height: var(--wp--custom--icono--s);
	background: var(--wp--preset--color--whatsapp);
	-webkit-mask: url(../iconos/whatsapp.svg) center / contain no-repeat;
	mask: url(../iconos/whatsapp.svg) center / contain no-repeat;
}

/* ---------- Formularios de consulta ---------- */

.si-grilla-formulario > * { margin-block: 0; }
.si-grilla-formulario {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
	gap: var(--wp--preset--spacing--60);
	align-items: start;
}
.si-grilla-formulario:has(> .si-tile--formulario:first-child) { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
.si-tile--formulario { padding: var(--wp--preset--spacing--50); }

.si-form,
.si-form * { box-sizing: border-box; }
.si-form { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--40); }
.si-form__campos {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 14rem), 1fr));
	gap: var(--wp--preset--spacing--30);
}
.si-campo { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--10); margin: 0; }
.si-campo--ancho { grid-column: 1 / -1; }
.si-campo label,
.si-elegir legend { font-size: var(--wp--preset--font-size--s); font-weight: 600; color: var(--wp--preset--color--texto-1); }
.si-campo label span { font-weight: 400; color: var(--wp--preset--color--texto-3); }
.si-campo input,
.si-campo textarea {
	width: 100%;
	min-height: var(--wp--custom--control--alto);
	padding: var(--wp--preset--spacing--20);
	border: var(--wp--custom--borde) solid var(--wp--preset--color--linea);
	border-radius: var(--wp--custom--radio--control);
	background: var(--wp--preset--color--superficie);
	font: inherit;
	font-size: var(--wp--preset--font-size--base);
	color: var(--wp--preset--color--texto-1);
}
.si-campo input:focus-visible,
.si-campo textarea:focus-visible {
	outline: var(--wp--custom--foco) solid var(--wp--preset--color--brand-500);
	outline-offset: 0;
	border-color: var(--wp--preset--color--brand-500);
}
.si-elegir { display: flex; flex-direction: row; flex-wrap: wrap; gap: var(--wp--preset--spacing--10) var(--wp--preset--spacing--40); padding: 0; border: 0; }
.si-elegir legend { width: 100%; margin-bottom: var(--wp--preset--spacing--10); padding: 0; }
.si-elegir label {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--10);
	min-height: var(--wp--custom--control--toque);
	font-weight: 400;
}
.si-elegir input { width: var(--wp--custom--icono--m); height: var(--wp--custom--icono--m); min-height: 0; accent-color: var(--wp--preset--color--brand-500); }
.si-form .wp-block-button__link { cursor: pointer; font: inherit; font-weight: 600; }
.si-form__trampa { position: absolute; left: -100vw; width: var(--wp--custom--borde); height: var(--wp--custom--borde); overflow: hidden; }
.si-form__aviso {
	margin: 0;
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--radio--control);
	font-weight: 600;
}
.si-form__aviso--ok { background: var(--wp--preset--color--exito-100); color: var(--wp--preset--color--exito-700); }
.si-form__aviso--error { background: var(--wp--preset--color--peligro-100); color: var(--wp--preset--color--peligro-700); }

/* ---------- Blog ---------- */

.si-nota { padding: 0; overflow: hidden; }
.si-nota > * { margin-inline: var(--wp--preset--spacing--40) !important; }
.si-nota > .si-nota__foto { margin: 0 !important; }
.si-nota > :last-child { margin-bottom: var(--wp--preset--spacing--40) !important; }
.si-nota__foto img { border-radius: 0; }
.si-nota .wp-block-post-date { margin-top: var(--wp--preset--spacing--30) !important; }
.si-nota h3 { font-size: var(--wp--preset--font-size--l); font-weight: 600; line-height: 1.2; }
.si-nota h3 a { color: var(--wp--preset--color--marino-900); }
.si-nota__resumen { font-size: var(--wp--preset--font-size--s); color: var(--wp--preset--color--texto-2); }
.si-nota__resumen .wp-block-post-excerpt__more-text { display: none; }

.si-articulo__foto img { border-radius: var(--wp--custom--radio--tarjeta); }
.si-articulo { font-size: var(--wp--preset--font-size--m); color: var(--wp--preset--color--texto-2); }
.si-articulo :where(h2) { font-size: var(--wp--preset--font-size--xl); margin-top: var(--wp--preset--spacing--50); }
.si-articulo :where(h3, h4) { font-size: var(--wp--preset--font-size--l); margin-top: var(--wp--preset--spacing--40); }
.si-articulo :where(p, li) { line-height: 1.7; }
.si-articulo strong { color: var(--wp--preset--color--texto-1); }
.si-articulo a { text-decoration: underline; text-underline-offset: 0.2em; }
.si-articulo img { height: auto; border-radius: var(--wp--custom--radio--tarjeta); }

/* ---------- Kit de la marca ---------- */

.si-kit { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--40); }
.si-kit__titulo { margin: var(--wp--preset--spacing--40) 0 0; font-size: var(--wp--preset--font-size--xl); }
.si-kit ul { display: grid; gap: var(--wp--preset--spacing--30); margin: 0; padding: 0; list-style: none; }
.si-kit code { font-family: var(--wp--preset--font-family--datos); font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--texto-3); }
.si-kit__colores { grid-template-columns: repeat(auto-fill, minmax(min(100%, 10rem), 1fr)); }
.si-kit__colores li { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--10); font-size: var(--wp--preset--font-size--s); }
.si-kit__muestra { height: var(--wp--custom--foto--miniatura); border: var(--wp--custom--borde) solid var(--wp--preset--color--linea); border-radius: var(--wp--custom--radio--tarjeta); }
.si-kit__letras li { display: grid; grid-template-columns: minmax(0, 8rem) minmax(0, 1fr); align-items: baseline; gap: var(--wp--preset--spacing--30); }
.si-kit__display { font-family: var(--wp--preset--font-family--display); font-weight: 700; line-height: 1; }
.si-kit__aires li,
.si-kit__radios li { display: flex; align-items: center; gap: var(--wp--preset--spacing--30); }
.si-kit__aires span { display: block; height: var(--wp--custom--icono--m); background: var(--wp--preset--color--brand-500); }
.si-kit__radios { grid-template-columns: repeat(auto-fill, minmax(min(100%, 12rem), 1fr)); }
.si-kit__radios span { width: var(--wp--custom--foto--miniatura); height: var(--wp--custom--foto--miniatura); border: var(--wp--custom--foco) solid var(--wp--preset--color--brand-500); }
.si-kit__fila { gap: var(--wp--preset--spacing--20); }
.si-kit__oscuro { padding: var(--wp--preset--spacing--40); border-radius: var(--wp--custom--radio--tarjeta); background: var(--wp--preset--color--marino-900); }
.si-kit__nota { margin: 0; }

/* ---------- Adaptación de las piezas nuevas ---------- */

@media (max-width: 899px) {
	.si-grilla-formulario,
	.si-grilla-formulario:has(> .si-tile--formulario:first-child) { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 639px) {
	/* Tarjeta de producto en lista: foto chica a la izquierda, texto a la derecha. */
	.si-grilla-productos { gap: var(--wp--preset--spacing--20); }
	.si-producto { flex-direction: row; }
	.si-producto__foto {
		flex: none;
		width: var(--wp--custom--foto--lista);
		border-bottom: 0;
		border-right: var(--wp--custom--borde) solid var(--wp--preset--color--linea-suave);
	}
	.si-producto__cuerpo { padding: var(--wp--preset--spacing--30); }
	.si-producto h3 { font-size: var(--wp--preset--font-size--m); }
	.si-tile--formulario { padding: var(--wp--preset--spacing--30); }
	.si-form .wp-block-button,
	.si-form .wp-block-button__link { width: 100%; }
	.si-kit__letras li { grid-template-columns: minmax(0, 1fr); }
}

/* El editor le quita el borde a los botones; los estilos con borde lo declaran entero. */
.editor-styles-wrapper .is-style-fantasma .wp-block-button__link { border: var(--wp--custom--borde) solid var(--wp--preset--color--oscuro-3); }
.editor-styles-wrapper .is-style-contorno .wp-block-button__link { border: var(--wp--custom--borde) solid var(--wp--preset--color--linea); }
