.accordion-item {
	position: relative;
	width: 100%;
	padding: 1.25rem 1rem 1.5rem;
}

.accordion-item .row {
	position: relative;
	z-index: 1;
}

.accordion-item::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: var(--text-primary);
	opacity: 0;
	transition: all 0.2s;
}

.accordion-item:hover .accordion-counter::after,
.accordion-item.active .accordion-counter::after {
	transform: scaleX(1);
}


.accordion-item:hover::after {
	 opacity: 0.05;
 }
.accordion-item.active::after {
	 opacity: 0.1;
 }

.accordion-item.active .accordion-btn .btn.btn-min div::after,
.accordion-btn.active .btn.btn-min div::after {
	transform: translate(-50%, -50%) rotate(0);
}
.accordion-counter-outer {
	margin-bottom: 0.5rem;
}
.accordion-counter {
	position: relative;
	font-family: var(--serif-font-family), serif;
	line-height: 1;
	font-size: 1.5rem;
	font-style: italic;
	color: var(--primary);
}
.accordion-toggle {
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.accordion-heading {
	font-size: 1.625rem;
	font-family: var(--serif-font-family);
	font-weight: 700;
	margin: 0;
	line-height: 1.3;
	padding-top: 0.375rem;
}
.accordion-content {
	display: none;
	max-width: 830px;
	font-size: 1.125rem;
	padding-top: 1rem;
	padding-right: 1rem;
}
.accordion-content * {margin-bottom: 0;}
.accordion-btn {
	display: flex;
	align-items: center;
	height: 2.75rem;
	margin: 0 0 0 1rem;
}
.accordion-btn .btn.btn-min div {
	position: relative;
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	z-index: 1;
}
.accordion-btn .btn.btn-min div::before,
.accordion-btn .btn.btn-min div::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 1rem;
	height: 0.1875rem;
	transform: translate(-50%, -50%);
	background-color: var(--secondary);
	transition: all 0.2s;
}
.accordion-btn .btn.btn-min div::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

@media (min-width: 768px) {
	.accordion-item {
		padding: 1.5rem 0;
	}

	.accordion-heading {
		font-size: 2rem;
		padding-top: 0;
	}

	.accordion-counter-outer {
		height: 2.5rem;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		padding-right: 2.25rem;
		margin: 0;
	}

	.accordion-counter::after {
		content: "";
		position: absolute;
		right: 100%;
		top: 1rem;
		height: 1px;
		width: 1.625rem;
		transform: scaleX(0);
		transform-origin: right center;
		margin-right: 0.375rem;
		margin-top: -0.125rem;
		background-color: var(--text-primary);
		transition: all .3s;
	}

	.accordion-content {
		padding-top: 1.25rem;
	}

	.accordion-btn {
		margin: 0 0.5rem 0 1rem;
	}
}
@media (min-width: 1200px) {
	.accordion-heading {
		font-size: 2.75rem;
		line-height: 1.2;
	}

	.accordion-btn {
		height: 3.25rem;
	}
}
@media (max-width: 767.98px) {
	.accordion .container {
		padding: 0;
	}

	.accordion .section-heading {
		padding: 0 1rem;
	}
}