/**
 * global_accordion
 * @version	1.0
 * @release	01-04-2021
 * @author	msolowski Marcin Sołowski
 * @website	http://msolowski.pl
 */

.accordion
{
	--global_accordion_size: 18px;
	border-bottom: 1px solid var(--root_color_lead_3);
}

.accordion:last-child
{
/*	border-bottom: 0; */
}

.accordion.is_with_arrow
{
/*	background-color: var(--root_color_white); */
	transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	position: relative;
}

.accordion.is_with_arrow::before
{
/*	content: '';
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: var(--root_color_white);
	transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0; */
}

/**********************************************************************************/

.accordion.is_with_arrow .accordion_icon
{
	width: var(--global_accordion_size);
	height: var(--global_accordion_size);
	position: relative;
	background-color: transparent;
/*	border-radius: 50%;
	border-width: 2px;
	border-style: solid;
	border-color: rgba(117, 198, 38, 0.2); */
	transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.accordion.is_with_arrow .accordion_icon::before
{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: calc(var(--global_accordion_size) * 1);
	height: 2px;
	background-color: var(--root_color_white);
	transform: rotate(90deg);
	transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
/*	border-radius: 2px; */
}

.accordion.is_with_arrow .accordion_icon::after
{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: calc(var(--global_accordion_size) * 1);
	height: 2px;
	background-color: var(--root_color_white);
	transform: rotate(0deg);
	transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
/*	border-radius: 2px; */
}

.accordion.is_with_arrow.is_active .accordion_icon::before
{
	transform: rotate(0deg);
}

.accordion.is_with_arrow .accordion_title:hover .accordion_icon,
.accordion.is_with_arrow.is_active .accordion_icon
{
/*	border-color: var(--global_color_element);
	background-color: var(--global_color_element); */
}

.accordion.is_with_arrow .accordion_title:hover .accordion_icon
{
/*	transform: scale(1.2, 1.2); */
}

.accordion.is_with_arrow .accordion_title:hover .accordion_icon::before,
.accordion.is_with_arrow .accordion_title:hover .accordion_icon::after,
.accordion.is_with_arrow.is_active .accordion_icon::before,
.accordion.is_with_arrow.is_active .accordion_icon::after
{
	background-color: var(--root_color_white);
}

/**********************************************************************************/

.accordion_title
{
	cursor: pointer;
	position: relative;
	padding-top: var(--global_size_25);
	padding-right: var(--global_size_15);
	padding-bottom: var(--global_size_25);
	padding-left: var(--global_size_10);
	transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.accordion.is_with_arrow .accordion_title
{
	display: grid;
	grid-gap:
		clamp(10px,
		calc(((-1 * var(--global_scm_var)) * ((40 - 10) / (var(--global_sc_var) - var(--global_scm_var))) + 10) * 1px)
		+ calc((40 - 10) / (var(--global_sc_var) - var(--global_scm_var)) * 100vw),
		40px);
	align-items: baseline;
	justify-content: flex-start;
	grid-template-columns: 1fr var(--global_accordion_size);
}

.accordion.is_active .accordion_title
{
/*	color: var(--global_color_element); */
}

/**********************************************************************************/

.accordion_wrapper
{
	max-height: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-height 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1) 0.05s;
}

.accordion.is_equal .accordion_wrapper
{
	display: grid;
	grid-gap:
		clamp(10px,
		calc(((-1 * var(--global_scm_var)) * ((40 - 10) / (var(--global_sc_var) - var(--global_scm_var))) + 10) * 1px)
		+ calc((40 - 10) / (var(--global_sc_var) - var(--global_scm_var)) * 100vw),
		40px);
	grid-template-columns: minmax(0, 1fr) var(--global_accordion_size);
}

.accordion.is_equal .accordion_wrapper::after
{
	content: '';
}

.accordion_wrapper > *
{
	padding-top: 0;
	padding-right: var(--global_size_40);
	padding-bottom: var(--global_size_40);
	padding-left: var(--global_size_40);
}

.accordion_wrapper.panel_wrapper > *
{
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 0;
	padding-left: 0;
}

.accordion_wrapper.is_opacity_only
{
	transition: max-height 0s, opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.accordion_wrapper.is_display_only
{
	transition: max-height 0s, opacity 0s;
}

.accordion_wrapper.is_slower
{
	transition: max-height 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1) 0.05s;
}

.source_list .accordion_wrapper
{
	display: none;
}

.accordion_wrapper.is_active
{
	opacity: 1;
}

.accordion_wrapper.is_start
{
	opacity: 1;
	max-height: none;
	transition: max-height 0s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/**********************************************************************************/

@media screen and (max-width: 1680px)
{
}

@media screen and (max-width: 1600px)
{
}

@media screen and (max-width: 1440px)
{
}

@media screen and (max-width: 1366px)
{
}

@media screen and (max-width: 1300px)
{
}

@media screen and (max-width: 1200px)
{
}

@media screen and (max-width: 1024px)
{
	.source_list .accordion_wrapper
	{
		display: block;
	}
}

@media screen and (max-width: 800px)
{
	.accordion_wrapper > *
	{
		padding-right: var(--global_size_15);
		padding-left: var(--global_size_10);
	}
}

@media screen and (max-width: 640px)
{
}

@media screen and (max-width: 480px)
{
}

@media screen and (max-width: 360px)
{
}