:root
{
	--primary-font:'Akzidenz-Grotesk Pro', sans-serif;
	--second-font:'Akzidenz-Grotesk Pro', sans-serif;
	--font-size: 14px;
	--gap:10px;
	--indent: 20px;
	--vu:10px;
	--header-height:calc(6 * var(--vu));
	--footer-height:calc(10 * var(--vu));
	--border-color:#DDD;
	--radius:2px;
	--black: #2b2b2b;
	--white: #FFF;
	--gray: #c0c0c0;
	--lightgray: #EAEAEA;
	--darkgray: #494949;
	--swiper-preloader-color: #c0c0c0;
	--transition-time:0.8s;
	--transition-ease:cubic-bezier(0.22, 1, 0.36, 1);
	--transition:all var(--transition-time) var(--transition-ease);
}

@media (min-width: 990px)
{
	:root
	{
		--vu:20px;
		--header-height:calc(6 * var(--vu));
		--minimized-header-height:calc(2.3 * var(--vu));
		--gap:30px;
	}
}

*
{
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body
{
	font-family:var(--primary-font);
	font-size:var(--font-size);
	color:var(--black);
	display: flex;
	flex-direction: column;
	background-color:var(--white);
}

main
{
	display: grid;
	flex: 1 0 auto;
	margin-top:var(--vu);
}

footer
{
	flex-shrink: 0;
}

h1,
h2,
h3,
h4,
.h1,
.h2,
.h3,
.h4
{
	font-family:var(--second-font);
	font-weight: 500;
	line-height: 1.3;
	margin-bottom: calc(1 * var(--vu));
}

h1,
.h1
{
	font-size: 32px;
}

h2,
.h2
{
	font-size: 20px;
	line-height: 1.4;
	font-weight: 500;
}

/*Сетка*/
/*Сетка*/
.grid
{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:var(--gap);
}

.col-xs-1
{
	grid-column: span 1;
}

.col-xs-2
{
	grid-column: span 2;
}

.col-xs-3
{
	grid-column: span 3;
}

.order-1
{
	order: 1;
}

.order-2
{
	order: 2;
}

.order-3
{
	order: 3;
}

.order-4
{
	order: 4;
}

.order-5
{
	order: 5;
}

.order-6
{
	order: 6;
}

.order-7
{
	order: 7;
}

@media (min-width: 990px)
{
	.grid
	{
		grid-template-columns: repeat(12, 1fr);
		gap:var(--gap);
	}
	
	.col-lg-1
	{
		grid-column: span 1;
	}
	
	.col-lg-2
	{
		grid-column: span 2;
	}
	
	.col-lg-3
	{
		grid-column: span 3;
	}
	
	.col-lg-4
	{
		grid-column: span 4;
	}
	
	.col-lg-5
	{
		grid-column: span 5;
	}
	
	.col-lg-6
	{
		grid-column: span 6;
	}
	
	.col-lg-7
	{
		grid-column: span 7;
	}
	
	.col-lg-8
	{
		grid-column: span 8;
	}
	
	.col-lg-9
	{
		grid-column: span 9;
	}
	
	.col-lg-10
	{
		grid-column: span 10;
	}
	
	.col-lg-11
	{
		grid-column: span 11;
	}
	
	.col-lg-12
	{
		grid-column: span 12;
	}
	
	.order-lg-1
	{
		order: 1;
	}
	
	.order-lg-2
	{
		order: 2;
	}
	
	.order-lg-3
	{
		order: 3;
	}
	
	.order-lg-4
	{
		order: 4;
	}
	
	.order-lg-5
	{
		order: 5;
	}
	
	.order-lg-6
	{
		order: 6;
	}
	
	.order-lg-7
	{
		order: 7;
	}
}

/*Контейнер*/
.container
{
	width: calc(100vw - var(--indent)*2);
	margin-left: auto;
	margin-right: auto;
	height: 100%;
}

@media (min-width: 990px)
{
	.container
	{
		width: calc(100vw - 60px);
	}
}

@media (min-width: 1280px)
{
	.container
	{
		width: 1200px;
	}
}

/*Дополнительно*/
.column
{
	display: grid;
}

.align-items-center
{
	align-items: center;
}

.justify-items-center
{
	justify-items: center;
}

.text-center
{
	text-align: center;
}

.cursor-pointer
{
	cursor: pointer;
}

/*header*/
.page-header
{
	height:var(--header-height);
	z-index: 3;
}

.page-header__logotype
{
	grid-column: span 2;
	align-self: center;
}

.page-header__logotype a
{
	display: block;
	line-height: 1;
}

.page-header__logotype-image
{
	width: 125px;
}

.section
{
	margin-bottom:var(--vu);
}

.section-hero
{
	margin-bottom: calc(2 * var(--gap));
}

.section-outlined
{
	border:1px solid var(--lightgray);
	/*+border-radius:var(--radius);*/
	-moz-border-radius: var(--radius);
	-webkit-border-radius: var(--radius);
	-khtml-border-radius: var(--radius);
	border-radius:var(--radius);
	padding:var(--gap);
}

.section-text
{
	margin-bottom:var(--vu);
}

.block-type-line
{
	margin-top: calc(2 * var(--gap));
	margin-bottom: calc(2 * var(--gap));
}

.block-type-line hr
{
	border-top:1px solid var(--gray);
	border-bottom: none;
}

.block-type-text
{
	margin-top: calc(2 * var(--gap));
}

@media (min-width: 990px)
{
	.page-header__logotype-image
	{
		width: auto;
	}
}

/*Футер*/
.page-footer
{
	margin-top: calc(1 * var(--vu));
	padding-top: calc(1 * var(--vu));
	padding-bottom: calc(2 * var(--vu));
	font-weight: 300;
	text-align: center;
}

/* Select*/
.select-control
{
	height: calc(2 * var(--vu));
	/*+border-radius:var(--radius);*/
	-moz-border-radius: var(--radius);
	-webkit-border-radius: var(--radius);
	-khtml-border-radius: var(--radius);
	border-radius:var(--radius);
	padding: 0 calc(0.5 * var(--gap));
	background-color:var(--lightgray);
}

/*Texttarea / text / number*/
.textarea-control
{
	/*+border-radius:var(--radius);*/
	-moz-border-radius: var(--radius);
	-webkit-border-radius: var(--radius);
	-khtml-border-radius: var(--radius);
	border-radius:var(--radius);
	border:1px solid var(--gray);
	background-color:var(--lightgray);
	width: 100%;
	padding: calc(0.5 * var(--gap));
	outline: none;
}

.input-control
{
	/*+border-radius:var(--radius);*/
	-moz-border-radius: var(--radius);
	-webkit-border-radius: var(--radius);
	-khtml-border-radius: var(--radius);
	border-radius:var(--radius);
	border:1px solid var(--gray);
	background-color:var(--lightgray);
	height: calc(2 * var(--vu));
	padding: 0 calc(0.5 * var(--gap));
	outline: none;
}

/*Checkboxes*/
.checkbox-control
{
	position: absolute;
	opacity: 0;
}

.checkbox-control + label
{
	position: relative;
	cursor: pointer;
	padding: 0;
	margin-right:var(--gap);
}

/*неактивный*/
.checkbox-control + label:before
{
	content: "";
	margin-right: 10px;
	display: inline-block;
	vertical-align: text-top;
	width: 23px;
	height: 23px;
	background:var(--lightgray);
	/*+border-radius: 50%;*/
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-khtml-border-radius: 50%;
	border-radius: 50%;
	border:1px solid var(--gray);
}

.checkbox-control:hover + label:before
{
	background: #519998;
}

.checkbox-control:focus + label:before
{
	box-shadow: none;
}

.checkbox-control:checked + label:before
{
	background: #519998;
}

.checkbox-control:disabled + label
{
	color: #B8B8B8;
	cursor: auto;
}

.checkbox-control:disabled + label:before
{
	box-shadow: none;
	background: #DDD;
}

.checkbox-control:checked + label:after
{
	content: "";
	position: absolute;
	left: 7px;
	top: 13px;
	background: white;
	width: 2px;
	height: 2px;
	box-shadow: 2px 0 0 white, 4px 0 0 white, 4px -2px 0 white, 4px -4px 0 white, 4px -6px 0 white, 4px -7px 0 white;
	transform: rotate(45deg);
}

/*Radios*/
.radio-control
{
	position: absolute;
	opacity: 0;
}

.radio-control + label
{
	position: relative;
	cursor: pointer;
	padding: 0;
	margin-right:var(--gap);
}

/*неактивный*/
.radio-control + label:before
{
	content: "";
	margin-right: 10px;
	display: inline-block;
	vertical-align: text-top;
	width: 23px;
	height: 23px;
	background:var(--lightgray);
	/*+border-radius: 50%;*/
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-khtml-border-radius: 50%;
	border-radius: 50%;
	border:1px solid var(--black);
}

.radio-control:hover + label:before
{
	background: #519998;
}

.radio-control:focus + label:before
{
	box-shadow: none;
}

.radio-control:checked + label:before
{
	background: #519998;
}

.radio-control:disabled + label
{
	color: #B8B8B8;
	cursor: auto;
}

.radio-control:disabled + label:before
{
	box-shadow: none;
	background: #519998;
	opacity: 0.5;
}

/*Submit*/
.form__submit
{
	background-color:var(--black);
	color:var(--white);
	border: none;
	height: calc(3 * var(--vu));
	padding: 0 calc(1 * var(--gap));
	cursor: pointer;
}

/*Success*/
.success
{
	display: grid;
	height: 100%;
	grid-template-rows: max-content max-content;
	gap: calc(3 * var(--vu));
	align-content: center;
	justify-content: center;
	text-align: center;
	font-size: 16px;
}

.success-icon
{
	display: grid;
	justify-content: center;
}

@media (min-width: 990px)
{
	.success
	{
		gap:var(--gap);
		font-size: 20px;
	}
}
