/* Estilos específicos de Preguntas Frecuentes */

.faq-page {
	background:
		radial-gradient(1080px 320px at 8% -140px, rgba(47,164,231,0.08), rgba(47,164,231,0) 74%),
		linear-gradient(180deg, #fafdff 0%, #ffffff 48%, #f9fcff 100%);
}

.faq-content {
	padding-top: 28px;
	padding-bottom: 32px;
	position: relative;
	z-index: 0;
}

.faq-content::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	z-index: -1;
	background:
		radial-gradient(760px 250px at 10% 16%, rgba(47,164,231,0.08), rgba(47,164,231,0) 76%),
		radial-gradient(620px 220px at 88% 12%, rgba(110,240,90,0.05), rgba(110,240,90,0) 76%),
		linear-gradient(180deg, #f8fcff 0%, #ffffff 55%, #f9fcff 100%);
}

.faq-section-heading {
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	max-width: 100vw;
	margin: 0 0 18px 0;
	padding: 30px 20px;
	text-align: center;
	position: relative;
	background: linear-gradient(125deg, #022a54 0%, #063a73 30%, #0b4f95 52%, #063a73 72%, #022a54 100%);
	border-top: 1px solid rgba(255,255,255,0.28);
	border-bottom: 1px solid rgba(2,33,66,0.48);
	box-shadow: 0 12px 28px rgba(3,44,86,0.30);
}

.faq-section-heading::after {
	display: none;
}

.faq-section-heading h1 {
	margin: 0;
	font-size: clamp(1.55rem, 2.45vw, 2.2rem);
	letter-spacing: 0;
	color: #ffffff;
	font-family: 'Poppins', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial;
	font-weight: 700;
	text-transform: none;
	text-align: center;
	display: inline-flex;
	align-items: baseline;
	gap: 0.35em;
}

.faq-title-word {
	display: inline-block;
	opacity: 1;
	transform: none;
}


.faq-title-animate .faq-title-word {
	opacity: 0;
	transform: translateX(-26px) scale(0.98);
	animation: faq-word-in 760ms cubic-bezier(.2,.8,.2,1) forwards;
}

.faq-title-animate .faq-title-word:nth-child(2) {
	animation-delay: 180ms;
}

.faq-accordion {
	display: grid;
	gap: 0;
	border: 1px solid rgba(4,63,124,0.16);
	box-shadow: 0 14px 30px rgba(4,63,124,0.11);
	background: #ffffff;
}

.faq-accordion-item {
	border-top: 1px solid rgba(4,63,124,0.12);
	background: linear-gradient(180deg, #ffffff, #f9fcff);
}

.faq-accordion-item:first-child {
	border-top: 0;
}

.faq-question {
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 26px 20px;
	cursor: pointer;
	font-family: 'Poppins', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial;
	font-weight: 600;
	font-size: 1.03rem;
	line-height: 1.35;
	color: #063a73;
	transition: background-color .18s ease;
}

.faq-question::-webkit-details-marker {
	display: none;
}

.faq-question::after {
	content: "";
	width: 11px;
	height: 11px;
	border-right: 2.2px solid #0b4f95;
	border-bottom: 2.2px solid #0b4f95;
	transform: rotate(45deg);
	transition: transform .22s ease;
	flex-shrink: 0;
	margin-top: -3px;
}

.faq-accordion-item[open] .faq-question::after {
	transform: rotate(-135deg);
	margin-top: 3px;
}

.faq-accordion-item[open] .faq-question {
	background: linear-gradient(90deg, rgba(47,164,231,0.08), rgba(255,255,255,0.95));
}

.faq-answer {
	padding: 0 20px 22px;
	border-top: 1px solid rgba(4,63,124,0.1);
}

.faq-answer p {
	margin: 12px 0 0;
	font-family: 'Inter', 'Poppins', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial;
	font-weight: 400;
	letter-spacing: 0.2px;
	line-height: 1.6;
	color: #244b73;
}

@media (max-width: 850px) {
	.faq-content {
		padding-top: 28px;
	}

	.faq-section-heading {
		padding: 22px 16px;
	}

	.faq-question {
		padding: 16px 14px;
		font-size: 0.98rem;
	}

	.faq-answer {
		padding: 0 14px 14px;
	}
}

@keyframes faq-word-in {
	from {
		opacity: 0;
		transform: translateX(-26px) scale(0.98);
	}
	to {
		opacity: 1;
		transform: translateX(0) scale(1);
	}
}

