.sova-faq {
	margin: 40px 0;
	color: #414042;
	font-family: Circe, Arial, sans-serif;
}

.sova-faq__head {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0 0 22px;
}

.sova-faq__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #dd6d81;
	color: #fff;
	font-size: 27px;
	font-weight: 700;
	line-height: 1;
}

.sova-faq__title {
	margin: 0;
	color: #dd6d81;
	font-size: 36px;
	font-weight: 700;
	line-height: 1.12;
}

.sova-faq__list {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
}

.sova-faq__item {
	overflow: hidden;
	border: 1px solid #d9e7e1;
	border-radius: 8px;
	background: #fff;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.sova-faq__item[open],
.sova-faq__item:hover {
	border-color: #dd6d81;
	box-shadow: 0 8px 24px rgba(0, 91, 51, .08);
}

.sova-faq__question {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 68px;
	margin: 0;
	padding: 18px 68px 18px 24px;
	color: #414042;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.22;
	cursor: pointer;
	list-style: none;
}

.sova-faq__question::-webkit-details-marker {
	display: none;
}

.sova-faq__question:focus {
	outline: none;
}

.sova-faq__question:focus-visible {
	outline: 2px solid #dd6d81;
	outline-offset: -4px;
}

.sova-faq__question::before,
.sova-faq__question::after {
	position: absolute;
	top: 50%;
	right: 26px;
	width: 18px;
	height: 2px;
	border-radius: 2px;
	background: #dd6d81;
	content: "";
	transition: transform .2s ease;
}

.sova-faq__question::after {
	transform: rotate(90deg);
}

.sova-faq__item[open] .sova-faq__question {
	color: #dd6d81;
}

.sova-faq__item[open] .sova-faq__question::after {
	transform: rotate(0deg);
}

.sova-faq__answer {
	padding: 0 24px 24px;
	color: #414042;
	font-size: 18px;
	line-height: 1.55;
}

.sova-faq__answer > *:first-child {
	margin-top: 0;
}

.sova-faq__answer > *:last-child {
	margin-bottom: 0;
}

.sova-faq__answer a {
	color: #dd6d81;
	text-decoration: underline;
}

.sova-faq__answer ul,
.sova-faq__answer ol {
	margin: 12px 0;
	padding-left: 22px;
}

@media (max-width: 767px) {
	.sova-faq {
		margin: 28px 0;
	}

	.sova-faq__head {
		gap: 12px;
		margin-bottom: 16px;
	}

	.sova-faq__icon {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		font-size: 22px;
	}

	.sova-faq__title {
		font-size: 28px;
	}

	.sova-faq__question {
		min-height: 58px;
		padding: 15px 54px 15px 16px;
		font-size: 18px;
	}

	.sova-faq__question::before,
	.sova-faq__question::after {
		right: 20px;
		width: 16px;
	}

	.sova-faq__answer {
		padding: 0 16px 18px;
		font-size: 16px;
	}
}
