/* ==========================================================================
   Matu — portada (landing) rediseñada.

   Mismo lenguaje visual que /tienda/: bloques de color a sangre, borde negro
   de 3px, sombra dura desplazada, Bungee en mayúsculas y stickers con estrella.
   Todo cuelga de .matu-landing para no pisar el CSS de home.css (header, pie y
   el resto del sitio siguen igual).

   La animación vive en assets/js/landing.js (GSAP + ScrollTrigger). El CSS solo
   define el estado inicial de lo que se anima, y únicamente cuando el JS marcó
   <html class="matu-anim"> — sin JS la página se ve completa.
   ========================================================================== */

.matu-landing {
	--ink: #0c0c0c;
	--white: #ffffff;
	--cream: #f7f3ec;
	--pink: #ff82e0;
	--cyan: #1fa6c9;
	--orange: #ff6e2e;
	--yellow: #ffd833;
	--lime: #b1c134;
	--grey: #6b6b6b;

	--display: 'Bungee', system-ui, sans-serif;
	--body: 'Raleway', system-ui, sans-serif;
	--hand: 'Caveat', cursive;

	--maxw: 1200px;
	--pad-x: clamp(1rem, 4vw, 2rem);
	--block-y: clamp(3.25rem, 8vw, 6rem);

	--bd: 3px solid var(--ink);
	--sh: 8px 8px 0 var(--ink);
	--sh-sm: 4px 4px 0 var(--ink);
	--r: 24px;
	--r-sm: 16px;

	font-family: var(--body);
	color: var(--ink);
	background: var(--white);
	overflow-x: clip;
}

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

/* Ojo con la especificidad de los títulos. El <main> lleva las dos clases
   (matu-main matu-landing), así que home.css también le aplica:
   `.matu-main h1,h2,h3 { margin:0; line-height:1.05; text-transform:lowercase }`
   con especificidad (0,1,1). Este reset la iguala y gana por ir después. La
   consecuencia es que un componente con una sola clase (0,1,0) NO puede
   sobreescribirlo: los que ajustan margen o interlineado de un título llevan el
   prefijo .matu-landing para subir a (0,2,0). */
.matu-landing h1,
.matu-landing h2,
.matu-landing h3 {
	font-family: var(--display);
	font-weight: 400;
	text-transform: uppercase;
	line-height: 1;
	letter-spacing: -0.01em;
	margin: 0;
}

/* En los párrafos no hay pelea: home.css no toca `p` dentro de .matu-main, así
   que basta con :where() y cualquier componente le gana. */
.matu-landing :where(p) { margin: 0; }
.matu-landing :where(img) { display: block; max-width: 100%; height: auto; }

.matu-landing :where(a, button):focus-visible {
	outline: 3px solid var(--ink);
	outline-offset: 3px;
}
/* Sobre los bloques negros el contorno negro no se ve: ahí va en blanco. */
.lp-doc :where(a, button):focus-visible,
.lp-stats :where(a, button):focus-visible {
	outline-color: var(--white);
}

/* Ancho de lectura común a casi todas las secciones. */
.lp-wrap {
	width: 100%;
	max-width: var(--maxw);
	margin-inline: auto;
	padding-inline: var(--pad-x);
}

/* --- Piezas compartidas ---------------------------------------------------- */

.lp-pill {
	display: inline-block;
	font-family: var(--display);
	font-size: clamp(0.62rem, 1.3vw, 0.78rem);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	background: var(--pink);
	color: var(--ink);
	border: 2.5px solid var(--ink);
	border-radius: 999px;
	box-shadow: 3px 3px 0 var(--ink);
	padding: 0.6em 1.35em;
	text-decoration: none;
}
.lp-pill--yellow { background: var(--yellow); }
.lp-pill--cyan { background: var(--cyan); color: var(--white); }
.lp-pill--white { background: var(--white); }

.lp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5em;
	min-height: 48px;
	font-family: var(--display);
	font-size: clamp(0.72rem, 1.5vw, 0.85rem);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: var(--ink);
	color: var(--white);
	border: 3px solid var(--ink);
	border-radius: 999px;
	box-shadow: var(--sh-sm);
	padding: 0.85em 1.7em;
	transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, color 0.16s ease;
}
.lp-btn:hover,
.lp-btn:focus-visible {
	transform: translate(-3px, -3px);
	box-shadow: 7px 7px 0 var(--ink);
}
.lp-btn--pink { background: var(--pink); color: var(--ink); }
.lp-btn--yellow { background: var(--yellow); color: var(--ink); }
.lp-btn--white { background: var(--white); color: var(--ink); }
.lp-btn--white:hover { background: var(--ink); color: var(--white); }

.lp-eyebrow {
	font-family: var(--display);
	font-size: clamp(0.6rem, 1.2vw, 0.72rem);
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--pink);
	margin: 0 0 0.8rem;
}

/* Bloque de color: la unidad de la tienda (borde + sombra dura). */
.lp-block {
	border: var(--bd);
	border-radius: var(--r);
	box-shadow: var(--sh);
	padding: clamp(1.4rem, 3.5vw, 2.6rem);
}

/* Estrella de esquina, igual que en las tarjetas de la tienda. El disco va
   blanco (no amarillo) porque ahora cada tarjeta toma el color de su país y
   sobre la amarilla una estrella amarilla desaparecía. */
.lp-star {
	position: absolute;
	z-index: 4;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	background: var(--white);
	border: 3px solid var(--ink);
	border-radius: 50%;
	transition: transform 0.2s ease;
}
.lp-star svg { width: 20px; height: 20px; }

/* Garabatos de marcador (subrayados, flechas, círculos). El JS los dibuja de
   principio a fin al entrar en pantalla; sin JS se ven completos. */
.lp-doodle {
	pointer-events: none;
	overflow: visible;
}
.matu-anim .lp-doodle path {
	stroke-dasharray: var(--largo, 1000);
	stroke-dashoffset: var(--largo, 1000);
}

/* Franja arcoíris — el separador de la tienda, aquí como costura entre capítulos. */
.lp-stripe {
	height: 16px;
	border-top: 3px solid var(--ink);
	border-bottom: 3px solid var(--ink);
	background: repeating-linear-gradient(
		90deg,
		var(--pink) 0 34px,
		var(--yellow) 34px 68px,
		var(--cyan) 68px 102px,
		var(--orange) 102px 136px,
		var(--lime) 136px 170px
	);
	background-size: 170px 100%;
}

/* Barra de progreso de lectura (el patrón de storytelling la pide).
   Ojo: esta barra vive FUERA de <main class="matu-landing">, así que aquí no
   existen --pink y compañía. Los colores van literales a propósito; con var()
   el degradado queda inválido y la barra se pinta transparente. */
.lp-progress {
	position: fixed;
	inset: 0 0 auto 0;
	height: 5px;
	z-index: 500;
	transform: scaleX(0);
	transform-origin: 0 50%;
	background: linear-gradient(90deg, #ff82e0, #ffd833, #1fa6c9, #ff6e2e, #b1c134);
	pointer-events: none;
}

/* --- Estado inicial de las animaciones (solo con JS activo) ---------------- */

.matu-anim .matu-landing [data-reveal] { opacity: 0; }
.matu-anim .matu-landing [data-reveal-children] > * { opacity: 0; }
.matu-anim .matu-landing .lp-word > span { transform: translateY(105%); }

/* ==========================================================================
   HERO — collage postal: tipografía gigante + fotos con borde y sellos
   ========================================================================== */

.lp-hero {
	position: relative;
	background: var(--cream);
	border-bottom: 3px solid var(--ink);
	padding: clamp(2.5rem, 6vw, 4.5rem) 0 clamp(2rem, 5vw, 3.5rem);
	overflow: hidden;
}

/* Trama de puntos: textura de papel sin salirse de la paleta. */
.lp-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(12, 12, 12, 0.14) 1.5px, transparent 1.6px);
	background-size: 26px 26px;
	opacity: 0.55;
	pointer-events: none;
}

.lp-hero__inner {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	align-items: center;
	gap: clamp(1.5rem, 4vw, 3.5rem);
}

.matu-landing .lp-hero__title {
	font-size: clamp(2.9rem, 9.5vw, 6.6rem);
	line-height: 0.92;
	margin: 1.5rem 0 0;
}
.lp-hero__title .accent {
	color: var(--pink);
	-webkit-text-stroke: 3px var(--ink);
	paint-order: stroke fill;
}

/* Cada palabra es una máscara: el JS la sube desde abajo. */
.lp-word {
	display: inline-block;
	overflow: hidden;
	vertical-align: bottom;
	padding-bottom: 0.06em;
}
.lp-word > span { display: inline-block; }

.lp-hero__lead {
	margin: 1.3rem 0 0;
	max-width: 46ch;
	font-size: clamp(0.95rem, 1.7vw, 1.1rem);
	font-weight: 600;
	line-height: 1.5;
	text-wrap: pretty;
}

.lp-hero__cta {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	margin-top: clamp(3.4rem, 6vw, 4.4rem);
}

/* Nota manuscrita con flecha, apuntando al botón principal. La flecha termina
   por encima del botón: el texto y el trazo tienen que quedar completamente
   fuera de la pastilla rosada, no encima. */
.lp-hero__nota {
	position: absolute;
	left: 4px;
	bottom: calc(100% + 12px);
	display: flex;
	align-items: flex-end;
	gap: 0.35rem;
	font-family: var(--hand);
	font-size: clamp(1.15rem, 2.2vw, 1.6rem);
	line-height: 1;
	color: var(--ink);
	transform: rotate(-6deg);
	transform-origin: left bottom;
	white-space: nowrap;
	pointer-events: none;
}
.lp-hero__nota .lp-doodle {
	width: clamp(26px, 3vw, 36px);
	height: auto;
	transform: translateY(1px) scaleX(-1);
}

.lp-hero__proof {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin-top: 1.6rem;
	font-size: 0.78rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
.lp-hero__faces { display: flex; }
.lp-hero__faces img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 2.5px solid var(--ink);
	object-fit: cover;
	background: var(--white);
}
.lp-hero__faces img + img { margin-left: -14px; }

/* Collage de fotos ---------------------------------------------------------- */

.lp-hero__collage {
	position: relative;
	aspect-ratio: 1 / 1;
	min-height: 320px;
}

.lp-postal {
	position: absolute;
	background: var(--white);
	border: var(--bd);
	border-radius: 18px;
	box-shadow: var(--sh);
	padding: 10px 10px 34px;
	will-change: transform;
}
.lp-postal img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
	border: 2px solid var(--ink);
}
.lp-postal figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 8px;
	text-align: center;
	font-family: var(--hand);
	font-size: 1.35rem;
	line-height: 1;
	color: var(--ink);
}
.lp-postal--a {
	width: 56%;
	aspect-ratio: 3 / 4;
	top: 4%;
	left: 0;
	transform: rotate(-5deg);
	z-index: 3;
}
.lp-postal--b {
	width: 50%;
	aspect-ratio: 4 / 5;
	right: 0;
	bottom: 2%;
	transform: rotate(6deg);
	z-index: 2;
}

/* Sello de pasaporte, en SVG puro. Va en la esquina libre de arriba. */
.lp-sello {
	position: absolute;
	top: -4%;
	right: -2%;
	width: clamp(84px, 10vw, 116px);
	z-index: 5;
	transform: rotate(9deg);
	filter: drop-shadow(4px 4px 0 rgba(12, 12, 12, 0.9));
}

.lp-hero__deco {
	position: absolute;
	z-index: 1;
	pointer-events: none;
	will-change: transform;
}
.lp-hero__deco--1 { top: 8%; left: 46%; width: clamp(38px, 5vw, 62px); }
.lp-hero__deco--2 { bottom: 12%; left: 3%; width: clamp(30px, 4vw, 48px); }
.lp-hero__deco--3 { bottom: 26%; right: -5%; width: clamp(34px, 4.5vw, 54px); }

.lp-hero__cue {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: clamp(1.5rem, 4vw, 2.5rem);
	font-family: var(--display);
	font-size: 0.62rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--grey);
}
.lp-hero__cue span {
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border: 2.5px solid var(--ink);
	border-radius: 50%;
	color: var(--ink);
	animation: lp-bob 1.8s ease-in-out infinite;
}
@keyframes lp-bob {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(5px); }
}

/* ==========================================================================
   MARQUEE — cinta de tela cruzada sobre la página
   ========================================================================== */

.lp-marquee {
	background: var(--ink);
	border-block: 3px solid var(--ink);
	padding: 0.55rem 0;
	overflow: hidden;
	transform: rotate(-1.4deg) scale(1.03);
	margin-block: clamp(1.5rem, 4vw, 2.5rem);
}
.lp-marquee + .lp-marquee {
	background: var(--pink);
	transform: rotate(1.2deg) scale(1.03);
	margin-top: -0.9rem;
}

.lp-marquee__track {
	display: flex;
	width: max-content;
	will-change: transform;
	animation: lp-slide 34s linear infinite;
}
.lp-marquee + .lp-marquee .lp-marquee__track { animation-direction: reverse; }

.lp-marquee__group { display: flex; flex: none; }

.lp-marquee span {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding-inline: 0.7rem;
	font-family: var(--display);
	font-size: clamp(0.9rem, 2.1vw, 1.35rem);
	text-transform: uppercase;
	color: var(--white);
	white-space: nowrap;
}
.lp-marquee span svg { width: 16px; height: 16px; flex: none; }
.lp-marquee + .lp-marquee span { color: var(--ink); }

@keyframes lp-slide {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

/* ==========================================================================
   FILOSOFÍA — la frase que se enciende palabra por palabra con el scroll
   ========================================================================== */

/* Capítulo de color: la primera parada después del hero es cyan a sangre. */
.lp-philo {
	position: relative;
	padding-block: clamp(3.5rem, 9vw, 6.5rem);
	text-align: center;
	overflow: hidden;
	background: var(--cyan);
	border-top: 3px solid var(--ink);
}
/* Trama de puntos, la misma textura del hero y del pack. */
.lp-philo::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(12, 12, 12, 0.12) 1.5px, transparent 1.6px);
	background-size: 24px 24px;
	pointer-events: none;
}
.lp-philo > * { position: relative; z-index: 2; }
/* Sobre cyan, el rosa del eyebrow no contrasta: va en negro. */
.lp-philo .lp-eyebrow { color: var(--ink); }

.matu-landing .lp-philo__title {
	font-size: clamp(1.8rem, 5.6vw, 3.6rem);
	line-height: 1.06;
	max-width: 20ch;
	margin-inline: auto;
	text-wrap: balance;
}
/* Las palabras arrancan apagadas; ScrollTrigger las enciende al pasar. */
.lp-philo__title .lp-lite { color: rgba(12, 12, 12, 0.22); }

/* Subrayado de marcador debajo del título. */
.lp-philo__line {
	display: block;
	width: min(340px, 62%);
	height: auto;
	margin: 0.6rem auto 0;
}

.lp-philo__body {
	margin: 1.5rem auto 0;
	max-width: 56ch;
	font-size: clamp(0.92rem, 1.6vw, 1.05rem);
	font-weight: 600;
}
.lp-philo__sign {
	margin-top: 1.2rem;
	font-family: var(--hand);
	font-size: clamp(1.8rem, 4vw, 2.7rem);
	color: var(--white);
	-webkit-text-stroke: 1.5px var(--ink);
	paint-order: stroke fill;
}

.lp-philo__deco {
	position: absolute;
	z-index: 1;
	pointer-events: none;
	width: clamp(40px, 6vw, 88px);
	will-change: transform;
}
.lp-philo__deco--1 { top: 12%; left: 4%; }
.lp-philo__deco--2 { top: 18%; right: 6%; width: clamp(30px, 4vw, 58px); }
.lp-philo__deco--3 { bottom: 14%; left: 12%; width: clamp(26px, 3.5vw, 46px); }
.lp-philo__deco--4 { bottom: 10%; right: 9%; }
.lp-philo__deco--5 { top: 46%; left: -1%; width: clamp(24px, 3vw, 42px); }

/* ==========================================================================
   QUÉ VENDO — una guía desarmada, con sus datos reales
   ========================================================================== */

.lp-guia {
	position: relative;
	background: var(--cream);
	border-block: 3px solid var(--ink);
	padding-block: var(--block-y);
	overflow: hidden;
}
.lp-guia::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(12, 12, 12, 0.1) 1.5px, transparent 1.6px);
	background-size: 26px 26px;
	pointer-events: none;
}
.lp-guia > * { position: relative; z-index: 2; }

/* ANTES / DESPUÉS -----------------------------------------------------------
   La sección explica PARA QUÉ sirve la guía, no qué dice por dentro. El
   contraste hace el trabajo: a la izquierda el desorden de planear sola, a la
   derecha un solo objeto. Ni un dato del producto aparece en pantalla. */

.lp-antes {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: start;
	gap: clamp(1.2rem, 3.5vw, 3rem);
	max-width: 1000px;
	margin: clamp(2.6rem, 6vw, 4.4rem) auto 0;
}

.lp-antes__col {
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.1rem;
	text-align: center;
}
.lp-antes__col figcaption {
	max-width: 34ch;
	font-size: 0.86rem;
	font-weight: 600;
	line-height: 1.5;
	color: #3d3d3d;
	text-wrap: pretty;
}

.lp-antes__rotulo {
	font-family: var(--display);
	font-size: 0.62rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	border: 2.5px solid var(--ink);
	border-radius: 999px;
	padding: 0.45em 1em;
}
.lp-antes__rotulo--gris { background: #e4e0d8; color: var(--grey); }
.lp-antes__rotulo--pink { background: var(--pink); }

/* EL DESORDEN — piezas encimadas, torcidas y de tamaños distintos. La versión
   anterior era una rejilla ordenada de cajas iguales, y una rejilla nunca se ve
   como un desorden. Acá van en posición absoluta, se pisan entre sí y algunas
   se salen del marco. Ninguna lleva texto: son ventanas, capturas y notas. */
.lp-caos {
	position: relative;
	width: 100%;
	max-width: 340px;
	aspect-ratio: 1 / 0.92;
	border: 3px dashed #c9c3b7;
	border-radius: var(--r-sm);
	background: #efece4;
	overflow: hidden;
}
.lp-caos i {
	position: absolute;
	left: var(--x);
	top: var(--y);
	width: var(--w);
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 7px 8px;
	background: #fbfaf7;
	border: 2.5px solid #b9b2a4;
	border-radius: 6px;
	box-shadow: 3px 3px 0 rgba(12, 12, 12, 0.09);
	transform: rotate(var(--giro, 0deg));
}
/* Las rayitas de "texto" de cada pieza. */
.lp-caos s {
	display: block;
	height: 3px;
	border-radius: 2px;
	background: #d5cec0;
	text-decoration: none;
}
.lp-caos s:nth-of-type(2) { width: 78%; }
.lp-caos s:nth-of-type(3) { width: 52%; }

/* Ventana de navegador: barra de pestañas arriba. */
.lp-caos__win { padding-top: 0; }
.lp-caos u {
	display: flex;
	gap: 3px;
	align-items: center;
	margin: 0 -8px 5px;
	padding: 5px 7px;
	background: #e6e1d5;
	border-bottom: 2px solid #b9b2a4;
	text-decoration: none;
}
.lp-caos em {
	display: block;
	width: 26%;
	height: 6px;
	border-radius: 2px 2px 0 0;
	background: #c4bcab;
}
.lp-caos em:first-child { background: #a9a091; }

/* Captura: un bloque de imagen gris con una raya de pie. */
.lp-caos__captura { background: #f4f1ea; }
.lp-caos__captura s:first-of-type { height: 26px; border-radius: 4px; background: #ddd6c7; }

/* Nota suelta, en papel amarillento. */
.lp-caos__nota { background: #f6e9b4; border-color: #c4b483; }
.lp-caos__nota s { background: #cdbb83; }

/* La duda: el garabato que resume todo el panel. */
.lp-caos__duda {
	display: grid;
	place-items: center;
	aspect-ratio: 1;
	padding: 0;
	border-width: 3px;
	border-color: var(--ink);
	font-family: var(--hand);
	font-size: clamp(2rem, 4.4vw, 2.9rem);
	line-height: 1;
	color: var(--grey);
	background: var(--white);
	border-style: solid;
	border-radius: 50%;
}

/* La flecha dibujada a mano: el puente entre los dos estados. */
.lp-antes__flecha {
	display: block;
	width: clamp(56px, 7vw, 104px);
	flex: none;
	/* La flecha se cuelga a la altura de los dos bloques, no del texto. */
	margin-top: 150px;
}
.lp-antes__flecha svg { width: 100%; height: auto; display: block; }

/* EL DESPUÉS — todo resuelto. La lista con visto bueno es lo que da la
   sensación de completo; nombra las partes de la guía sin mostrar nada de
   adentro. */
.lp-objeto {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	width: 100%;
	max-width: 340px;
	aspect-ratio: 1 / 0.92;
	padding: 1.3rem 1.3rem 1.1rem;
	background: var(--white);
	border: var(--bd);
	border-radius: var(--r-sm);
	box-shadow: var(--sh);
}
.lp-objeto__sello {
	position: absolute;
	top: -16px;
	right: -12px;
	z-index: 3;
	font-family: var(--hand);
	font-size: 1.5rem;
	line-height: 1;
	color: var(--ink);
	background: var(--yellow);
	border: 2.5px solid var(--ink);
	border-radius: 999px;
	padding: 0.3em 0.75em;
	transform: rotate(7deg);
}
.lp-objeto__top {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	padding-bottom: 0.9rem;
	border-bottom: 2.5px solid var(--ink);
}
.lp-objeto__mapa {
	display: block;
	flex: none;
	width: clamp(42px, 5.5vw, 56px);
	height: clamp(42px, 5.5vw, 56px);
}
.lp-objeto__mapa svg { width: 100%; height: 100%; }
.lp-objeto__nombre { display: flex; flex-direction: column; gap: 2px; text-align: left; min-width: 0; }
.matu-landing .lp-objeto__nombre b {
	font-family: var(--display);
	font-weight: 400;
	font-size: clamp(0.95rem, 2vw, 1.2rem);
	line-height: 1.1;
	text-transform: uppercase;
}
.lp-objeto__nombre span {
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--grey);
}

.lp-listo {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.62rem;
	flex: 1;
	text-align: left;
}
.lp-listo li {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	font-size: 0.83rem;
	font-weight: 700;
	line-height: 1.2;
}
/* El visto bueno: la señal de "esto ya está". */
.lp-listo li::before {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background: var(--lime);
	border: 2.5px solid var(--ink);
	border-radius: 50%;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230c0c0c' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 12px 12px;
}

/* Cierre: el botón y una línea. Nada más. */
.lp-guia__cierre {
	max-width: 1000px;
	margin: clamp(2.6rem, 6vw, 4.4rem) auto 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
	text-align: center;
}
.lp-guia__cierre p {
	margin: 0;
	max-width: 52ch;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--grey);
	text-wrap: balance;
}

/* ==========================================================================
   CIFRAS — banda negra con contadores
   ========================================================================== */

.lp-stats {
	background: var(--ink);
	border-block: 3px solid var(--ink);
	padding-block: clamp(2rem, 4.5vw, 3rem);
}
.lp-stats__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 2.5vw, 2rem);
	text-align: center;
}
.lp-stats__grid div { min-width: 0; }
.lp-stats strong {
	display: block;
	font-family: var(--display);
	font-weight: 400;
	font-size: clamp(1.7rem, 4.5vw, 3.1rem);
	line-height: 1;
	color: var(--pink);
	font-variant-numeric: tabular-nums;
}
.lp-stats span {
	display: block;
	margin-top: 0.5em;
	font-size: clamp(0.62rem, 1.2vw, 0.74rem);
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #cfc7bd;
}

/* ==========================================================================
   SOBRE MÍ — polaroid con cinta + texto
   ========================================================================== */

.lp-about {
	padding-block: var(--block-y);
}
.lp-about__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
	align-items: center;
	gap: clamp(1.75rem, 5vw, 4rem);
}

.lp-polaroid {
	position: relative;
	background: var(--white);
	border: var(--bd);
	border-radius: 20px;
	box-shadow: 10px 10px 0 var(--cyan);
	padding: 12px 12px 46px;
	transform: rotate(-3deg);
	will-change: transform;
}
.lp-polaroid img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border: 2.5px solid var(--ink);
	border-radius: 12px;
}
.lp-polaroid figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 12px;
	text-align: center;
	font-family: var(--hand);
	font-size: 1.6rem;
	line-height: 1;
}
/* La cinta adhesiva de arriba. */
.lp-polaroid::before {
	content: "";
	position: absolute;
	top: -16px;
	left: 50%;
	width: 120px;
	height: 32px;
	transform: translateX(-50%) rotate(-4deg);
	background: rgba(255, 216, 51, 0.85);
	border: 2.5px solid var(--ink);
	box-shadow: 2px 2px 0 rgba(12, 12, 12, 0.25);
}

.lp-about__body h2 {
	font-size: clamp(1.6rem, 4vw, 2.8rem);
	line-height: 1.02;
}
.lp-about__body p {
	margin: 1.1rem 0 0;
	max-width: 52ch;
	font-size: clamp(0.9rem, 1.6vw, 1.02rem);
	font-weight: 600;
}
.lp-about__body .lp-btn { margin-top: 1.6rem; }

/* ==========================================================================
   DESTACADOS + TIENDA — tarjetas en el lenguaje de /tienda/
   ========================================================================== */

.lp-head {
	text-align: center;
	margin: 0 auto clamp(1.6rem, 4vw, 2.6rem);
}
.lp-head h2 {
	font-size: clamp(1.7rem, 4.6vw, 3rem);
	text-wrap: balance;
}
/* El ancho de lectura va en el párrafo, no en el contenedor: si lo lleva el
   contenedor, el título hereda un ancho en `ch` (medido en Raleway) y se parte
   en dos líneas mucho antes de lo que necesita. */
.lp-head p {
	margin: 0.9rem auto 0;
	max-width: 62ch;
	font-size: clamp(0.88rem, 1.5vw, 1rem);
	font-weight: 600;
	color: var(--grey);
	text-wrap: pretty;
}
/* El eyebrow es un <p> dentro del head: sin esto hereda el gris de arriba. */
.lp-head .lp-eyebrow { color: var(--pink); }

.lp-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	font-family: var(--display);
	font-size: 0.6rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: var(--yellow);
	color: var(--ink);
	border: 2.5px solid var(--ink);
	border-radius: 999px;
	box-shadow: 2px 2px 0 var(--ink);
	padding: 0.45em 0.9em;
}
.lp-badge--out { background: var(--ink); color: var(--white); border-color: var(--white); }


.lp-price {
	font-family: var(--display);
	font-size: clamp(1.25rem, 2.6vw, 1.75rem);
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

/* La CTA "Leer mi guía" solo aparece cuando landing.js marca la tarjeta. */
.lp-card__read { display: none; }
.lp-card--owned .lp-card__buy { display: none; }
.lp-card--owned .lp-card__read { display: inline-flex; }

/* Grilla de la tienda ------------------------------------------------------- */

.lp-store { padding-block: var(--block-y); }
.lp-store__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(0.9rem, 2vw, 1.5rem);
}

.lp-card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	background: var(--acc, var(--pink));
	border: var(--bd);
	border-radius: 22px;
	box-shadow: 7px 7px 0 var(--ink);
	padding: 0.85rem 0.85rem 1rem;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.lp-card:hover {
	transform: translate(-4px, -4px) rotate(-0.6deg);
	box-shadow: 12px 12px 0 var(--ink);
}
.lp-card:hover .lp-star { transform: rotate(22deg); }
.lp-card .lp-star {
	top: -12px;
	right: -12px;
	width: 36px;
	height: 36px;
}
.lp-card .lp-star svg { width: 16px; height: 16px; }

.lp-card__media {
	position: relative;
	border: 2.5px solid var(--ink);
	border-radius: 14px;
	overflow: hidden;
	background: var(--white);
}
.lp-card__media img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

/* Insignia de país: la misma silueta que usa /tienda/, en el color del país. */
.lp-card__mapa {
	position: absolute;
	left: 8px;
	bottom: 8px;
	z-index: 3;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	padding: 9px;
	background: var(--ink);
	border: 2.5px solid var(--ink);
	border-radius: 50%;
	box-shadow: 3px 3px 0 rgba(255, 255, 255, 0.9);
	transform: rotate(-6deg);
	transition: transform 0.2s ease;
}
.lp-card__mapa svg { width: 100%; height: 100%; }
.lp-card:hover .lp-card__mapa { transform: rotate(6deg) scale(1.08); }
.lp-card h3 {
	font-size: 0.92rem;
	line-height: 1.1;
	text-align: center;
}
.lp-card__foot { margin-top: auto; text-align: center; }
.lp-card__foot .lp-price { display: block; margin-bottom: 0.6rem; }
.lp-card .lp-btn { width: 100%; padding: 0.8em 0.6em; font-size: 0.66rem; }

/* ==========================================================================
   PACK — la franja rosada con el precio que se estampa
   ========================================================================== */

.lp-promo { padding-block: clamp(1rem, 2vw, 1.5rem); }
.lp-promo__inner {
	position: relative;
	background: var(--pink);
	text-align: center;
	overflow: hidden;
}
.lp-promo__inner::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(circle, rgba(12, 12, 12, 0.13) 1.5px, transparent 1.6px);
	background-size: 22px 22px;
	pointer-events: none;
}
.lp-promo__inner > * { position: relative; z-index: 2; }
.lp-promo h2 {
	font-size: clamp(1.8rem, 5.5vw, 3.4rem);
	line-height: 1.02;
	margin-top: 1rem;
}
.lp-promo__desc {
	margin: 1rem auto 0;
	max-width: 52ch;
	font-size: clamp(0.88rem, 1.5vw, 1rem);
	font-weight: 700;
	text-wrap: balance;
}
.lp-promo__price {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: clamp(1.2rem, 3vw, 2.4rem);
	margin-top: 1.6rem;
	flex-wrap: wrap;
}
.lp-promo__old {
	font-family: var(--display);
	font-size: clamp(1.1rem, 2.6vw, 1.6rem);
	text-decoration: line-through;
	text-decoration-thickness: 3px;
	opacity: 0.55;
}
.lp-promo__new {
	position: relative;
	display: inline-block;
	font-family: var(--display);
	font-size: clamp(2.4rem, 7vw, 4.4rem);
	line-height: 1;
	background: var(--yellow);
	border: 3px solid var(--ink);
	border-radius: 18px;
	box-shadow: 6px 6px 0 var(--ink);
	padding: 0.15em 0.4em;
	transform: rotate(-2deg);
	font-variant-numeric: tabular-nums;
}
.lp-promo .lp-btn { margin-top: 1.6rem; }

/* Círculo de marcador alrededor del precio. Ajustado para que no se monte
   sobre el precio tachado que va a su izquierda. */
.lp-promo__circulo {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 112%;
	height: 138%;
	transform: translate(-50%, -50%) rotate(-1deg);
}

/* ==========================================================================
   PROGRAMAS — galería horizontal anclada (solo escritorio)
   ========================================================================== */

.lp-programs {
	background: var(--cream);
	border-block: 3px solid var(--ink);
	padding-block: var(--block-y);
	overflow: hidden;
}
.lp-programs__track {
	display: flex;
	gap: clamp(1rem, 2.5vw, 1.75rem);
	will-change: transform;
}
.lp-program {
	position: relative;
	/* Anchas a propósito: el riel tiene que sobrar bastante del ancho de la
	   pantalla para que el desplazamiento horizontal se note. Con tarjetas
	   angostas el anclado retiene el scroll y casi no mueve nada. */
	flex: 0 0 clamp(280px, 42vw, 560px);
	display: flex;
	flex-direction: column;
	background: var(--acc, var(--white));
	border: var(--bd);
	border-radius: var(--r);
	box-shadow: var(--sh);
	padding: clamp(0.9rem, 1.8vw, 1.2rem);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.lp-program:nth-child(3n + 1) { --acc: var(--pink); }
.lp-program:nth-child(3n + 2) { --acc: var(--cyan); }
.lp-program:nth-child(3n + 3) { --acc: var(--yellow); }
.lp-program:hover,
.lp-program:focus-within {
	transform: translate(-5px, -5px) rotate(-0.4deg);
	box-shadow: 13px 13px 0 var(--ink);
}
.lp-program .lp-star { top: -14px; right: -14px; }
.lp-program:hover .lp-star { transform: rotate(20deg); }

.lp-program__media {
	position: relative;
	border: 2.5px solid var(--ink);
	border-radius: var(--r-sm);
	overflow: hidden;
	background: var(--white);
	margin-bottom: clamp(0.9rem, 1.8vw, 1.3rem);
}
.lp-program__media img {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	transition: transform 0.45s ease;
}
.lp-program:hover .lp-program__media img { transform: scale(1.05); }

/* El número se monta sobre la esquina de la foto, como un sticker pegado. */
.lp-program__num {
	position: absolute;
	top: calc(clamp(0.9rem, 1.8vw, 1.2rem) + 10px);
	left: calc(clamp(0.9rem, 1.8vw, 1.2rem) + 10px);
	z-index: 2;
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	background: var(--white);
	color: var(--ink);
	border: 3px solid var(--ink);
	border-radius: 50%;
	box-shadow: 3px 3px 0 var(--ink);
	font-family: var(--display);
	font-size: 0.95rem;
	transform: rotate(-7deg);
}

.lp-program h3 {
	font-size: clamp(1.05rem, 2.2vw, 1.45rem);
	line-height: 1.08;
	padding-inline: 0.35rem;
}
.lp-program h3 a {
	color: inherit;
	text-decoration: none;
}
/* Enlace estirado: toda la tarjeta es clicable, pero en el HTML el enlace
   sigue siendo el título (que es lo que anuncia un lector de pantalla). */
.lp-program__link::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: var(--r);
	z-index: 5;
}
.lp-program p {
	margin: 0.7rem 0 0;
	padding-inline: 0.35rem;
	font-size: 0.88rem;
	font-weight: 600;
	text-wrap: pretty;
}
.lp-program__cta {
	display: inline-block;
	margin: auto 0.35rem 0.25rem;
	padding-top: 1.1rem;
	font-family: var(--display);
	font-size: 0.66rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

/* ==========================================================================
   DOCUMENTAL — bloque negro cinematográfico
   ========================================================================== */

.lp-doc {
	position: relative;
	background: var(--ink);
	color: var(--white);
	border-block: 3px solid var(--ink);
	padding-block: var(--block-y);
	overflow: hidden;
}
.lp-doc__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
	align-items: center;
	gap: clamp(1.75rem, 5vw, 4rem);
}
.lp-doc h2 {
	font-size: clamp(2.2rem, 6.5vw, 4.4rem);
	color: var(--white);
	margin-top: 1rem;
}
.lp-doc p {
	margin: 1.1rem 0 0;
	max-width: 50ch;
	font-size: clamp(0.9rem, 1.6vw, 1.02rem);
	font-weight: 500;
	color: #e6e0d8;
}
.lp-doc__note { font-size: 0.82rem !important; color: #a9a29a !important; }
.lp-doc .lp-pill--flag { background: var(--white); margin-top: 1.2rem; }
.lp-doc .lp-btn { margin-top: 1.5rem; }

.lp-doc__media {
	position: relative;
	border: 3px solid var(--white);
	border-radius: var(--r);
	overflow: hidden;
	box-shadow: 10px 10px 0 var(--pink);
}
.lp-doc__media img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	will-change: transform;
}
/* El acercamiento inicial solo existe si hay animación que lo devuelva a 1:
   sin JS (o con movimiento reducido) la foto se ve completa, no recortada. */
.matu-anim .lp-doc__media img { transform: scale(1.15); }
.lp-doc__play {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	z-index: 2;
	text-decoration: none;
}
.lp-doc__play span {
	display: grid;
	place-items: center;
	width: clamp(64px, 9vw, 88px);
	height: clamp(64px, 9vw, 88px);
	background: var(--pink);
	border: 3px solid var(--ink);
	border-radius: 50%;
	box-shadow: 5px 5px 0 var(--ink);
	transition: transform 0.2s ease;
}
.lp-doc__play:hover span { transform: scale(1.08); }
.lp-doc__play svg { width: 28px; height: 28px; margin-left: 4px; }

/* ==========================================================================
   TESTIMONIOS — dos filas que se cruzan con el scroll
   ========================================================================== */

.lp-testi {
	background: var(--yellow);
	border-block: 3px solid var(--ink);
	padding-block: var(--block-y);
	overflow: hidden;
}
.lp-testi__row {
	display: flex;
	gap: clamp(0.9rem, 2vw, 1.4rem);
	width: max-content;
	will-change: transform;
}
.lp-testi__row + .lp-testi__row { margin-top: clamp(0.9rem, 2vw, 1.4rem); }

/* Con pocas reseñas no hay filas que cruzar: rejilla centrada con las reales. */
.lp-testi__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
	gap: clamp(0.9rem, 2vw, 1.4rem);
	max-width: 900px;
	margin-inline: auto;
}
.lp-testi__grid .lp-quote { flex: none; }

.lp-quote {
	flex: 0 0 clamp(280px, 30vw, 400px);
	background: var(--white);
	border: var(--bd);
	border-radius: var(--r-sm);
	box-shadow: 5px 5px 0 var(--ink);
	padding: 1.3rem 1.4rem;
}
/* Sobre la banda amarilla, las tarjetas van en los otros colores de la paleta. */
.lp-quote:nth-child(4n + 1) { background: var(--white); }
.lp-quote:nth-child(4n + 2) { background: var(--cyan); }
.lp-quote:nth-child(4n + 3) { background: var(--pink); }
.lp-quote:nth-child(4n + 4) { background: var(--cream); }
.lp-quote blockquote {
	margin: 0;
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.45;
}
.lp-quote figcaption {
	margin-top: 0.9rem;
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
.lp-quote__stars { display: flex; gap: 2px; margin-bottom: 0.7rem; }
.lp-quote__stars svg { width: 15px; height: 15px; }

/* ==========================================================================
   SÍGUEME — bloque rosado gigante
   ========================================================================== */

.lp-follow {
	position: relative;
	background: var(--pink);
	border-block: 3px solid var(--ink);
	padding-block: clamp(2.5rem, 6vw, 4.5rem);
	text-align: center;
	overflow: hidden;
}
.lp-follow h2 { font-size: clamp(1.9rem, 6vw, 3.6rem); }
.lp-follow__handle {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	margin-top: 1.4rem;
	font-family: var(--display);
	font-size: clamp(1rem, 3vw, 1.8rem);
	text-transform: lowercase;
	text-decoration: none;
	color: var(--ink);
	background: var(--white);
	border: 3px solid var(--ink);
	border-radius: 999px;
	box-shadow: var(--sh-sm);
	padding: 0.5em 1.2em;
	transition: transform 0.16s ease, box-shadow 0.16s ease;
}
.lp-follow__handle:hover {
	transform: translate(-3px, -3px);
	box-shadow: 8px 8px 0 var(--ink);
}
.lp-follow__handle svg { width: clamp(22px, 3vw, 30px); height: auto; }

.lp-follow__strip {
	display: flex;
	justify-content: center;
	gap: clamp(0.5rem, 1.5vw, 1rem);
	margin-top: clamp(1.6rem, 4vw, 2.4rem);
	flex-wrap: wrap;
}
.lp-follow__strip img {
	width: clamp(84px, 12vw, 150px);
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border: 3px solid var(--ink);
	border-radius: 14px;
	box-shadow: var(--sh-sm);
	background: var(--white);
}
.lp-follow__strip img:nth-child(odd) { transform: rotate(-3deg); }
.lp-follow__strip img:nth-child(even) { transform: rotate(3deg); }

/* ==========================================================================
   FAQ — bloque cyan con acordeón
   ========================================================================== */

.lp-faq { padding-block: var(--block-y); }
.lp-faq__block { background: var(--cyan); }
.lp-faq__block h2 { text-align: center; font-size: clamp(1.6rem, 4.4vw, 2.8rem); }
.lp-faq__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(0.7rem, 1.6vw, 1rem);
	margin-top: clamp(1.4rem, 3vw, 2rem);
}
.lp-faq__item {
	background: var(--white);
	border: var(--bd);
	border-radius: var(--r-sm);
	box-shadow: var(--sh-sm);
	padding: 1rem 1.15rem;
}
.lp-faq__item summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	cursor: pointer;
	list-style: none;
	/* 44px de alto minimo: es el tamano de un dedo. Medido en movil la fila
	   quedaba en 28px, y con el 99% del trafico entrando por celular abrir una
	   pregunta no puede ser puntería. */
	min-height: 44px;
	padding-block: 0.35rem;
	font-family: var(--display);
	font-size: 0.84rem;
	line-height: 1.2;
	text-transform: uppercase;
}
.lp-faq__item summary::-webkit-details-marker { display: none; }
.lp-faq__item summary::after {
	content: "+";
	flex: none;
	display: grid;
	place-items: center;
	width: 28px;
	height: 28px;
	background: var(--yellow);
	border: 2.5px solid var(--ink);
	border-radius: 50%;
	font-size: 1rem;
	line-height: 1;
	transition: transform 0.2s ease;
}
.lp-faq__item[open] summary::after { transform: rotate(45deg); }
.lp-faq__item p {
	margin: 0.8rem 0 0;
	font-size: 0.86rem;
	font-weight: 600;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

/* El riel ya no se ancla (ver landing.js): la sección tiene su alto normal y el
   desplazamiento lateral ocurre mientras pasa por la pantalla. */
@media (min-width: 1000px) {
	.lp-program__media img { aspect-ratio: 16 / 9; }
}

@media (max-width: 1000px) {
	.lp-hero__inner { grid-template-columns: minmax(0, 1fr); }
	.lp-hero__collage { max-width: 480px; margin-inline: auto; }
	.lp-store__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lp-about__grid,
	.lp-doc__grid { grid-template-columns: minmax(0, 1fr); }
	.lp-polaroid { max-width: 360px; margin-inline: auto; }
	.lp-doc__media { max-width: 460px; margin-inline: auto; }
}

@media (max-width: 1000px) {
	/* En angosto el antes y el después se apilan, y la flecha apunta hacia abajo. */
	.lp-antes { grid-template-columns: minmax(0, 1fr); justify-items: center; }
	/* Apilado, la flecha apunta hacia abajo y no necesita el desfase que la
	   colgaba a la altura de los bloques cuando iban lado a lado. */
	.lp-antes__flecha { transform: rotate(78deg); width: 72px; margin-top: 0; }
}

@media (max-width: 760px) {
	.matu-landing { --sh: 6px 6px 0 var(--ink); }

	.lp-caos, .lp-objeto { max-width: 300px; }

	.lp-faq__list { grid-template-columns: minmax(0, 1fr); }
	.lp-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 1.6rem; }
	.lp-about__grid { gap: 2rem; }
	.lp-hero__collage { min-height: 300px; }
	.lp-program { flex: 0 0 82vw; }
	.lp-programs__track { flex-direction: column; }
	.lp-program { flex: none; width: 100%; }
}

@media (max-width: 430px) {
	.lp-store__grid { grid-template-columns: minmax(0, 1fr); }
	.lp-card .lp-btn { font-size: 0.62rem; }
	.lp-hero__proof { flex-wrap: wrap; }
}

/* ==========================================================================
   Movimiento reducido — se apaga todo lo que se mueve solo
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
	.matu-landing .lp-marquee__track { animation: none; }
	.matu-landing .lp-hero__cue span { animation: none; }
	.matu-landing *,
	.matu-landing *::before,
	.matu-landing *::after {
		transition-duration: 0.01ms !important;
	}
	.matu-anim .matu-landing [data-reveal],
	.matu-anim .matu-landing [data-reveal-children] > * { opacity: 1 !important; }
	.matu-anim .matu-landing .lp-word > span { transform: none !important; }
	.matu-landing .lp-philo__title .lp-lite { color: var(--ink); }
}
