/* Landings de linea v4 (Vecta, etc.)
 * CSS estructural + interacciones. Maquetacion fina pendiente.
 * Sin acentos en comentarios.
 */

/* ---- Tipografia Figma: Texto24 / Texto48 + body ----
 * Familia: DIN Pro (ya enqueued en el tema; sans geometrica del brand).
 * Texto24 = label 24px | Texto48 = titulo 48px | body ~16px (cajas Figma h=24).
 */
.landing_vecta_hero,
.landing_vecta_unico_origen,
.landing_vecta_modular,
.landing_vecta_continuidad,
.landing_vecta_colecciones,
.landing_vecta_eficiencia,
.landing_vecta_mas_alla {
	--vecta-font: 'DIN Pro', 'Roboto', sans-serif;
	--vecta-ink: #111111;
	--vecta-muted: #c8c8c8;
	--vecta-label: #b0b0b0;
	--vecta-label-on: #404040;
	--vecta-bg-soft: #f1f1f1;
	/* Figma desktop: muchas secciones py 200 / px 50 */
	--vecta-pad-y: 200px;
	--vecta-pad-x: 50px;
	/* Compensa #menu-bar fijo (width 80px) — mismo patron que Artech / home */
	--vecta-menu-offset: 80px;
	--vecta-max: 1600px;
	--vecta-fs-label: 24px;   /* eyebrow: DIN Pro Light 24 */
	--vecta-lh-label: 36px;
	--vecta-fs-title: 48px;   /* titulo: DIN Pro Bold 48 */
	--vecta-lh-title: 56px;   /* > fs: acentos/descendentes (g,j,q); 36 recortaba con clip text */
	--vecta-fs-body: 24px;    /* texto normal: DIN Pro Regular 24px */
	--vecta-fs-meta: 16px;    /* FORMATOS secundario, notas, paginacion */
	--vecta-lh-body: 30px;
	--vecta-fw-light: 300;    /* DIN Pro Light */
	--vecta-fw-regular: 400;  /* DIN Pro Regular */
	--vecta-fw-bold: 700;     /* DIN Pro Bold */
	font-family: var(--vecta-font);
	font-weight: var(--vecta-fw-regular);
	color: var(--vecta-ink);
}
.landing_vecta_hero *,
.landing_vecta_unico_origen *,
.landing_vecta_modular *,
.landing_vecta_continuidad *,
.landing_vecta_colecciones *,
.landing_vecta_eficiencia *,
.landing_vecta_mas_alla * {
	font-family: inherit;
}

/* ---- Secciones normales: dentro del vc_container (max 80%).
 * Inset Figma 50 L/R + 200 T/B. Cancela padding-left:80 global de .vc_row.
 * Continuidad + Ingenieria: misma caja L/R que Mas alla.
 */
body > div.vc_container > div.vc_row.landing_vecta_unico_origen,
body > div.vc_container > div.vc_row.landing_vecta_modular,
body > div.vc_container > div.vc_row.landing_vecta_colecciones,
body > div.vc_container > div.vc_row.landing_vecta_continuidad,
body > div.vc_container > div.vc_row.landing_vecta_eficiencia,
body > div.vc_container > div.vc_row.landing_vecta_mas_alla,
.landing_vecta_unico_origen,
.landing_vecta_modular,
.landing_vecta_colecciones,
.landing_vecta_continuidad,
.landing_vecta_eficiencia,
.landing_vecta_mas_alla {
	box-sizing: border-box;
	padding-top: var(--vecta-pad-y) !important;
	padding-bottom: var(--vecta-pad-y) !important;
	padding-left: var(--vecta-pad-x) !important;
	padding-right: var(--vecta-pad-x) !important;
}
/* Entre Unico origen y Sistema modular: 200px total (100+100) */
body > div.vc_container > div.vc_row.landing_vecta_unico_origen,
.landing_vecta_unico_origen {
	padding-bottom: 100px !important;
}
body > div.vc_container > div.vc_row.landing_vecta_modular,
.landing_vecta_modular {
	padding-top: 100px !important;
}
/* Continuidad + Ingenieria: fila full-bleed (area util = 100vw - menu 80).
 * Fondo gris en el propio row (no ::before: body overflow:hidden lo recorta).
 * Padding: misma guia L/R que Mas alla / video formatos. */
body > div.vc_container > div.vc_row.landing_vecta_continuidad,
body > div.vc_container > div.vc_row.landing_vecta_eficiencia,
.landing_vecta_continuidad,
.landing_vecta_eficiencia {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	width: calc(100vw - 80px) !important;
	max-width: none !important;
	margin-left: calc((100% - (100vw - 80px)) / 2) !important;
	margin-right: 0 !important;
	overflow: visible !important;
	background-color: var(--vecta-bg-soft) !important;
	/* (full - container)/2 + pad 50 - gutter 15 → content = Mas alla */
	padding-left: calc((100vw - 80px - 100%) / 2 + var(--vecta-pad-x) - 15px) !important;
	padding-right: calc((100vw - 80px - 100%) / 2 + var(--vecta-pad-x) - 15px) !important;
}
.landing_vecta_continuidad::before,
.landing_vecta_eficiencia::before {
	content: none !important;
	display: none !important;
}
.landing_vecta_continuidad > .vc_column_container,
.landing_vecta_eficiencia > .vc_column_container {
	position: relative;
	z-index: 1;
	float: none !important;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
/* 15px Bakery = mismas guias L/R que video formatos / Mas alla */
.landing_vecta_continuidad > .vc_column_container > .vc_column-inner,
.landing_vecta_eficiencia > .vc_column_container > .vc_column-inner {
	padding-left: 15px !important;
	padding-right: 15px !important;
	width: 100% !important;
	box-sizing: border-box;
}

/* Titulos text_anime centrados */
.landing_vecta_unico_origen .landing_text_anime,
.landing_vecta_continuidad .landing_text_anime,
.landing_vecta_eficiencia .landing_text_anime {
	text-align: center;
}
.landing_vecta_unico_origen .landing_text_anime_title,
.landing_vecta_continuidad .landing_text_anime_title,
.landing_vecta_eficiencia .landing_text_anime_title {
	text-align: center;
}
/* 100px debajo de: lenguaje arquitectonico / logica de eficiencia / del pavimento */
.landing_vecta_continuidad .landing_text_anime,
.landing_vecta_eficiencia .landing_text_anime,
.landing_vecta_mas_alla .landing_text_anime {
	margin-bottom: 100px;
}

.landing_vecta_unico_origen .wpb_text_column p,
.landing_vecta_modular .wpb_text_column p,
.landing_vecta_continuidad .wpb_text_column p,
.landing_vecta_colecciones .wpb_text_column p,
.landing_vecta_eficiencia .wpb_text_column p,
.landing_vecta_mas_alla .wpb_text_column p {
	font-family: var(--vecta-font);
	font-size: var(--vecta-fs-body);
	line-height: var(--vecta-lh-body);
	font-weight: var(--vecta-fw-regular); /* DIN Pro Regular */
	color: #333;
	max-width: 920px;
}
/* Intro colecciones: una linea ancha en Figma */
.landing_vecta_colecciones > .vc_column_container > .vc_column-inner > .wpb_wrapper > .wpb_text_column p {
	max-width: none;
}
/* Mas alla: textos a ancho completo (anula max-width 920px) */
.landing_vecta_mas_alla .wpb_text_column p {
	max-width: none;
	width: 100%;
}

.landing_vecta_unico_origen img,
.landing_vecta_continuidad img,
.landing_vecta_eficiencia img,
.landing_vecta_mas_alla img {
	max-width: 100%;
	height: auto;
}

/* Reveal generico (JS anade .is-visible) */
.landing_vecta_reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity 0.75s ease, transform 0.75s ease;
}
.landing_vecta_reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* ---- Hero: 100% del ancho util (100vw - 80px menu).
 * body ya tiene margin-left:80 (#menu-bar); cancelamos el padding-left:80
 * global de .vc_row y rompemos el max-width:80% del .vc_container.
 */
body > div.vc_container > div.vc_row.landing_vecta_hero,
.landing_vecta_hero {
	position: relative;
	padding: 0 !important;
	overflow: hidden;
	box-sizing: border-box;
	width: calc(100vw - 80px) !important;
	max-width: none !important;
	min-height: 100vh;
	height: 100vh;
	/* Centrar el breakout respecto al vc_container (max 80%) */
	margin-left: calc((100% - (100vw - 80px)) / 2) !important;
	margin-right: 0 !important;
}
.landing_vecta_hero > .vc_column_container,
.landing_vecta_hero > .vc_column_container > .vc_column-inner {
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
	max-width: none !important;
	height: 100%;
	min-height: 100vh;
}
.landing_vecta_hero .wpb_wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 100vh;
}
.landing_vecta_hero .landing_vecta_hero_video,
.landing_vecta_hero .landing_vecta_hero_video .landing_video {
	margin: 0;
	width: 100%;
	max-width: none;
	height: 100vh;
	max-height: none;
	overflow: hidden;
	background: #fff;
	/* recorta letterbox: abajo 5px (borde inferior residual) */
	clip-path: inset(1px 2px 5px 1px);
	-webkit-clip-path: inset(1px 2px 5px 1px);
}
.landing_vecta_hero .landing_vecta_hero_video .landing_video_el {
	display: block;
	left: auto;
	width: calc(100% + 10px);
	height: calc(100% + 12px);
	max-height: none;
	margin: -4px -5px -8px -5px;
	object-fit: cover;
	object-position: center;
	background: #fff;
	transform: none;
}

/* Hero: sin boton play; logos suben al acabar el video */
.landing_vecta_hero .landing_vecta_hero_video .landing_video_play {
	display: none !important;
}
.landing_vecta_hero .landing_vecta_hero_video {
	pointer-events: none;
}

/* Hero overlay: centrado; logos opacity 0 hasta .is-hero-ready */
.landing_vecta_hero .landing_vecta_hero_overlay {
	position: absolute;
	left: 50%;
	top: 50%;
	bottom: auto;
	z-index: 20;
	width: min(92%, 720px);
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 100px;
	pointer-events: none;
	overflow: visible;
}
/*
 * Logos Bakery originales: ocultos desde el primer paint.
 * Si no, en movil parpadean a la izquierda antes de que JS monte el overlay.
 */
.landing_vecta_hero .wpb_wrapper > .wpb_single_image.landing_vecta_hero_logos,
.landing_vecta_hero .wpb_wrapper > .landing_vecta_hero_logos,
.landing_vecta_hero .landing_vecta_hero_logos_source {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	position: absolute !important;
	left: -9999px !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}
.landing_vecta_hero .landing_vecta_hero_overlay .landing_vecta_hero_logos {
	margin: 0 !important;
	flex: 0 0 auto;
	opacity: 0;
	/*
	 * Desde abajo del contenedor al centro; opacity 0→1;
	 * desaceleracion (ease-out). Disparo: ultimos 3s del video (JS).
	 */
	transform: translateY(min(28vh, 220px));
	transition: opacity 2.5s cubic-bezier(0.16, 1, 0.3, 1),
		transform 2.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.landing_vecta_hero .landing_vecta_hero_overlay .landing_vecta_hero_logo {
	transition-delay: 0.05s;
	width: 380px;
}
.landing_vecta_hero .landing_vecta_hero_overlay .landing_vecta_hero_stay_true {
	transition-delay: 0.2s;
	width: 250px;
}
.landing_vecta_hero.is-hero-ready .landing_vecta_hero_overlay .landing_vecta_hero_logos {
	opacity: 1;
	transform: translateY(0);
}
.landing_vecta_hero .landing_vecta_hero_overlay .landing_vecta_hero_logos img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto;
	filter: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
	-webkit-filter: none !important;
}
.landing_vecta_hero .landing_vecta_hero_overlay .landing_vecta_hero_logo img {
	width: 380px;
	height: 73px;
	object-fit: contain;
}
.landing_vecta_hero .landing_vecta_hero_overlay .landing_vecta_hero_stay_true img {
	width: 250px;
	height: auto;
}

/* ---- text_anime = Texto24 + Texto48 (gradient wipe; reinicia al salir de viewport) ---- */
.landing_text_anime {
	position: relative;
	margin-bottom: 40px;
	font-family: var(--vecta-font);
}
.landing_text_anime_label {
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-family: var(--vecta-font);
	font-size: var(--vecta-fs-label); /* DIN Pro Light 24px */
	line-height: var(--vecta-lh-label); /* 36px */
	font-weight: var(--vecta-fw-light); /* 300 */
	color: var(--vecta-label);
	margin-bottom: 15px;
	transition: color 0.7s ease;
}
.landing_text_anime.is-visible .landing_text_anime_label {
	color: var(--vecta-label-on);
}
.landing_text_anime_title {
	position: relative;
	display: inline-block;
	max-width: 100%;
	font-family: var(--vecta-font);
	font-size: var(--vecta-fs-title); /* DIN Pro Bold 48px */
	line-height: var(--vecta-lh-title);
	font-weight: var(--vecta-fw-bold); /* 700 */
	letter-spacing: -0.01em;
	/* hueco extra: background-clip:text recorta glifos si la caja es justa */
	padding: 0.08em 0.02em;
	color: var(--vecta-muted);
	background-image: linear-gradient(
		to right,
		var(--vecta-ink) 50%,
		var(--vecta-muted) 50%
	);
	background-size: 200% 100%;
	background-position: 100% 0;
	background-repeat: no-repeat;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}
.landing_text_anime.is-visible .landing_text_anime_title {
	animation: landing_text_anime_reveal 1.1s ease forwards;
}
@keyframes landing_text_anime_reveal {
	to {
		background-position: 0 0;
	}
}

/* ---- Video embebido ----
 * Borde negro L/R/abajo: subpixel del <video>.
 * Fix: overflow hidden + video centrado con overscan (sin clip-path inset).
 */
.landing_video {
	position: relative;
	width: 100%;
	overflow: hidden;
	margin: 24px 0 48px;
	background: #fff;
	line-height: 0;
	font-size: 0;
	cursor: pointer;
	transform: none;
	border: 0;
	outline: none;
}
.landing_video_el {
	display: block;
	position: relative;
	left: 50%;
	width: calc(100% + 6px);
	max-width: none;
	height: auto;
	vertical-align: top;
	margin: -3px 0 -4px;
	padding: 0;
	border: 0;
	outline: none;
	background: #fff;
	object-fit: cover;
	object-position: center;
	transform: translateX(-50%);
	transition: opacity 0.35s ease;
}
.landing_video.is-paused .landing_video_el {
	opacity: 0.85;
}
.landing_video_play {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 64px;
	height: 64px;
	margin: -32px 0 0 -32px;
	border-radius: 50%;
	border: 2px solid rgba(255, 255, 255, 0.9);
	background: rgba(0, 0, 0, 0.35);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease, transform 0.3s ease;
	transform: scale(0.9);
	z-index: 2;
}
.landing_video_play:before {
	content: '';
	position: absolute;
	left: 24px;
	top: 20px;
	border-style: solid;
	border-width: 12px 0 12px 18px;
	border-color: transparent transparent transparent #fff;
}
.landing_video.is-paused .landing_video_play {
	opacity: 1;
	transform: scale(1);
}
.landing_vecta_formatos_video {
	/* Figma: video Multiples posibilidades — 100 top / 100 bottom */
	margin-top: 100px;
	margin-bottom: 100px;
	padding-top: 0;
	padding-bottom: 0;
	background: #fff;
	overflow: hidden;
	cursor: default;
	pointer-events: none;
	/*
	 * Estado inicial Figma: franja vertical centrada 466px.
	 * Luego se abre por ambos lados hasta ancho completo.
	 */
	/* max(0px, …): si el viewport < 466px no recorta en negativo */
	clip-path: inset(0 max(0px, calc((100% - 466px) / 2)) 0 max(0px, calc((100% - 466px) / 2)));
	transition: clip-path 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}
.landing_vecta_formatos_video.is-visible {
	/* recorta letterbox: der 2px / abajo 3px */
	clip-path: inset(1px 2px 3px 1px);
	-webkit-clip-path: inset(1px 2px 3px 1px);
}
.landing_vecta_formatos_video .landing_video_el {
	display: block;
	width: calc(100% + 10px);
	max-width: none;
	height: auto;
	margin: -4px -5px -6px -5px;
	vertical-align: top;
	cursor: default;
	opacity: 1 !important; /* no atenuar al acabar (is-paused) */
}
.landing_vecta_formatos_video .landing_video_play {
	display: none !important;
}
.landing_vecta_hero .landing_vecta_hero_video .landing_video,
.landing_vecta_hero .landing_vecta_hero_video {
	cursor: default;
}
@media (prefers-reduced-motion: reduce) {
	.landing_vecta_formatos_video {
		clip-path: none;
		transition: none;
	}
}

/* ---- Modular: FORMATOS DISPONIBLES (Figma: 6 columnas, nom + real) ---- */
.landing_vecta_formatos {
	margin-top: 36px !important;
	max-width: none !important;
}
.landing_vecta_formatos_label {
	margin: 0 0 20px !important;
	font-size: 18px !important;
	line-height: 24px !important;
	font-weight: var(--vecta-fw-regular) !important; /* DIN Pro Regular */
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #888 !important;
	max-width: none !important;
}
.landing_vecta_formatos_list {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	gap: 16px 24px;
	list-style: none;
	padding: 0;
	margin: 0;
	width: 100%;
}
.landing_vecta_formatos_list li {
	flex: 1 1 0;
	min-width: 0;
	padding: 0;
	border: 0;
	text-align: left;
}
.landing_vecta_formato_nom {
	display: block;
	font-size: 18px;
	line-height: 24px;
	font-weight: 700;
	color: var(--vecta-ink);
}
.landing_vecta_formato_real {
	display: block;
	margin-top: 4px;
	font-size: 18px;
	line-height: 24px;
	font-weight: 400;
	color: #999;
}

/* Nota secundaria (ej. junta 2 mm) */
.landing_vecta_nota_18 p,
.wpb_text_column.landing_vecta_nota_18 p {
	font-size: 18px !important;
	line-height: 24px !important;
	font-weight: var(--vecta-fw-regular);
}

/* ---- Continuidad / Eficiencia columnas ---- */
.landing_vecta_continuidad .vc_row,
.landing_vecta_eficiencia .vc_row,
.landing_vecta_mas_alla .vc_row {
	align-items: flex-start;
}
/* Continuidad: gap 80px | Ingenieria: gap 150px entre cols
 * Bakery usa .vc_inner (no siempre .vc_row_inner)
 */
.landing_vecta_continuidad .vc_row.vc_inner,
.landing_vecta_continuidad .vc_row_inner,
.landing_vecta_eficiencia .vc_row.vc_inner,
.landing_vecta_eficiencia .vc_row_inner {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: flex-start;
}
/* Bakery clearfix ::before/::after son flex items y el gap se triplica;
 * sin ellos el hueco queda solo en el centro y L/R alinean entre secciones. */
.landing_vecta_continuidad .vc_row.vc_inner::before,
.landing_vecta_continuidad .vc_row.vc_inner::after,
.landing_vecta_continuidad .vc_row_inner::before,
.landing_vecta_continuidad .vc_row_inner::after,
.landing_vecta_eficiencia .vc_row.vc_inner::before,
.landing_vecta_eficiencia .vc_row.vc_inner::after,
.landing_vecta_eficiencia .vc_row_inner::before,
.landing_vecta_eficiencia .vc_row_inner::after {
	content: none !important;
	display: none !important;
}
.landing_vecta_continuidad .vc_row.vc_inner,
.landing_vecta_continuidad .vc_row_inner {
	gap: 80px;
}
.landing_vecta_eficiencia .vc_row.vc_inner,
.landing_vecta_eficiencia .vc_row_inner {
	gap: 150px;
}
/* Sin gutter -15 de Bakery: L/R = guias de Mas alla (contentEdge) */
.landing_vecta_continuidad .vc_row.vc_inner,
.landing_vecta_continuidad .vc_row_inner,
.landing_vecta_eficiencia .vc_row.vc_inner,
.landing_vecta_eficiencia .vc_row_inner {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}
.landing_vecta_continuidad .vc_row.vc_inner > .vc_column_container,
.landing_vecta_continuidad .vc_row_inner > .vc_column_container,
.landing_vecta_eficiencia .vc_row.vc_inner > .vc_column_container,
.landing_vecta_eficiencia .vc_row_inner > .vc_column_container {
	float: none !important;
	width: auto !important;
	flex: 1 1 0 !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.landing_vecta_continuidad .vc_row.vc_inner > .vc_column_container > .vc_column-inner,
.landing_vecta_continuidad .vc_row_inner > .vc_column_container > .vc_column-inner,
.landing_vecta_eficiencia .vc_row.vc_inner > .vc_column_container > .vc_column-inner,
.landing_vecta_eficiencia .vc_row_inner > .vc_column_container > .vc_column-inner {
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}
.landing_vecta_junta_2mm,
.landing_vecta_espesor_8mm,
.landing_vecta_stand,
.landing_vecta_ambiente_continuidad {
	margin-top: 16px;
}
.landing_vecta_stand {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
	overflow: hidden;
	line-height: 0;
	width: 100% !important;
	max-width: 100% !important;
	height: 650px;
	box-sizing: border-box;
}
.landing_vecta_stand .wpb_wrapper,
.landing_vecta_stand .vc_single_image-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	height: 100%;
}
/* Continuidad media: anti-franja 1px */
.landing_vecta_ambiente_continuidad {
	overflow: hidden;
	line-height: 0;
	background: #fff;
	margin-bottom: 0 !important;
}
.landing_vecta_ambiente_continuidad img {
	display: block;
	width: calc(100% + 2px);
	max-width: none;
	margin: -1px 0 -1px -1px;
	vertical-align: top;
}
/* Ingenieria: mismo ancho que la col de texto; alto 650; recorte arriba/abajo */
.landing_vecta_eficiencia .landing_vecta_stand img,
.landing_vecta_stand img,
.landing_vecta_stand .vc_single_image-img {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 650px !important;
	margin: 0 !important;
	object-fit: cover;
	object-position: center;
}
/* Sellos ISO: mismo logo x2 + codigos distintos debajo (Figma) */
.landing_vecta_sellos_iso {
	margin-top: 32px !important;
}
.landing_vecta_sellos_iso .wpb_wrapper,
.landing_vecta_sellos_iso {
	display: block;
}
.landing_vecta_sellos_iso .landing_vecta_sello_iso_item,
.wpb_text_column.landing_vecta_sellos_iso .landing_vecta_sello_iso_item {
	display: inline-block;
	vertical-align: top;
	text-align: center;
	width: 123px;
	margin-right: 48px;
}
.landing_vecta_sellos_iso .landing_vecta_sello_iso_item:last-child {
	margin-right: 0;
}
.landing_vecta_sellos_iso img {
	display: block;
	width: 123px;
	height: auto;
	margin: 0 auto;
}
.landing_vecta_sello_iso_code {
	display: block;
	margin-top: 16px;
	font-family: var(--vecta-font);
	font-size: 20px;
	font-weight: var(--vecta-fw-bold); /* DIN Pro Bold */
	line-height: 100%; /* = 20px */
	color: var(--vecta-ink);
	text-align: center;
}

/* ---- Mas alla: una sola col + grid
 * [titulo/text/nota full]
 * [logo 6mm | foto ]
 * [losa sil | foto ]  → foto misma altura que bloque izq
 */
.landing_vecta_mas_alla .landing_vecta_nota_18 {
	margin-bottom: 64px !important;
}
.landing_vecta_mas_alla .wpb_text_column p + p {
	margin-top: 1em;
}
.landing_vecta_mas_alla > .vc_column_container > .vc_column-inner > .wpb_wrapper {
	display: grid;
	/* Col1 = ancho losa (430 * 120/280 ≈ 184) */
	grid-template-columns: 184px auto 1fr;
	grid-template-rows: auto auto auto auto auto;
	column-gap: 24px;
	row-gap: 24px;
	align-items: start;
}
/* Autop WP: párrafos vacíos no ocupan celdas del grid */
.landing_vecta_mas_alla > .vc_column_container > .vc_column-inner > .wpb_wrapper > p {
	display: none;
}
.landing_vecta_mas_alla > .vc_column_container > .vc_column-inner > .wpb_wrapper > .landing_text_anime,
.landing_vecta_mas_alla > .vc_column_container > .vc_column-inner > .wpb_wrapper > .wpb_text_column:not(.landing_vecta_pieza_120x280):not(.landing_vecta_nota_18),
.landing_vecta_mas_alla > .vc_column_container > .vc_column-inner > .wpb_wrapper > .landing_vecta_nota_18 {
	grid-column: 1 / -1;
}
/* Espacio entre nota y bloque visual: row-gap ya; foto ocupa 2 filas */
.landing_vecta_logo_absolut {
	grid-column: 1;
	grid-row: 4;
	justify-self: start;
	align-self: center;
	margin: 0 !important;
	max-width: none;
	width: 184px;
	box-sizing: border-box;
}
.landing_vecta_logo_absolut .vc_single_image-wrapper,
.landing_vecta_logo_absolut img {
	display: block !important;
	/* Figma: 123×35 */
	width: 123px !important;
	max-width: 123px !important;
	height: 35px !important;
}
.landing_vecta_6mm {
	/* Misma col que la losa → borde derecho = borde derecho del 120×280 */
	grid-column: 1;
	grid-row: 4;
	justify-self: end;
	align-self: center;
	margin: 0 !important;
	max-width: none;
	position: relative;
	z-index: 1;
}
.landing_vecta_6mm .vc_single_image-wrapper,
.landing_vecta_6mm img {
	display: block !important;
	/* Figma: 35×35 */
	width: 35px !important;
	max-width: 35px !important;
	height: 35px !important;
}
/* Losa 120×280 → escala Figma alto 430 → ancho 184 */
.landing_vecta_pieza_120x280 {
	grid-column: 1;
	grid-row: 5;
	width: 184px !important;
	max-width: 184px !important;
	height: 430px !important;
	min-height: 430px !important;
	aspect-ratio: 120 / 280;
	display: flex !important;
	align-items: center;
	justify-content: center;
	border: 1px solid #c8c8c8;
	background: #fff;
	margin: 0 !important;
	box-sizing: border-box;
	position: relative;
	z-index: 0;
	/* sin translateY del reveal: desalineaba pies vs silueta */
	transform: none !important;
	opacity: 1 !important;
}
.landing_vecta_pieza_120x280 .wpb_wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
/* Figma: 120 x 280 → DIN Pro Regular 20 */
.landing_vecta_pieza_120x280 p,
.landing_vecta_pieza_120x280 .landing_vecta_pieza_label,
p.landing_vecta_pieza_label {
	text-align: center !important;
	font-family: var(--vecta-font) !important;
	font-size: 20px !important;
	line-height: 1 !important;
	letter-spacing: 0.02em;
	font-weight: var(--vecta-fw-regular) !important;
	margin: 0 !important;
	color: #333 !important;
}
/* Persona Figma: 257 alto (~60% de 430), pies al borde inferior, ~25–30% dentro del cuadro */
.landing_vecta_silueta {
	grid-column: 2;
	grid-row: 5;
	align-self: start;
	justify-self: start;
	/* Misma altura que la losa para anclar pies abajo */
	height: 430px !important;
	width: 73px;
	margin: 0 !important;
	max-width: none;
	position: relative;
	left: -60px;
	top: 10px;
	z-index: 1;
	line-height: 0;
	overflow: visible;
}
.landing_vecta_silueta .wpb_wrapper,
.landing_vecta_silueta .vc_figure,
.landing_vecta_silueta .vc_single_image-wrapper {
	display: block !important;
	position: absolute !important;
	left: 0 !important;
	bottom: 0 !important;
	top: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
	height: auto !important;
	width: auto !important;
}
.landing_vecta_silueta img {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	height: 257px !important;
	margin: 0 !important;
}
/* Foto: col 3, filas 4–5 → misma altura que logo+losa */
.landing_vecta_mas_alla_img {
	grid-column: 3;
	grid-row: 4 / 6;
	align-self: stretch;
	justify-self: stretch;
	position: relative;
	/* Acercar a caja+persona (col silueta queda casi vacía por left:-60) */
	margin: 0 0 0 -48px !important;
	min-height: 0;
	height: auto !important;
	overflow: hidden;
	line-height: 0;
	background: #fff;
}
.landing_vecta_mas_alla_img .wpb_wrapper,
.landing_vecta_mas_alla_img .vc_figure,
.landing_vecta_mas_alla_img .vc_single_image-wrapper {
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
}
.landing_vecta_mas_alla_img img {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover;
	object-position: center;
}

/* ---- Slider colecciones: flechas + contador bajo los titulos ---- */
.landing_slider_colecciones_wrapper {
	position: relative;
	margin-top: 36px;
	margin-bottom: 48px;
}
/* Solo el slider: sobresale L/R respecto al texto (pad 50 + gutter 15) */
.landing_vecta_colecciones .landing_slider_colecciones_wrapper {
	width: calc(100% + 130px);
	max-width: none;
	margin-left: -65px;
	margin-right: -65px;
	margin-top: 100px; /* espacio antes del slider */
	box-sizing: border-box;
	/* Hueco para controles (no solapan titulos) */
	padding-bottom: 56px;
}
.landing_vecta_colecciones .landing_slider_colecciones .slick-prev,
.landing_vecta_colecciones .landing_slider_colecciones .slick-next {
	top: auto !important;
	left: auto !important;
	bottom: 0 !important;
	z-index: 5;
	width: 40px;
	height: 40px;
	background-color: #f1f1f1;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 15px;
	border-radius: 50%;
	color: transparent;
	font-size: 0;
	line-height: 0;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.landing_vecta_colecciones .landing_slider_colecciones .slick-next {
	right: 20px !important;
	background-image: url(/wp-content/uploads/2024/06/right-arrow.png);
}
.landing_vecta_colecciones .landing_slider_colecciones .slick-prev {
	right: 70px !important;
	background-image: url(/wp-content/uploads/2024/06/left-arrow.png);
}
.landing_vecta_colecciones .landing_slider_colecciones .slick-prev:hover,
.landing_vecta_colecciones .landing_slider_colecciones .slick-next:hover {
	background-color: #e2e2e2;
	cursor: pointer;
}
.landing_vecta_colecciones .landing_slider_colecciones .slick-prev:before,
.landing_vecta_colecciones .landing_slider_colecciones .slick-next:before {
	content: none !important;
}
.landing_vecta_colecciones .landing_slider_colecciones_wrapper .slide-number {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	right: 125px;
	bottom: 0;
	height: 40px;
	margin: 0;
	z-index: 5;
	font-size: 18px;
	line-height: 1;
	font-weight: var(--vecta-fw-regular);
	font-family: var(--vecta-font);
	color: #333;
	letter-spacing: 0.04em;
	text-align: right;
	pointer-events: none;
}
/* Imagenes items: cuadradas (el thumb ya pide 700x700) */
.landing_slider_colecciones .item-slider-select-material .imagen {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.landing_slider_colecciones .item-slider-select-material .imagen img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: center;
	transform: scale(1);
	/* Escala 1.2 ok; solo mas lento al hover */
	transition: transform 0.75s ease;
	/* Anula el keyframe Artech scale(1.01) */
	animation: none !important;
}
.landing_slider_colecciones a:hover .item-slider-select-material .imagen img,
.landing_slider_colecciones .item-slider-select-material:hover .imagen img {
	/* Figma SeriesImage hover: 607.2 / 506 = 1.2 */
	transform: scale(1.2);
}
.landing_slider_colecciones .item-slider-select-material .titulo {
	margin-bottom: 0;
	padding-bottom: 8px;
}
.landing_slider_colecciones .item-slider-select-material .titulo h4 {
	font-family: var(--vecta-font);
	font-size: 24px;
	font-weight: var(--vecta-fw-bold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.landing_slider_colecciones a {
	text-decoration: none;
	color: inherit;
}
.landing_slider_colecciones .slick-slide {
	padding: 0 10px;
}
.landing_slider_colecciones .slick-list {
	margin: 0 -10px;
}

/* Preferencias de movimiento reducido */
@media (prefers-reduced-motion: reduce) {
	.landing_slider_colecciones .item-slider-select-material .imagen img,
	.landing_slider_colecciones a:hover .item-slider-select-material .imagen img,
	.landing_slider_colecciones .item-slider-select-material:hover .imagen img {
		transition: none !important;
		transform: none !important;
	}
	.landing_vecta_reveal,
	.landing_vecta_hero .landing_vecta_hero_logos,
	.landing_vecta_hero .wpb_single_image.landing_vecta_hero_logos {
		transition: none !important;
		opacity: 1 !important;
		transform: none !important;
	}
	.landing_text_anime_label {
		transition: none !important;
	}
	.landing_text_anime .landing_text_anime_label {
		color: var(--vecta-label-on);
	}
	.landing_text_anime .landing_text_anime_title {
		animation: none !important;
		background-position: 0 0 !important;
	}
}
