.smart-faq-hub-wrapper {
	margin: 32px auto;
	padding: 0 16px;

	@media (min-width: 768px) {
		padding: 0 32px;
	}

	@media (min-width: 1024px) {
		padding: 0 48px;
	}

	.smart-faq,
	.smart-faq-search-results {
		display: none;
	}
}

.smart-faq-hub-heading {
	margin-bottom: 2rem;
}

.smart-faq {
	margin-bottom: 2rem;
}

.smart-faq:has(+ .smart-faq) {
	margin-bottom: 4rem;
}

.smart-faq-title {
	margin-bottom: 1rem;
}

.faq-details {
	border: 1px solid #c4c9c9;
	border-radius: 3px;
	margin-bottom: 1.5rem;
}

.faq-details[open] .faq-summary {
	border-bottom: 1px solid #c4c9c9;
}

.faq-summary {
	position: relative;
	display: list-item;
	cursor: pointer;
	list-style: none;
	background-color: #f9f9f9;
	padding: 1rem;
}

.faq-summary::-webkit-details-marker,
.faq-summary::marker {
	display: none;
	content: "";
}

.faq-heading {
	font-size: 1.125rem;
	letter-spacing: 0;
	line-height: 1.2;
	font-weight: 700;
	display: flex;
	justify-content: space-between;

	.accordion-icon {
		color: #117bab;
	}
}

.faq-details[open] .faq-heading {
	.accordion-icon {
		transform: rotate(180deg);
	}
}

.faq-description {
	padding: 1.5rem 0.75rem;
	color: #1f1f1f;
	line-height: 1.5;
	font-size: 1rem;

	a {
		font-weight: 700;
	}

	ul {
		list-style: none;
	}

	ul li {
		position: relative;
		list-style: none;
		padding-left: 1.5rem;
		margin-bottom: 4px;
	}

	ul li::-webkit-details-marker,
	ul li::marker {
		display: none;
		content: "";
	}

	ul li::before {
		content: "\2022";
		color: #117bab;
		position: absolute;
		left: 0.5rem;
		font-size: 1.25rem;
		top: -0.25rem;
	}

	ul li ul {
		padding-top: 1rem;
	}
}

.faq-video-wrapper {
	iframe {
		aspect-ratio: 16 / 9;
		width: 100%;
		height: auto;
		max-width: 100%;
	}
}

.faq-video-title.visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
