
:root{
	--accordion-primary-color: #212529;
	--accordion-primary-color-hover: #1EBC6F;
}

/* Accordion item */
.js-accordion-item{
	background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .085);
	border-radius: .25rem;
}
.js-accordion-item + .js-accordion-item{
	margin-top: 8px;
}

/* Accordion button */
.js-accordion-button{
	width: 100%;
	display: flex;
	position: relative;
	padding: 1rem;
	text-decoration: none;
	font-weight: 600;
	color: var(--accordion-primary-color);
	transition: color .3s ease-in-out;
}
.js-accordion-button:hover,
.js-accordion-item.open .js-accordion-button{
	color: var(--accordion-primary-color-hover) !important;
}

.js-accordion-button:after{
	flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    margin-left: auto;
    content: "";
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: 1rem;
	background-position-y: 4px;
    transition: all .3s ease-in-out;
}
.js-accordion-item.open .js-accordion-button:after{
	transform: rotate(180deg);
	background-position-y: -2px;
}
.js-accordion-button .bi{
	margin-right: .5rem;
}

/* Accordion body */
.js-accordion-body{
	overflow: hidden;
}
.js-accordion-body.transition{
	transition: height;
}
.js-accordion-item:not(.open) .js-accordion-body{
	height: 0px;
}
.js-accordion-content{
	padding-left: 1rem;
	padding-right: 1rem;
	padding-bottom: 1rem;
}


/* Style 2 */
.style-2 .js-accordion-item{
	border: none;
	background-color: transparent;
}
.style-2 .js-accordion-header{
	background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .085);
	border-radius: .25rem;
	transition: border .3s ease-in-out;
}
.style-2 .js-accordion-item.open .js-accordion-header{
	border-color: var(--accordion-primary-color-hover) !important;
}
.style-2 .js-accordion-content{
	padding: 1rem;
}


/* Style 3 */
.style-3 .js-accordion-item{
	border: none;
	background-color: transparent;
}
.style-3 .js-accordion-header{
	background-color: rgba(0, 0, 0, .03);
	border-radius: .25rem;
	transition: background .3s ease-in-out;
}
.style-3 .js-accordion-item.open .js-accordion-header{
	background: var(--accordion-primary-color-hover) !important;
}
.style-3 .js-accordion-item.open .js-accordion-button{
	color: #fff !important;
}
.style-3 .js-accordion-content{
	padding: 1rem;
}
.style-3 .js-accordion-item.open .js-accordion-button:after{
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}


/* Style 4 */
.style-4 .js-accordion-item{
	border: none;
	background-color: rgba(0, 0, 0, .03);
}
.style-4 .js-accordion-item.open .js-accordion-button:after{
	filter: contrast(100%);
}


/* Style 5 */
.style-5 .js-accordion-item{
	border: none;
	background-color: transparent;
}
.style-5 .js-accordion-header{
	background-color: #fff;
	border-radius: .25rem;
	transition: box-shadow .3s ease-in-out;
}
.style-5 .js-accordion-item.open .js-accordion-header{
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.10)!important;
}
.style-5 .js-accordion-content{
	padding: 1rem;
}


/* Style 6 */
.style-6 .js-accordion-item{
	border: none;
	transition: box-shadow .3s ease-in-out;
}
.style-6 .js-accordion-item.open{
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.10)!important;
}
.style-6 .js-accordion-content{
	padding: 1rem;
}
.style-6 .js-accordion-item .js-accordion-body{
	position: relative;
}
.style-6 .js-accordion-item.open .js-accordion-body:before{
	content: "";
	position: absolute;
	width: 100px;
	height: 1px;
	left: 1rem;
	background-color: var(--accordion-primary-color);
}


/* Style 7 */
.style-7 .js-accordion-item{
	border: none;
	background-color: transparent;
}
.style-7 .js-accordion-button{
	padding: .5rem 0;
}
.style-7 .js-accordion-content{
	padding: 1rem;
	background-color: #fff;
	border-radius: .25rem;
}


/* Style 8 */
.style-8 .js-accordion-item{
	background-color: #fff;
    border: 1px solid rgba(0, 0, 0, .085);
	border-radius: 0;
}
.style-8 .js-accordion-item + .js-accordion-item{
	margin-top: -1px;
}