/**
 * Base frontend styles for FAQ section.
 * Neutral, overridable, mobile-responsive.
 *
 * @package AssistenteBlogDatiStrutturati
 */

.my-beautyful-schema-faqs {
	margin: 2em 0;
	padding: 0;
}

.my-beautyful-schema-faqs__item {
	margin-bottom: 1.5em;
	padding-bottom: 1.5em;
	border-bottom: 1px solid #e0e0e0;
}

.my-beautyful-schema-faqs__item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.my-beautyful-schema-faqs__question {
	font-size: 1.15em;
	font-weight: 600;
	margin: 0 0 0.5em;
	line-height: 1.4;
	color: inherit;
}

.my-beautyful-schema-faqs__answer {
	font-size: 1em;
	line-height: 1.6;
	color: inherit;
}

.my-beautyful-schema-faqs__answer p:first-child {
	margin-top: 0;
}

.my-beautyful-schema-faqs__answer p:last-child {
	margin-bottom: 0;
}

/* --- Accordion mode --- */

.my-beautyful-schema-faqs--accordion details {
	border-bottom: 1px solid #e0e0e0;
	margin-bottom: 0;
	padding-bottom: 0;
}

.my-beautyful-schema-faqs--accordion details:last-child {
	border-bottom: none;
}

.my-beautyful-schema-faqs--accordion summary {
	cursor: pointer;
	font-size: 1.15em;
	font-weight: 600;
	line-height: 1.4;
	color: inherit;
	padding: 0.75em 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.my-beautyful-schema-faqs--accordion summary::-webkit-details-marker {
	display: none;
}

.my-beautyful-schema-faqs--accordion summary::after {
	content: '+';
	font-size: 1.3em;
	font-weight: 300;
	transition: transform 0.25s ease;
	flex-shrink: 0;
	margin-left: 1em;
}

.my-beautyful-schema-faqs--accordion details[open] > summary::after {
	content: '\2212';
}

.my-beautyful-schema-faqs--accordion .my-beautyful-schema-faqs__answer {
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transition: max-height 0.35s ease, opacity 0.25s ease, padding 0.25s ease;
	padding: 0;
}

.my-beautyful-schema-faqs--accordion details[open] > .my-beautyful-schema-faqs__answer {
	max-height: 2000px;
	opacity: 1;
	padding: 0 0 1em;
}
