.wp-block-acf-fp-faq {
	padding: 0;
}

.fp-faq {
	padding: 80px 48px;
	background: #fff;
	color: var(--ed-color-text, #0f172a);
}

.fp-faq__inner {
	max-width: 1440px;
	margin: 0 auto;
	display: flex;
	align-items: flex-start;
	gap: 48px;
}

/* ——— Left heading (sticky) ——— */
.fp-faq__title-col {
	flex: 0 0 400px;
	width: 400px;
	position: sticky;
	top: 96px;
	align-self: flex-start;
}

.fp-faq__title {
	margin: 0;
	font-size: 48px;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--ed-color-text, #0f172a);
}

/* ——— Right accordion ——— */
.fp-faq__accordion-col {
	flex: 1 1 0;
	min-width: 0;
}

.fp-faq .foundation-accordion__item:first-child {
	border-top: 1px solid var(--ed-color-border, #e2e8f0);
}

.fp-faq .foundation-accordion__item,
.fp-faq .foundation-accordion__item.is-open {
	border-top-color: var(--ed-color-border, #e2e8f0);
	border-bottom-color: var(--ed-color-border, #e2e8f0);
}

.fp-faq .foundation-accordion__item.is-open {
	border-top: 1px solid var(--ed-color-border, #e2e8f0);
}

.fp-faq .foundation-accordion__title {
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: 0;
	color: var(--ed-color-text, #0f172a);
}

.fp-faq .foundation-accordion__body,
.fp-faq .foundation-accordion__body p {
	font-size: 18px;
	line-height: 27px;
	color: #475569;
}

@media (max-width: 960px) {
	.fp-faq {
		padding: 56px 32px;
	}

	.fp-faq__inner {
		flex-direction: column;
		gap: 24px;
	}

	.fp-faq__title-col {
		flex: none;
		width: 100%;
		position: static;
	}

	.fp-faq__title {
		font-size: 40px;
	}
}

@media (max-width: 600px) {
	.fp-faq {
		padding: 40px 16px;
	}

	.fp-faq__title {
		font-size: 30px;
	}

	.fp-faq .foundation-accordion__title {
		font-size: 18px;
	}

	.fp-faq .foundation-accordion__body,
	.fp-faq .foundation-accordion__body p {
		font-size: 16px;
		line-height: 24px;
	}
}
