.core-faqs {
	--jumplink-title: var(--text-4xl);

	position: relative;
	padding: 30px var(--space-5) 14px;
	max-width: 1170px;
	margin: 0 auto var(--widget-margin-bottom);
}

.core-faqs::before,
.core-faqs::after {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	translate: -50%0;
	height: 4px;
	width: calc(100% - var(--space-10));
	background: url(/includes/public/assets/shared/hr-dotted-line.svg);
	background-repeat: repeat-x;
	pointer-events: none;
}

.core-faqs::after {
	top: unset;
	bottom: 0;
}

.core-faqs .group-heading,
.core-faqs .faq-jump-links h2 {
	font-family: var(--font-display-alt);
	font-size: var(--jumplink-title);
	margin-bottom: 15px;
}

.core-faqs .group-heading,
.core-faqs .faq-item .question > h4,
.core-faqs .faq-jump-links h2 {
	font-weight: var(--font-weight-bold);
}

.core-faqs .group-heading {
	font-family: var(--font-display-alt);
	font-size: 1.375rem;
	line-height: 1.22;
	color: var(--green-shade);
	margin-bottom: var(--space-4);
}

.core-faqs .faq-jump-links ol,
.core-faqs .faq-jump-links ul {
	margin: 0 0 35px 25px;
}

.core-faqs .back-to-top {
	display: inline-block;
	margin: 0 0 25px 0;
}

.core-faqs .back-to-top > a {
	font-size: var(--text-base);
	text-decoration: underline;
	font-weight: 700;
}

.core-faqs .faq-item .question {
	position: relative;
	cursor: pointer;
	font-family: var(--font-body);
	font-size: var(--text-xl);
	font-weight: 700;
	line-height: var(--leading-tight);
	color: var(--green-grass-ada);
	margin-bottom: var(--space-5);
}

.core-faqs.expandable details.faq-item[open] .question {
	margin-bottom: 10px;
}

.core-faqs .faq-item .question * {
	display: inline;
	font-size: inherit;
	line-height: inherit;
	margin: 0;
}

.core-faqs.expandable .faq-item .question .toggle-answer {
	margin-left: 15px;
	cursor: pointer;
}

.core-faqs .faq-item .answer {
	padding-bottom: 30px;
}

.core-faqs .faq-item .answer p {
	margin-bottom: var(--space-6);
}

.core-faqs .faq-jump-links a,
.core-faqs .faq-item .answer > a {
	text-decoration: 2px underline;
	font-weight: var(--font-weight-bold);
}

.core-faqs.expandable details summary {
	padding-left: var(--space-10);
}

.core-faqs details summary {
	list-style-type: none;
}

.core-faqs details summary::-webkit-details-marker {
	display: none;
}

.core-faqs.expandable details summary::before {
	content: "\2b";
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 27px;
	height: 27px;
	font-family: var(--fa-6-family);
	font-size: 0.8125rem;
	color: var(--green-dark);
	text-shadow: 0 0 1px var(--green-dark);
	background: url(/includes/public/assets/shared/faq-blob.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.core-faqs.expandable details[open] summary::before {
	content: "\2d";
}

@media (hover: hover) {
	.core-faqs .faq-jump-links a:hover,
	.core-faqs .faq-item .answer > a:hover,
	.core-faqs .back-to-top > a:hover {
		text-decoration: none;
	}
}

@media (min-width: 64em) {
	.core-faqs {
		padding: 36px var(--space-5) var(--space-6);
	}

	.core-faqs .group-heading {
		font-size: 1.75rem;
		line-height: 1.18;
	}

	.core-faqs .faq-item .question {
		font-size: var(--text-2xl);
	}

	.core-faqs.expandable details summary::before {
		width: 31px;
		height: 30px;
		font-size: var(--text-base);
		background-size: unset;
	}

	.core-faqs .faq-item .answer {
		padding-bottom: 36px;
	}

	.core-faqs .faq-item .answer p {
		font-size: var(--text-xl);
		line-height: var(--leading-normal);
		margin-bottom: var(--space-8);

	}

	.core-faqs .faq-jump-links a,
	.core-faqs .back-to-top > a,
	.core-faqs .faq-item .answer > a {
		font-size: var(--text-xl);
	}
}