/**
 * Home — Preguntas frecuentes
 * Figma (frame 1447 × 989, fondo "Gris 50 Colabora" = gris cálido 50% sobre light):
 * Eyebrow = Heading/H1.2 50 navy 50% espaciado · Título = Heading/H3 40 navy-deep · Texto = Body/L 18 navy 50%.
 * Acordeón de 894px: filas de 80px con divisor olivo 50% (1px). Pregunta Body/L Medium 18:
 * cerrada navy 50% con chevron olivo 50%, abierta navy con chevron navy.
 * La respuesta (Body/M 16 navy) aparece DEBAJO del divisor de su pregunta.
 * Botón outline píldora 194 × 42 (borde navy 0.7px) "Ver todos los FAQS →".
 */

.home-faqs {
	width: 100%;
	background:
		linear-gradient(var(--color-warm-gray-50), var(--color-warm-gray-50)),
		var(--color-light);
	color: var(--color-navy);
}

.home-faqs__inner {
	width: 100%;
	max-width: calc(894px + 2 * 64px);
	margin: 0 auto;
	padding: 74px 64px 87px;
}

/* ---------- Encabezado ---------- */
.home-faqs__header {
	text-align: center;
}

.home-faqs__eyebrow {
	margin: 0 0 48px;
	color: var(--color-navy-50);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: 1;
}

.home-faqs__title {
	margin: 0 0 25px;
	color: var(--color-navy-deep);
	line-height: 1.25;
}

.home-faqs__text {
	margin: 0;
	color: var(--color-navy-50);
}

/* ---------- Acordeón ---------- */
.home-faqs__list {
	margin: 91px 0 0;
}

.home-faqs__item {
	margin: 0;
}

.home-faqs__question {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid var(--color-olive-50);
	font: inherit;
}

/* Reset de los estilos de <button> de Hello Elementor */
.home-faqs .home-faqs__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	margin: 0;
	padding: 29px 0 27px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--color-navy-50);
	font-family: var(--font-sans);
	font-size: var(--fs-body-l);
	font-weight: var(--fw-medium);
	line-height: var(--lh-body-l);
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	white-space: normal;
	cursor: pointer;
	transition: color .2s ease;
}

.home-faqs .home-faqs__toggle:hover,
.home-faqs .home-faqs__toggle:focus,
.home-faqs .home-faqs__item.is-open .home-faqs__toggle {
	background: transparent;
	color: var(--color-navy);
}

.home-faqs .home-faqs__toggle:focus {
	outline: none;
}

.home-faqs .home-faqs__toggle:focus-visible {
	outline: 2px solid var(--color-navy);
	outline-offset: 4px;
}

.home-faqs__chevron {
	display: inline-flex;
	flex: none;
	color: var(--color-olive-50);
	transition: color .2s ease;
}

.home-faqs__chevron svg {
	width: 19px;
	height: 19px;
}

.home-faqs__toggle:hover .home-faqs__chevron,
.home-faqs__item.is-open .home-faqs__chevron {
	color: var(--color-navy);
}

/* Panel: abre/cierra con transición de alto (grid 0fr → 1fr) */
.home-faqs__panel {
	display: grid;
	grid-template-rows: 0fr;
	visibility: hidden;
	transition: grid-template-rows .3s ease, visibility 0s linear .3s;
}

.home-faqs__item.is-open .home-faqs__panel {
	grid-template-rows: 1fr;
	visibility: visible;
	transition: grid-template-rows .3s ease, visibility 0s;
}

.home-faqs__panel-inner {
	min-height: 0;
	overflow: hidden;
}

.home-faqs__answer {
	max-width: 760px;
	margin: 0;
	padding: 31px 0 12px;
	color: var(--color-navy);
}

/* ---------- Botón ---------- */
.home-faqs__actions {
	display: flex;
	justify-content: center;
	margin-top: 100px;
}

.home-faqs .home-faqs__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 42px;
	padding: 10px 18px 10px 19px;
	border: 0.7px solid var(--color-navy);
	border-radius: var(--radius-pill);
	background: transparent;
	color: var(--color-navy);
	font-family: var(--font-sans);
	text-decoration: none;
	transition: box-shadow .2s ease;
}

/* Hover: el texto sube a Medium, el ícono engrosa su trazo y el borde se hace más grueso
   (sombra interior: el botón no cambia de tamaño) */
.home-faqs .home-faqs__btn:hover,
.home-faqs .home-faqs__btn:focus-visible {
	box-shadow: inset 0 0 0 0.7px var(--color-navy);
}

.home-faqs__btn:hover .colabora-label,
.home-faqs__btn:focus-visible .colabora-label {
	font-weight: var(--fw-medium);
}

.home-faqs__arrow {
	display: inline-flex;
}

.home-faqs__arrow svg {
	width: 16px;
	height: 16px;
}

.home-faqs__arrow path {
	transition: stroke-width .2s ease;
}

.home-faqs__btn:hover .home-faqs__arrow path,
.home-faqs__btn:focus-visible .home-faqs__arrow path {
	stroke-width: 1.6;
}

/* ---------- Pantallas medianas ---------- */
@media (max-width: 1024px) {
	.home-faqs__inner {
		padding: 96px 48px;
	}

	.home-faqs__eyebrow {
		margin-bottom: 24px;
		font-size: 40px;
	}

	.home-faqs__list {
		margin-top: 60px;
	}

	.home-faqs__br {
		display: none;
	}

	.home-faqs__actions {
		margin-top: 64px;
	}
}

/* ---------- Móvil ---------- */
@media (max-width: 767px) {
	.home-faqs__inner {
		padding: 72px 24px;
	}

	.home-faqs__eyebrow {
		margin-bottom: 16px;
		font-size: 30px;
	}

	.home-faqs__title {
		margin-bottom: 12px;
		font-size: 30px;
		line-height: 1.2;
	}

	.home-faqs__list {
		margin-top: 40px;
	}

	.home-faqs .home-faqs__toggle {
		gap: 16px;
		padding: 22px 0 20px;
		font-size: var(--fs-body-m);
		line-height: var(--lh-body-m);
	}

	.home-faqs__answer {
		padding: 20px 0 8px;
		font-size: 15px;
	}

	.home-faqs__actions {
		margin-top: 48px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.home-faqs__panel,
	.home-faqs__item.is-open .home-faqs__panel,
	.home-faqs .home-faqs__toggle,
	.home-faqs__chevron,
	.home-faqs .home-faqs__btn,
	.home-faqs__arrow path {
		transition: none;
	}
}
