/* ==========================================================================
   Escalautos — componentes propios: WhatsApp, barra móvil, simulador, formularios
   Usa los tokens de escalautos-marca.css.
   ========================================================================== */

/* ---------- WhatsApp flotante ---------- */
.ea-wa-float {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 999;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 56px;
	padding: 0 20px 0 14px;
	border-radius: 999px;
	background: var(--ea-primary);
	color: #fff !important;
	font: 600 15px/1 var(--ea-font-text);
	box-shadow: 0 10px 30px -8px rgba(0, 153, 246, .65), inset 0 1px 0 rgba(255, 255, 255, .18);
	transition: transform .2s ease, background-color .2s ease;
}
.ea-wa-float svg { width: 28px; height: 28px; flex: none; }
.ea-wa-float:hover { background: var(--ea-primary-600); transform: translateY(-2px); }
.ea-wa-float:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
/* El botón "volver arriba" del tema sube para no chocar */
.wa-back-to-top { bottom: 92px !important; }

/* ---------- Barra de acciones en celular ---------- */
.ea-mobile-bar { display: none; }
@media (max-width: 767px) {
	.ea-wa-float { display: none; }
	.ea-mobile-bar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 999;
		display: grid;
		grid-template-columns: 1fr 1fr 1.2fr;
		gap: 8px;
		padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
		background: rgba(2, 17, 25, .92);
		-webkit-backdrop-filter: blur(14px);
		backdrop-filter: blur(14px);
		border-top: 1px solid rgba(255, 255, 255, .08);
	}
	.ea-mobile-bar a {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 7px;
		height: 46px;
		border-radius: 12px;
		color: #fff !important;
		font: 600 14px/1 var(--ea-font-text);
		background: rgba(255, 255, 255, .06);
	}
	.ea-mobile-bar a svg { width: 21px; height: 21px; flex: none; }
	.ea-mobile-bar a.is-wa { background: var(--ea-primary); }
	body { padding-bottom: 74px; }
	/* «Volver arriba» sobra en el celular: quedaba encima de las tarjetas, junto al chat de la barra (2026-10-30). */
	.wa-back-to-top { display: none !important; }
	/* Con el menú lateral abierto, la barra de abajo (y la de la ficha) le tapaba el final: las redes. Ojo: el menú
	   lleva `offcanvas_box_active` siempre; abierto se reconoce por `.active`. */
	body:has(.wa-offcanvas-area.active) .ea-mobile-bar,
	body:has(.wa-offcanvas-area.active) .ea-ficha-barra { display: none; }
	/* Lo que entra de lado (wow fadeInRight2 de botones y tarjetas) empujaba la página hacia un lado mientras se
	   animaba (Nosotros llegaba a 425 px). Se corta en cada sección de primer nivel; clip no rompe sticky ni el eje y. */
	.elementor > .elementor-element, .elementor > .elementor-section { overflow-x: hidden; overflow-x: clip; }
}

/* ---------- Simulador de crédito ---------- */
.ea-sim {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: 0;
	border-radius: 24px;
	overflow: hidden;
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(255, 255, 255, .09);
	color: #fff;
	max-width: 1080px;
	margin: 0 auto;
}
.ea-sim__inputs { padding: clamp(24px, 4vw, 44px); display: flex; flex-direction: column; gap: 26px; }
.ea-sim__eyebrow { margin: 0; color: var(--ea-primary-300); }
.ea-sim__title { margin: -14px 0 0; font: 600 clamp(22px, 2.4vw, 30px)/1.15 var(--ea-font-display) !important; text-transform: uppercase; color: #fff; }
.ea-sim__field { display: flex; flex-direction: column; gap: 12px; margin: 0; }
.ea-sim__label { display: flex; justify-content: space-between; gap: 12px; font: 500 15px/1.3 var(--ea-font-text); color: rgba(255, 255, 255, .72); }
.ea-sim__label output { color: #fff; font-weight: 600; font-variant-numeric: tabular-nums; text-align: right; }
/* Historial de crédito: tres pastillas; cambia la tasa (2026-10-30). Con tokens, así sirve en claro y oscuro. */
.ea-sim__perfil { min-width: 0; padding: 0; border: 0; }
.ea-sim__perfil legend { padding: 0; margin-bottom: 12px; }
.ea-sim__perfiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.ea-sim__perfiles label { position: relative; margin: 0; cursor: pointer; }
.ea-sim__perfiles input { position: absolute; opacity: 0; pointer-events: none; }
.ea-sim__perfiles span { display: grid; place-items: center; min-height: 44px; padding: 8px 6px; border: 1px solid var(--ea-linea-2); border-radius: 12px; background: var(--ea-vidrio); color: var(--ea-texto-2); font: 500 14px/1.2 var(--ea-font-text); text-align: center; transition: border-color .2s ease, background .2s ease; }
.ea-sim__perfiles input:checked + span { border-color: var(--ea-acento); background: var(--ea-acento-suave); color: var(--ea-texto); font-weight: 600; }
.ea-sim__perfiles input:focus-visible + span { outline: 2px solid var(--ea-acento); outline-offset: 2px; }
.ea-sim input[type="range"] {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 6px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--ea-primary) 0 var(--ea-fill, 50%), rgba(255, 255, 255, .14) var(--ea-fill, 50%) 100%);
	outline: none;
	cursor: pointer;
}
.ea-sim input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #fff;
	border: 5px solid var(--ea-primary);
	box-shadow: 0 0 0 6px rgba(0, 153, 246, .22);
}
.ea-sim input[type="range"]::-moz-range-thumb {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #fff;
	border: 5px solid var(--ea-primary);
}
.ea-sim input[type="range"]:focus-visible::-webkit-slider-thumb { box-shadow: 0 0 0 6px rgba(255, 255, 255, .35); }
.ea-sim__result {
	padding: clamp(24px, 4vw, 44px);
	display: flex;
	flex-direction: column;
	gap: 14px;
	justify-content: center;
	background: radial-gradient(120% 90% at 100% 0%, rgba(55, 179, 255, .55) 0%, rgba(0, 153, 246, .35) 38%, rgba(3, 28, 41, .6) 100%);
	border-left: 1px solid rgba(255, 255, 255, .09);
}
.ea-sim__result-label { font: 500 14px/1 var(--ea-font-text); color: rgba(255, 255, 255, .75); }
.ea-sim__cuota { font: 700 clamp(34px, 4.4vw, 52px)/1 var(--ea-font-display); letter-spacing: .01em; font-variant-numeric: tabular-nums; }
.ea-sim__detail { margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ea-sim__detail div { display: flex; flex-direction: column; gap: 4px; }
.ea-sim__detail dt { font: 400 13px/1.2 var(--ea-font-text); color: rgba(255, 255, 255, .6); }
.ea-sim__detail dd { margin: 0; font: 600 16px/1.2 var(--ea-font-text); font-variant-numeric: tabular-nums; }
.ea-sim__cta {
	margin-top: 6px;
	height: 54px;
	border-radius: 999px;
	border: 0;
	background: #fff;
	color: var(--ea-night);
	font: 600 16px/1 var(--ea-font-text);
	cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}
.ea-sim__cta:hover { transform: translateY(-2px); box-shadow: 0 12px 30px -10px rgba(255, 255, 255, .45); }
.ea-sim__cta:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.ea-sim__nota { margin: 0; font: 400 12.5px/1.5 var(--ea-font-text); color: rgba(255, 255, 255, .6); }
.ea-sim__aviso { margin: 0; padding: 10px 12px; border: 1px solid rgba(251, 191, 36, .35); border-radius: 10px; background: rgba(251, 191, 36, .08); color: #fde68a; font: 400 13px/1.5 var(--ea-font-text); }
.ea-sim__aviso[hidden] { display: none; }
@media (max-width: 860px) {
	.ea-sim { grid-template-columns: 1fr; }
	.ea-sim__result { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .09); }
}

/* ---------- Formularios (CF7) ---------- */
.ea-form .ea-consent { font: 400 13.5px/1.5 var(--ea-font-text); color: rgba(255, 255, 255, .7); }
.ea-form .ea-consent .wpcf7-list-item { margin: 0; }
.ea-form .ea-consent label { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; }
.ea-form .ea-consent input[type="checkbox"] { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--ea-primary); flex: none; }
.ea-form .ea-consent a { color: var(--ea-primary-300); text-decoration: underline; }
.ea-form select.sk-contact-6-form-input { -webkit-appearance: none; appearance: none; cursor: pointer; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: calc(100% - 20px) 52%, calc(100% - 14px) 52%; background-size: 6px 6px; background-repeat: no-repeat; padding-right: 40px; }
.ea-form select option { color: #111; }
.ea-form input[readonly] { opacity: .75; }
.wpcf7 form .wpcf7-response-output { border-radius: 12px; margin: 16px 0 0; padding: 12px 16px; font: 500 14px/1.45 var(--ea-font-text); }
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--ea-primary-300); color: #fff; background: rgba(0, 153, 246, .15); }
.wpcf7-not-valid-tip { font: 500 13px/1.4 var(--ea-font-text); color: #ff8b8b; margin-top: 6px; }

/* Formularios en celular: una columna, campos cómodos para el pulgar */
@media (max-width: 767px) {
	.ea-form { display: flex !important; flex-direction: column; gap: 14px; }
	.ea-form .input-box { width: 100% !important; max-width: 100% !important; flex: 1 1 100% !important; }
	.ea-form .sk-contact-6-form-input { min-height: 48px; font-size: 16px; }
}

/* ---------- Tabla comparativa (✓ ✕ ~) ---------- */
.ea-cmp { display: inline-flex; align-items: center; gap: 10px; font: 500 15px/1.35 var(--ea-font-text); color: rgba(255, 255, 255, .85); text-align: left; }
.ea-cmp i { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; font-style: normal; font-weight: 700; font-size: 13px; }
.ea-cmp--si i { background: var(--ea-primary); color: #fff; }
.ea-cmp--no i { background: rgba(255, 255, 255, .08); color: rgba(255, 255, 255, .55); }
.ea-cmp--medio i { background: rgba(55, 179, 255, .18); color: var(--ea-primary-300); }
.ea-cmp--no { color: rgba(255, 255, 255, .55); }

/* El video de fondo del hero no se carga en celular (ahorra datos y batería) */
@media (max-width: 767px) {
	.sk-hero-6-bg-video { display: none !important; }
}

/* ---------- Header global (base Header 1 Onepage) ---------- */
/* El logo de Escalautos es más ancho que el de la demo: se fija a la altura original (36px). */
.sk-header-1-logo .tx-logo {
	height: 36px;
	width: auto;
}
.sk-header-1-menu .sk-main-navigation li a,
.sk-header-1-action-link a {
	white-space: nowrap;
}
/* Menú centrado en la página (no en el espacio que dejan logo y botón), para que se vea equilibrado. */
@media (min-width: 1200px) {
	.sk-header-1-wrap {
		position: relative;
	}
	.sk-header-1-menu {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		width: max-content;
	}
}

/* ======================================================================
   Footer Escalautos (tools/construir/footer.php)
   ====================================================================== */
.ea-ft {
	position: relative;
	overflow: hidden;
	/* Transparente: el fondo del sitio (luces y rejilla, ver escalautos-oscuro.css) sigue de largo,
	   sin corte. Su resplandor propio aparece poco a poco desde arriba (::before con máscara). */
	isolation: isolate;
	background: transparent;
	color: #fff;
	font-family: "TT Firs Neue", system-ui, sans-serif;
}
.ea-ft::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: radial-gradient(75% 65% at 50% 24%, rgba(0, 153, 246, 0.2) 0%, rgba(0, 153, 246, 0) 72%);
	-webkit-mask-image: linear-gradient(180deg, transparent 0, #000 180px);
	mask-image: linear-gradient(180deg, transparent 0, #000 180px);
	pointer-events: none;
}
.ea-ft a {
	text-decoration: none;
}
.ea-ft-in {
	position: relative;
	z-index: 1;
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 24px;
}

/* 1 · Contacto rápido */
.ea-ft-contacto {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	padding: 56px 0 48px;
}
/* WhatsApp, el canal principal, a todo el alto a la izquierda; a la derecha las seis sedes en 2 × 3 (2026-11-02). */
.ea-ft .ea-ft-canal.is-wa {
	grid-row: span 3;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 20px;
	padding: 28px 30px;
}
.ea-ft-canal.is-wa .ea-ft-canal-ico {
	width: 56px;
	height: 56px;
	border-radius: 16px;
}
.ea-ft-canal.is-wa .ea-ft-canal-txt strong {
	font-size: 26px;
	font-weight: 600;
}
.ea-ft .ea-ft-canal {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 20px 22px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.03);
	color: #fff;
	transition: border-color 0.2s, background-color 0.2s, transform 0.2s;
}
.ea-ft .ea-ft-canal:hover {
	border-color: rgba(83, 195, 255, 0.5);
	background: rgba(0, 153, 246, 0.1);
	transform: translateY(-2px);
	color: #fff;
}
.ea-ft-canal-ico {
	display: grid;
	flex: none;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 14px;
	background: linear-gradient(135deg, #36a3e6, #0099f6);
	box-shadow: 0 8px 24px rgba(0, 153, 246, 0.35);
	font-size: 20px;
}
.ea-ft-canal.is-wa .ea-ft-canal-ico {
	background: linear-gradient(135deg, #3ddc84, #1faa59);
	box-shadow: 0 8px 24px rgba(37, 211, 102, 0.25);
	font-size: 24px;
}
.ea-ft-canal-txt {
	min-width: 0;
}
.ea-ft-canal-txt small {
	display: block;
	margin-bottom: 2px;
	color: rgba(255, 255, 255, 0.62);
	font-size: 13px;
}
.ea-ft-canal-txt strong {
	display: block;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.35;
}
.ea-ft-canal-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	color: #7bcfff;
	font-size: 13px;
	white-space: nowrap;
}
.ea-ft-canal.is-wa .ea-ft-canal-cta {
	color: #7ee2a8;
}

/* 2 · Cuerpo */
.ea-ft-cuerpo {
	display: grid;
	grid-template-columns: 1.3fr 0.8fr 0.8fr 1.3fr;
	gap: 48px;
	padding: 48px 0;
	border-top: 1px solid transparent;
	border-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.12) 50%, rgba(255, 255, 255, 0) 100%) 1;
}
.ea-ft-marca img {
	display: block;
	width: 184px;
	height: auto;
	margin-bottom: 18px;
}
.ea-ft-marca p {
	max-width: 320px;
	margin: 0 0 22px;
	color: rgba(255, 255, 255, 0.68);
	font-size: 15px;
	line-height: 1.6;
}
.ea-ft-redes {
	display: flex;
	gap: 10px;
}
.ea-ft .ea-ft-redes a {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 50%;
	color: #fff;
	font-size: 16px;
	transition: background-color 0.2s, border-color 0.2s;
}
.ea-ft .ea-ft-redes a:hover {
	background: #0099f6;
	border-color: #0099f6;
}
.ea-ft-col summary {
	margin: 0 0 18px;
	color: #53c3ff;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.12em;
	list-style: none;
	text-transform: uppercase;
	pointer-events: none; /* en escritorio las columnas siempre van abiertas */
}
.ea-ft-col summary::-webkit-details-marker {
	display: none;
}
.ea-ft-col ul {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.ea-ft-col li {
	margin: 0;
	padding: 0;
}
.ea-ft .ea-ft-col li a {
	color: rgba(255, 255, 255, 0.82);
	font-size: 15px;
	transition: color 0.2s;
}
.ea-ft .ea-ft-col li a:hover {
	color: #fff;
}
.ea-ft-datos {
	display: grid;
	gap: 14px;
	margin: 0;
}
.ea-ft-datos dt {
	margin-bottom: 2px;
	color: rgba(255, 255, 255, 0.5);
	font-size: 13px;
	font-weight: 400;
}
.ea-ft-datos dd {
	margin: 0;
	color: rgba(255, 255, 255, 0.86);
	font-size: 15px;
	line-height: 1.5;
	overflow-wrap: anywhere;
}
.ea-ft .ea-ft-datos a {
	color: #7bcfff;
}
.ea-ft .ea-ft-datos a:hover {
	color: #fff;
}

/* 3 · Barra inferior */
.ea-ft-base {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px 24px;
	padding: 22px 0;
	border-top: 1px solid transparent;
	border-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.12) 50%, rgba(255, 255, 255, 0) 100%) 1;
	color: rgba(255, 255, 255, 0.5);
	font-size: 14px;
}
.ea-ft-legal {
	display: flex;
	gap: 22px;
}
.ea-ft .ea-ft-legal a,
.ea-ft .ea-ft-credito a {
	color: rgba(255, 255, 255, 0.7);
	transition: color 0.2s;
}
.ea-ft .ea-ft-legal a:hover,
.ea-ft .ea-ft-credito a:hover {
	color: #fff;
}
.ea-ft-credito {
	font-size: 13px;
}

/* 4 · Logo gigante tenue */
.ea-ft-logo-xl {
	display: block;
	width: calc(100% - 48px);
	max-width: 1320px;
	height: auto;
	margin: -1vw auto -8vw;
	opacity: 0.08;
	-webkit-mask-image: linear-gradient(#000 20%, transparent 72%);
	mask-image: linear-gradient(#000 20%, transparent 72%);
	pointer-events: none;
}

@media (max-width: 1199px) {
	.ea-ft-cuerpo {
		grid-template-columns: 1fr 1fr;
	}
}
@media (max-width: 991px) {
	.ea-ft-contacto {
		grid-template-columns: minmax(0, 1fr);
		gap: 10px;
		padding: 40px 0 32px;
	}
	.ea-ft .ea-ft-canal {
		padding: 14px 16px;
	}
	.ea-ft .ea-ft-canal.is-wa {
		grid-row: auto;
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
		gap: 16px;
		padding: 14px 16px;
	}
	.ea-ft-canal.is-wa .ea-ft-canal-ico {
		width: 48px;
		height: 48px;
		border-radius: 14px;
	}
	.ea-ft-canal.is-wa .ea-ft-canal-txt strong {
		font-size: 18px;
	}
	.ea-ft-cuerpo {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
		padding: 32px 0 8px;
	}
	.ea-ft-marca {
		padding-bottom: 28px;
	}
	.ea-ft-col {
		border-top: 1px solid rgba(255, 255, 255, 0.07);
	}
	.ea-ft-col summary {
		display: flex;
		justify-content: space-between;
		margin: 0;
		padding: 18px 0;
		cursor: pointer;
		pointer-events: auto;
	}
	.ea-ft-col summary::after {
		content: "+";
		color: #fff;
		font-size: 20px;
		line-height: 1;
	}
	.ea-ft-col details[open] summary::after {
		content: "−";
	}
	.ea-ft-col details > :not(summary) {
		padding-bottom: 20px;
	}
	.ea-ft-base {
		flex-direction: column;
		align-items: flex-start;
	}
	.ea-ft-legal {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px 32px;
	}
	.ea-ft-logo-xl {
		margin-top: 0;
		margin-bottom: -9vw;
	}
}
@media (max-width: 767px) {
	/* deja espacio para la barra inferior fija de celular (Comprar · Vender · WhatsApp) */
	.ea-ft {
		padding-bottom: 64px;
	}
}

/* Hovers de la plantilla que pintan el texto con su morado (--sk-clr-pr/sd-N = #0099f6): sobre el fondo oscuro daba
   2,8–3,1:1 (auditoría de botones, 2026-10-06). El token --ea-acento-texto es lila claro en oscuro y morado legible en
   claro (tono.php lo gira por servicio y le asegura 5:1). */
.sk-features-3-card .title a:hover,
.sk-benefits-1-card .title a:hover,
.sk-services-3-card .title a:hover,
.sk-team-1-member .name:hover,
.sk-breadcrumb-list a:hover,
.sk-contact-6-info-single p:hover,
.sk-contact-6-info-single p:hover a,
.sk-contact-6-info-single .disc:hover,
.sk-accordion-1-item .item-title:hover,
.sk-faqs-3-accordion .sk-accordion-1-item .item-title:hover,
.sk-faqs-4-accordion .sk-accordion-1-item .item-title:is(.collapsed):hover,
.sk-faqs-5-accordion .sk-accordion-1-item .item-title:is(.collapsed):hover,
.sk-faqs-6-accordion .sk-accordion-1-item .item-title:is(.collapsed):hover {
	color: var(--ea-acento-texto);
}
/* «Ver reseñas en Google» en oscuro: al pasar el mouse se llena del color del servicio; con el azul o el verde el blanco
   daba 2,5–3,7:1. El relleno va oscurecido (tono.php gira #0099f6 al color del servicio). */
html:not([data-theme="light"]) .sk-testimonial-btn:hover,
html:not([data-theme="light"]) .sk-pr-btn-11::after {
	background: color-mix(in srgb, #0099f6 58%, #000);
}

/* ---------- Página 404 (404.php) ---------- */
.ea-404 {
	padding: 140px 0 var(--ea-sec, 90px);
	text-align: center;
}
.ea-404__contenido { max-width: 640px; margin: 0 auto; }
.ea-404__imagen {
	display: block;
	width: min(100%, 340px);
	height: auto;
	margin: 0 auto 24px;
}
.ea-404__titulo { margin: 0 auto 16px; color: var(--ea-texto); text-wrap: balance; }
.ea-404__texto {
	max-width: 480px;
	margin: 0 auto 32px;
	color: var(--ea-texto-2);
	font-size: 17px;
	line-height: 1.55;
}
.ea-404__acciones {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}
.ea-404__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 50px;
	padding: 0 26px;
	border: 1px solid transparent;
	border-radius: 999px;
	font: 600 15px/1 var(--ea-font-text);
	text-decoration: none;
	transition: background-color 0.25s, border-color 0.25s, transform 0.25s;
}
.ea-404__btn:hover,
.ea-404__btn:focus-visible { transform: translateY(-2px); }
.ea-404__btn svg { width: 20px; height: 20px; flex: none; fill: currentColor; }
.ea-404__btn--primario { background: var(--ea-acento); color: var(--ea-sobre-acento); }
.ea-404__btn--primario:hover,
.ea-404__btn--primario:focus-visible { background: var(--ea-acento-fuerte); color: var(--ea-sobre-acento); }
.ea-404__btn--secundario,
.ea-404__btn--wa { border-color: var(--ea-linea-2); color: var(--ea-texto); }
.ea-404__btn--secundario:hover,
.ea-404__btn--secundario:focus-visible,
.ea-404__btn--wa:hover,
.ea-404__btn--wa:focus-visible { border-color: var(--ea-acento-borde); background: var(--ea-acento-suave); color: var(--ea-texto); }
@media (max-width: 575px) {
	.ea-404 { padding-top: 120px; }
	.ea-404__titulo { max-width: 280px; font-size: 32px; }
	.ea-404__acciones { flex-direction: column; }
	.ea-404__btn { width: 100%; }
}
