/*
 * MÈRE — Elementor.
 * 1) Neutraliza los espacios que Elementor pone a contenedores y widgets, para
 *    que las secciones MÈRE queden idénticas al Lovable.
 * 2) "Fondo MÈRE" de los contenedores (degradados, grano, manchas, aire).
 * 3) Estilos de cada widget, calcados de las clases de Tailwind del Lovable
 *    (unidad 0,25rem; sm 640px, md 768px, lg 1024px).
 * 4) Ajustes para la vista previa del editor.
 *
 * Las imágenes van con dos clases: Elementor trae `.elementor img
 * { height:auto; max-width:100% }`, que le ganaría a una sola clase.
 */

/* =========================================================
   1. Elementor: sin rellenos ni espacios alrededor de las secciones
   ========================================================= */

/* Contenedor (completo o en caja) que guarda una sección MÈRE: sin relleno
   por defecto del kit, sin espacio entre widgets y a todo el ancho. Lo que el
   usuario ponga a mano en el contenedor (relleno, gap, ancho) sigue mandando. */
.e-con.e-con:has(> .mere-widget--seccion),
.e-con.e-con:has(> .e-con-inner > .mere-widget--seccion) {
	--container-default-padding-top: 0px;
	--container-default-padding-right: 0px;
	--container-default-padding-bottom: 0px;
	--container-default-padding-left: 0px;
	--container-max-width: 100%;
	--widgets-spacing: 0px 0px;
	--widgets-spacing-row: 0px;
	--widgets-spacing-column: 0px;
}

/* Widgets MÈRE: sin margen inferior del kit (secciones antiguas y markup optimizado). */
.elementor-widget.mere-widget:not(:last-child) {
	--kit-widget-spacing: 0px;
}

.elementor-widget.elementor-widget.mere-widget--seccion:not(:last-child) {
	margin-block-end: 0;
}

/* Sin "Optimized markup", el div interno tampoco suma márgenes ni rellenos. */
.mere-widget--seccion > .elementor-widget-container {
	margin: 0;
	padding: 0;
}

/* Secciones antiguas (sección + columna): la columna no rellena la sección MÈRE. */
.elementor-column > .elementor-widget-wrap:has(> .mere-widget--seccion) {
	padding: 0;
}

/* Elementor fija `.elementor img { height:auto }`: les devolvemos su alto a los
   logos del núcleo cuando la cabecera y el pie salen de una plantilla MÈRE. */
.elementor .mere-cabecera__logo-img {
	height: calc(var(--spacing) * 11);
}

.elementor .mere-menu-movil__logo {
	height: calc(var(--spacing) * 9);
}

.elementor .mere-pie__logo {
	height: calc(var(--spacing) * 20);
}

/* =========================================================
   2. Fondo MÈRE (contenedores y secciones)
   ========================================================= */

.elementor-element.mere-fondo--verde {
	background-image: linear-gradient(to top right, var(--verde-claro) 0%, var(--azul-oscuro) 100%);
	isolation: isolate;
}

.elementor-element.mere-fondo--amarillo {
	background-image: linear-gradient(120deg, var(--amarillo) 0%, var(--naranja) 100%);
	isolation: isolate;
}

.elementor-element.mere-fondo--crema {
	background-color: var(--crema);
	isolation: isolate;
}

/* Grano: el mismo feTurbulence del Lovable, en mosaico, multiplicado encima del fondo. */
.elementor-element.mere-fondo--verde::after,
.elementor-element.mere-fondo--amarillo::after,
.elementor-element.mere-fondo--crema::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
	background-repeat: repeat;
	mix-blend-mode: multiply;
	opacity: var(--mere-grano, 0.08);
}

/* Manchas orgánicas: dos formas, mismas medidas y opacidades que el Lovable. */
.elementor-element.mere-fondo--manchas-verde,
.elementor-element.mere-fondo--manchas-naranja,
.elementor-element.mere-fondo--manchas-amarillo {
	isolation: isolate;
}

.elementor-element.mere-fondo--manchas-verde::before,
.elementor-element.mere-fondo--manchas-naranja::before,
.elementor-element.mere-fondo--manchas-amarillo::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -2;
	pointer-events: none;
	opacity: 1;
	mix-blend-mode: normal;
	border: 0;
	border-radius: inherit;
	background-repeat: no-repeat;
	background-size: 520px 390px, 460px 460px;
	background-position: left -96px top 40px, right -128px bottom 0;
}

.elementor-element.mere-fondo--manchas-verde::before {
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 600'%3E%3Cpath fill='%234FAFA4' fill-opacity='.13' d='M596 121c58 47 74 143 45 214s-104 117-183 141-172 26-215-19-45-136-15-207 96-114 175-141 135-35 193 12z'/%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600'%3E%3Cpath fill='%234FAFA4' fill-opacity='.11' d='M451 96c46 44 63 122 44 189s-74 122-149 143-176 8-215-44-9-136 24-197 69-105 137-124 113-11 159 33z'/%3E%3C/svg%3E");
}

.elementor-element.mere-fondo--manchas-naranja::before {
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 600'%3E%3Cpath fill='%23E8942F' fill-opacity='.13' d='M596 121c58 47 74 143 45 214s-104 117-183 141-172 26-215-19-45-136-15-207 96-114 175-141 135-35 193 12z'/%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600'%3E%3Cpath fill='%23E8942F' fill-opacity='.11' d='M451 96c46 44 63 122 44 189s-74 122-149 143-176 8-215-44-9-136 24-197 69-105 137-124 113-11 159 33z'/%3E%3C/svg%3E");
}

.elementor-element.mere-fondo--manchas-amarillo::before {
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 600'%3E%3Cpath fill='%23F5C242' fill-opacity='.13' d='M596 121c58 47 74 143 45 214s-104 117-183 141-172 26-215-19-45-136-15-207 96-114 175-141 135-35 193 12z'/%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600'%3E%3Cpath fill='%23F5C242' fill-opacity='.11' d='M451 96c46 44 63 122 44 189s-74 122-149 143-176 8-215-44-9-136 24-197 69-105 137-124 113-11 159 33z'/%3E%3C/svg%3E");
}

/* Aire de sección (`seccion` del Lovable). En contenedores va por las variables
   de relleno, así un relleno puesto a mano en Elementor sigue ganando. */
.e-con.mere-fondo--seccion {
	--padding-top: clamp(72px, 10vw, 140px);
	--padding-bottom: clamp(72px, 10vw, 140px);
}

.elementor-section.mere-fondo--seccion {
	padding-block: clamp(72px, 10vw, 140px);
}

/* =========================================================
   3. Widgets
   ========================================================= */

/* ---------- Hero de inicio (mere-hero) ---------- */

.mere-el-hero__grid {
	display: grid;
	align-items: center;
	gap: calc(var(--spacing) * 12);
}

.mere-el-hero__texto,
.mere-el-hero__media {
	position: relative;
}

.mere-el-hero .mere-el-hero__chispa {
	position: absolute;
	top: calc(var(--spacing) * -8);
	left: calc(var(--spacing) * -6);
	display: none;
}

.mere-el-hero__conector {
	font-size: var(--text-lg);
	line-height: calc(1.75 / 1.125);
	color: rgba(255, 255, 255, 0.9);
	color: color-mix(in oklab, #fff 90%, transparent);
}

.mere-el-hero__titular {
	margin-top: var(--spacing);
	color: #fff;
}

.mere-el-hero__capsula {
	margin-top: calc(var(--spacing) * 4);
	font-size: var(--text-xl);
	line-height: calc(1.75 / 1.25);
}

.mere-el-hero__parrafo {
	margin-top: calc(var(--spacing) * 7);
	max-width: 28rem;
	font-size: 15px;
	line-height: 1.625;
	color: rgba(255, 255, 255, 0.9);
	color: color-mix(in oklab, #fff 90%, transparent);
}

.mere-el-hero__acciones {
	margin-top: calc(var(--spacing) * 8);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: calc(var(--spacing) * 3);
}

.mere-el-hero .mere-el-hero__flecha {
	display: none;
	height: calc(var(--spacing) * 14);
	width: calc(var(--spacing) * 20);
	translate: 0 calc(var(--spacing) * -6);
}

.mere-el-hero .mere-el-hero__chispa-blanca {
	position: absolute;
	top: 0;
	right: calc(var(--spacing) * 4);
	z-index: 10;
}

.mere-el-hero .mere-el-hero__chispa-amarilla {
	position: absolute;
	bottom: calc(var(--spacing) * 6);
	left: 0;
	z-index: 10;
}

.mere-el-hero .mere-el-hero__img {
	display: block;
	margin-inline: auto;
	width: 100%;
	max-width: 440px;
	height: auto;
	filter: drop-shadow(0 30px 50px rgba(0, 0, 0, 0.25));
}

/* ---------- Beneficios (mere-beneficios) ---------- */

.mere-el-beneficios {
	padding-block: calc(var(--spacing) * 16);
}

.mere-el-beneficios__grid {
	display: grid;
	gap: calc(var(--spacing) * 8);
}

.mere-el-beneficios__item {
	display: flex;
	gap: calc(var(--spacing) * 3);
}

.mere-el-beneficios .mere-el-beneficios__icono {
	flex-shrink: 0;
}

.mere-el-beneficios__titulo {
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	font-weight: 700;
	color: var(--terracota);
}

.mere-el-beneficios__texto {
	margin-top: var(--spacing);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	color: var(--muted-foreground);
}

/* ---------- Catálogo destacado (mere-productos) ---------- */

.mere-el-productos__intro {
	max-width: 42rem;
}

.mere-el-productos__capsula {
	font-size: var(--text-xs);
	line-height: calc(1 / 0.75);
}

.mere-el-productos .mere-el-productos__titular {
	margin-top: calc(var(--spacing) * 5);
	font-size: clamp(34px, 7vw, 64px);
	color: var(--terracota);
}

.mere-el-productos .mere-el-productos__trazo {
	display: block;
	margin-top: calc(var(--spacing) * 4);
	height: calc(var(--spacing) * 3);
	width: calc(var(--spacing) * 56);
}

.mere-el-productos__grilla {
	margin-top: calc(var(--spacing) * 14);
	display: grid;
	gap: calc(var(--spacing) * 7);
}

/* ---------- Cómo funciona (mere-pasos) ---------- */

.mere-el-pasos__titular {
	max-width: 32rem;
	color: var(--terracota);
}

.mere-el-pasos__conector {
	text-transform: lowercase;
}

.mere-el-pasos__grid {
	margin-top: calc(var(--spacing) * 14);
	display: grid;
	align-items: center;
	gap: calc(var(--spacing) * 14);
}

.mere-el-pasos__lista > :not(:last-child) {
	margin-block-end: calc(var(--spacing) * 10);
}

.mere-el-pasos__paso {
	display: flex;
}

.mere-el-pasos__tarjeta {
	margin-left: var(--desp);
	max-width: 28rem;
	border: 4px solid #F5C242;
	border-radius: 24px;
	background-color: #fff;
	padding: calc(var(--spacing) * 6);
	box-shadow: 0 24px 50px -30px rgba(43, 33, 24, 0.6);
}

.mere-el-pasos__numero {
	font-size: var(--text-3xl);
	line-height: calc(2.25 / 1.875);
	color: var(--naranja);
}

.mere-el-pasos__titulo {
	margin-top: var(--spacing);
	font-family: var(--fuente-protagonista);
	font-size: var(--text-xl);
	line-height: calc(1.75 / 1.25);
	font-weight: 800;
	color: var(--terracota);
}

.mere-el-pasos__texto {
	margin-top: calc(var(--spacing) * 2);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	color: var(--muted-foreground);
}

.mere-el-pasos .mere-el-pasos__flecha {
	display: none;
	margin-left: calc(var(--spacing) * 4);
	height: calc(var(--spacing) * 16);
	width: calc(var(--spacing) * 24);
	align-self: flex-end;
}

.mere-el-pasos__media {
	position: relative;
}

.mere-el-pasos .mere-el-pasos__chispa {
	position: absolute;
	top: calc(var(--spacing) * -6);
	left: calc(var(--spacing) * -4);
	z-index: 10;
}

.mere-el-pasos__marco {
	overflow: hidden;
	border: 4px solid #fff;
	border-radius: 28px;
	background-color: var(--crema);
}

.mere-el-pasos .mere-el-pasos__img {
	display: block;
	aspect-ratio: 1;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.mere-el-pasos__firma {
	position: absolute;
	right: calc(var(--spacing) * 2);
	bottom: calc(var(--spacing) * -12);
	font-size: var(--text-3xl);
	line-height: calc(2.25 / 1.875);
	color: var(--terracota);
}

/* ---------- Testimonio editorial (mere-testimonio-editorial) ---------- */

.mere-el-testimonio__grid {
	display: grid;
	align-items: center;
	gap: calc(var(--spacing) * 12);
}

.mere-el-testimonio__comillas {
	font-size: var(--text-7xl);
	line-height: 1;
	color: var(--naranja);
}

.mere-el-testimonio__cita {
	margin-top: calc(var(--spacing) * -4);
	font-family: var(--fuente-serif);
	font-size: clamp(26px, 4.4vw, 44px);
	line-height: 1.25;
	color: var(--foreground);
}

.mere-el-testimonio__autora {
	margin-top: calc(var(--spacing) * 5);
	font-size: var(--text-3xl);
	line-height: calc(2.25 / 1.875);
	color: var(--terracota);
}

.mere-el-testimonio__accion {
	margin-top: calc(var(--spacing) * 8);
}

.mere-el-testimonio__captura-caja {
	display: flex;
	justify-content: center;
}

/* En el Lovable w-full le gana a w-[65%]: queda ancho completo con tope de 380px. */
.mere-el-testimonio .mere-el-testimonio__captura {
	min-width: 240px;
}

/* ---------- Papel rasgado (mere-papel-rasgado) ---------- */

.mere-widget .mere-el-papel {
	display: block;
	height: calc(var(--spacing) * 6);
	width: 100%;
	margin-bottom: -1px;
}

.mere-widget .mere-el-papel--invertido {
	rotate: 180deg;
}

/* ---------- Collage de stickers (mere-collage) ---------- */

.mere-el-collage__titular {
	max-width: 36rem;
	color: #fff;
}

.mere-el-collage__grid {
	margin-top: calc(var(--spacing) * 14);
	display: grid;
	column-gap: calc(var(--spacing) * 10);
	row-gap: calc(var(--spacing) * 16);
}

.mere-el-collage__sticker {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.mere-el-collage__marco {
	width: 100%;
	overflow: hidden;
	border: 4px solid #F5C242;
	border-radius: 26px;
	background-color: var(--crema);
}

.mere-el-collage .mere-el-collage__img {
	display: block;
	aspect-ratio: 1;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.mere-el-collage__etiqueta {
	margin-top: calc(var(--spacing) * 8);
	display: block;
	font-size: var(--text-2xl);
	line-height: calc(2 / 1.5);
	color: var(--amarillo);
}

/* ---------- Cierre (mere-cta) ---------- */

.mere-el-cta {
	text-align: center;
}

.mere-el-cta__capsula {
	font-size: var(--text-xl);
	line-height: calc(1.75 / 1.25);
}

.mere-el-cta__accion {
	display: flex;
	justify-content: center;
}

.mere-el-cta--inicio .mere-el-cta__titular {
	font-size: clamp(34px, 8vw, 72px);
	color: var(--terracota);
}

.mere-el-cta--inicio .mere-el-cta__capsula {
	margin-top: calc(var(--spacing) * 6);
}

.mere-el-cta--inicio .mere-el-cta__accion {
	margin-top: calc(var(--spacing) * 9);
}

/* px-10 py-4 del Lovable (el text-base del original lo pisa text-sm en el CSS compilado). */
.mere-el-cta--inicio .mere-el-cta__boton {
	padding: calc(var(--spacing) * 4) calc(var(--spacing) * 10);
}

.mere-el-cta--testimonios .mere-el-cta__titular {
	color: #fff;
}

.mere-el-cta--testimonios .mere-el-cta__capsula {
	margin-top: calc(var(--spacing) * 5);
}

.mere-el-cta--testimonios .mere-el-cta__accion {
	margin-top: calc(var(--spacing) * 8);
}

.mere-el-cta--testimonios .mere-el-cta__boton {
	padding: calc(var(--spacing) * 4) calc(var(--spacing) * 9);
}

/* ---------- Encabezado de página (mere-hero-pagina) ---------- */

.mere-el-hero-pagina {
	padding-block: calc(var(--spacing) * 20);
}

.mere-el-hero-pagina__contenedor--centro {
	text-align: center;
}

.mere-el-hero-pagina__conector--blanco {
	color: rgba(255, 255, 255, 0.9);
	color: color-mix(in oklab, #fff 90%, transparent);
}

.mere-el-hero-pagina__conector--terracota {
	color: rgba(196, 68, 31, 0.9);
	color: color-mix(in oklab, var(--terracota) 90%, transparent);
}

.mere-el-hero-pagina__titular {
	margin-top: var(--spacing);
}

.mere-el-hero-pagina__titular--blanco {
	color: #fff;
}

.mere-el-hero-pagina__titular--terracota {
	color: var(--terracota);
}

.mere-el-hero-pagina__capsula {
	margin-top: calc(var(--spacing) * 5);
	font-size: var(--text-xl);
	line-height: calc(1.75 / 1.25);
}

/* ---------- Tienda (mere-tienda) ---------- */
/* La grilla, las pills y el buscador los estiliza tienda.css (catálogo).
   Aquí solo va la sección; el número de columnas viaja en --mere-columnas. */

/* ---------- Franja con chispas (mere-franja) ---------- */

.mere-el-franja {
	padding-block: calc(var(--spacing) * 12);
}

.mere-el-franja__contenedor {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: calc(var(--spacing) * 4);
	text-align: center;
}

.mere-el-franja__texto {
	font-family: var(--fuente-cuerpo);
	font-weight: 600;
	color: var(--terracota);
}

/* ---------- Aviso en banda verde (mere-aviso) ---------- */

.mere-el-aviso {
	padding-block: calc(var(--spacing) * 8);
}

.mere-el-aviso__contenedor {
	text-align: center;
}

.mere-el-aviso__antetitulo {
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgba(255, 255, 255, 0.8);
	color: color-mix(in oklab, #fff 80%, transparent);
}

.mere-el-aviso__texto {
	margin-top: calc(var(--spacing) * 2);
	font-size: var(--text-lg);
	line-height: calc(1.75 / 1.125);
	font-weight: 700;
	color: #fff;
}

/* ---------- Guías de preparación (mere-guias-preparacion) ---------- */

.mere-el-guia__grid {
	display: grid;
	align-items: center;
	gap: calc(var(--spacing) * 12);
}

.mere-el-guia__marco {
	overflow: hidden;
	aspect-ratio: 4 / 3;
	border-radius: 28px;
	background-color: #F5C242;
}

.mere-el-guia--verde .mere-el-guia__marco {
	background-color: #F6EFE2;
}

.mere-el-guia .mere-el-guia__img {
	display: block;
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.mere-el-guia__nombre {
	color: var(--terracota);
}

.mere-el-guia__etiqueta {
	margin-top: calc(var(--spacing) * 6);
	font-size: 10px;
	color: var(--muted-foreground);
}

.mere-el-guia__metodos {
	margin-top: calc(var(--spacing) * 3);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
}

.mere-el-guia__metodos > :not(:last-child) {
	margin-block-end: calc(var(--spacing) * 2);
}

.mere-el-guia__metodo {
	display: flex;
	align-items: baseline;
	gap: calc(var(--spacing) * 2);
}

.mere-el-guia__metodo-nombre {
	font-weight: 700;
}

.mere-el-guia__metodo-detalle {
	color: var(--muted-foreground);
}

.mere-el-guia__tip-etiqueta {
	margin-top: calc(var(--spacing) * 7);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
}

.mere-el-guia__tip {
	margin-top: calc(var(--spacing) * 3);
	max-width: 28rem;
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	color: var(--muted-foreground);
}

/* Versión verde: textos en blanco. */
.mere-el-guia--verde .mere-el-guia__nombre,
.mere-el-guia--verde .mere-el-guia__metodos {
	color: #fff;
}

.mere-el-guia--verde .mere-el-guia__etiqueta {
	color: rgba(255, 255, 255, 0.7);
	color: color-mix(in oklab, #fff 70%, transparent);
}

.mere-el-guia--verde .mere-el-guia__metodo-detalle,
.mere-el-guia--verde .mere-el-guia__tip {
	color: rgba(255, 255, 255, 0.9);
	color: color-mix(in oklab, #fff 90%, transparent);
}

/* ---------- Errores comunes (mere-errores) ---------- */

.mere-el-errores__cabeza {
	display: flex;
	align-items: center;
	gap: calc(var(--spacing) * 3);
}

.mere-el-errores__titular {
	color: var(--terracota);
}

.mere-el-errores__grid {
	margin-top: calc(var(--spacing) * 10);
	display: grid;
	gap: calc(var(--spacing) * 6);
}

.mere-el-errores__tarjeta {
	height: 100%;
	border-radius: 22px;
	background-color: #fff;
	padding: calc(var(--spacing) * 6);
}

.mere-el-errores__titulo {
	font-size: var(--text-base);
	line-height: 1.5;
	font-weight: 700;
	color: var(--terracota);
}

.mere-el-errores__texto {
	margin-top: calc(var(--spacing) * 2);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	color: var(--muted-foreground);
}

/* ---------- Muro de testimonios (mere-muro-testimonios) ---------- */

.mere-el-muro__columnas {
	columns: 1;
	column-gap: calc(var(--spacing) * 7);
}

.mere-el-muro__columnas > * {
	margin-bottom: calc(var(--spacing) * 7);
	break-inside: avoid;
}

.mere-el-muro__whatsapp {
	display: flex;
	justify-content: center;
	padding-block: calc(var(--spacing) * 4);
}

.mere-el-muro__capsula {
	border-radius: 26px;
	padding: calc(var(--spacing) * 7);
	color: #fff;
}

.mere-el-muro__capsula-texto {
	font-size: var(--text-lg);
	line-height: 1.375;
}

.mere-el-muro__editorial {
	border-radius: 26px;
	background-color: #fff;
	padding: calc(var(--spacing) * 7);
}

.mere-el-muro__comillas {
	font-size: var(--text-5xl);
	line-height: 1;
	color: var(--naranja);
}

.mere-el-muro__cita {
	margin-top: calc(var(--spacing) * -3);
	font-family: var(--fuente-serif);
	font-size: var(--text-xl);
	line-height: 1.375;
}

.mere-el-muro__firma {
	margin-top: calc(var(--spacing) * 4);
	font-size: var(--text-2xl);
	line-height: calc(2 / 1.5);
}

.mere-el-muro__firma--amarilla {
	color: var(--amarillo);
}

.mere-el-muro__firma--terracota {
	color: var(--terracota);
}

/* ---------- Preguntas frecuentes (mere-faq) ---------- */

.mere-el-faq .mere-el-faq__contenedor {
	max-width: 48rem;
}

.mere-el-faq__grupo {
	margin-bottom: calc(var(--spacing) * 12);
}

.mere-el-faq__etiqueta {
	font-size: var(--text-xs);
	line-height: calc(1 / 0.75);
}

.mere-el-faq__lista {
	margin-top: calc(var(--spacing) * 5);
}

.mere-el-faq__lista > :not(:last-child) {
	margin-block-end: calc(var(--spacing) * 3);
}

.mere-el-faq__item {
	overflow: hidden;
	border-radius: 20px;
	background-color: #fff;
}

.mere-el-faq__pregunta {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: space-between;
	gap: calc(var(--spacing) * 4);
	padding: calc(var(--spacing) * 4) calc(var(--spacing) * 5);
	text-align: left;
	cursor: pointer;
}

.mere-el-faq__pregunta-texto {
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	font-weight: 600;
}

.mere-el-faq__signo {
	flex-shrink: 0;
	color: var(--terracota);
}

.mere-el-faq__respuesta {
	padding: 0 calc(var(--spacing) * 5) calc(var(--spacing) * 5);
	font-size: var(--text-sm);
	line-height: 1.625;
	color: var(--muted-foreground);
}

/* Con JS solo se ve la respuesta abierta; sin JS se leen todas. */
.js .mere-el-faq__item:not(.is-abierta) .mere-el-faq__respuesta {
	display: none;
}

.mere-el-faq__caja {
	border-radius: 26px;
	background-color: var(--verde);
	padding: calc(var(--spacing) * 8);
	text-align: center;
	color: #fff;
}

.mere-el-faq__caja-titulo {
	font-size: var(--text-2xl);
	line-height: calc(2 / 1.5);
}

.mere-el-faq__caja-texto {
	margin-top: calc(var(--spacing) * 2);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	color: rgba(255, 255, 255, 0.9);
	color: color-mix(in oklab, #fff 90%, transparent);
}

.mere-el-faq__caja-accion {
	margin-top: calc(var(--spacing) * 6);
	display: flex;
	justify-content: center;
}

/* ---------- Piezas sueltas (titular, cápsula, botón, captura, chispa) ---------- */

.mere-el-titular--terracota { color: var(--terracota); }
.mere-el-titular--blanco { color: #fff; }
.mere-el-titular--naranja { color: var(--naranja); }
.mere-el-titular--amarillo { color: var(--amarillo); }
.mere-el-titular--verde { color: var(--verde); }
.mere-el-titular--oscuro { color: var(--foreground); }

.mere-el-capsula--etiqueta {
	font-size: var(--text-xs);
	line-height: calc(1 / 0.75);
}

.mere-el-capsula--pequena {
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
}

.mere-el-capsula--titular,
.mere-el-capsula--grande {
	font-size: var(--text-xl);
	line-height: calc(1.75 / 1.25);
}

.mere-el-boton,
.mere-el-captura,
.mere-el-chispa {
	display: flex;
}

.mere-el-captura {
	justify-content: center;
	padding-block: calc(var(--spacing) * 4);
}

.mere-el-boton--grande .mere-el-boton__boton {
	padding: calc(var(--spacing) * 4) calc(var(--spacing) * 10);
}

/* ---------- Aviso solo visible en el editor ---------- */

.mere-el-aviso-editor {
	margin-block: calc(var(--spacing) * 6);
	border: 2px dashed var(--terracota);
	border-radius: 16px;
	background-color: #fff;
	padding: calc(var(--spacing) * 4) calc(var(--spacing) * 5);
	font-size: var(--text-sm);
	line-height: calc(1.25 / 0.875);
	text-align: center;
	color: var(--terracota);
}

/* ---------- Puntos de quiebre (sm 640, md 768, lg 1024) ---------- */

@media (min-width: 40rem) {
	.mere-el-beneficios__grid,
	.mere-el-productos__grilla,
	.mere-el-errores__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mere-el-collage__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mere-el-muro__columnas {
		columns: 2;
	}
}

@media (min-width: 48rem) {
	.mere-el-hero .mere-el-hero__chispa,
	.mere-el-hero .mere-el-hero__flecha,
	.mere-el-pasos .mere-el-pasos__flecha {
		display: block;
	}

	.mere-el-hero__capsula {
		font-size: var(--text-2xl);
		line-height: calc(2 / 1.5);
	}

	.mere-el-beneficios__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mere-el-capsula--grande {
		font-size: var(--text-2xl);
		line-height: calc(2 / 1.5);
	}
}

@media (min-width: 64rem) {
	.mere-el-hero__grid {
		grid-template-columns: 1.05fr 0.95fr;
	}

	.mere-el-beneficios__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.mere-el-productos__grilla {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mere-el-pasos__grid {
		grid-template-columns: 1fr 0.85fr;
	}

	.mere-el-testimonio__grid {
		grid-template-columns: 1.15fr 0.85fr;
	}

	.mere-el-guia__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* Guías en verde: la foto pasa a la derecha. */
	.mere-el-guia--verde .mere-el-guia__grid > :first-child {
		order: 2;
	}

	.mere-el-muro__columnas {
		columns: 3;
	}
}

/* =========================================================
   4. Vista previa del editor de Elementor
   ========================================================= */

/* Mientras se edita, todo se ve de una (sin esperar el scroll). */
.elementor-editor-active .elementor-widget .revelar {
	opacity: 1;
	transform: none;
}

/* Los avisos del editor no se ven nunca en el sitio publicado. */
body:not(.elementor-editor-active) .mere-el-aviso-editor {
	display: none;
}
