/**
 * Styles front du bloc « FAQ (accordéon) » (builder/faq).
 *
 * Accordéon basé sur <details>/<summary> natifs. Les couleurs de marque sont
 * fixées ici pour rendre le bloc autonome (indépendant du thème).
 */
.builder-faq {
	width: 100%;
}

.builder-faq__item {
	border-bottom: 1px solid rgb(26 38 64 / 0.1);
}

.builder-faq__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.5rem 0;
	cursor: pointer;
	list-style: none;
	font-family: "Poppins", ui-sans-serif, system-ui, -apple-system, "Segoe UI",
		Roboto, Helvetica, Arial, sans-serif;
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.4;
	color: #1a2640;
}
@media (min-width: 768px) {
	.builder-faq__summary {
		font-size: 1.25rem;
	}
}

/* Masque le marqueur natif (triangle). */
.builder-faq__summary::-webkit-details-marker {
	display: none;
}
.builder-faq__summary::marker {
	content: "";
}

.builder-faq__q {
	flex: 1;
	padding-right: 1rem;
}

.builder-faq__icons {
	flex-shrink: 0;
	color: #f5a623;
	line-height: 0;
}

/* +/- : « + » fermé, « − » ouvert. */
.builder-faq__minus {
	display: none;
}
.builder-faq__item[open] .builder-faq__plus {
	display: none;
}
.builder-faq__item[open] .builder-faq__minus {
	display: inline-block;
}

.builder-faq__a {
	padding: 0 0 1.5rem;
	color: #5a6b85;
	line-height: 1.7;
	animation: builder-faq-reveal 0.25s ease;
}
.builder-faq__a > :first-child {
	margin-top: 0;
}
.builder-faq__a > :last-child {
	margin-bottom: 0;
}

@keyframes builder-faq-reveal {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.builder-faq__a {
		animation: none;
	}
}
