/* Accordion FAQ - shortcode [fyl_faq]. Copiato da 4yourlife-theme
   (assets/css/accordion_faq.css), custom property sostituite dai valori
   letterali del brand (tema-libero non ha il sistema "Impostazioni Tema"). */

:root {
	--fyl-faq-open-duration: 0.5s;
}

.fyl-faq-accordion {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.fyl-faq-item {
	border: 1px solid #8a8a8a;
	border-radius: 8px;
	padding: 0 20px;
	background: #ffffff;
}

.fyl-faq-question {
	width: 100%;
	border: 0;
	background: none;
	text-align: left;
	font-family: inherit;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 0;
	font-weight: 700;
	font-size: 1rem;
	color: #1c1c1c;
}

.fyl-faq-icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #ffcc02;
	color: #1c1c1c;
	display: flex;
	align-items: center;
	justify-content: center;
}

.fyl-faq-icon svg {
	width: 15px;
	height: 15px;
	transform-origin: center;
	transition: transform var(--fyl-faq-open-duration) ease;
}

.fyl-faq-item.is-open .fyl-faq-icon svg {
	transform: rotate(90deg);
}

.fyl-faq-answer {
	max-height: 0;
	padding-bottom: 0;
	overflow: hidden;
	color: #1c1c1c;
	font-size: 1rem;
	transition:
		max-height var(--fyl-faq-open-duration) ease,
		padding-bottom var(--fyl-faq-open-duration) ease;
}

.fyl-faq-item.is-open .fyl-faq-answer {
	padding-bottom: 20px;
}

.fyl-faq-answer-inner {
	padding-bottom: 24px;
}

.fyl-faq-answer-inner > *:first-child {
	margin-top: 0;
}

.fyl-faq-answer-inner > *:last-child {
	margin-bottom: 0;
}
