/* =========================================================================
 * La Extremeña — bloques de la home
 *
 * Medidas del Figma: contenido 1240, rejilla de 3 columnas con separación 24, cifras y pasos
 * en cuatro columnas de 310 con filete vertical entre ellas.
 * ========================================================================= */

/* --- Cifras -------------------------------------------------------------- */

.lx-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding-top: 20px;
}

.lx-stat {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 28px 40px;
}

.lx-stat:first-child {
	padding-left: 0;
}

/* El filete va a la izquierda de cada celda menos la primera: así no sobra uno al final. */
.lx-stat + .lx-stat {
	border-left: 1px solid #2e2620;
}

.lx-stat__v {
	font-family: "Playfair Display", Georgia, serif;
	font-weight: 500;
	font-size: 54px;
	line-height: 56px;
	color: var(--lx-accent);
}

.lx-stat__l {
	font: 500 14px/1.2 Inter, system-ui, sans-serif;
	letter-spacing: .3px;
	color: #a79d90;
}

@media (max-width: 1024px) {
	.lx-stats {
		grid-template-columns: repeat(2, 1fr);
	}

	.lx-stat {
		padding: 24px 28px;
	}

	/* En dos columnas el filete de la tercera celda quedaría en el borde izquierdo. */
	.lx-stat:nth-child(odd) {
		border-left: 0;
		padding-left: 0;
	}

	.lx-stat:nth-child(n+3) {
		border-top: 1px solid #2e2620;
	}
}

@media (max-width: 560px) {
	.lx-stats {
		grid-template-columns: 1fr;
	}

	.lx-stat {
		padding: 20px 0;
		border-left: 0 !important;
	}

	.lx-stat + .lx-stat {
		border-top: 1px solid #2e2620;
	}

	.lx-stat__v {
		font-size: 42px;
		line-height: 46px;
	}
}

/* --- Rejilla de categorías ---------------------------------------------- */

.lx-cat__title {
	margin: 0;
	font-family: "Playfair Display", Georgia, serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 28px;
	color: var(--lx-paper-2);
}

.lx-cats .lx-card__body {
	padding: 26px 28px 30px;
	gap: 8px;
}

.lx-cats .lx-card__desc {
	font-size: 14.5px;
	line-height: 21px;
	color: #a79d90;
}

/* --- Ventajas ------------------------------------------------------------ */

.lx-ventajas {
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}

.lx-ventaja {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	padding-block: 20px;
}

.lx-ventaja + .lx-ventaja {
	border-top: 1px solid var(--lx-line);
}

.lx-ventaja svg {
	color: var(--lx-accent);
	margin-top: 2px;
}

.lx-ventaja__t {
	margin: 0 0 6px;
	font: 600 17px/1.3 Inter, system-ui, sans-serif;
	color: #ede6da;
}

.lx-ventaja p {
	margin: 0;
	font-size: 14.5px;
	line-height: 22px;
	color: #a79d90;
}

/* --- Proceso ------------------------------------------------------------- */

.lx-pasos {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.lx-paso {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding-right: 36px;
}

.lx-paso + .lx-paso {
	border-left: 1px solid #2e2620;
	padding-left: 36px;
}

.lx-paso svg {
	color: var(--lx-accent);
}

/* El número es marca de agua: mismo marrón que el filete, sin llamar la atención. */
.lx-paso__n {
	font-family: "Playfair Display", Georgia, serif;
	font-weight: 500;
	font-size: 40px;
	line-height: 1;
	color: #3e332b;
}

.lx-paso__t {
	margin: 0;
	font: 600 19px/1.2 Inter, system-ui, sans-serif;
	color: #ede6da;
}

.lx-paso p {
	margin: 0;
	font-size: 14.5px;
	line-height: 22px;
	color: #a79d90;
}

@media (max-width: 1024px) {
	.lx-pasos {
		grid-template-columns: repeat(2, 1fr);
		gap: 32px 0;
	}

	.lx-paso:nth-child(odd) {
		border-left: 0;
		padding-left: 0;
	}
}

@media (max-width: 560px) {
	.lx-pasos {
		grid-template-columns: 1fr;
	}

	.lx-paso {
		border-left: 0 !important;
		padding: 0 0 24px !important;
	}

	.lx-paso + .lx-paso {
		border-top: 1px solid #2e2620;
		padding-top: 24px !important;
	}
}

/* --- Testimonios --------------------------------------------------------- */

.lx-quotes {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.lx-quote {
	display: flex;
	flex-direction: column;
	gap: 22px;
	margin: 0;
	padding: 34px;
	background: var(--lx-card);
	border: 1px solid #2c241e;
	border-radius: 4px;
}

.lx-quote__mark {
	font-family: "Playfair Display", Georgia, serif;
	font-weight: 900;
	font-size: 48px;
	line-height: 34px;
	color: var(--lx-accent);
}

.lx-quote blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	flex: 1;
	font-size: 16px;
	line-height: 26px;
	color: #d4cbbf;
	font-style: normal;
}

.lx-quote figcaption {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.lx-quote__n {
	font: 600 15px/1.2 Inter, system-ui, sans-serif;
	color: #f0e9dd;
}

.lx-quote__c {
	font: 400 13px/1.2 Inter, system-ui, sans-serif;
	color: var(--lx-muted);
}

@media (max-width: 1024px) {
	.lx-quotes {
		grid-template-columns: 1fr;
	}
}

/* --- Hero ---------------------------------------------------------------- */

/* El hero mide 840 con la cabecera dentro; aquí la cabecera es sticky y va aparte, así que
   la sección se queda con los 728 restantes. */
.lx-hero {
	min-height: 728px;
}

.lx-hero .lx-hero__eyebrow {
	font: 600 13px/1.25 Inter, system-ui, sans-serif;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--lx-accent);
}

@media (max-width: 767px) {
	.lx-hero {
		min-height: 560px;
	}
}

/* --- Contacto ------------------------------------------------------------ */

.lx-datos {
	display: flex;
	flex-direction: column;
	gap: 22px;
	padding: 32px;
	background: var(--lx-card-alt);
	border: 1px solid #2c241e;
	border-radius: 6px;
}

.lx-dato {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

/* Círculo de 42 con el icono centrado: el único elemento redondo del diseño junto a las
   píldoras de filtro. */
.lx-dato__i {
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #2a1d15;
	border-radius: 21px;
	color: var(--lx-accent);
}

.lx-dato > div {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.lx-dato__l {
	font: 600 12px/1.2 Inter, system-ui, sans-serif;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--lx-muted-2);
}

.lx-dato__v,
.lx-dato__v a {
	font: 400 15px/22px Inter, system-ui, sans-serif;
	color: var(--lx-text);
	text-decoration: none;
}

.lx-dato__v a:hover {
	color: var(--lx-accent);
}

.lx-mapa {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.lx-mapa__box {
	height: 240px;
	background: #241c17;
	border-radius: 6px;
}

.lx-mapa__l {
	font: 500 13px/1.2 Inter, system-ui, sans-serif;
	color: var(--lx-muted-2);
}

/* --- Formulario ---------------------------------------------------------- */

.lx-form .elementor-field-group > label {
	font: 500 13px/1.2 Inter, system-ui, sans-serif;
	color: #a79d90;
	margin-bottom: 8px;
}

/* Elementor Pro estila sus campos con selectores propios de más peso; hay que bajar desde el
   widget para ganarle, o los inputs salen blancos sobre el fondo oscuro. */
.lx-form .elementor-field-group .elementor-field-textual,
.elementor-widget-form.lx-form .elementor-field-textual {
	background: #1b1512;
	border: 1px solid #33291f;
	border-radius: 3px;
	padding: 15px 16px;
	min-height: 50px;
	font: 400 15px/1.4 Inter, system-ui, sans-serif;
	color: var(--lx-paper);
}

.lx-form .elementor-field-group .elementor-field-textual::placeholder {
	color: var(--lx-muted-2);
}

.lx-form .elementor-field-group .elementor-field-textual:focus {
	border-color: var(--lx-accent);
	outline: 0;
	box-shadow: none;
}

.lx-form .elementor-field-group textarea.elementor-field-textual {
	min-height: 120px;
	resize: vertical;
}

.lx-form .elementor-field-group .elementor-button[type="submit"],
.lx-form .elementor-button[type="submit"] {
	background: var(--lx-accent);
	color: #160f0b;
	border-radius: 2px;
	padding: 17px 34px;
	min-height: 52px;
	font: 600 15px/1 Inter, system-ui, sans-serif;
}

.lx-form .elementor-button[type="submit"]:hover {
	background: var(--lx-paper);
	color: var(--lx-ink-900);
}

.lx-form .elementor-message {
	font: 400 14px/1.4 Inter, system-ui, sans-serif;
	color: var(--lx-text);
}

.lx-form .elementor-message.elementor-message-danger {
	color: var(--lx-accent);
}

/* --- Foto de «Fabricante directo» --------------------------------------- */

/* En el Figma es un cuadrado de 560. Las fotos del taller son verticales y sin recortar
   estiraban la sección a 995px de alto, descuadrándola respecto a la columna de texto. */
.lx-why__foto img,
.elementor-widget-image.lx-why__foto img {
	aspect-ratio: 1;
	object-fit: cover;
	width: 100%;
	height: auto;
}
