/**
 * FAQ V2 — two-column FAQ (ported from mockup .faq-grid / .faqs).
 * Block: .faq-v2
 */

.faq-v2__grid {
	display: grid;
	grid-template-columns: 1fr 1.35fr;
	gap: 80px;
}

.faq-v2__desc {
	font-size: 14px;
	color: var(--m114-muted);
	margin-top: 25px;
	line-height: 1.8;
}

.faq-v2__cta {
	margin-top: 28px;
}

.faq-v2__item {
	border-bottom: 1px solid var(--m114-line);
}

.faq-v2__q {
	list-style: none;
	cursor: pointer;
	padding: 21px 30px 21px 0;
	font-size: 15px;
	font-weight: 600;
	position: relative;
	font-family: 'Poppins', sans-serif;
}

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

.faq-v2__q::after {
	content: '+';
	position: absolute;
	right: 0;
	top: 16px;
	font-size: 23px;
	font-weight: 400;
	line-height: 1;
	transition: transform 0.3s ease;
}

/* Marker flips immediately on toggle (driven by aria-expanded, not [open],
   so it stays in sync during the close animation). */
.faq-v2__item[open] .faq-v2__q::after,
.faq-v2__q[aria-expanded='true']::after {
	content: '−';
}

.faq-v2__a {
	font-size: 13px;
	line-height: 1.8;
	color: var(--m114-muted);
	padding: 2px 25px 23px 0;
	margin: 0;
}

/* JS-enhanced smooth open/close: JS sets an explicit height to animate. */
.faq-v2__item.is-animatable .faq-v2__a {
	overflow: hidden;
	height: 0;
	transition: height 0.33s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: height;
}

@media (prefers-reduced-motion: reduce) {
	.faq-v2__item.is-animatable .faq-v2__a {
		transition: none;
	}
	.faq-v2__q::after {
		transition: none;
	}
}

.faq-v2__a p {
	margin: 0 0 12px;
}

.faq-v2__a a {
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width: 1000px) {
	.faq-v2__grid {
		gap: 40px;
	}
}

@media (max-width: 700px) {
	.faq-v2__grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}
	.faq-v2__q {
		font-size: 14px;
	}
}
