/*--------------------------------------------
Переменные
--------------------------------------------*/

:root {
	--grid-gap:               3rem;
	--content-width:          141rem;
	--content-padding:        2rem;
	--post-content-gap:       2rem;
	--header-height:          10.2rem;
	--color-green-text:       11,140,66;   /* #0B8C42 зеленый текст */
	--color-green-firm:       7,161,57;    /* #07A139 фирменный зеленый */
	--color-green-btn:        13,167,78;   /* #0DA74E */
	--color-green-btn-dark:   5,65,30;     /* #05411E */
	--color-blue-firm:        53,53,97;    /* #353561 фирменный синий */
	--color-blue-add:         0,84,130;    /* #005482 дополнительный синий */
	--color-menu-gray:        218,223,229; /* #DADFE5 */
	--color-menu-gray-alt:    206,211,217; /* #CED3D9 */
	--color-gray-dark:        85,87,89;    /* #555759 */
	--gradient-green:         linear-gradient(180deg, #0DDE51 0%, #0DA74E 100%);
	--content-col-width:      calc((var(--content-width) - (11* (var(--grid-gap))))/12);
	--transition-main:        all .15s ease 0s;
	--transition-long:        all .3s ease 0s;
}

/*--------------------------------------------
Шрифты
--------------------------------------------*/

@font-face {
    font-family: 'Webnar';
    src: local('Webnar Regular'), local('Webnar-Regular'),
         url('../fonts/Webnar/Webnar-Regular.woff2') format('woff2'),
         url('../fonts/Webnar/Webnar-Regular.woff') format('woff'),
         url('../fonts/Webnar/Webnar-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Webnar';
    src: local('Webnar Italic'), local('Webnar-Italic'),
         url('../fonts/Webnar/Webnar-Italic.woff2') format('woff2'),
         url('../fonts/Webnar/Webnar-Italic.woff') format('woff'),
         url('../fonts/Webnar/Webnar-Italic.ttf') format('truetype');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Webnar';
    src: local('Webnar Bold'), local('Webnar-Bold'),
         url('../fonts/Webnar/Webnar-Bold.woff2') format('woff2'),
         url('../fonts/Webnar/Webnar-Bold.woff') format('woff'),
         url('../fonts/Webnar/Webnar-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Webnar';
    src: local('Webnar Light Italic'), local('Webnar-Light-Italic'),
         url('../fonts/Webnar/Webnar-LightItalic.woff2') format('woff2'),
         url('../fonts/Webnar/Webnar-LightItalic.woff') format('woff'),
         url('../fonts/Webnar/Webnar-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Webnar';
    src: local('Webnar Bold Italic'), local('Webnar-Bold-Italic'),
         url('../fonts/Webnar/Webnar-BoldItalic.woff2') format('woff2'),
         url('../fonts/Webnar/Webnar-BoldItalic.woff') format('woff'),
         url('../fonts/Webnar/Webnar-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}

/*--------------------------------------------
Базовые стили
--------------------------------------------*/

html {
	box-sizing: border-box;
	-ms-overflow-style: scrollbar;
	font-size: 62.5%;
	line-height: 1.5;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

html, body {
	height: 100%;
}

body {
	position: relative;
	min-width: 32rem;
	font-weight: 400;
	font-style: normal;
	font-size: 1.4rem;
	line-height: 1.8rem;
	font-family: 'Roboto', sans-serif;
	color: #000;
	background: #fff;
}

main, div, section, header, footer, aside, nav, ul, ol, li {
	position: relative;
}

input, textarea, button {
	outline: 0 none;
}

ul, ol {
	margin: 0;
	padding: 0;
}

li {
	position: relative;
	list-style: none;
}

a {
	cursor: pointer;
	transition: var(--transition-main);
}

a,
a:focus {
	text-decoration: none;
}

@media (any-hover: hover) {

	a:hover {
		text-decoration: none;
	}

}

table {
	width: 100%;
}

/*--------------------------------------------
Лэйаут
--------------------------------------------*/

.container {
	width: min(var(--content-width), 100% - (var(--content-padding))*2);
	margin-inline: auto;
}

.container_overflow_hidden {
	overflow: hidden;
}

.grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: var(--grid-gap);
}

.col-1 {
	grid-column: span 1 / auto;
}

.col-2 {
	grid-column: span 2 / auto;
}

.col-3 {
	grid-column: span 3 / auto;
}

.col-4 {
	grid-column: span 4 / auto;
}

.col-5 {
	grid-column: span 5 / auto;
}

.col-6 {
	grid-column: span 6 / auto;
}

.col-7 {
	grid-column: span 7 / auto;
}

.col-8 {
	grid-column: span 8 / auto;
}

.col-9 {
	grid-column: span 9 / auto;
}

.col-10 {
	grid-column: span 10 / auto;
}

.col-11 {
	grid-column: span 11 / auto;
}

.col-12 {
	grid-column: span 12 / auto;
}

.wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

/*--------------------------------------------
Кнопки
--------------------------------------------*/

.btn {
    display: inline-flex;
    justify-content: center;
	margin: 0;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding-top: 0;
	padding-bottom: 0;
	outline: 0;
	line-height: 1;
	text-align: center;
	border-radius: .3rem;
	border: 0;
	cursor: pointer;
	transition: 0s;
	background: none;
}

.btn:disabled {
	cursor: default;
}

.btn_small {
	height: 3.6rem;
    padding-top: 1.1rem;
	font-family: 'Roboto', sans-serif;
	font-size: 1.4rem;
}

.btn_big {
	height: 4.2rem;
	padding-top: 1.1rem;
	font-weight: 400;
	font-family: 'Webnar', sans-serif;
	font-size: 1.6rem;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
}

.btn_type1 {
	color: #fff;
	background: rgba(var(--color-green-btn), 1);
}

@media (any-hover: hover) {

	.btn_type1:hover {
		text-shadow: 0 .1rem .2rem rgba(0, 0, 0, 0.6);
		background: linear-gradient(180deg, rgba(var(--color-green-btn), 1) 0%, rgba(var(--color-green-btn-dark), 1) 100%);
	}

}

.btn_type1:active {
	background: linear-gradient(360deg, rgba(var(--color-green-btn), 1) 0%, rgba(var(--color-green-btn-dark), 1) 100%);
	box-shadow: inset 0px 2px 4px rgba(0, 0, 0, 0.5);
}

.btn_type1:disabled {
	background: rgba(var(--color-green-btn), .5);
	text-shadow: none;
	box-shadow: none;
}

.btn_type2 {
	color: rgba(var(--color-blue-add), 1);
	box-shadow: inset 0 0 0 1px rgba(var(--color-blue-add), 1)
}

@media (any-hover: hover) {

	.btn_type2:hover {
		color: #fff;
		background: rgba(var(--color-blue-add), 1);
	}

}

.btn_type2:active {
	color: #fff;
	background: #004469;
	box-shadow: inset 0 .2rem .4rem rgba(0, 0, 0, 0.6);
}

.btn_type2:disabled {
	color: rgba(var(--color-blue-add), .5);
	box-shadow: inset 0 0 0 1px rgba(var(--color-blue-add), .5);
	background: none;
}

.btn_type3 {
	color: rgba(var(--color-green-text), 1);
	box-shadow: inset 0 0 0 1px rgba(var(--color-green-text), 1);
}

@media (any-hover: hover) {

	.btn_type3:hover {
		color: #fff;
		background: rgba(var(--color-green-btn), 1);
		box-shadow: inset 0 0 0 1px rgba(var(--color-green-btn), 1);
	}

}

.btn_type3:active {
	color: #fff;
	background: #097336;
	box-shadow: inset 0 .2rem .4rem rgba(0, 0, 0, 0.6);
}

.btn_type3:disabled {
	color: rgba(var(--color-green-text), .5);
	box-shadow: inset 0 0 0 1px rgba(var(--color-green-text), .5);
	background: none;
}

.btn_type4 {
	color: #fff;
	background: linear-gradient(180deg, rgba(var(--color-green-btn), 1) 0%, rgba(var(--color-green-text), 1) 100%);
}

@media (any-hover: hover) {

	.btn_type4:hover {
		text-shadow: 0 .1rem .2rem rgba(0, 0, 0, 0.6);
		background: linear-gradient(180deg, #0D98A7 0%, #094A73 100%);
	}

}

.btn_type4:active {
	text-shadow: none;
	background: linear-gradient(180deg, #094C74 0%, #0D96A6 100%);
	box-shadow: inset 0 .2rem .4rem rgba(0, 0, 0, 0.5);
}

.btn_type4:disabled {
	color: #fff;
	text-shadow: none;
	background: linear-gradient(180deg, rgba(var(--color-green-btn), .5) 0%, rgba(var(--color-green-text), .5) 100%);
	box-shadow: none;
}

/*--------------------------------------------
Типографика
--------------------------------------------*/

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	margin: 0;
}

.h1,
.post-content h1,
.h2,
.post-content h2,
.h3,
.post-content h3,
.h4,
.post-content h4,
.h5,
.post-content h5,
.h6,
.post-content h6 {
	font-family: 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	text-transform: uppercase;
}

.h1,
.post-content h1 {
	font-style: italic;
	font-weight: 400;
	font-size: 5rem;
	line-height: 6.8rem;
}

.h2,
.post-content h2 {
	font-style: italic;
	font-weight: 400;
	font-size: 3.2rem;
	line-height: 4.3rem;
}

.h3,
.post-content h3 {
	font-style: normal;
	font-weight: 700;
	font-size: 2.8rem;
	line-height: 3rem;
}

.h4,
.post-content h4 {
	font-style: normal;
	font-weight: 700;
	font-size: 2.2rem;
	line-height: 3.1rem;
}

.h5,
.post-content h5 {
	font-style: normal;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 2.6rem;
}

.h6,
.post-content h6 {
	font-style: normal;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.8rem;
}

.post-content p:not(:first-child):not(:last-child),
.post-content h1:not(:first-child):not(:last-child),
.post-content h2:not(:first-child):not(:last-child),
.post-content h3:not(:first-child):not(:last-child),
.post-content h4:not(:first-child):not(:last-child),
.post-content h5:not(:first-child):not(:last-child),
.post-content h6:not(:first-child):not(:last-child) {
	margin: var(--post-content-gap) 0;
}

.post-content p:first-child,
.post-content h1:first-child,
.post-content h2:first-child,
.post-content h3:first-child,
.post-content h4:first-child,
.post-content h5:first-child,
.post-content h6:first-child {
	margin: 0 0 var(--post-content-gap);
}

.post-content p:last-child,
.post-content h1:last-child,
.post-content h2:last-child,
.post-content h3:last-child,
.post-content h4:last-child,
.post-content h5:last-child,
.post-content h6:last-child {
	margin: var(--post-content-gap) 0 0;
}

.post-content a {
	color: rgba(var(--color-blue-firm), 1);
	text-decoration: underline;
}

.post-content a:hover {
	color: rgba(var(--color-green-text), 1);
	text-decoration: underline;
}

/*--------------------------------------------
Форма
--------------------------------------------*/

.text-field,
.textarea-field {
	display: block;
	width: 100%;
	font: normal 400 1.4rem/1 'Roboto', sans-serif;
	color: rgba(var(--color-blue-firm), 1);
	border: .1rem solid #A6ADB3;
	border-radius: .4rem;
	background: #fff;
	transition: var(--transition-main);
}

.text-field:focus,
.textarea-field:focus {
	border-color: #A6ADB3;
	background: #F4F6F7;
	box-shadow: inset .2rem .4rem .4rem rgba(0, 0, 0, 0.25);
}

.text-field {
	height: 4.8rem;
	padding: 1.5rem;
}

.textarea-field {
	height: 9.6rem;
	padding: 1.5rem;
	resize: none;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #9C9C9C;
	opacity: 1;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
	color: #9C9C9C;
	opacity: 1;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
	color: #9C9C9C;
	opacity: 1;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #9C9C9C;
	opacity: 1;
}

input[type="checkbox"] {
	display: none;
	height: 0;
}

input[type="checkbox"] + span {
    display: flex;
    gap: 1rem;
    position: relative;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	color: rgba(var(--color-blue-firm), 1);
	cursor: pointer;
}

input[type="checkbox"] + span a {
	color: rgba(var(--color-blue-firm), 1);
	text-decoration: underline;
}

@media (any-hover: hover) {

	input[type="checkbox"] + span a:hover {
		color: rgba(var(--color-blue-firm), 1);
		text-decoration: none;
	}

}

input[type="checkbox"] + span:before {
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    content: '';
    border: .1rem solid #A6ADB3;
    background: #F4F6F7;
    border-radius: .3rem;
}

input[type="checkbox"]:checked + span:before {
	background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTQnIGhlaWdodD0nMTAnIHZpZXdCb3g9JzAgMCAxNCAxMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTAuNTcwMiAwLjY5OTM4QzExLjA4MiAwLjA0ODAwMTMgMTIuMDI1MiAtMC4wNjUyOTIgMTIuNjc2NiAwLjQ0NjQ1QzEzLjMyOCAwLjk1ODI0OCAxMy40NDEzIDEuOTAxNDkgMTIuOTI5NiAyLjU1MjlMNy43NzcyMyA5LjEwOTU0QzcuMDM2NDUgMTAuMDUyMyA1LjYzODc1IDEwLjEzNiA0Ljc5MDkgOS4yODgyNUwxLjE4OTM0IDUuNjg2NjhDMC42MDM1NTMgNS4xMDA5IDAuNjAzNTUzIDQuMTUxMzggMS4xODkzNCAzLjU2NTU5QzEuNzc1MTMgMi45Nzk4IDIuNzI0NjUgMi45Nzk4IDMuMzEwNDMgMy41NjU1OUw2LjExNDE0IDYuMzY5M0wxMC41NzAyIDAuNjk5MzhaJyBmaWxsPScjMERBNzRFJy8+PC9zdmc+Cg==") no-repeat center / 1.4rem 1rem;;
}

.form_offset {
	padding-left: 6rem;
}

.form__descr {
	margin-bottom: 2rem;
	font-size: 1.6rem;
	line-height: 2rem;
	color: rgba(var(--color-blue-firm), 1);
}

.form__fields {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.submit-field-wrp {
	display: flex;
	gap: 2rem;
	margin-top: 1rem;
}

.submit-field {
	flex-shrink: 0;
	width: 14rem;
	padding-top: 0;
	padding-bottom: .2rem;
}

.accept-field {
	width: 100%;
}

.error-field {
	border-color: red !important;
}

.hide-block {
	display: none !important;
}

.hidden-fields-container,
.wpcf7-response-output,
.screen-reader-response,
.wpcf7-not-valid-tip {
	display: none !important;
}

.wpcf7-spinner {
	position: absolute;
	top: calc(50% - 1rem);
	right: 32.8rem;
	width: 2rem;
	height: 2rem;
	visibility: hidden;
}

.wpcf7-spinner:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 2rem;
	height: 2rem;
	content: '';
	background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMjAnIGhlaWdodD0nMjAnIHZpZXdCb3g9JzAgMCAyMCAyMCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTEuODc1IDEuODc1QzExLjg3NSAxLjM3NzcyIDExLjY3NzUgMC45MDA4MDUgMTEuMzI1OCAwLjU0OTE3NUMxMC45NzQyIDAuMTk3NTQ0IDEwLjQ5NzMgMCAxMCAwQzkuNTAyNzIgMCA5LjAyNTgxIDAuMTk3NTQ0IDguNjc0MTcgMC41NDkxNzVDOC4zMjI1NCAwLjkwMDgwNSA4LjEyNSAxLjM3NzcyIDguMTI1IDEuODc1QzguMTI1IDIuMzcyMjggOC4zMjI1NCAyLjg0OTE5IDguNjc0MTcgMy4yMDA4M0M5LjAyNTgxIDMuNTUyNDYgOS41MDI3MiAzLjc1IDEwIDMuNzVDMTAuNDk3MyAzLjc1IDEwLjk3NDIgMy41NTI0NiAxMS4zMjU4IDMuMjAwODNDMTEuNjc3NSAyLjg0OTE5IDExLjg3NSAyLjM3MjI4IDExLjg3NSAxLjg3NVpNMTEuODc1IDE4LjEyNUMxMS44NzUgMTcuNjI3NyAxMS42Nzc1IDE3LjE1MDggMTEuMzI1OCAxNi43OTkyQzEwLjk3NDIgMTYuNDQ3NSAxMC40OTczIDE2LjI1IDEwIDE2LjI1QzkuNTAyNzIgMTYuMjUgOS4wMjU4MSAxNi40NDc1IDguNjc0MTcgMTYuNzk5MkM4LjMyMjU0IDE3LjE1MDggOC4xMjUgMTcuNjI3NyA4LjEyNSAxOC4xMjVDOC4xMjUgMTguNjIyMyA4LjMyMjU0IDE5LjA5OTIgOC42NzQxNyAxOS40NTA4QzkuMDI1ODEgMTkuODAyNSA5LjUwMjcyIDIwIDEwIDIwQzEwLjQ5NzMgMjAgMTAuOTc0MiAxOS44MDI1IDExLjMyNTggMTkuNDUwOEMxMS42Nzc1IDE5LjA5OTIgMTEuODc1IDE4LjYyMjMgMTEuODc1IDE4LjEyNVpNMS44NzUgMTEuODc1QzIuMzcyMjggMTEuODc1IDIuODQ5MTkgMTEuNjc3NSAzLjIwMDgzIDExLjMyNThDMy41NTI0NiAxMC45NzQyIDMuNzUgMTAuNDk3MyAzLjc1IDEwQzMuNzUgOS41MDI3MiAzLjU1MjQ2IDkuMDI1ODEgMy4yMDA4MyA4LjY3NDE3QzIuODQ5MTkgOC4zMjI1NCAyLjM3MjI4IDguMTI1IDEuODc1IDguMTI1QzEuMzc3NzIgOC4xMjUgMC45MDA4MDUgOC4zMjI1NCAwLjU0OTE3NSA4LjY3NDE3QzAuMTk3NTQ0IDkuMDI1ODEgMCA5LjUwMjcyIDAgMTBDMCAxMC40OTczIDAuMTk3NTQ0IDEwLjk3NDIgMC41NDkxNzUgMTEuMzI1OEMwLjkwMDgwNSAxMS42Nzc1IDEuMzc3NzIgMTEuODc1IDEuODc1IDExLjg3NVpNMjAgMTBDMjAgOS41MDI3MiAxOS44MDI1IDkuMDI1ODEgMTkuNDUwOCA4LjY3NDE3QzE5LjA5OTIgOC4zMjI1NCAxOC42MjIzIDguMTI1IDE4LjEyNSA4LjEyNUMxNy42Mjc3IDguMTI1IDE3LjE1MDggOC4zMjI1NCAxNi43OTkyIDguNjc0MTdDMTYuNDQ3NSA5LjAyNTgxIDE2LjI1IDkuNTAyNzIgMTYuMjUgMTBDMTYuMjUgMTAuNDk3MyAxNi40NDc1IDEwLjk3NDIgMTYuNzk5MiAxMS4zMjU4QzE3LjE1MDggMTEuNjc3NSAxNy42Mjc3IDExLjg3NSAxOC4xMjUgMTEuODc1QzE4LjYyMjMgMTEuODc1IDE5LjA5OTIgMTEuNjc3NSAxOS40NTA4IDExLjMyNThDMTkuODAyNSAxMC45NzQyIDIwIDEwLjQ5NzMgMjAgMTBaTTUuNTgyMDMgMTcuMDcwM0M1Ljc1NjE5IDE2Ljg5NjIgNS44OTQzMyAxNi42ODk0IDUuOTg4NTkgMTYuNDYxOUM2LjA4Mjg0IDE2LjIzNDMgNi4xMzEzNSAxNS45OTA0IDYuMTMxMzUgMTUuNzQ0MUM2LjEzMTM1IDE1LjQ5NzggNi4wODI4NCAxNS4yNTQgNS45ODg1OSAxNS4wMjY0QzUuODk0MzMgMTQuNzk4OSA1Ljc1NjE5IDE0LjU5MjEgNS41ODIwMyAxNC40MThDNS40MDc4OCAxNC4yNDM4IDUuMjAxMTIgMTQuMTA1NyA0Ljk3MzU4IDE0LjAxMTRDNC43NDYwMyAxMy45MTcyIDQuNTAyMTUgMTMuODY4NyA0LjI1NTg2IDEzLjg2ODdDMy43NTg0NSAxMy44Njg3IDMuMjgxNDEgMTQuMDY2MiAyLjkyOTY5IDE0LjQxOEMyLjU3Nzk2IDE0Ljc2OTcgMi4zODAzNyAxNS4yNDY3IDIuMzgwMzcgMTUuNzQ0MUMyLjM4MDM3IDE2LjI0MTYgMi41Nzc5NiAxNi43MTg2IDIuOTI5NjkgMTcuMDcwM0MzLjI4MTQxIDE3LjQyMiAzLjc1ODQ1IDE3LjYxOTYgNC4yNTU4NiAxNy42MTk2QzQuNzUzMjcgMTcuNjE5NiA1LjIzMDMxIDE3LjQyMiA1LjU4MjAzIDE3LjA3MDNaTTUuNTgyMDMgNS41NzgxM0M1Ljc2NDg0IDUuNDA2IDUuOTExMjEgNS4xOTg5IDYuMDEyNDcgNC45NjkxM0M2LjExMzcyIDQuNzM5MzYgNi4xNjc4IDQuNDkxNiA2LjE3MTQ4IDQuMjQwNTNDNi4xNzUxNiAzLjk4OTQ3IDYuMTI4MzggMy43NDAyMiA2LjAzMzkxIDMuNTA3NThDNS45Mzk0NCAzLjI3NDk0IDUuNzk5MjEgMy4wNjM2NCA1LjYyMTUzIDIuODg2MjJDNS40NDM4NSAyLjcwODggNS4yMzIzNSAyLjU2ODg4IDQuOTk5NTcgMi40NzQ3NUM0Ljc2Njc4IDIuMzgwNjMgNC41MTc0NyAyLjMzNDIxIDQuMjY2NDEgMi4zMzgyN0M0LjAxNTM1IDIuMzQyMzIgMy43Njc2NiAyLjM5Njc2IDMuNTM4MDQgMi40OTgzNUMzLjMwODQyIDIuNTk5OTUgMy4xMDE1NSAyLjc0NjYzIDIuOTI5NjkgMi45Mjk2OUMyLjU3Nzk2IDMuMjgxNDEgMi4zODAzNyAzLjc1ODQ1IDIuMzgwMzcgNC4yNTU4NkMyLjM4MDM3IDQuNzUzMjcgMi41Nzc5NiA1LjIzMDMxIDIuOTI5NjkgNS41ODIwM0MzLjI4MTQxIDUuOTMzNzUgMy43NTg0NSA2LjEzMTM1IDQuMjU1ODYgNi4xMzEzNUM0Ljc1MzI3IDYuMTMxMzUgNS4yMzAzMSA1LjkzMzc1IDUuNTgyMDMgNS41ODIwM1Y1LjU3ODEzWk0xNC40MTggMTcuMDcwM0MxNC41OTIxIDE3LjI0NDUgMTQuNzk4OSAxNy4zODI2IDE1LjAyNjQgMTcuNDc2OUMxNS4yNTQgMTcuNTcxMSAxNS40OTc4IDE3LjYxOTYgMTUuNzQ0MSAxNy42MTk2QzE1Ljk5MDQgMTcuNjE5NiAxNi4yMzQzIDE3LjU3MTEgMTYuNDYxOSAxNy40NzY5QzE2LjY4OTQgMTcuMzgyNiAxNi44OTYyIDE3LjI0NDUgMTcuMDcwMyAxNy4wNzAzQzE3LjI0NDUgMTYuODk2MiAxNy4zODI2IDE2LjY4OTQgMTcuNDc2OSAxNi40NjE5QzE3LjU3MTEgMTYuMjM0MyAxNy42MTk2IDE1Ljk5MDQgMTcuNjE5NiAxNS43NDQxQzE3LjYxOTYgMTUuNDk3OCAxNy41NzExIDE1LjI1NCAxNy40NzY5IDE1LjAyNjRDMTcuMzgyNiAxNC43OTg5IDE3LjI0NDUgMTQuNTkyMSAxNy4wNzAzIDE0LjQxOEMxNi44OTYyIDE0LjI0MzggMTYuNjg5NCAxNC4xMDU3IDE2LjQ2MTkgMTQuMDExNEMxNi4yMzQzIDEzLjkxNzIgMTUuOTkwNCAxMy44Njg3IDE1Ljc0NDEgMTMuODY4N0MxNS40OTc4IDEzLjg2ODcgMTUuMjU0IDEzLjkxNzIgMTUuMDI2NCAxNC4wMTE0QzE0Ljc5ODkgMTQuMTA1NyAxNC41OTIxIDE0LjI0MzggMTQuNDE4IDE0LjQxOEMxNC4yNDM4IDE0LjU5MjEgMTQuMTA1NyAxNC43OTg5IDE0LjAxMTQgMTUuMDI2NEMxMy45MTcyIDE1LjI1NCAxMy44Njg3IDE1LjQ5NzggMTMuODY4NyAxNS43NDQxQzEzLjg2ODcgMTUuOTkwNCAxMy45MTcyIDE2LjIzNDMgMTQuMDExNCAxNi40NjE5QzE0LjEwNTcgMTYuNjg5NCAxNC4yNDM4IDE2Ljg5NjIgMTQuNDE4IDE3LjA3MDNaJyBmaWxsPSd3aGl0ZScvPjwvc3ZnPgo=") no-repeat center / 2rem auto;
	animation: spinZ linear 1s infinite forwards;
}

.wpcf7 .submitting .wpcf7-spinner {
	visibility: visible;
}

@keyframes spinZ {

	from {
	-webkit-transform: rotateZ(0deg);
			transform: rotateZ(0deg);
	}

	to {
	-webkit-transform: rotateZ(360deg);
			transform: rotateZ(360deg);
	}

}

@-webkit-keyframes spinZ {

	from {
	-webkit-transform: rotateZ(0deg);
			transform: rotateZ(0deg);
	}

	to {
	-webkit-transform: rotateZ(360deg);
			transform: rotateZ(360deg);
	}

}

.form-note {
	padding: 1rem;
	font: normal 400 2.5rem/1.25 'Webnar',sans-serif;
	text-transform: uppercase;
	color: rgba(var(--color-blue-firm), 1);
}

/*--------------------------------------------
Всплывающее окно
--------------------------------------------*/

.fancybox-bg {
    background: rgba(0,0,0,.8);
}

.fancybox-navigation {
	position: static;
}

.popup {
	width: min(100%, 52.1rem);
	padding: 3rem;
	background: #E8EBED;
	border-radius: .8rem;
	box-sizing: border-box !important;
	box-shadow: 0 .4rem 2rem rgba(0, 0, 0, 0.15);
    z-index: 1;
}

.popup__title {
	margin-bottom: 2rem;
	color: rgba(var(--color-green-text), 1);
}

.popup__close {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 3.4rem;
    right: 3rem;
    width: 1.5rem;
    height: 1.4rem;
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
}

.popup__close-icon {
	width: 1.5rem;
	height: 1.4rem;
	fill: rgba(var(--color-blue-add), 1);
	transition: var(--transition-main);
}

@media (any-hover: hover) {

	.popup__close-icon:hover {
		transform: rotate(180deg);
	}

}

.popup .fancybox-close-small {
    display: none !important;
}

/*--------------------------------------------
Лого
--------------------------------------------*/

.logo {
	display: block;
	width: 18.2rem;
	height: auto;
	aspect-ratio: 182 / 42;
}

/*--------------------------------------------
Шапка
--------------------------------------------*/

.header {
	background: #fff;
	transition: var(--transition-long);
	z-index: 100;
}

.header_bg {
	background: #EBEEF0;
}

.header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: var(--header-height);
	padding: 3rem 0;
}

.header__info {
	display: flex;
	gap: 3rem;
}

.header__menu {
	display: flex;
	gap: 1rem;
}

.header__menu > .menu-item > a {
	display: block;
	padding: 1.1rem 1.5rem .9rem;
	font-size: 1.4rem;
	line-height: 1.6rem;
	color: rgba(var(--color-blue-firm), 1);
	border-radius: .3rem;
	background: rgba(var(--color-menu-gray), 0);
}

.header__menu > .current-menu-item > a {
	color: rgba(var(--color-gray-dark), 1);
	background: rgba(var(--color-menu-gray-alt), 1);
}

.header__menu > .menu-item-has-children > a:before {
	display: inline-block;
	width: .8rem;
	height: .5rem;
	margin-right: .5rem;
	content: '';
	background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nOCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgOCA1JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J003LjY0MTg5IDEuMDgyNTZDNy44MTQwOCAxLjI3MjcyIDcuODA3MSAxLjU3MzUgNy42MjYyOSAxLjc1NDZMNC42Njk3IDQuNzE2MzlDNC4zNzg3IDUuMDA3ODcgMy45MjExMiA1LjAwNzg3IDMuNjMwMTEgNC43MTYzOUwwLjY3MzUyMSAxLjc1NDZDMC40OTI3MTYgMS41NzM1IDAuNDg1NzMgMS4yNzI3MiAwLjY1NzkyMSAxLjA4MjU2QzAuODMwMTE2IDAuODkyNDA3IDEuMTE2MTEgMC44ODUwNjEgMS4yOTY5MiAxLjA2NjE1TDQuMTQ5OTEgMy45MjMzMkw3LjAwMjg5IDEuMDY2MTVDNy4xODM3IDAuODg1MDYxIDcuNDY5NyAwLjg5MjQwNyA3LjY0MTg5IDEuMDgyNTZaJyBmaWxsPScjMzUzNTYxJy8+PC9zdmc+Cg==") no-repeat center / .8rem .5rem;
	vertical-align: .2rem;
	transition: var(--transition-main);
}

@media (any-hover: hover) {

	.header__menu > .menu-item:hover > a {
		color: rgba(var(--color-blue-firm), 1);
		background: rgba(var(--color-menu-gray), 1);
	}

	.header__menu > .menu-item-has-children:hover a {
		border-radius: .3rem .3rem 0 0;
	}

	.header__menu > .menu-item-has-children:hover a:before {
		transform: scaleY(-1);
	}

}

.header__menu .sub-menu {
	position: absolute;
    top: 3.6rem;
    left: 0;
    width: auto;
    padding: .5rem 0;
    transform: translateY(0);
    transition: var(--transition-main);
    visibility: hidden;
    opacity: 0;
    border-radius: 0 .3rem .3rem .3rem;
    background: rgba(var(--color-menu-gray), 1);
}

.header__menu > .menu-item-has-children > .sub-menu .menu-item a {
	display: block;
	padding: .8rem 1.5rem .8rem;
	font-size: 1.4rem;
	line-height: 1.6rem;
	color: rgba(var(--color-blue-firm), 1);
	text-decoration: underline;
	background: rgba(var(--color-menu-gray), 0);
}

@media (any-hover: hover) {

	.header__menu > .menu-item-has-children:hover > .sub-menu {
	    visibility: visible;
	    opacity: 1;
	    transform: translateY(0);
	}

	.header__menu > .menu-item-has-children > .sub-menu .menu-item:hover a {
	    text-decoration: none;
	}

}

.header__contacts {
	display: flex;
	align-items: center;
	gap: 3rem;
}

.header__contacts-item {
	display: flex;
	align-items: center;
	height: 3.6rem;
	padding-left: 3rem;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1;
	border-left: .1rem solid #B4B4B4;
}

.header__contacts-item a {
	color: rgba(var(--color-green-text), 1);
	text-decoration: underline;
}

@media (any-hover: hover) {

	.header__contacts-item a:hover {
		text-decoration: none;
	}

}

/*--------------------------------------------
Главная страница
--------------------------------------------*/

.banner-slider .swiper-wrapper {
	box-sizing: border-box;
}

.banner-item__img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: .8rem;
	aspect-ratio: 141 / 40;
}

.banner-item__content {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding: 7rem 3.4rem 7rem 8.6rem;
}

.banner-item__title {
	max-width: 57rem;
	margin: 0;
	font-family: 'Webnar';
	font-style: italic;
	font-weight: 400;
	font-size: 6rem;
	line-height: 7rem;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	text-transform: uppercase;
	color: #FFFFFF;
}

.banner-item__logos {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.banner-item__logos-item {
	padding-left: 1.2rem;
	padding-right: 1.2rem;
}

.banner-item__logos-item:not(:last-child) {
	padding-bottom: 2rem;
	border-bottom: .1rem solid #fff;
}

.banner-item__logos-acron {
	display: block;
	width: 13.8rem;
	height: auto;
	aspect-ratio: 138 / 31;
}

.banner-item__logos-holding {
	display: block;
	width: 13.5rem;
	height: auto;
	aspect-ratio: 135 / 50;
}

.banner-slider__pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 1.6rem;
	left: 10rem !important;
	bottom: 5.6rem !important;
	width: auto !important;
}

.banner-slider__pagination .swiper-pagination-bullet {
	margin: 0 !important;
	background: rgba(255,255,255,.5) !important;
	opacity: 1 !important;
	transition: var(--transition-main);
}

@media (any-hover: hover) {

	.banner-slider__pagination .swiper-pagination-bullet:hover {
		background: rgba(255,255,255,1) !important;
	}

}

.banner-slider__pagination .swiper-pagination-bullet-active {
	background: rgba(255,255,255,1) !important;
}

.banner-slider__nav {
	position: absolute;
	bottom: 4rem;
	right: 5rem;
	width: 9rem;
	height: 4rem;
	display: flex;
	justify-content: space-between;
	z-index: 10;
}

.banner-slider__nav-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4rem;
	height: 4rem;
	background: rgba(255,255,255,.5);
	border-radius: 50%;
	transition: var(--transition-main);
	cursor: pointer;
}

@media (any-hover: hover) {

	.banner-slider__nav-btn:hover {
		background: rgba(255,255,255,1);
	}

}

.banner-slider__nav-icon {
	width: 1.8rem;
	height: 1rem;
	fill: rgba(var(--color-blue-add), 1);
}

.banner-slider__nav-next .banner-slider__nav-icon {
	transform: rotate(90deg);
}

.banner-slider__nav-prev .banner-slider__nav-icon {
	transform: rotate(-90deg);
}

.about {
	margin-top: 4rem;
	margin-bottom: 4rem;
	background: url('../img/about-bg.jpg') no-repeat center top;
}

.about__descr {
	display: flex;
	flex-direction: column;
	gap: 3rem;
	padding-top: 9.5rem;
}

.about__descr-title {
	color: rgba(var(--color-green-text), 1);
}

.about__descr-text {
	padding-left: 3rem;
	font-size: 1.6rem;
	line-height: 2.2rem;
	color: rgba(var(--color-blue-firm), 1);
}

.about__descr-btn {
	align-self: flex-start;
}

.about__img {
	padding-top: 2.6rem;
}

.about__img-img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 40.3rem;
	max-height: 52.1rem;
	aspect-ratio: 403 / 521;
}

.about__services {
	display: flex;
	flex-direction: column;
	gap: 3rem;
	padding-top: 6.5rem;
}

.about__services-item {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.aservice-item__title {
	margin-left: -3rem;
	color: rgba(var(--color-green-text), 1);
}

.aservice-item__descr {
	color: rgba(var(--color-blue-firm), 1);
}

.aservice-item__btn {
	align-self: flex-start;
}

.services__inner {
	background: #EBF1F7;
}

.services__stat {
	width: calc(100% + 1.5rem);
	padding: 5rem;
}

.services__stat-title {
	margin-bottom: 6rem;
	color: rgba(var(--color-blue-firm), 1);
}

.services__stat-list {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.stat-item__title {
	margin-bottom: 1.5rem;
	padding: 1rem 0;
	font: 400 1.8rem/2.4rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
}

.stat-item__info {
	display: inline-flex;
	align-items: flex-start;
	gap: 1rem;
	font-family: 'Webnar';
	color: rgba(var(--color-blue-add), 1);
}

.stat-item__value {
	font-style: italic;
	font-weight: 300;
	font-size: 6rem;
	line-height: 8.1rem;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
}

.stat-item__um {
	font-size: 1.6rem;
	line-height: 2.2rem;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
}

.services__anons {
	width: calc(100% + 1.5rem);
	height: 100%;
	left: -1.5rem;
	padding: 5rem 5rem 4rem;
	background: #E1E7ED;
}

.services__anons-title {
	margin-bottom: 2rem;
	color: rgba(var(--color-green-text), 1);
}

.services__anons-list {
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

.services__anons-list-item {
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.sanons-item__icon {
	flex-shrink: 0;
}

.sanons-item__icon-img {
	display: block;
	width: 4.1rem;
	height: auto;
	aspect-ratio: 41 / 40;
}

.companies {
	margin-top: 4rem;
	margin-bottom: 4rem;
	padding-top: 11rem;
	padding-bottom: 8.5rem;
	background: url('../img/companies-bg.jpg') no-repeat center top;
}

.companies__title {
	margin-bottom: 7.3rem;
	color: rgba(var(--color-green-text), 1);
}

.companies__list {
	--companies-list-gap: 2rem;
	display: flex;
	flex-wrap: wrap;
	gap: var(--companies-list-gap);
}

.companies__list-item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: calc((100% - 3*var(--companies-list-gap))/4);
	height: 18rem;
	border-radius: 2rem;
	background: linear-gradient(180deg, #fff 0%, #fff 50%, #DCF5E7 100%);
	background-size: 100% 200%;
	background-position: top center;
}

.company-item__more {
	font: 400 normal 1.4rem/1.6rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	text-align: center;
	text-decoration-line: underline;
	color: rgba(var(--color-green-text), 1);
	opacity: 0;
	transform: translateY(3rem);
}

.companies__list-item,
.company-item__logo,
.company-item__more {
	transition: var(--transition-main);
}

@media (any-hover: hover) {

	.companies__list-item:hover {
		background-position: bottom center;
	}

	.companies__list-item:hover .company-item__logo {
		transform: translateY(-1rem);
	}

	.companies__list-item:hover .company-item__more {
		opacity: 1;
		transform: translateY(0);
	}

}

.features {
	margin-bottom: 7rem;
}

.features__inner {
	padding: 6rem 5rem;
	background: linear-gradient(277.89deg, #34355F 0%, #14527C 100%);
	border-radius: .8rem;
}

.features__title {
	margin-bottom: 4rem;
	color: #fff;
}

.features__list {
	--features-list-row-gap: 4rem;
	--features-list-column-gap: 4rem;
	display: flex;
	flex-wrap: wrap;
	gap: var(--features-list-row-gap) var(--features-list-column-gap);
}

.features__list-item {
	display: flex;
	align-items: flex-start;
	gap: 1.5rem;
	width: calc((100% - var(--features-list-column-gap))/2);
}

.feature-item__icon {
	display: block;
	width: 6rem;
	height: auto;
	aspect-ratio: 1 / 1;
}

.feature-item__descr {
	padding-top: 1.5rem;
}

.feature-item__title {
	margin-bottom: 1.5rem;
	color: rgba(var(--color-green-btn), 1);
}

.feature-item__text {
	padding-left: 1rem;
	font: 400 normal 1.6rem/2rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	color: #fff;
}

.get-questions {
	margin-bottom: 7rem;
}

.get-questions__inner {
	display: flex;
	align-items: center;
	gap: 7rem;
	padding: 5.5rem 9rem 5.5rem 6rem;
	background: linear-gradient(360deg, #FFFFFF 0%, #E8EBED 100%);
	border-radius: .8rem;
	overflow: hidden;
}

.get-questions__form {
	flex-shrink: 0;
	width: 52.1rem;
	z-index: 1;
}

.get-questions__title {
	margin-bottom: 4rem;
	color: rgba(var(--color-green-text), 1);
}

.get-questions__img-img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 66.8rem;
	max-height: 44.6rem;
}

.licenses {
	margin-bottom: 7rem;
}

.licenses__title {
	margin-bottom: 7rem;
	color: rgba(var(--color-green-text), 1);
}

.licenses-slider-wrp {
	--licenses-slider-padding: 4.5rem;
	padding-left: var(--licenses-slider-padding);
	padding-right: var(--licenses-slider-padding);
}

.licenses-slider .swiper-wrapper {
	box-sizing: border-box;
}

.licenses-slider__item {
	display: block;
	padding: 1rem;
	border-radius: .8rem;
	background: #E9ECEE;
	z-index: 1;
}

.licenses-slider__item:after {
	position: absolute;
	top: calc(50% - 2.1rem);
	left: calc(50% - 2.1rem);;
	width: 4.3rem;
	height: 4.2rem;
	content: '';
	background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNDMnIGhlaWdodD0nNDInIHZpZXdCb3g9JzAgMCA0MyA0MicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNNDEuOTgxNyAzNi4xMjc5TDMyLjA5NTcgMjYuMzM4OEMzMy43NzU0IDIzLjY5MTEgMzQuNzUwMyAyMC41NjE2IDM0Ljc1MDMgMTcuMjAzMkMzNC43NTAzIDcuNzAxNTcgMjYuOTcwOCAwIDE3LjM3NDggMEM3Ljc3ODc2IDAgMCA3LjcwMTU3IDAgMTcuMjAzMkMwIDI2LjcwNTEgNy43Nzg0IDM0LjQwNiAxNy4zNzQ4IDM0LjQwNkMyMS4wNjYyIDM0LjQwNiAyNC40ODUzIDMzLjI2MzMgMjcuMjk4OCAzMS4zMjE3TDM3LjA2NzEgNDAuOTk0MkMzNy43NDU5IDQxLjY2NTYgMzguNjM1NyA0MiAzOS41MjQ0IDQyQzQwLjQxNDIgNDIgNDEuMzAzIDQxLjY2NTYgNDEuOTgyOCA0MC45OTQyQzQzLjMzOTIgMzkuNjQ5OCA0My4zMzkyIDM3LjQ3MiA0MS45ODE3IDM2LjEyNzlaTTE3LjM3NDggMjguODMyNEMxMC44ODg3IDI4LjgzMjQgNS42MzAyNiAyMy42MjYyIDUuNjMwMjYgMTcuMjAzOUM1LjYzMDI2IDEwLjc4MTUgMTAuODg4NyA1LjU3NTAxIDE3LjM3NDggNS41NzUwMUMyMy44NjEyIDUuNTc1MDEgMjkuMTE5MyAxMC43ODE1IDI5LjExOTMgMTcuMjAzOUMyOS4xMTkzIDIzLjYyNjIgMjMuODYxMiAyOC44MzI0IDE3LjM3NDggMjguODMyNFonIGZpbGw9JyMwREE3NEUnLz48L3N2Zz4K") no-repeat center / 4.3rem 4.2rem;
	transition: var(--transition-main);
	transform: scale(0);
}

.licenses-slider__item-img {
	display: block;
	width: 100%;
	height: auto;
	transition: var(--transition-main);
}

@media (any-hover: hover) {

	.licenses-slider__item:hover:after {
		transform: scale(1);
	}

	.licenses-slider__item:hover .licenses-slider__item-img {
		opacity: .6;
	}

}

.licenses-slider__nav {
	position: absolute;
	top: calc(50% - 2rem);
	left: 0;
	height: 4rem;
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.licenses-slider__nav-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4rem;
	height: 4rem;
	transition: var(--transition-main);
	cursor: pointer;
}

.licenses-slider__nav-icon {
	width: 1.8rem;
	height: 1rem;
	fill: rgba(var(--color-blue-add), 1);
}

.licenses-slider__nav-next .licenses-slider__nav-icon {
	transform: rotate(90deg);
}

.licenses-slider__nav-prev .licenses-slider__nav-icon {
	transform: rotate(-90deg);
}

.news-anons {
	margin-bottom: 7rem;
}

.news-anons__title {
	margin-bottom: 5rem;
	color: rgba(var(--color-green-text), 1);
}

.news-grid,
.news-slider .swiper-wrapper {
	--news-grid-row-gap: 3rem;
	--news-grid-column-gap: 3rem;
	display: flex;
	flex-wrap: wrap;
	gap: var(--news-grid-row-gap) var(--news-grid-column-gap);
}

.news-grid__item,
.news-slider .swiper-slide {
	width: calc((100% - 3*var(--news-grid-column-gap))/4);
}

.news-item {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.news-item__preview-img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: .8rem;
	aspect-ratio: 33 / 16;
	transition: var(--transition-main);
}

.news-item__date {
	font-size: 1.2rem;
	line-height: 1.4rem;
	color: #8A8F94;
}

.news-item__title {
	height: 4.8rem;
	text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
	text-transform: none;
}

.news-item__descr {
	height: 5.4rem;
	text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.news-item__title,
.news-item__descr {
	color: rgba(var(--color-blue-firm), 1);
}

@media (any-hover: hover) {

	.news-item:hover .news-item__preview-img {
		border-radius: 3rem;
	}

	.news-item:hover .news-item__descr {
		text-decoration: underline;
	}

}

.news-more {
	display: flex;
	justify-content: flex-end;
	margin-top: 3rem;
}

/*--------------------------------------------
Подвал
--------------------------------------------*/

.footer {
	margin-top: auto;
}

.footer__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 3rem;
	padding: 4rem 0;
	border-top: .1rem solid #B4B4B4;
}

.footer__info {
	display: flex;
	gap: 3rem;
	height: 4.2rem;
}

.footer__info,
.footer__contacts {
	flex-shrink: 0;
}

.footer__logo-holding {
	display: flex;
	align-items: center;
	height: 100%;
	padding-left: 3rem;
	border-left: .1rem solid #A1A7AD;
}

.footer__logo-holding-img {
	width: 19.2rem;
	height: 3rem;
	fill: #A1A7AD;
	transition: var(--transition-main);
}

@media (any-hover: hover) {

	.footer__logo-holding-img:hover {
		fill: rgba(var(--color-blue-add), 1);
	}

}

.footer_navs {
	display: flex;
	justify-content: flex-end;
	gap: 4rem;
	width: 100%;
	padding-right: 2rem;
}

.footer__nav-title {
	margin-bottom: 1rem;
	text-transform: none;
}

.footer__menu {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.footer__menu .menu-item {
	line-height: 1.6rem;	
}

.footer__menu .menu-item a {
	color: rgba(var(--color-blue-firm), 1);
	text-decoration: underline;
}

@media (any-hover: hover) {

	.footer__menu .menu-item a:hover {
		text-decoration: none;
	}

}

.footer__contacts {
	display: flex;
	align-items: center;
	align-self: normal;
	gap: 3rem;
	padding-left: 3rem;
	border-left: .1rem solid #B4B4B4;
}

.footer__contacts-text {
	display: flex;
	flex-direction: column;
	gap: .5rem;
	font-weight: 700;
    font-size: 1.6rem;
    line-height: 1.9rem;
}

.footer__contacts-link {
	color: rgba(var(--color-green-text), 1);
    text-decoration: underline;
}

@media (any-hover: hover) {

	.footer__contacts-link:hover {
	    text-decoration: none;
	}

}

/*--------------------------------------------
Кнопка "Наверх"
--------------------------------------------*/

.to-top {
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	bottom: 4rem;
	right: 4rem;
	width: 4rem;
	height: 4rem;
	border-radius: 50%;
	background: linear-gradient(180deg, #098DD5 0%, #0C3F7E 100%);
	cursor: pointer;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	transition: opacity .15s ease 0s;
}

@media (any-hover: hover) {

	.to-top:hover {
		background: linear-gradient(180deg, #045D8E 0%, #01152F 100%);
	}

}

.to-top:active {
	background: #005482;
	box-shadow: inset 0 .6rem 1rem rgba(0, 0, 0, 0.6);
}

.to-top__icon {
	width: 1.8rem;
	height: 1rem;
	fill: #fff;
}

.to-top_active {
	opacity: 1;
	visibility: visible;
}

/*--------------------------------------------
Внутряки
--------------------------------------------*/

.breadcrumbs {
	margin-bottom: 3rem;
	padding: 1rem 0;
	font-size: 1.4rem;
	line-height: 1.6rem;
	color: rgba(var(--color-gray-dark), 1);
}

.breadcrumbs a {
	color: rgba(var(--color-blue-firm), 1);
	text-decoration: underline;
}

@media (any-hover: hover) {

	.breadcrumbs a:hover {
		text-decoration: none;
	}

}

.breadcrumbs__sep {
	display: inline-block;
	width: .5rem;
	height: 1rem;
	margin-left: 1.1rem;
	margin-right: .5rem;
	background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNScgaGVpZ2h0PScxMCcgdmlld0JveD0nMCAwIDUgMTAnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTAuMTgyOTI4IDEuMDQ0OUMwLjQ1NDA2OSAwLjczMTgxMSAwLjkyODQwNSAwLjY5NzY0MyAxLjI0MTUyIDAuOTY4NzI1TDQuMzY4NDcgMy42Nzc3MUM1LjE3NDA3IDQuMzc1NiA1LjE3NDIxIDUuNjI1NDMgNC4zNjg0NyA2LjMyMzIyTDEuMjQxNTIgOS4wMzEyM0MwLjkyODQwNiA5LjMwMjM5IDAuNDU0MDk1IDkuMjY4MTcgMC4xODI5MjggOC45NTUwNUMtMC4wODc4NTUyIDguNjQxOTkgLTAuMDUzNzQ3NSA4LjE2ODUyIDAuMjU5MSA3Ljg5NzQ0TDMuMzg2MDUgNS4xODk0M0MzLjUwMTE3IDUuMDg5NzQgMy41MDExNyA0LjkxMTE5IDMuMzg2MDUgNC44MTE1TDAuMjU5MSAyLjEwMzQ5Qy0wLjA1Mzk4NTkgMS44MzIzNSAtMC4wODgxNTQgMS4zNTgwMSAwLjE4MjkyOCAxLjA0NDlaJyBmaWxsPScjMzUzNTYxJy8+PC9zdmc+Cg==") no-repeat center / .5rem 1rem;
}

.main-title {
	color: rgba(var(--color-green-text), 1);
}

.service-page {
	padding-bottom: 10rem;
}

.rop-title {
	margin-bottom: 3rem;
}

.rop-content {
	--rop-content-gap: 3rem;
	display: flex;
	gap: var(--rop-content-gap);
}

.rop-content__descr,
.rop-content__features {
	width: calc((100% - var(--rop-content-gap))/2);
	padding-top: 3.5rem;
	padding-bottom: 3.5rem;
}

.rop-content__title {
	margin-bottom: 4rem;
	color: rgba(var(--color-blue-firm), 1);
}

.rop-content__text {
	padding-left: 3rem;
	padding-right: 3rem;
	font-size: 1.4rem;
	line-height: 2rem;
}

.rop-content__text p {
	margin: 0;
}

.rop-content__text p+p {
	margin-top: 1rem;
}

.rop-content__features {
	padding-left: 4rem;
	border-left: .1rem solid #BFBFBF;
}

.rop-content__features-list {
	counter-reset: num;
	display: flex;
	flex-direction: column;
	gap: 4.6rem;
}

.rop-flist__item {
	display: flex;
	gap: 1.5rem;
	font-size: 1.8rem;
	line-height: 2.2rem;
	color: rgba(var(--color-blue-firm), 1);
}

.rop-flist__item-text {
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;	
}

.rop-flist__item:before {
	flex-shrink: 0;
    width: 2rem;
    height: 2.6rem;
    content: counter(num);
    counter-increment: num;
	font-style: italic;
	font-weight: 300;
	font-size: 3.6rem;
	line-height: 2.6;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	color: rgba(var(--color-green-firm), 1);
}

.rop-content+.rop-steps {
	margin-top: 6rem;
}

.rop-steps {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
}

.rop-steps__item {
	flex-shrink: 0;
	width: 22rem;
	height: 22rem;
	border-radius: 50%;
	background: #F3F3F3;
}

.rstep-item__title {
	position: absolute;
	top: 0;
	left: 1rem;
	margin: 0;
	font-weight: 400;
	font-style: italic;
	font-size: 1.8rem;
	line-height: 2.1rem;
	text-transform: uppercase;
	color: rgba(var(--color-green-text), 1);
}

.rstep-item__icon {
	position: absolute;
	bottom: 0;
	right: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 12rem;
	height: 12rem;
	border-radius: 50%;
	background: #FFFFFF;
	box-shadow: -.1rem .2rem .4rem rgba(0, 0, 0, 0.15);
}

.rstep-item__icon-img {
	width: auto;
	height: auto;
	max-width: 8rem;
	max-height: 8rem;
}

.rstep-item__sep {
	height: 1.4rem;
}

.rstep-item__sep:last-child {
	display: none;
}

.rstep-item__sep-icon {
	width: 4.4rem;
	height: 1.4rem;
	fill: #BFBFBF;
}

.util-title {
	margin-bottom: 5rem;
}

.util-descr {
	margin-bottom: 4rem;
	padding-left: 3rem;
	font-size: 1.4rem;
	line-height: 2rem;
}

.util-descr p {
	margin: 0;
}

.util-descr p+p {
	margin-top: 1rem;
}

.util-directions {
	--util-directions-gap: 1rem;
	display: flex;
	gap: var(--util-directions-gap);
}

.util-directions__item {
	width: calc((100% - 4*var(--util-directions-gap))/2);
}

.util-item__preview {
	margin-bottom: 1.5rem;
	border-radius: .4rem;
	overflow: hidden;
}

.util-item__preview:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transition: var(--transition-main);
	background: rgba(var(--color-blue-add), .2);
	z-index: 1;
}

.util-item__preview-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 274 / 200;
	border-radius: .4rem;
	transition: var(--transition-main);
	filter: grayscale(100%);
	z-index: -1;
}

@media (any-hover: hover) {

	.util-directions__item:hover .util-item__preview:after {
		opacity: 0;
	}

	.util-directions__item:hover .util-item__preview-img {
		filter: grayscale(0);
	}

}

.util-item__title {
	margin: 0;
	padding-right: 1rem;
	font: normal 400 1.8rem/2rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	color: rgba(var(--color-blue-firm), 1);
}

.util-directions+.util-clients {
	margin-top: 6rem;
}

.util-clients__title {
	margin-bottom: 4rem;
	color: rgba(var(--color-blue-firm), 1);
}

.util-clients__list {
	--util-clients-list-gap: 1rem;
	display: flex;
	gap: var(--util-clients-list-gap);
}

.clients-list__item {
	width: calc((100% - 5*var(--util-clients-list-gap))/6);
	height: 12.6rem;
	border-radius: .4rem;
	background: #EFEFEF;
}

.clients-list__item-img,
.clients-list__item-img_mute {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
    height: auto;
    max-width: 80%;
    max-height: 80%;
	transition: var(--transition-main);
}

.clients-list__item-img {
	opacity: 0;
}

@media (any-hover: hover) {

	.clients-list__item:hover .clients-list__item-img {
		opacity: 1;
	}

	.clients-list__item:hover .clients-list__item-img_mute {
		opacity: 0;
	}

}

.ecobox-title {
	margin-bottom: 4rem;
}

.ecobox-descr+.ecobox-points {
	margin-top: 4rem;
}

.ecobox-descr__preview-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 450 / 276;
	border-radius: .8rem;
}

.ecobox-descr__text {
	font-size: 1.4rem;
	line-height: 2rem;
}

.ecobox-descr__text p {
	margin: 0;
}

.ecobox-descr__text p+p {
	margin-top: 1rem;
}

.ecobox-points {
	--ecobox-points-height: 51.6rem;
	overflow: hidden;
	background: #EFEFEF;
	box-shadow: inset 0 -.1rem 0 0 #ccc;
	border-radius: .8rem;
}

.ecobox-points__address {
	height: var(--ecobox-points-height);
}

.ecobox-points__address-item {
	padding: 1.5rem 2.2rem 1.4rem 1.5rem;
	color: rgba(var(--color-blue-firm), 1);
	cursor: pointer;
}

.ecobox-points__address-item.active {
	background: rgba(var(--color-menu-gray), 1);
}

.ecobox-points__address-item:not(:last-child) {
	border-bottom: .1rem solid #CCCCCC;
}

.custom-scrollbar .simplebar-track.simplebar-vertical {
	background: rgba(var(--color-green-text), 1);
}

.custom-scrollbar .simplebar-scrollbar:before {
	background: #76E9A6;
	opacity: 1;
}

.google-map {
	width: calc(100% + var(--grid-gap));
	left: calc(-1*var(--grid-gap));
	height: var(--ecobox-points-height);
}

.google-map__text {
	font: 400 normal 1.6rem/1.5 'Roboto', sans-serif;
}

.company-page {
	padding-bottom: 10rem;
}

.company-title {
	margin-bottom: 6rem;
}

.company-gallery {
	padding-right: 6rem;
}

.company-slider__item {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 510 / 644;
	border-radius: .4rem;
}

.company-gallery__controls {
	margin-top: 1rem;
}

.company-slider__nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 5rem;
}

.company-slider__nav-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background: #F3F3F3;
	transition: var(--transition-main);
    cursor: pointer;
}

.company-slider__nav-icon {
	width: 1.8rem;
	height: 1rem;
	fill: rgba(var(--color-blue-add), 1);
}

.company-slider__nav-prev .company-slider__nav-icon {
    transform: rotate(-90deg);
}

.company-slider__nav-next .company-slider__nav-icon {
    transform: rotate(90deg);
}

.company-slider__pagination {
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 1.6rem !important;
	bottom: 50% !important;
	left: 5rem !important;
	transform: translateY(50%);
	width: calc(100% - 10rem) !important;
	height: .8rem !important;
}

.company-slider__pagination .swiper-pagination-bullet {
    width: .8rem !important;
    height: .8rem !important;
    margin: 0 !important;
    background: rgba(var(--color-blue-firm), .5) !important;
    opacity: 1 !important;
}

.company-slider__pagination .swiper-pagination-bullet-active {
	background: rgba(var(--color-blue-firm), 1) !important;
}

.company-card-double {
	--company-card-double-gap: 2rem;
	display: flex;
	gap: var(--company-card-double-gap);
}

.company-card-double .company-card {
	width: calc((100% - var(--company-card-double-gap))/2);
}

.company-card__info {
	display: flex;
	gap: 3rem;
	margin-bottom: 2rem;
}

.company-card-double .company-card__info {
	flex-direction: column;
	gap: 2rem;
}

.company-card__logo {
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 28rem;
	height: 13rem;
	background: #F3F3F3;
	border-radius: .8rem;
}

.company-card-double .company-card__logo {
	width: 100%;
}

.company-card__logo-img {
	width: auto;
	height: auto;
	max-width: 19rem;
	max-height: 8rem;
}

.company-card__text {
	margin-bottom: 1rem;
	font-size: 1.4rem;
	line-height: 2rem;
}

.company-card__btns {
	display: flex;
	gap: 1rem;
}

.company-card__features-item {
	margin-bottom: 2rem;
	padding-top: 4rem;
	padding-bottom: 3rem;
	border-top: .1rem solid #BFBFBF;
}

.cfeature-item__title {
	margin: 0 0 2.5rem;
	font: 400 normal 1.8rem/2.4rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	text-transform: uppercase;
}

.cfeature-item__info {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
}

.cfeature-item__info-value {
	font: 300 italic 6rem/8.1rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	text-transform: uppercase;
	color: rgba(var(--color-blue-add), 1);
}

.cfeature-item__info-um {
	font: 400 normal 2rem/2.2rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
	color: rgba(var(--color-blue-add), 1);
	vertical-align: top;
}

.company-card__services {
	padding: 3rem;
	border-radius: .8rem;
	background: #EBF1F7;
}

.company-card__services-title {
	margin-bottom: 2rem;
	color: rgba(var(--color-green-text), 1);
}

.company-card__services-title_alt {
	color: rgba(var(--color-blue-firm), 1);
}

.company-card__services-list {
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

.company-card__services-list-item {
	display: flex;
	gap: 1.5rem;
	align-items: center;
}

.ccservice-item__icon {
	flex-shrink: 0;
	width: 3rem;
	height: auto;
	aspect-ratio: 1 / 1;
}

.company-card__services+.company-card__services {
	margin-top: 1rem;
}

.company-effectivity {
	margin-top: 2rem;
	padding: 3rem;
	background: #DFE5EB;
	border-radius: .8rem;
}

.company-effectivity__title {
	margin-bottom: 2.5rem;
	color: rgba(var(--color-blue-firm), 1);
}

.company-effectivity__data {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	color: rgba(var(--color-blue-firm), 1);
}

.company-effectivity__data span {
	font: 400 normal 2rem/2.2rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
}

.company-effectivity__data i {
	font: 300 italic 6rem/8.1rem 'Webnar', sans-serif;
	text-box-edge: cap alphabetic;
	text-box-trim: trim-both;
}

.news-page {
	padding-bottom: 10rem;
}

.pages {
	display: flex;
	flex-wrap: wrap;
	gap: .1rem;
	margin-top: 3rem;
}

.pages a,
.pages__current {
	min-width: 3.8rem;
	height: 3.8rem;
	padding: 0 .9rem;
	text-align: center;
	line-height: 3.8rem;
	border-radius: .3rem;
}

.pages a {
	color: rgba(var(--color-blue-firm), 1);
}

.pages__current {
	color: rgba(var(--color-gray-dark), 1);
	background: #CED3D9;
}

@media (any-hover: hover) {

	.pages a:hover {
		background-color: #CED3D9;
	}

}

.pages__prev,
.pages__next {
	font-size: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: .6rem 1.2rem;
}

.pages__prev {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNicgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDYgMTInIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTUuNzc4NjYgMTEuMjM4QzUuNDkzNDIgMTEuNDk2MyA1LjA0MjI1IDExLjQ4NTggNC43NzA2IDExLjIxNDZMMC4zMjc5MTEgNi43Nzk3Qy0wLjEwOTMwNCA2LjM0MzE5IC0wLjEwOTMwNSA1LjY1NjgyIDAuMzI3OTExIDUuMjIwMzFMNC43NzA2IDAuNzg1NDI1QzUuMDQyMjUgMC41MTQyMTcgNS40OTM0MiAwLjUwMzczOSA1Ljc3ODY2IDAuNzYyMDI1QzYuMDYzODkgMS4wMjAzMiA2LjA3NDkxIDEuNDQ5MzEgNS44MDMyNyAxLjcyMDUzTDEuNTE3NTIgNkw1LjgwMzI3IDEwLjI3OTVDNi4wNzQ5IDEwLjU1MDcgNi4wNjM4OSAxMC45Nzk3IDUuNzc4NjYgMTEuMjM4WicgZmlsbD0nIzM1MzU2MScvPjwvc3ZnPgo=");	
}

.pages__next {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nNicgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDYgMTInIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTAuMjIxMzQ0IDAuNzYyMDE1QzAuNTA2NTc4IDAuNTAzNzI5IDAuOTU3NzU0IDAuNTE0MjA2IDEuMjI5NCAwLjc4NTQxNEw1LjY3MjA5IDUuMjIwM0M2LjEwOTMgNS42NTY4MSA2LjEwOTMxIDYuMzQzMTggNS42NzIwOSA2Ljc3OTY5TDEuMjI5NCAxMS4yMTQ2QzAuOTU3NzU0IDExLjQ4NTggMC41MDY1NzggMTEuNDk2MyAwLjIyMTM0NCAxMS4yMzhDLTAuMDYzODg1NiAxMC45Nzk3IC0wLjA3NDkwNDggMTAuNTUwNyAwLjE5NjczNSAxMC4yNzk1TDQuNDgyNDggNS45OTk5OUwwLjE5NjczNSAxLjcyMDUyQy0wLjA3NDkwNDYgMS40NDkzIC0wLjA2Mzg4NTUgMS4wMjAzMSAwLjIyMTM0NCAwLjc2MjAxNVonIGZpbGw9JyMzNTM1NjEnLz48L3N2Zz4K");
}

.news-title {
	margin-bottom: 6rem;
}

.news-one__preview-img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 570 / 347;
	border-radius: .8rem;
}

.news-one__content {
	padding-top: .5rem;
}

.news-one__date {
	margin-bottom: .5rem;
	font-size: 1.2rem;
	line-height: 1.4rem;
	color: #8A8F94;
}

.news-relative__title {
	margin-bottom: 4rem;
	color: rgba(var(--color-blue-firm), 1);
}

.news-one+.news-relative {
	margin-top: 8rem;
}

/*--------------------------------------------
Мобильное меню
--------------------------------------------*/

.burger {
	display: none;
	width: 4rem;
	height: 3.6rem;
	background: rgba(var(--color-green-firm), 1);
	border-radius: .3rem;
	transition: var(--transition-long);
}

.burger__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 4rem;
	height: 3.6rem;
	transition: var(--transition-long);
}

.burger_open {
	background: #EBF1F7;
}

.burger__btn-menu {
	fill: #fff;
}

.burger__btn-close {
	fill: rgba(var(--color-blue-add), 1);
}

.burger__btn-close,
.burger_open .burger__btn-menu {
	opacity: 0;
	transform: scale(0);
}

.burger_open .burger__btn-close {
	opacity: 1;
	transform: scale(1);
}

.burger__icon {
	flex-shrink: 0;
}

.mobile-box {
	padding-top: 1rem;
	padding-bottom: 2rem;
	display: none;
}

.mobile-box__menu {
	display: flex;
	flex-direction: column;
	gap: .5rem;
	margin-bottom: 1.5rem;
}

.mobile-box__menu .menu-item {
	display: block;
	min-height: 4.2rem;
	padding: 1rem 1rem;
	text-align: center;
	background: #EBF1F7;
	border-bottom: .1rem solid #C9CED4;
	border-radius: .3rem;
	transition: var(--transition-main);
}

.mobile-box__menu .menu-item a {
	display: inline-block;
	position: relative;
	bottom: .1rem;
	font: normal 400 1.6rem/2.2rem 'Webnar', sans-serif;
	color: rgba(var(--color-blue-add), 1);
}

.mobile-box__menu .sub-menu-toggle {
	position: absolute;
	top: 0rem;
	right: 0;
	width: 3.1rem;
	height: 4.4rem;
	background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTEnIGhlaWdodD0nNicgdmlld0JveD0nMCAwIDExIDYnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTEwLjgxMjkgMC4yMjEzNDRDMTEuMDcxMiAwLjUwNjU3OCAxMS4wNjA3IDAuOTU3NzU0IDEwLjc4OTUgMS4yMjk0TDYuMzU0NjUgNS42NzIwOUM1LjkxODE0IDYuMTA5MyA1LjIzMTc3IDYuMTA5MyA0Ljc5NTI3IDUuNjcyMDlMMC4zNjAzNzggMS4yMjk0QzAuMDg5MTcxNCAwLjk1Nzc1NCAwLjA3ODY5MjQgMC41MDY1NzggMC4zMzY5NzkgMC4yMjEzNDRDMC41OTUyNzIgLTAuMDYzODg1NiAxLjAyNDI3IC0wLjA3NDkwNDggMS4yOTU0OCAwLjE5NjczNUw1LjU3NDk2IDQuNDgyNDhMOS44NTQ0NCAwLjE5NjczNUMxMC4xMjU2IC0wLjA3NDkwNDUgMTAuNTU0NiAtMC4wNjM4ODU0IDEwLjgxMjkgMC4yMjEzNDRaJyBmaWxsPScjMDA1NDgyJy8+PC9zdmc+Cg==") no-repeat center / 1.1rem .6rem;
}

.mobile-box__menu .menu-item_open {
	background: #CFDAE5;
	border-top: .1rem solid #8CA6BF;
	border-bottom: 0;
}

.mobile-box__menu .menu-item_open > a {
	font-weight: bold;
}

.mobile-box__menu .menu-item_open .sub-menu-toggle {
	transform: scaleY(-1);
}

.mobile-box__menu .sub-menu {
	display: none;
	flex-direction: column;
	gap: .5rem;
	margin-top: 1rem;
}

.mobile-box__menu .menu-item_open .sub-menu {
	display: flex;
}

.mobile-box__menu .sub-menu .menu-item {
	border-color: #B8C2CC;
}

.mobile-box__link {
	display: flex;
	justify-content: center;
	height: 4.1rem;
	padding-top: 1rem;
	border: .1rem solid rgba(var(--color-green-firm), 1);
	border-radius: .3rem;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1;
	text-align: center;
	color: rgba(var(--color-green-text), 1);
}

.mobile-box__link+.mobile-box__link {
	margin-top: 1rem;
}

.mobile-box__btn {
	width: 100%;
	height: 3.9rem;
	font-size: 1.6rem;
	margin-top: 1rem;
}

/*--------------------------------------------
Адаптив
--------------------------------------------*/

@media (max-width: 1399px) {

	.header__info,
	.header__contacts {
		gap: 2rem;
	}

	.header__menu {
		gap: .5rem;
	}

	.header__menu > .menu-item > a {
		padding-left: 1.2rem;
		padding-right: 1.2rem;
	}

	.header__contacts-item {
		padding-left: 2rem;
	}

	.banner-item__content {
		padding: 5rem 3.4rem 5rem 5rem;
	}

	.banner-slider__pagination {
		left: 6rem !important;
	}

	.banner-item__title {
		font-size: 5rem;
		line-height: 1.25;
	}

	.about__descr,
	.about__services {
		padding-top: 1.5rem;
	}

	.about__img {
		padding-top: 0;
	}

	.companies {
		margin-top: 0;
		margin-bottom: 0;
		padding-top: 6rem;
		padding-bottom: 6rem;
		background-size: cover;
	}

	.companies__title {
		margin-bottom: 5rem;
	}

	.features {
		margin-bottom: 4rem;
	}

	.get-questions {
		margin-bottom: 4rem;
	}

	.get-questions__img {
		position: absolute;
		top: 50%;
		right: 60px;
		transform: translateY(-50%);
	}

	.form_offset {
		padding-left: 3rem;
	}

	.news-anons {
		margin-bottom: 5rem;
	}

	.footer__info {
		height: auto;
		flex-direction: column;
	}

	.footer__logo-holding {
		padding-top: 3rem;
		padding-left: 0;
		border-top: .1rem solid #A1A7AD;
		border-left: 0;
	}

}

@media (max-width: 1199px) {

	:root {
		--grid-gap:      2rem;
		--header-height: 6.2rem;
	}

	.header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 2000;
	}

	.header_active {
		box-shadow: 0 0 1rem 0 rgba(0,0,0,.1);
	}

	.header_bg.header_active {
		box-shadow: none;
	}

	.header_open {
	    height: 100%;
	    overflow: scroll;
	    background: #fff;
	}

	.header__inner {
		height: auto;
		padding: 1rem 0;
	}

	.header__info {
		display: none;
	}

	.burger {
		display: flex;
	}

    .body {
        padding-top: var(--header-height);
    }

    .banner-slider__item {
    	height: 40rem;
    }

    .banner-item__img {
    	height: 100%;
    	object-fit: cover;
    }

    .banner-item__content {
        padding: 6rem 3rem 5rem 3.6rem;
    }

	.banner-item__title {
		max-width: 46.4rem;
        font-size: 5rem;
        line-height: 1.25;
    }

	.banner-slider__pagination {
		bottom: 4.6rem !important;
        left: 3rem !important;
    }

    .banner-slider__nav {
    	bottom: 3rem;
    	right: 3rem;
    }

    .about {
    	margin: 0;
    	padding: 4.4rem 0 5rem;
    	overflow: hidden;
    	background-position: 20rem top;
    }

    .about__descr-title {
		font-size: 3.2rem;
		line-height: 4.3rem;
    }

    .col-4_text {
    	grid-column: span 7 / auto;
    }

    .col-4_img {
    	position: absolute;
    	top: -4.4rem;
    	right: -8.8rem;
    }

    .about__descr {
    	gap: 2rem;
    }

    .about__services {
    	padding-left: 3rem;
    }

    .aservice-item__title {
    	font-size: 2.8rem;
    	line-height: 3.8rem;
    }

    .about__descr {
        padding-top: 0;
    }

    .about__services {
    	padding-top: 1.3rem;
    }

    .about__img {
    	padding-top: 2.5rem;
    }

    .services .col-4,
    .services .col-8 {
    	grid-column: span 6 / auto;
    }

    .services__stat {
    	width: calc(100% + 1rem);
    	padding: 4rem 3rem 3rem;
    }

	.services__anons {
	    width: calc(100% + 1rem);
	    left: -1rem;
	    padding: 4rem 2rem 3rem 3rem;
	}

	.services__stat-title {
		margin-bottom: 2rem;
	}

	.stat-item__value {
		font-size: 5rem;
		line-height: 6.7rem;
	}

	.companies {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }

    .companies__title {
        margin-bottom: 3.3rem;
    }

    .companies__list-item {
    	width: calc((100% - var(--companies-list-gap))/2);
    }

    .features__inner {
    	padding: 5rem 3rem;
    }

	.features__list {
	    --features-list-row-gap: 3rem;
	    --features-list-column-gap: 2rem;
	}

	.get-questions__inner {
		padding: 5rem 4rem 3rem;
	}

	.get-questions__title {
		margin-bottom: 2rem;
	}

	.licenses {
		margin-bottom: 5rem;
	}

	.licenses__title {
		margin-bottom: 4rem;
	}

	.licenses-slider-wrp {
		--licenses-slider-padding: 0;
	}

	.licenses-slider__nav {
		display: none !important;
	}

	.news-anons__title {
		margin-bottom: 4rem;
	}

	.news-grid {
	    --news-grid-row-gap: 2rem;
	    --news-grid-column-gap: 2rem;
	}

	.footer__inner {
		padding: 3rem 0;
	}

	.footer__info {
		gap: 2.5rem;
	}

	.footer__logo-holding {
		padding-top: 2.5rem;
	}

	.footer__contacts {
		min-width: 14rem;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: 2.5rem;
	}

	.footer__contacts-text {
		gap: 2rem;
	}

	.footer__contacts-btn {
		flex-shrink: 0;
	}

	.footer_navs {
		justify-content: center;
		padding-right: 0;
	}

	.to-top {
		bottom: 2rem;
		right: 2rem;
	}

	.rop-steps__item {
		width: 18rem;
		height: 18rem;
	}

	.rstep-item__icon {
		width: 10rem;
		height: 10rem;
	}

	.rstep-item__icon-img {
		max-width: 6rem;
		max-height: 6rem;
	}

    .service-page,
    .company-page,
    .news-page {
    	padding-bottom: 8rem;
    }

	.company-gallery {
	    padding-right: 3rem;
	}

	.company-card__info {
		flex-direction: column;
		gap: 2rem;
	}

	.news-one+.news-relative {
    	margin-top: 6rem;
	}

	.ecobox-points {
	    --ecobox-points-height: 44rem;
	}

	.get-questions .form-note {
	    padding: 3.5rem 12rem 4rem 4rem;
	    margin: -5rem -4rem -4rem;
	    background: linear-gradient(90deg, #E8EBED 50%, rgba(232, 235, 237, 0) 100%);
	}

}

@media (max-width: 991px) {

    .about {
        background-position: -6rem top;
    }

    .news-slider .swiper-wrapper {
    	flex-wrap: nowrap;
    	gap: 0;
    }

    .news-slider .swiper-slide {
    	width: 100%;
    }

    .footer__logo .logo,
    .footer__logo-holding-img {
    	max-width: 16rem;
    }

    .footer__info {
    	gap: 2rem;
    }

    .footer__logo-holding {
    	padding-top: 2rem;
    }

    .footer__inner {
    	gap: 2.5rem;
    }

    .footer_navs {
        gap: 2rem;
    }

    .footer__contacts {
    	padding-left: 2rem;
    }

    .breadcrumbs {
    	margin-bottom: 2rem;
    }

    .main-title {
    	font-size: 4rem;
    	line-height: 1.25;
    }

    .rop-title {
    	margin-bottom: 2rem;
    }

    .rop-content__title {
    	margin-bottom: 2.5rem;
    	font-size: 3rem;
    	line-height: 1.25;
    }

    .rop-content__text {
    	padding: 0;
    }

    .rop-content__descr,
    .rop-content__features {
    	padding-top: 1.5rem;
    	padding-bottom: 1.5rem;
    }

    .rop-content__features {
    	padding-left: 3rem;
    }

    .rop-flist__item {
    	font-size: 1.6rem;
    	line-height: 1.35;
    }

    .rop-content__features-list {
    	gap: 3rem;
    }

    .rop-flist__item:before {
    	font-size: 3rem;
    }

    .rop-content+.rop-steps {
    	margin-top: 5rem;
    }

    .rop-steps {
    	gap: 2rem;
    }

    .rstep-item__sep {
    	display: none;
    }

	.service-page,
	.company-page,
	.news-page {
        padding-bottom: 6rem;
    }

    .util-title {
    	margin-bottom: 3rem;
    }

    .util-descr {
    	margin-bottom: 3rem;
    	padding-left: 0;
    }

    .util-directions {
    	flex-wrap: wrap;
    	row-gap: 2rem;
    }

	.util-directions__item {
	    width: calc((100% - 2 * var(--util-directions-gap)) / 3);
	}

	.util-item__preview {
		margin-bottom: 1rem;
	}

	.util-item__title {
		line-height: 1.25;
	}

	.util-directions+.util-clients {
	    margin-top: 4rem;
	}

	.util-clients__title {
		margin-bottom: 3rem;
	}

	.util-clients__list {
		flex-wrap: wrap;
	}

	.clients-list__item {
	    width: calc((100% - 2 * var(--util-clients-list-gap)) / 3);
	    height: 12.6rem;
	}

	.ecobox-descr .grid .col-4,
	.ecobox-descr .grid .col-8 {
		grid-column: span 12 / auto;
	}

	.ecobox-descr__preview {
		height: 30rem;
	}

	.ecobox-descr__preview-img {
	    width: 100%;
	    height: 100%;
	    object-fit: cover;
	}

	.ecobox-points {
    	--ecobox-points-height: 40rem;
	}

	.ecobox-points__address-item {
	    padding: 1rem 1.5rem 1rem 1.5rem;
	}

	.ecobox-descr+.ecobox-points {
	    margin-top: 3rem;
	}

	.company-title {
		margin-bottom: 4rem;
	}

	.company-gallery {
		padding-right: 1rem;
	}

	.company-card__logo {
		width: auto;
	}

	.company-card__features-item {
		padding-top: 3rem;
		padding-bottom: 1rem;
	}

	.cfeature-item__info-value,
	.company-effectivity__data i {
		font-size: 5rem;
		line-height: 1.25;
	}

	.company-card-double {
		flex-direction: column;
	}

	.company-card-double .company-card {
    	width: 100%;
	}

	.company-card__text br {
		display: none;
	}

	.company-card__info,
	.company-card-double .company-card__info {
        gap: 1.5rem;
    }

    .news-title {
    	margin-bottom: 4rem;
    }

    .news-grid__item {
    	width: calc((100% - var(--news-grid-column-gap))/2);
    }

    .news-one .grid {
    	gap: 1rem;
    }

    .news-one .grid .col-5,
    .news-one .grid .col-7 {
    	grid-column: span 12 / auto;
    }

    .news-one__preview {
    	height: 30rem;
    }

    .news-one__preview-img {
    	width: 100%;
    	height: 100%;
    	object-fit: cover;
    }

    .news-one__date {
    	margin-bottom: .8rem;
    }

    .news-one+.news-relative {
        margin-top: 4rem;
    }

}

@media (max-width: 767px) {

	:root {
    	--header-height: 5.4rem;
    }

	.col-1,
	.col-2,
	.col-3,
	.col-4,
	.col-5,
	.col-6,
	.col-7,
	.col-8,
	.col-9,
	.col-10,
	.col-11,
	.col-12 {
		grid-column: span 12 / auto !important;
	}

	.logo {
		width: auto;
		height: 3.4rem;
	}

	.burger,
	.burger__btn {
		height: 3.4rem;
	}

	.banner-slider__item {
		height: 16rem;
	}

	.banner-item__content {
		padding: 2.2rem 1.4rem 2rem;
	}

	.banner-item__title {
		max-width: calc(100% - 10rem);
		font-style: italic;
		font-weight: 700;
		font-size: 2rem;
		line-height: 2.4rem;
	}

	.banner-item__logos {
		width: 10rem;
	}

	.banner-item__logos-acron,
	.banner-item__logos-holding {
		width: 10rem;
	}

	.banner-item__logos-item {
		padding: 0;
	}

	.banner-slider .swiper-wrapper {
		padding-bottom: 2.6rem;
	}

	.banner-slider__nav {
		width: 100%;
		height: 1.6rem;
		bottom: 0;
		right: 0;
	}

	.banner-slider__nav-btn {
		width: 1.6rem;
		height: 1.6rem;
	}

	.banner-slider__nav-icon {
	    width: 1.6rem;
	    height: .9rem;
	}

	.banner-slider__pagination {
		justify-content: center;
        bottom: .5rem !important;
        left: 2rem !important;
        width: calc(100% - 4rem) !important;
        height: .6rem;
        gap: .5rem;
        z-index: 100;
    }

    .banner-slider__pagination .swiper-pagination-bullet {
    	width: .6rem !important;
    	height: .6rem !important;
    	background: rgba(var(--color-blue-firm), .5) !important;
    }

    .banner-slider__pagination .swiper-pagination-bullet-active {
    	background: rgba(var(--color-blue-firm), 1) !important;
    }

    .about {
        padding: 3rem 0 3rem;
        background: none;
    }

    .about__img-img {
    	display: none;
    }

    .about__descr-title {
        font-size: 2.8rem;
        line-height: 3.8rem;
    }

    .about__descr {
    	gap: 1.5rem;
    }

    .about__descr-text {
    	padding-left: 0;
    }

    .about__services {
    	padding-top: 1rem;
    	padding-left: 0;
    }

    .aservice-item__title {
    	margin-left: 0;
    }

    .services .grid {
    	grid-gap: 0;
    }

    .services__stat,
    .services__anons {
    	width: 100%;
    	padding: 3rem 1.5rem 2rem;
    }

    .services__anons {
    	left: 0;
    }

    .companies {
        padding-top: 4rem;
        padding-bottom: 3rem;
    	background: none;
    }

    .companies__title {
    	margin-bottom: 2rem;
    	font-size: 2.4rem;
    	line-height: 3.2rem;
    }

    .companies__list-item {
    	height: 10rem;
    	border-radius: .8rem;
		background: linear-gradient(180deg, #FFFFFF 0%, #EBEBEB 100%);
		box-shadow: 0 .2rem .3rem rgba(0, 0, 0, 0.2);
    }

    .companies__list {
    	gap: .5rem;
    }

    .company-item__logo {
    	width: auto;
    	height: auto;
    	max-width: 20rem;
    	max-height: 7.8rem;
    }

	.companies__list-item,
	.features__list-item {
		width: 100%;
	}

	.features {
		margin-bottom: 1rem;
	}

	.features__inner {
		padding: 3rem 1.5rem 3rem;
	}

	.features__title {
		margin-bottom: 2rem;
		font-size: 2rem;
		line-height: 2.8rem;
	}

	.feature-item__icon {
		width: 5rem;
	}

	.features__list-item {
		gap: 1rem;
	}

	.feature-item__title {
		font-size: 2.2rem;
		line-height: 3.1rem;
	}

	.feature-item__text {
		padding-left: 0;
	}

    .features__list {
        --features-list-row-gap: 1.5rem;
    }

    .get-questions {
    	margin-bottom: 3rem;
    }

    .get-questions__inner {
    	padding: 3rem 1.5rem 2rem;
    }

    .get-questions__title {
    	margin-bottom: 1rem;
    	font-size: 2.4rem;
    	line-height: 3.2rem;
    }

    .form__descr {
    	margin-bottom: 1rem;
    	font-size: 1.4rem;
    	line-height: 1.8rem;
    }

    .text-field {
    	height: 3.8rem;
    }

    .form_offset {
    	padding-left: 0;
    }

    .submit-field-wrp {
    	flex-direction: column;
    	gap: 1rem;
    	margin-top: 0;
    }

	.get-questions__form {
		width: 100%;
	}

	.get-questions__img {
		display: none;
	}

	.licenses__title {
		margin-bottom: 2.8rem;
    	font-size: 2.4rem;
    	line-height: 3.2rem;
	}

	.licenses {
		margin-bottom: 3rem;
	}

	.news-anons {
		margin-bottom: 3rem;
	}

	.news-anons__title {
		margin-bottom: 2rem;
    	font-size: 2.4rem;
    	line-height: 3.2rem;
	}

	.footer__inner {
		justify-content: center;
		padding: 2rem 0 2rem;
	}

	.footer_navs,
	.footer__contacts {
		display: none;
	}

	.footer__info {
		gap: 1.5rem;
	}

	.footer__logo-holding {
		padding-top: 1.4rem;
	}

	.footer__logo .logo,
	.footer__logo-holding-img {
		width: 16rem;
		max-width: none;
	}

	.breadcrumbs {
		margin-bottom: 1rem;
	}

    .main-title {
        font-size: 2.8rem;
    }

	.rop-title,
	.util-title {
		margin-bottom: 2.5rem;
	}

	.rop-content {
		flex-direction: column;
		gap: 2.5rem;
	}

	.rop-content__descr,
	.rop-content__features {
		width: 100%;
		padding: 0;
	}

	.rop-content__title {
		font-size: 2.5rem;
	}

	.rop-content__features {
		border-left: none;
	}

	.rop-content__features-list {
		gap: 2rem;
	}

	.rop-flist__item {
		gap: .5rem;
	}

	.rop-content+.rop-steps {
        margin-top: 3.5rem;
    }

	.service-page,
	.company-page,
	.news-page {
        padding-bottom: 4rem;
    }

	.util-descr {
        margin-bottom: 2.5rem;
    }

    .util-directions__item {
        width: calc((100% - var(--util-directions-gap)) / 2);
    }

    .util-item__title {
        font-size: 1.6rem;
    }

	.util-directions+.util-clients {
        margin-top: 3rem;
    }

    .clients-list__item {
        width: calc((100% - var(--util-clients-list-gap)) / 2);
        height: 10rem;
    }

	.ecobox-title {
		margin-bottom: 2.5rem;
	}

	.ecobox-descr+.ecobox-points {
	    margin-top: 2.5rem;
	}

	.ecobox-points {
		--ecobox-points-height: 22.1rem;
	}

	.ecobox-points .grid {
		gap: 0;
	}

	.ecobox-points .grid .col-8 {
		order: 1;
	}

	.ecobox-points .grid .col-4 {
		order: 2;
	}

    .ecobox-points__address-item {
        padding: 1rem 1.5rem .8rem 1rem;
    }

    .company-title {
    	margin-bottom: 2.5rem;
    }

    .company-page .grid .col-7 {
    	order: 1;
    }

    .company-page .grid .col-5 {
    	order: 2;
    }

    .company-gallery {
    	padding-right: 0;
    }

    .cfeature-item__title {
    	margin-bottom: 1.5rem;
    	font-size: 1.6rem;
    }

    .cfeature-item__info-um,
    .company-effectivity__data span {
    	font-size: 1.6rem;
    	line-height: 1;
    }

    .cfeature-item__info-value,
    .company-effectivity__data i {
    	font-size: 4rem;
    }

    .company-card__services {
    	padding: 2rem;
    }

    .company-card__features-item {
        padding-top: 2rem;
        padding-bottom: 0;
    }

    .company-gallery__controls {
    	margin-top: 1rem;
    }

    .company-slider__nav {
    	height: 1.6rem;
    }

    .company-slider__nav-btn {
    	width: 1.6rem;
    	height: 1.6rem;
    	background: #fff;
    }

	.company-slider__pagination {
	    gap: .5rem !important;
	    left: 1.6rem !important;
	    width: calc(100% - 3.2rem) !important;
	    height: .6rem !important;
	}

	.company-slider__pagination .swiper-pagination-bullet {
		width: .6rem !important;
		height: .6rem !important;
	}

	.company-effectivity {
		padding: 2rem;
	}

	.news-title {
		margin-bottom: 2.5rem;
	}

	.news-one+.news-relative {
        margin-top: 3rem;
    }

    .news-relative__title {
    	margin-bottom: 3rem;
    }

    .submit-field {
    	width: 100%;
    }

	.wpcf7-spinner {
	    top: 1.1rem;
	    right: 1.5rem;
	}

    .get-questions .form-note {
        padding: 0;
        margin: -1.5rem 0 0;
        background: none;
    }

}

@media (max-width: 575px) {

    .about__descr-btn,
    .aservice-item__btn {
    	width: 100%;
    }

	.news-more {
		justify-content: flex-start;
		margin-top: 2rem;
	}

	.news-more__btn {
		width: 100%;
	}

	.rop-steps__item {
		width: 15rem;
		height: 15rem;
	}

	.rstep-item__title {
		left: 0;
		font-size: 1.5rem;
	}

	.rstep-item__icon {
		width: 8rem;
		height: 8rem;
	}

    .rstep-item__icon-img {
        max-width: 5rem;
        max-height: 5rem;
    }

    .ecobox-descr__preview {
    	width: 100%;
    	height: auto;
    	aspect-ratio: 450 / 276;;
    }

    .news-grid__item {
        width: 100%;
    }

    .pages {
    	margin-top: 2rem;
    }

    .pages a,
    .pages__current {
    	min-width: 3rem;
    	height: 3rem;
    	line-height: 3rem;
    }

    .company-card__btns {
    	flex-direction: column;
    }

    .company-card__btns .btn {
    	width: 100%;
    }

    .news-one__preview {
    	width: 100%;
    	height: auto;
    	aspect-ratio: 450 / 276;
    }

    .news-relative__title {
    	margin-bottom: 2.5rem;
    }

	.service-page,
	.company-page,
	.news-page {
        padding-bottom: 3rem;
    }

    .popup__close {
    	top: 1rem;
    	right: 1rem;
    }

	.form-note {
		padding: 0;
		font-size: 2.2rem;
	}

}
