/*
Tamplate Name: Greenline
*/

@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300%3b400%3b500%3b600%3b700&family=Oswald:wght@400%3b600%3b700&family=Roboto:wght@400&display=swap);

*{margin:0;padding:0}

*,:after,:before{
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box}

:active,:focus{
	outline:0}

a:active,a:focus{
	outline:0}

aside,footer,header,nav{
	display:block}

body{
	min-height:100vh;
	min-width:100%;
	max-width:100vw;
	overflow-x:hidden}

button,input,textarea{
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit}

input::-ms-clear{
	display:none}

button{
	cursor:pointer;
	border:none;
	background:0 0}

button::-moz-focus-inner{
	padding:0;
	border:0}

a,a:hover,a:visited{
	text-decoration:none}

ol li,ul li{
	list-style:none;
	line-height:1.5;
	padding-left:24px}

ol li:not(:last-child),ul li:not(:last-child){
	margin-bottom:8px}

ol,ul{
	padding:0 16px}

ol:not(:last-child),ul:not(:last-child){
	margin-bottom:24px}

ul li{
	position:relative}

ul li::before{
	content:"";
	position:absolute;
	width:4px;
	height:4px;
	top:50%;
	left:0;
	transform:translate(0,-50%);
	border-radius:50%;
	background:var(--green)}

ol{
	counter-reset:ol-counter}

ol li{
	position:relative}

ol li::before{
	counter-increment:ol-counter;
	content:counter(ol-counter) ".";
	position:absolute;
	left:0;
	top:0}

img{
	vertical-align:top}

h1,h2,h3,h4,h5,h6{
	font-size:inherit;
	font-weight:400}

:root{
	--app-height:100%;
	--white:#fff;
	--black:#161616;
	--gray:#5C5C5C;
	--light-gray:#F7F7F7;
	--green:#183F37;
	--light-green:#76FB92}

body{
	font-family:Inter,sans-serif;
	font-weight:400;
	color:var(--black)}

body._lock{
	overflow:hidden}

.wrapper{
	display:flex;
	flex-direction:column;
	min-height:100vh;
	min-width:320px;
	max-width:100vw;
	height:100%;
	overflow-x:hidden;
	position:relative;
	padding-top:96px}

.container{
	max-width:1414px;
	width:100%;
	margin:0 auto;
	padding:0 15px}

.page{
	flex:1 1 auto;
	display:flex;
	flex-direction:column}

.h1{
	font-family:Oswald,sans-serif;
	font-size:3rem;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.2;
	color:var(--green)}

.h2{
	font-family:Oswald,sans-serif;
	font-size:2.5rem;
	font-weight:600;
	line-height:1.2;
	text-transform:uppercase;
	color:var(--green)}

.h3{
	font-family:Oswald,sans-serif;
	font-size:1.5rem;
	font-weight:600;
	line-height:1.2;
	text-transform:uppercase;
	color:var(--green)}

.btn-light{
	font-weight:600;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:10px 12px;
	border-radius:500px;
	background:var(--light-green);
	color:var(--green);
	transition:all .5s ease;
	border:3px solid transparent}

.btn-light span{
	width:36px;
	height:36px;
	border-radius:50%;
	background:var(--green);
	display:flex;
	align-items:center;
	justify-content:center}

.btn-light svg{
	width:20px;
	height:20px;
	stroke:var(--light-green)}

.btn-light:active{
	border-color:#45d279}

.btn-green{
	font-weight:600;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:10px 12px;
	border-radius:500px;
	background:var(--green);
	color:var(--white);
	transition:all .5s ease;
	border:3px solid transparent}

.btn-green span{
	width:36px;
	height:36px;
	border-radius:50%;
	background:var(--white);
	display:flex;align-items:center;
	justify-content:center}

.btn-green svg{
	width:20px;
	height:20px;
	stroke:var(--green)}

.btn-green:active{
	border-color:#7f9f9a}

.btn-simple{
	font-weight:500;
	color:var(--green);
	display:flex;
	align-items:center;
	gap:8px;
	letter-spacing:-1.5%}

.btn-simple span{
	width:24px;
	height:24px;
	border-radius:50%;
	background:var(--green);
	display:flex;
	align-items:center;
	justify-content:center}

.btn-simple svg{
	width:70%;
	height:70%;
	stroke:var(--white)}

.modal{
	position:fixed;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.4);
	top:0;
	left:0;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:all .8s ease;
	overflow-y:auto;
	z-index:1000}

.modal._active{
	opacity:1;
	visibility:visible;
	pointer-events:all}

.modal__wrapper{
	min-height:100vh;
	padding:15px;
	position:relative;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center}

.modal__content{
	max-width:652px;
	width:100%;
	position:relative}

.modal .wpcf7-response-output{
	display:none}

#thanks 
.modal__content{
	max-width:440px}

.thanks{
	padding:32px;
	border-radius:8px;
	background:var(--white);
	box-shadow:0 4px 8px rgba(0,0,0,.1)}

.thanks__title{
	margin-bottom:8px;
	color:var(--green);
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:600;
	text-transform:uppercase;
	text-align:center}

.thanks__text{
	font-size:.875rem;
	line-height:1.5;
	opacity:.7;
	margin-bottom:24px;
	text-align:center}

.thanks__btn{
	width:100%}

.navigation{
	display:flex;
	align-items:center;
	gap:8px}

.navigation__next,.navigation__prev{
	width:48px;
	min-width:48px;
	height:48px;
	background:var(--green);
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	transition:all .5s ease}

.navigation__next svg,.navigation__prev svg{
	width:60%;
	height:60%;
	stroke:var(--white)}

.navigation__next.swiper-button-disabled,.navigation__prev.swiper-button-disabled{
	opacity:.5;
	pointer-events:none}

.navigation__next:active,.navigation__prev:active{
	border-color:#7f9f9a}

.navigation__prev svg{
	transform:rotate(180deg)}

.pagination{
	display:flex;
	align-items:center;
	gap:8px}

.pagination .swiper-pagination-bullet{
	width:8px;
	height:8px;
	border-radius:50%;
	background:rgba(0,0,0,.5);
	margin:0!important}

.pagination .swiper-pagination-bullet-active{
	background:#000}

.input__label{
	font-size:.875rem;
	font-weight:600;
	margin-bottom:8px}

.input__label span{
	color:#f14444}

.input input,.input textarea{
	padding:12px;
	background:var(--light-gray);
	border-radius:8px;
	border:1px solid #ececec;
	color:#636568;
	width:100%}

.input input::-moz-placeholder,.input textarea::-moz-placeholder{
	opacity:1}

.input input::placeholder,.input textarea::placeholder{
	opacity:1}

.input textarea{
	height:119px}

.checkbox{
	padding-left:30px;
	position:relative;
	cursor:pointer;
	font-size:.75rem;
	line-height:1.5}

.checkbox p{
	opacity:.7}

.checkbox::after,.checkbox::before{
	content:"";
	position:absolute;
	left:0;
	top:3px;
	width:18px;
	height:18px;
	transition:all .5s ease}

.checkbox::before{
	border:1px solid #23242a;
	border-radius:4px}

.checkbox::after{
	background:url(assets/img/icons/icons.svg#check) center/70% no-repeat,var(--green);
	opacity:0;
	visibility:hidden;
	transform:scale(0);
	border-radius:4px}

.checkbox.active::after{
	opacity:1;
	visibility:visible;
	transform:scale(1)}

.checkbox input{
	display:none}

.form{
	position:relative;
	padding:32px;
	border-radius:8px;
	background:var(--white);
	box-shadow:0 4px 8px rgba(0,0,0,.1);
	z-index:1}

.form__title{
	color:var(--green);
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:600;
	text-transform:uppercase;
	margin-bottom:8px}

.form__text{
	font-size:.875rem;
	line-height:1.5;
	opacity:.7;
	margin-bottom:24px}

.form__block{
	display:flex;
	flex-wrap:wrap;
	margin:0 -8px 24px}

.form__input{
	flex:1 1 auto;
	padding:0 8px}

.form__input.input-100{
	flex:1 1 100%}

.form__input.input-50{
	flex:1 1 50%}

.form__input:not(:last-child){
	margin-bottom:24px}

.form__checkbox{
	margin-bottom:24px}

.form__submit{
	width:100%;
	overflow:hidden}

.form__submit.sending{
	position:relative;
	pointer-events:none}

.form__submit.sending::after{
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	top:0;left:0;
	background:url(assets/img/loading.gif) center/20px no-repeat,var(--green)}

.form .wpcf7-checkbox{
	display:none!important}

.range-single{
	--range-height:2px;
	--thumb-width:16px;
	--thumb-height:16px;
	height:var(--range-height);
	position:relative;
	background:var(--green)}

.range-single__slider{
	position:relative;
	height:100%;
	z-index:1;
	margin:0 calc(var(--thumb-width)/ 2)}

.range-single__thumb{
	position:absolute;
	z-index:3;
	top:50%;
	left:0;
	transform:translate(calc(var(--thumb-width)/ -2),-50%);
	width:var(--thumb-width);
	height:var(--thumb-height);
	border-radius:50%;
	background:var(--light-green);
	box-shadow:0 4px 4px rgba(0,0,0,.15);
	transition:background .1s linear}

.range-single input{
	position:absolute;
	width:100%;
	height:var(--range-height);
	z-index:2;
	-webkit-appearance:none;
	opacity:0;
	cursor:pointer;
	pointer-events:none}

.range-single input::-webkit-slider-thumb{
	width:var(--thumb-width);
	height:var(--thumb-height);
	border-radius:50%;
	border:none;
	-webkit-appearance:none;
	background:red;
	pointer-events:all}

.range-single input::-moz-range-thumb{
	height:var(--thumb-height);
	width:var(--thumb-width);
	border-radius:50%;
	background:red;
	border:none;
	pointer-events:all}

.range-single input::-moz-range-track{
	width:100%;
	height:var(--range-height);
	background:#000;
	border:none;
	border-radius:3px}

.pages{
	display:flex;
	align-items:center;
	justify-content:center}

.pages__next,.pages__prev{
	border-radius:50%;
	width:40px;
	height:40px;
	display:flex;
	align-items:center;
	justify-content:center;
	transition:all .5s ease}

.pages__next svg,.pages__prev svg{
	width:20px;
	height:20px;
	stroke:var(--green);
	transition:all .5s ease}

.pages__prev{
	margin-right:2px}

.pages__prev svg{
	transform:rotate(180deg)}

.pages__num{
	font-size:.875rem;
	font-weight:500;
	color:var(--black);
	opacity:.7;
	width:40px;
	height:40px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	transition:all .5s ease}

.pages__num.active{
	background:var(--green);
	color:var(--white);
	opacity:1}

.pages__num:not(:last-child){
	margin-right:2px}

.pages__next{
	margin-left:2px}

.breadcrumbs_green{
	background:var(--green)}

.breadcrumbs_green .breadcrumbs__item{
	color:var(--white);
	opacity:.5}

.breadcrumbs_green .breadcrumbs__item:not(:last-child)::after{
	-webkit-mask:url(assets/img/icons/icons.svg#arrow2) center/contain no-repeat;
	mask:url(assets/img/icons/icons.svg#arrow2) center/contain no-repeat;
	background:var(--white);
	opacity:.5}

.breadcrumbs_green .breadcrumbs__item:last-child{
	color:var(--white)}

.breadcrumbs__body{
	display:flex;
	align-items:center;
	padding:24px 0}

.breadcrumbs__item{
	font-size:.875rem;
	font-weight:500;
	color:var(--black);
	opacity:.7;
	position:relative;
	transition:all .5s ease}

.breadcrumbs__item:not(:last-child){
	margin-right:24px}

.breadcrumbs__item:not(:last-child)::after{
	content:"";
	position:absolute;
	width:12px;
	height:12px;
	top:50%;
	transform:translate(0,-50%);
	right:-18px;
	background:url(assets/img/icons/icons.svg#arrow2) center/contain no-repeat;
	pointer-events:none}

.breadcrumbs__item:last-child{
	color:var(--green);
	opacity:1;
	overflow:hidden;
	text-overflow:ellipsis;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical}

.article h1,.article h2,.article h3,.article h4{
	font-family:Oswald,sans-serif;
	font-weight:600;
	line-height:1.2;
	text-transform:uppercase;
	color:var(--green);
	margin-bottom:32px}

.article h1{
	font-size:3rem}

.article h2{
	font-size:2.5rem}

.article h3{
	font-size:1.875rem}

.article h4{
	font-size:1.5rem}

.article p{
	line-height:1.5;
	color:var(--black);
	opacity:.7}

.article p:not(:last-child){
	margin-bottom:24px}

.article img{
	max-width:100%;
	border-radius:4px;
	background:url(assets/img/loading.gif) 50% no-repeat;
	margin-bottom:32px}

.article time{
	font-size:.875rem;
	font-weight:500;
	color:var(--green);
	display:inline-block;
	margin-bottom:16px}

.article__duration{
	font-size:.875rem;
	font-weight:500;
	color:var(--green);
	position:relative;
	margin:0 0 16px 24px;
	display:inline-block}

.article__duration::before{
	content:"";
	position:absolute;
	width:4px;
	height:4px;
	top:50%;
	left:-16px;
	transform:translate(0,-50%);
	border-radius:50%;
	background:var(--green)}

.article li{
	color:var(--black);
	opacity:.7}

.header{
	background:var(--green);
	border-bottom:1px solid rgba(255,255,255,.1);
	min-height:96px;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:100}

.header__body{
	padding:24px 0;
	display:flex;
	align-items:center}

.header__logo{
	width:190px;
	height:30px;
	margin-right:32px}

.header__logo img{
	max-width:100%}

.header__menu{
	flex:1 1 auto;
	margin-right:32px}

.header__menu-icon{
	margin-left:32px;
	position:relative;
	display:none;
	z-index:5;
	width:48px;
	min-width:48px;
	height:48px;
	background:var(--light-green);
	border-radius:50%;
	overflow:hidden;
	transition:all .5s ease;
	border:3px solid transparent}

.header__menu-icon span{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	height:1.5px;
	width:16px;
	background:var(--green);
	border-radius:1px}

.header__menu-icon span:nth-child(1){
	top:40%}

.header__menu-icon span:nth-child(2){
	top:60%}

.header__menu-icon._active span:nth-child(1){
	animation:topLineActive .5s ease forwards}

.header__menu-icon._active span:nth-child(2){
	animation:bottomLineActive .5s ease forwards}

.header__menu-icon._inactive span:nth-child(1){
	animation:topLineInactive .5s ease forwards}

.header__menu-icon._inactive span:nth-child(2){
	animation:bottomLineInactive .5s ease forwards}

.header__phones{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	margin-right:32px}

.header__phone{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:10px 12px;
	border-radius:500px;
	background:var(--light-green);
	color:var(--green);
	transition:all .5s ease;
	border:3px solid transparent;
	font-weight:600;
	font-size:.875rem;
	white-space:nowrap}

.header__phone:not(:first-child){
	color:var(--white);
	background:0 0;
	border:1px solid rgba(255,255,255,.15)}

.header__phone:not(:first-child) svg{
	fill:var(--white)}

.header__phone:active{
	border-color:#45d279}

.header__phone svg{
	width:18px;
	height:18px;
	margin-right:8px;
	fill:var(--green)}

.menu__list{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-wrap:wrap;
	padding:0}

.menu__item{
	padding:0;
	list-style:none}

.menu__item::before{
	display:none}

.menu__item:not(:last-child){
	margin:0 32px 0 0}

.menu__link{
	font-family:Roboto,sans-serif;
	color:var(--white);
	transition:all .5s ease;
	position:relative;
	white-space:nowrap}

.menu__link::after{
	content:"";
	position:absolute;
	top:120%;
	left:0;
	width:100%;
	height:1px;
	background:var(--light-green);
	opacity:0;
	transform:translate(0,10px);
	transition:all .5s ease}

.lang__btn{
	font-size:.875rem;
	font-weight:500;
	color:var(--white);
	opacity:.5;
	transition:all .5s ease}

.lang__btn.active{
	opacity:1}

.lang__btn:not(:last-child){
	margin-right:8px}

@keyframes topLineActive{
	0%{top:40%;transform:translate(-50%,-50%) rotate(0)}
	30%{top:50%;transform:translate(-50%,-50%) rotate(0)}
	100%{top:50%;transform:translate(-50%,-50%) rotate(-45deg)}
}

@keyframes bottomLineActive{
	0%{top:60%;transform:translate(-50%,-50%) rotate(0)}
	30%{top:50%;transform:translate(-50%,-50%) rotate(0)}
	100%{top:50%;transform:translate(-50%,-50%) rotate(45deg)}
}

@keyframes topLineInactive{
	0%{top:50%;transform:translate(-50%,-50%) rotate(-45deg)}
	30%{top:50%;transform:translate(-50%,-50%) rotate(0)}
	100%{top:40%;transform:translate(-50%,-50%) rotate(0)}
}

@keyframes bottomLineInactive{
	0%{top:50%;transform:translate(-50%,-50%) rotate(45deg)}
	30%{top:50%;transform:translate(-50%,-50%) rotate(0)}
	100%{top:60%;transform:translate(-50%,-50%) rotate(0)}
}

.promo{
	background:var(--green);
	margin-bottom:47px}

.promo__body{
	display:flex}

.promo__info{
	flex:1 1 55%;
	padding:112px 0;
	display:flex;
	flex-direction:column;
	align-items:flex-start}

.promo__title{
	font-family:Oswald,sans-serif;
	font-size:3.75rem;
	font-weight:600;
	line-height:1.3;
	margin-bottom:24px;
	color:var(--white);
	max-width:600px;
	text-transform:uppercase}

.promo__title span{
	color:var(--light-green)}

.promo__desc{
	font-size:1.25rem;
	color:var(--white);
	opacity:.7;
	line-height:1.5;
	margin-bottom:24px;
	max-width:600px}

.promo__desc p:not(:last-child){
	margin-bottom:24px}

.promo__media{
	flex:1 1 45%}

.promo__image,.promo__video{
	border-radius:8px;
	overflow:hidden;
	position:relative;
	width:100%;
	height:100%;
	transform:translate(0,55px);
	min-height:320px;
	max-width:616px;
	margin:0 auto;
	background:url(assets/img/loading.gif) 50% no-repeat}

.promo__image img,.promo__image video,.promo__video img,.promo__video video{
	position:absolute;
	top:0;left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.promo__play{
	width:56px;
	height:56px;
	border-radius:50%;
	background:var(--light-green);
	display:flex;
	align-items:center;
	justify-content:center;
	position:absolute;
	bottom:24px;
	right:24px}

.promo__play svg{
	width:24px;
	height:24px}

.intro_reverse .intro__info{
	padding:0 80px 0 0}

.intro_gray{
	background:var(--light-gray)}

.intro__body{
	display:flex;
	align-items:center;
	padding:128px 0}

.intro__image{
	flex:1 1 50%;
	border-radius:8px;
	overflow:hidden;
	max-width:650px;
	width:100%;
	position:relative;
	aspect-ratio:652/528}

.intro__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

/* Делаем ссылку блочной, чтобы она вела себя как контейнер */
.intro__image-link {
    display: block; 
    text-decoration: none; /* Убираем подчеркивание, если вдруг есть */
    line-height: 0; /* Убираем возможный отступ снизу под картинкой */
    width: 100%; /* Если нужно, чтобы ссылка занимала всю ширину родителя */
    height: 100%; /* Если нужно, чтобы ссылка занимала всю высоту */
}

/* Убеждаемся, что картинка внутри ссылки отображается корректно */
.intro__image-link img {
    display: block;
    width: 100%; /* Или auto, в зависимости от вашей текущей верстки */
    height: auto;
}

/* 1. Настраиваем контейнер ссылки */
.intro__image-link {
    display: block;
    position: relative; /* Обязательно: чтобы позиционировать кнопку внутри */
    overflow: hidden;   /* Чтобы эффекты не вылезали за границы, если нужно */
}
/* Кнопка Play поверх картинки */
/* 2. Рисуем круг (подложка кнопки) */
.intro__image-link::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* Центрируем */
    width: 60px;  /* Размер кнопки */
    height: 60px;
    background-color: rgba(0, 0, 0, 0.6); /* Полупрозрачный черный фон */
    border: 2px solid #fff; /* Белая обводка */
    border-radius: 50%; /* Делаем круг */
    z-index: 5;
    transition: all 0.3s ease; /* Плавная анимация при наведении */
}

/* 3. Рисуем треугольник (значок Play) */
.intro__image-link::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    /* Центрируем и немного сдвигаем вправо, чтобы треугольник визуально стоял ровно */
    transform: translate(-35%, -50%); 
    
    /* Рисуем треугольник через границы (CSS hack) */
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 18px solid #fff; /* Цвет треугольника */
    
    z-index: 6;
    pointer-events: none; /* Чтобы клик проходил сквозь треугольник */
    transition: all 0.3s ease;
}

/* 4. Эффект при наведении курсора */
.intro__image-link:hover::before {
    background-color: rgba(204, 0, 0, 0.8); /* Например, красный цвет YouTube */
    transform: translate(-50%, -50%) scale(1.1); /* Немного увеличиваем */
    border-color: transparent; /* Убираем обводку при наведении (по желанию) */
}

.intro__image-link:hover::after {
    transform: translate(-35%, -50%) scale(1.1); /* Увеличиваем треугольник вместе с кругом */
}

.intro__info{
	flex:1 1 50%;
	padding-left:80px}

.intro__pre-title{
	font-size:.75rem;
	font-weight:600;
	color:var(--green);
	text-transform:uppercase;
	margin-bottom:16px}

.intro__title{
	margin-bottom:24px}

.intro__text{
	font-size:1.125rem;
	line-height:1.5;
	margin-bottom:56px;
	opacity:.7}

.intro__text p:not(:last-child){
	margin-bottom:24px}

.services{
	background:var(--light-gray)}

.services__body{
	padding:128px 0}

.services__pre-title{
	font-size:.75rem;
	font-weight:700;
	color:var(--green);
	margin-bottom:16px;
	text-align:center;
	text-transform:uppercase}

.services__title{
	margin-bottom:24px;
	text-align:center}

.services__text{
	line-height:1.5;
	opacity:.7;
	text-align:center;
	max-width:768px;
	width:100%;
	margin:0 auto 64px}

.services__grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:16px;
	margin-bottom:64px}

.services__btn{
	margin:0 auto}

.card-services{
	background:var(--white);
	box-shadow:0 12px 16px rgba(0,0,0,.08);
	border-radius:8px;
	padding:24px}

.card-services__icon{
	width:64px;
	height:64px;
	display:flex;
	align-items:center;
	margin-bottom:24px}

.card-services__icon img{
	max-width:100%}

.card-services__title{
	margin-bottom:16px;
	color:var(--green);
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:700;
	text-transform:uppercase}

.card-services__text{
	font-family:Roboto,sans-serif;
	line-height:1.5;opacity:.7}

.reasons{
	background:var(--light-gray)}

.reasons__body{
	padding-top:128px;
	padding-bottom:64px}

.reasons__title{
	max-width:768px;
	text-align:center;
	margin:0 auto 24px}

.reasons__text{
	line-height:1.5;
	opacity:.7;
	margin:0 auto 64px;
	max-width:768px;
	text-align:center}

.reasons__grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:16px}

.card-reasons{
	background:var(--white);
	padding:24px;
	box-shadow:0 1px 3px rgba(0,0,0,.1);
	border-radius:8px;
	display:flex;
	flex-direction:column;
	align-items:center}

.card-reasons__number{
	margin-bottom:12px;
	width:87px;
	height:87px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	border:1px solid rgba(24,63,55,.2);
	position:relative;
	color:var(--white);
	font-weight:600}

.card-reasons__number::after{
	content:"";
	position:absolute;
	top:11px;
	left:11px;
	right:11px;
	bottom:11px;
	border-radius:50%;
	background:var(--green)}

.card-reasons__number span{
	z-index:1}

.card-reasons__title{
	font-family:Oswald,sans-serif;
	font-size:1.5rem;
	font-weight:700;
	line-height:1.3;
	margin-bottom:24px;
	color:var(--green);
	text-transform:uppercase;
	text-align:center;
	max-width:360px}

.card-reasons__title span{
	color:#36dd59}

.card-reasons__text{
	opacity:.7;
	line-height:1.5;
	text-align:center;
	max-width:360px}

.offer{
	padding-bottom:128px;
	padding-top:64px;
	background:var(--light-gray)}

.offer_white{
	background:var(--white)}

.offer_img .offer__body{
	padding:64px}

.offer_img .offer__info{
	padding:0 24px 0 0;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start}

.offer_img .offer__graph{
	justify-content:flex-end}

.offer__body{
	display:flex;
	background:var(--green);
	border-radius:8px;
	overflow:hidden}

.offer__info{
	flex:1 1 50%;
	padding:64px}

.offer__title{
	color:var(--white);
	margin-bottom:24px}

.offer__text{
	margin-bottom:24px;
	font-size:1.125rem;
	color:var(--white);
	opacity:.7;
	line-height:1.5}

.offer__text p:not(:last-child){
	margin-bottom:24px}

.offer__graph{
	flex:1 1 50%;
	display:flex;
	justify-content:center}

.offer__decor{
	max-width:460px;
	position:relative;
	width:100%;
	height:100%;
	transform:translate(0,100px);
	margin-top:-100px}

.offer__decor img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover;
	-o-object-position:left;
	object-position:left}

.offer__image{
	position:relative;
	width:100%;
	aspect-ratio:552/322;
	border-radius:8px;
	overflow:hidden}

.offer__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.cases_green{
	background:var(--green)}

.cases_green .cases__body{
	padding-top:64px;
	padding-bottom:128px}

.cases_green .cases__pre-title{
	color:var(--white)}

.cases_green .cases__title{
	color:var(--white)}

.cases_green .cases__text{
	color:var(--white)}

.cases_gray{
	background:var(--light-gray)}

.cases_left .cases__pre-title{
	text-align:left}

.cases_left .cases__title{
	text-align:left;
	margin-inline:0;
	max-width:unset}

.cases_left .cases__text{
	text-align:left;
	margin-inline:0;
	max-width:unset}

.cases__body{
	padding:128px 0 64px}

.cases__pre-title{
	font-size:.75rem;
	font-weight:700;
	line-height:1.5;
	margin-bottom:16px;
	text-align:center;
	color:var(--green);
	text-transform:uppercase}

.cases__title{
	margin:0 auto 24px;
	text-align:center;
	max-width:768px}

.cases__text{
	opacity:.7;
	line-height:1.5;
	text-align:center;
	max-width:768px;
	margin:0 auto 64px}

.cases__grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:16px}

.cases__btn{
	margin:0 auto;
	width:-moz-fit-content;
	width:fit-content;
	margin-top:64px}

.cases__pagination{
margin:64px 0}

.card-cases{
	background:var(--white);
	border-radius:8px;
	box-shadow:0 20px 24px rgba(0,0,0,.08);
	padding:8px}

.card-cases__image{
	display:block;
	width:100%;
	position:relative;
	border-radius:8px;
	overflow:hidden;
	aspect-ratio:434/233;
	margin-bottom:24px;
	background:url(assets/img/loading.gif) 50% no-repeat}

.card-cases__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.card-cases__body{
	padding:0 16px}

.card-cases__title{
	display:block;
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:700;
	color:var(--green);
	margin-bottom:16px;
	text-transform:uppercase}

.card-cases__list{
	margin-bottom:24px;
	padding:0}

.card-cases__item{
	line-height:1.5;
	color:#4d4d4d;
	overflow:hidden;
	text-overflow:ellipsis;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
	padding:0}

.card-cases__item::before{
	display:none}

.card-cases__item:not(:last-child){
	margin-bottom:8px}

.card-cases__item span{
	opacity:1;
	color:#004037;
	font-weight:500}

.card-cases__footer{
	display:flex;
	justify-content:flex-end;
	padding:24px 0;
	border-top:1px solid rgba(0,0,0,.1)}


/* Применяем изменения только внутри секции video-section */
.video-section .card-cases__item,
.video-section .card-cases__item span {
    white-space: normal !important;
    text-overflow: clip !important;
    overflow: visible !important;
    height: auto !important;
}

.team{
	padding-block:128px}

.team__body{
	display:flex;
	align-items:center}

.team__image{
	flex:1 1 50%;
	max-width:652px;
	margin:0 auto}

.team__image picture{
	display:block;
	width:100%;
	aspect-ratio:652/504;
	border-radius:8px;
	overflow:hidden;
	background:url(assets/img/loading.gif) 50% no-repeat}

.team__image img{
	width:100%;
	height:auto}

.team__image figcaption{
	margin-top:16px}

.team__name{
	font-size:1.25rem;
	font-weight:600;
	color:var(--green);
	line-height:1.5}

.team__extra{
	line-height:1.5;
	font-size:1.125rem;
	opacity:.7}

.team__info{
	flex:1 1 50%;
	padding-left:96px}

.team__pre-title{
	font-size:.75rem;
	font-weight:700;
	color:var(--green);
	text-transform:uppercase;
	margin-bottom:16px}

.team__title{
	margin-bottom:24px}

.team__text{
	line-height:1.5;
	opacity:.7}

.team__text p:not(:last-child){
	margin-bottom:24px}

.team__data{
	margin-top:64px}

.data{
	background:var(--green);
	display:flex;
	border-radius:8px;
	box-shadow:-2px 5px 12px rgba(0,0,0,.1),-8px 21px 12px rgba(0,0,0,.09),-18px 47px 30px rgba(0,0,0,.05);
	padding-block:84px}

.data__item{
	flex:1 1 25%;
	padding-inline:24px}

.data__item:not(:last-child){
	border-right:1px solid rgba(255,255,255,.2)}

.data__value{
	color:var(--white);
	margin-bottom:8px;
	text-align:center}

.data__desc{
	color:var(--white);
	opacity:.7;
	line-height:1.5;
	text-align:center}

.feedback{
	background:var(--green);
	position:relative}

.feedback::after{
	content:"";position:absolute;
	top:0;
	right:0;
	width:50%;
	height:100%;
	background:url(assets/img/feedback/decor.svg) left/cover no-repeat}

.feedback__body{
	display:flex;
	gap:64px}

.feedback__info{
	flex:1 1 50%;
	display:flex;
	flex-direction:column;
	justify-content:center}

.feedback__title{
	color:var(--white);
	margin-bottom:32px;
	max-width:580px}

.feedback__text{
	line-height:1.5;
	opacity:.7;
	color:var(--white);
	max-width:580px}

.feedback__form-wrapper{
	flex:1 1 50%;
	display:flex;
	justify-content:flex-end;
	position:relative;
	padding-block:108px}

.feedback__form{
	max-width:570px;
	width:100%;
	padding:46px;
	background:var(--white);
	box-shadow:0 15px 34px rgba(0,0,0,.1);
	border-radius:8px;
	display:flex;
	flex-direction:column;
	position:relative;
	z-index:1}

.feedback__form input{
	flex:1 1 auto;
	width:50px;
	padding-bottom:16px;
	border:none;
	border-bottom:1px solid rgba(22,22,22,.2)}

.feedback__form input::-moz-placeholder{
	color:#161616;
	opacity:.5}

.feedback__form input::placeholder{
	color:#161616;
	opacity:.5}

.feedback__form input:not(:last-of-type){
	margin-bottom:32px}

.feedback__form .wpcf7-form-control-wrap{
	display:block}

.feedback__form .wpcf7-form-control-wrap:not(:last-of-type){
	margin-bottom:32px}

.feedback__btn{
	margin-top:32px;
	width:100%;
	overflow:hidden}

.feedback__btn.sending{
	position:relative;
	pointer-events:none}

.feedback__btn.sending::after{
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background:url(assets/img/loading.gif) center/20px no-repeat,var(--green)}

.feedback .wpcf7-response-output{
	display:none}

.feedback .wpcf7-form-control-wrap{
	display:flex}

.sertificates{
	background:var(--light-gray)}

.sertificates__body{
	padding-block:112px}

.sertificates__pre-title{
	text-transform:uppercase;
	color:var(--green);
	margin-bottom:16px;
	font-size:.75rem;
	font-weight:700}

.sertificates__title{
	max-width:768px;
	margin-bottom:24px}

.sertificates__text{
	max-width:768px;
	line-height:1.5;
	opacity:.7;
	margin-bottom:80px}

.sertificates__slide{
	width:304px!important;
	height:304px!important;
	background:var(--white);
	display:flex!important;
	align-items:center;
	justify-content:center}

.sertificates__image{
	width:170px;
	height:240px;
	position:relative}

.sertificates__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:contain;
	object-fit:contain}

.sertificates__footer{
	display:flex;
	align-items:center;
	margin-top:48px}

.calc{
	background:var(--green);
	position:relative}

.calc_invert{
	background:var(--light-gray)}

.calc_invert::after{
	display:none}

.calc_invert .calc__body{
	flex-direction:row-reverse}

.calc_invert .calc__form{
	justify-content:flex-start}

.calc_invert .calc__info{
	padding-left:80px}

.calc_invert .calc__title{
	color:var(--green)}

.calc_invert .calc__text{
	color:var(--green)}

.calc::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:45%;
	height:100%;
	background:url(assets/img/calc/decor.svg) left/cover no-repeat}

.calc__body{
	display:flex;
	gap:32px;
	padding-block:160px}

.calc__info{
	flex:1 1 50%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start}

.calc__title{
	color:var(--white);
	margin-bottom:32px;
	max-width:560px}

.calc__text{
	margin-bottom:32px;
	line-height:1.5;
	opacity:.7;
	color:var(--white);
	max-width:560px}

.calc__text p:not(:last-child){
	margin-bottom:32px}

.calc__form{
	flex:1 1 50%;
	position:relative;
	z-index:1}

.form-calc{
	display:flex;
	align-items:center;
	justify-content:flex-end}

	.form-calc__body{
		background:var(--white);
		padding:40px 40px 78px;
		max-width:560px;
		width:100%;
		border-radius:8px;
		box-shadow:0 19px 41px rgba(0,0,0,.1)}

	.form-calc__list{
		padding:0}

	.form-calc__item{
		font-weight:500;
		color:#454545;
		display:flex;
		align-items:center;
		justify-content:space-between;
		flex-wrap:wrap;gap:10px;
		padding:18px 20px;
		border-bottom:1px solid rgba(22,22,22,.15)}

	.form-calc__item::before{
		display:none}

	.form-calc__item:not(:last-child){
		margin-bottom:10px}

	.form-calc__item:first-child,.form-calc__item:last-child,.form-calc__item:nth-child(2){
		border:none}

	.form-calc__value{
		font-size:1.375rem;
		font-weight:600;
		color:var(--green)}

	.form-calc__value input{
		text-align:center;
		width:100px;
		padding:5px 10px;
		border:1px solid rgba(22,22,22,.15);
		border-radius:4px}

	.form-calc__range{
		flex:1 1 100%;
		margin:0 -20px}

.contacts{
	background:var(--green);
	flex:1 1 auto;
	display:flex;
	flex-direction:column}

.contacts__container{
	flex:1 1 auto;
	display:flex;
	flex-direction:column}

.contacts__body{
	flex:1 1 auto;
	display:flex;
	align-items:flex-start;
	gap:48px;
	padding-block:64px;
	position:relative;
	overflow:hidden}

.contacts__body::after{
	content:"";
	position:absolute;
	top:120px;
	right:44px;
	width:60%;
	height:100%;
	background:url(assets/img/contacts/decor.svg) left top/cover no-repeat}

.contacts__info{
	flex:1 1 50%}

.contacts__pre-title{
	font-size:.75rem;
	font-weight:600;
	text-transform:uppercase;
	color:var(--white);
	margin-bottom:16px}

.contacts__title{
	margin-bottom:24px;
	color:var(--white)}

.contacts__title span{
	color:var(--light-green)}

.contacts__text{
	font-size:1.125rem;
	color:var(--white);
	opacity:.7;
	line-height:1.5;
	margin-bottom:32px}

.contacts__name{
	font-family:Oswald,sans-serif;
	font-size:1.125rem;
	font-weight:600;
	color:var(--white);
	text-transform:uppercase;
	margin-bottom:16px}

.contacts__list{
	padding:0}

.contacts__item{
	color:var(--white);
	font-weight:500;
	display:flex;
	align-items:center;
	padding:0}

.contacts__item::before{
	display:none}

.contacts__item:not(:last-child){
	margin-bottom:8px}

.contacts__item svg{
	width:20px;
	height:20px;
	margin-right:8px}

.contacts__link{
	color:var(--white);
	font-weight:500}

.contacts__form{
	flex:1 1 50%}

.contacts .wpcf7-response-output{
	display:none}

.intro-green{
	background:var(--green);
	position:relative}

.intro-green::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:50%;
	height:100%;
	background:url(assets/img/about/decor.svg) left/cover no-repeat}

.intro-green__body{
	padding-block:115px}

.intro-green__pre-title{
	font-size:.75rem;
	font-weight:600;
	color:var(--white);
	text-transform:uppercase;
	margin-bottom:16px}

.intro-green__title{
	color:var(--white);
	margin-bottom:24px;
	width:50%}

.intro-green__title span{
	color:var(--light-green)}

.intro-green__text{
	font-size:1.125rem;
	color:var(--white);
	line-height:1.5;
	opacity:.7;
	width:50%}

.service{
	background:var(--green)}

.service__body{
	padding-block:128px;
	display:flex;
	flex-direction:column;
	align-items:center}

.service__pre-title{
	font-size:.75rem;
	font-weight:700;
	color:var(--white);
	text-transform:uppercase;
	margin-bottom:16px;
	text-align:center}

.service__title{
	color:var(--white);
	margin-bottom:24px;
	text-align:center}

.service__text{
	color:var(--white);
	line-height:1.5;
	opacity:.7;
	text-align:center;
	margin-bottom:64px;
	max-width:768px}

.item-service{
	display:flex;
	align-items:center;
	gap:88px;
	width:100%}

.item-service:nth-child(2n+1){
	flex-direction:row-reverse}

.item-service:not(:last-child){
	margin-bottom:64px}

.item-service__info{
	flex:1 1 50%}

.item-service__icon{
	width:50px;
	height:50px;
	display:flex;
	align-items:center;
	margin-bottom:24px}

.item-service__icon img{
	max-width:100%}

.item-service__title{
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:700;
	text-transform:uppercase;
	margin-bottom:16px;
	color:var(--white)}

.item-service__text{
	opacity:.7;
	line-height:1.5;
	color:var(--white)}

.item-service__text p:not(:last-child){
	margin-bottom:24px}

.item-service__image{
	flex:1 1 50%;
	max-width:652px;
	width:100%;
	aspect-ratio:652/413;
	position:relative;
	border-radius:8px;
	overflow:hidden}

.item-service__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.case{
	background:var(--light-gray)}

.case__body{
	display:flex;
	gap:80px;
	padding-top:64px;
	padding-bottom:112px}

.case__images{
	flex:1 1 50%;
	max-width:652px;
	width:100%;
	margin:0 auto;min-width:0}

.case__image{
	margin-bottom:16px}

.case__pagination{
	justify-content:center}

.case__control{
	margin-top:16px;
	display:none}

.case__next,.case__prev{
	background:var(--light-green)}

.case__next svg,.case__prev svg{
	stroke:var(--green)}

.case__info{
	flex:1 1 50%}

.case__pre-title{
	font-size:.75rem;
	font-weight:600;
	text-transform:uppercase;
	color:var(--green);
	margin-bottom:8px}

.case__title{
	margin-bottom:24px}

.case__text{
	line-height:1.5;
	opacity:.7;
	margin-bottom:32px}

.case__text p:not(:last-child){
	margin-bottom:24px}

.case__details{
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:600;
	color:var(--green);
	text-transform:uppercase;
	margin-bottom:16px}

.case__table{
	background:var(--white);
	border-radius:8px;
	padding:16px}

.case__table table{
	width:100%}

.case__table tr:last-child td{
	border:none}

.case__table td{
	padding:8px 0;
	border-bottom:1px solid rgba(0,0,0,.1);
	font-weight:500}

.case__table td:first-child{
	padding-right:16px}

.case__table td:last-child{
	color:var(--green)}

.image-case__slider{
	overflow:hidden}

.image-case__slide{
	width:100%;
	aspect-ratio:652/387;
	position:relative;
	border-radius:8px;
	overflow:hidden;
	background:url(assets/img/loading.gif) 50% no-repeat}

.image-case__slide img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.thumbs__slider{
	overflow:hidden}

.thumbs__slide{
	position:relative;
	aspect-ratio:206/140;
	border-radius:8px;
	overflow:hidden;
	background:url(assets/img/loading.gif) 50% no-repeat}

.thumbs__slide img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.terms{
	padding-block:128px;
	background:var(--light-gray)}

.terms__pre-title{
	font-size:.75rem;
	font-weight:600;
	color:var(--green);
	text-transform:uppercase;
	margin-bottom:16px;
	text-align:center}

.terms__title{
	text-align:center;
	margin-bottom:24px}

.terms__text{
	font-size:1.125rem;
	color:var(--green);
	line-height:1.5;
	opacity:.7;
	text-align:center;
	max-width:768px;
	margin:0 auto 48px}

.terms__body{
	padding:32px;
	max-width:768px;
	background:var(--white);
	margin:0 auto;
	border-radius:8px;
	box-shadow:0 12px 16px rgba(0,0,0,.08)}

.blog{
	background:var(--light-gray)}

.blog__body{
	padding-block:64px}

.blog__header{
	margin-bottom:80px}

.blog__pre-title{
	font-size:.75rem;
	font-weight:600;
	color:var(--green);
	text-transform:uppercase;
	margin-bottom:16px}

.blog__categories{
	margin-bottom:16px}

.blog__category{
	font-size:.75rem;
	font-weight:600;
	color:var(--green);
	text-transform:uppercase}

.blog__image{
	flex:1 1 50%;
	max-width:654px;
	width:100%;
	aspect-ratio:654/384;
	position:relative;
	border-radius:8px;
	overflow:hidden;
	background:url(assets/img/loading.gif) 50% no-repeat}

.blog__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover;
	transition:all .5s ease}

.blog__info{
	flex:1 1 50%}

.blog__title{
	display:block;
	margin-bottom:24px}

.blog__text{
	color:var(--black);
	opacity:.7;
	line-height:1.5}

.blog__text p:not(:last-child){
	margin-bottom:24px}

.blog__main{
	display:flex;
	align-items:center;
	gap:48px;
	padding:16px;
	background:var(--white);
	margin:0 auto 88px;
	border-radius:8px}

.blog__main .blog__pre-title{
	margin-bottom:8px}

.blog__main .blog__title{
	margin-bottom:8px;
	max-width:600px}

.blog__main .blog__text{
	max-width:600px}

.blog__menu{
	margin-bottom:64px}

.blog__grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:32px}

.blog__pagination{
	margin-top:100px}

.menu-blog{
	overflow-x:auto;
	scrollbar-width:none}

.menu-blog::-webkit-scrollbar{
	width:0;
	height:0}

.menu-blog__list{
	display:flex;
	align-items:center;
	padding:0}

.menu-blog__item{
	list-style:none;
	padding:0;
	margin:0}

.menu-blog__item::before{
	display:none}

.menu-blog__item:not(:last-child){
	margin:0 5px 0 0}

.menu-blog__link{
	font-size:.75rem;
	text-transform:uppercase;
	color:var(--green);
	font-weight:600;
	padding:8px 16px;
	display:block;
	border-radius:100px;
	transition:all .5s ease;
	white-space:nowrap}

.menu-blog__link.active{
	background:var(--green);
	color:var(--white)}

.card-blog{
	background:var(--white);
	padding:16px;
	border-radius:8px;
	display:flex!important;
	flex-direction:column;
	height:auto!important}

.card-blog__image{
	width:100%;
	height:260px;
	position:relative;
	border-radius:8px;
	overflow:hidden;
	margin-bottom:24px;
	display:block;
	background:url(assets/img/loading.gif) 50% no-repeat}

.card-blog__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover;
	transition:all .5s ease}

.card-blog__cat{
	font-size:.75rem;
	font-weight:600;
	text-transform:uppercase;
	color:var(--green);
	margin-bottom:16px}

.card-blog__cat-link{
	color:var(--green)}

.card-blog__title{
	font-weight:700;
	font-size:1.25rem;
	color:var(--green);
	text-transform:uppercase;
	margin-bottom:16px;
	display:block;
	transition:all .5s ease}

.card-blog__desc{
	flex:1 1 auto;
	opacity:.7;
	line-height:1.5;
	color:var(--black);
	margin-bottom:24px;
	overflow:hidden;
	text-overflow:ellipsis;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical}

.card-blog__footer{
	display:flex;
	align-items:center;
	justify-content:space-between;
	flex-wrap:wrap}

.card-blog__date{
	font-size:.875rem;
	font-weight:500;
	color:var(--green)}

.card-blog__time{
	font-size:.875rem;
	font-weight:500;
	color:var(--green);
	flex:1 1 auto;
	margin:0 24px;
	position:relative}

.card-blog__time::before{
	content:"";
	position:absolute;
	width:4px;
	height:4px;
	top:50%;
	left:-13px;
	transform:translate(0,-50%);
	border-radius:50%;
	background:var(--green)}

.card-blog__btn{
	width:36px;
	height:36px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--green);
	transition:all .5s ease;
	border:3px solid transparent}

.card-blog__btn:active{
	border-color:#7f9f9a}

.card-blog__btn svg{
	width:70%;
	height:70%;
	stroke:var(--white)}

.single{
	background:var(--light-gray)}

.single__body{
	padding-block:64px;
	display:flex;
	gap:46px;
	max-width:1256px;
	width:100%;
	margin:0 auto}

.single__article{
	flex:1 1 auto}

.single__sidebar{
	flex:1 0 288px}

.sidebar{
	position:relative;
	display:flex}

.sidebar__title{
	font-family:Oswald,sans-serif;
	font-size:1.25rem;
	font-weight:600;
	text-transform:uppercase;
	color:var(--green);
	margin-bottom:24px}

.sidebar__links{
	display:flex;
	align-items:center;
	gap:8px}

.sidebar__link{
	width:40px;
	height:40px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--green);
	border:3px solid transparent;
	transition:all .5s ease}

.sidebar__link svg{
	width:20px;
	height:20px}

.sidebar__link:active{
	border-color:#7f9f9a}

.sidebar__share{
	flex:1 1 auto;
	height:-moz-fit-content;
	height:fit-content;
	padding:24px;
	border-radius:8px;
	background:var(--white)}

.sidebar__share.sticky{
	min-width:288px;
	position:fixed;
	top:120px}

.sidebar__share.fixed{
	position:static;
	align-self:flex-end}

.others{
	background:var(--light-gray)}

.others__body{
	padding-bottom:112px}

.others__pre-title{
	font-size:.75rem;
	font-weight:700;
	color:var(--green);
	text-transform:uppercase;
	text-align:center;
	margin-bottom:16px}

.others__title{
	text-align:center;
	margin-bottom:64px}

.others__slider{
	overflow:hidden}

.others__control{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-top:46px}

.others__navigation .navigation__next,.others__navigation .navigation__prev{
	background:var(--light-green)}

.others__navigation .navigation__next svg,.others__navigation .navigation__prev svg{
	stroke:var(--green)}

.footer{
	background:var(--black);
	padding:50px 0}

.footer__body{
	display:flex;
	align-items:center;
	gap:24px}

.footer__logo{
	display:block;
	width:152px;
	height:24px}

.footer__logo img{
	max-width:100%}

.footer__rights{
	font-size:.75rem;
	color:var(--white);
	opacity:.6}

.footer__dev{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	color:var(--white)}

.footer__dev img{
	max-width:24px;
	height:auto;
	margin-left:8px}

.footer__contacts{
	flex:1 1 auto;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px}

.footer__mail{
	font-size:.875rem;
	font-weight:500;
	color:var(--white);
	display:flex;
	align-items:center;
	margin-right:32px}

.footer__mail svg{
	width:20px;height:20px;
	margin-right:8px}

.footer__phone{
	font-size:.875rem;
	font-weight:500;
	color:var(--white);
	display:flex;
	align-items:center;
	padding:8px 12px;
	border-radius:100px;
	border:1px solid rgba(255,255,255,.1);
	white-space:nowrap}

.footer__phone svg{
	width:20px;
	height:20px;
	margin-right:8px;
	fill:var(--light-green)}

.footer__btns{
	display:flex;
	flex-direction:column;
	align-items:center;
	position:fixed;
	z-index:20;
	bottom:20px;
	right:20px;
	gap:8px}

.footer__btn{
	display:flex;
	align-items:center;
	justify-content:center;
	width:40px;
	height:40px;
	background:var(--white);
	border-radius:50%}

.footer__btn svg{
	width:90%;height:90%}

.energyintro__body{
	display:flex;
	align-items:flex-start;
	padding:128px 0}

.energyintro__image{
	flex:1 1 50%;
	border-radius:8px;
	overflow:hidden;
	max-width:650px;
	width:100%;
	position:relative;
	top:0;
	aspect-ratio:652/528}

.energyintro__image img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	-o-object-fit:cover;
	object-fit:cover}

.energyindepend__info {
    flex: 1 1 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.calltoaction__text{
	font-size:1.125rem;
	line-height:1.5;
	margin-bottom:56px;
	opacity:.7
}

.calltoaction__text h3{
	font-family:Oswald,sans-serif;
	font-size:1.5rem;
	font-weight:600;
	line-height:1.2;
	text-transform:uppercase;
	color:var(--green);
	margin-bottom: 16px;
}

.energyindepend__title{
	color:var(--green);
	margin-bottom:24px;
	text-align:center
}
.energyindepend__hititle{
	color:var(--green);
	margin-top:24px;
	margin-bottom:24px;
	text-align:center
}

.techinf{
	background:var(--green);
	position:relative
}
.techinf::after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:45%;
	height:100%;
	background:url(assets/img/calc/decor.svg) left/cover no-repeat
}
.ocaseintro__text{
	font-size:1.125rem;
	line-height:1.5;
	margin-bottom:56px;
	opacity:.7}

.ocaseaction__text{
	margin-bottom:24px;
	font-size:1.125rem;
	color:var(--green);
	opacity:.7;
	line-height:1.5
}

.agreen{
	color:var(--green);
}


@media (max-width:1512px){
	.h1{font-size:calc(2.625rem + 6 * (100vw - 20rem)/ 1192)}
	.form{padding:calc(24px + 8 * (100vw - 320px)/ 1192)}
	.article h1{font-size:calc(2.625rem + 6 * (100vw - 20rem)/ 1192)}
	.article h2{font-size:calc(2.125rem + 6 * (100vw - 20rem)/ 1192)}
	.promo__info{padding:calc(64px + 48 * (100vw - 375px)/ 1137) 0}
	.promo__title{font-size:calc(2.125rem + 26 * (100vw - 20rem)/ 1192)}
	.intro__body, .energyintro__body {padding-bottom:calc(64px + 64 * (100vw - 375px)/ 1137);padding-top:calc(83px + 45 * (100vw - 375px)/ 1137)}
	.intro__text{margin-bottom:calc(40px + 16 * (100vw - 320px)/ 1192)}
	.services__body{padding-block:calc(64px + 64 * (100vw - 375px)/ 1137)}
	.services__grid{margin-bottom:calc(32px + 32 * (100vw - 375px)/ 1137)}
	.reasons__body{padding-top:calc(64px + 64 * (100vw - 375px)/ 1137);padding-bottom:calc(32px + 32 * (100vw - 375px)/ 1137)}
	.offer{padding-bottom:calc(64px + 64 * (100vw - 375px)/ 1137);padding-top:calc(32px + 32 * (100vw - 375px)/ 1137)}
	.offer_img .offer__body{padding:calc(24px + 40 * (100vw - 375px)/ 1137)}
	.offer__info{padding:calc(24px + 40 * (100vw - 375px)/ 1137)}
	.cases_green .cases__body{padding-top:calc(32px + 32 * (100vw - 320px)/ 1192);padding-bottom:calc(64px + 64 * (100vw - 320px)/ 1192)}
	.cases__body{padding-top:calc(64px + 64 * (100vw - 375px)/ 1137);padding-bottom:calc(32px + 32 * (100vw - 375px)/ 1137)}
	.cases__text{margin-bottom:calc(32px + 32 * (100vw - 375px)/ 1137)}
	.cases__btn{margin-top:calc(32px + 32 * (100vw - 375px)/ 1137)}
	.cases__pagination{margin-bottom:calc(32px + 32 * (100vw - 320px)/ 1192)}
	.team{padding-block:calc(64px + 64 * (100vw - 375px)/ 1137)}
	.team__info{padding-left:calc(16px + 80 * (100vw - 320px)/ 1192)}
	.feedback__form-wrapper{padding-block:calc(64px + 44 * (100vw - 320px)/ 1192)}
	.feedback__form{padding:calc(24px + 22 * (100vw - 375px)/ 1137)}
	.sertificates__body{padding-block:calc(64px + 48 * (100vw - 320px)/ 1192)}
	.sertificates__text{margin-bottom:calc(40px + 40 * (100vw - 320px)/ 1192)}
	.calc_invert .calc__info{padding-left:calc(24px + 56 * (100vw - 320px)/ 1192)}
	.calc__body{padding-block:calc(64px + 96 * (100vw - 320px)/ 1192)}

	.form-calc__body{padding-top:calc(16px + 24 * (100vw - 320px)/ 1192);padding-inline:calc(16px + 24 * (100vw - 320px)/ 1192);padding-bottom:calc(16px + 62 * (100vw - 320px)/ 1192)}

	.contacts__body{padding-block:calc(32px + 32 * (100vw - 320px)/ 1192)}
	.intro-green__body{padding-block:calc(50px + 65 * (100vw - 320px)/ 1192)}
	.service__body{padding-block:calc(64px + 64 * (100vw - 320px)/ 1192)}
	.service__text{margin-bottom:calc(32px + 32 * (100vw - 320px)/ 1192)}
	.item-service{gap:calc(24px + 64 * (100vw - 320px)/ 1192)}
	.case__body{padding-bottom:calc(64px + 48 * (100vw - 320px)/ 1192);padding-top:calc(46px + 18 * (100vw - 320px)/ 1192);gap:calc(40px + 40 * (100vw - 320px)/ 1192)}
	.terms{padding-block:calc(64px + 64 * (100vw - 320px)/ 1192)}
	.terms__body{padding:calc(24px + 8 * (100vw - 320px)/ 1192)}
	.blog__body{padding-block:calc(32px + 32 * (100vw - 320px)/ 1192)}
	.blog__header{margin-bottom:calc(40px + 40 * (100vw - 320px)/ 1192)}
	.blog__main{gap:calc(24px + 24 * (100vw - 320px)/ 1192);margin-bottom:calc(46px + 42 * (100vw - 320px)/ 1192)}
	.blog__main{margin-bottom:calc(46px + 42 * (100vw - 320px)/ 1192)}
	.blog__grid{gap:calc(24px + 8 * (100vw - 320px)/ 1192)}
	.blog__pagination{margin-top:calc(40px + 60 * (100vw - 320px)/ 1192)}
	.single__body{padding-block:calc(32px + 32 * (100vw - 320px)/ 1192);gap:calc(24px + 22 * (100vw - 320px)/ 1192)}
	.others__body{padding-bottom:calc(64px + 48 * (100vw - 320px)/ 1192)}
	.others__title{margin-bottom:calc(32px + 32 * (100vw - 320px)/ 1192)}
	.others__control{margin-top:calc(32px + 14 * (100vw - 320px)/ 1192)}
	.footer__btn{width:calc(24px + 16 * (100vw - 320px)/ 1192);height:calc(24px + 16 * (100vw - 320px)/ 1192)}}

@media (max-width:1200px){
	.header__menu-icon{display:block}
	.menu__body{
		position:absolute;
		top:100%;
		right:0;
		transform:translate(150vw,0);
		width:100%;
		background:var(--green);
		transition:all .5s ease;
		height:calc(var(--app-height) - 95px);
		padding-top:24px;
		display:flex;
		flex-direction:column;
		align-items:center;
		margin-top:1px;
		z-index:100}
	.menu__body._active{
		transform:translate(0,0)}
	.menu__list{
		flex-direction:column;
		margin-bottom:32px}
	.menu__item:not(:last-child){margin:0 0 32px 0}
}

@media (max-width:993px){
	.header__phones{margin-right:0}
	.intro__pre-title{text-align:center}
	.calc::after{display:none}
	.contacts__body::after{display:none}}

@media (max-width:992px){
	.header__menu{margin-right:16px}
	.header__menu-icon{margin-left:16px}
	.promo__body{flex-direction:column}
	.promo__info{align-items:center;padding-bottom:0}
	.promo__title{max-width:unset;text-align:center}
	.promo__desc{max-width:unset;text-align:center}
	.intro_reverse .intro__info{padding:0;margin-bottom:32px}
	.intro_reverse .intro__image{margin-bottom:0}
	.intro_reverse .intro__title{text-align:center}
	.intro_reverse .intro__text{text-align:center}
	.intro__body, .energyintro__body {flex-direction:column;align-items:center}
	.energyintro__image{order: 1}
	.intro__info{order: 2}
	.intro__image{margin-bottom:40px}
	.intro__info{padding-left:0}
	.intro__btn{margin:0 auto}
	.services__grid{grid-template-columns:repeat(2,1fr)}
	.calc_invert .calc__body{flex-direction:column}
	.calc_invert .calc__info{padding-left:0}
	.calc__body{flex-direction:column}
	.calc__title{max-width:unset}
	.calc__text{max-width:unset}

	.form-calc__body{max-width:unset}

	.contacts__body{flex-direction:column}
	.case__body{flex-direction:column}
	.case__thumbs{display:none}
	.case__control{display:flex;align-items:center;justify-content:space-between}
	.blog__grid{grid-template-columns:repeat(2,1fr)}
	.footer__body{flex-direction:column;align-items:flex-start;gap:16px}}

@media (max-width:768px){
	.header__logo{margin-right:0}
	.header__phones{margin:0 0 32px 0;gap:16px;flex-wrap:wrap}
	.reasons__grid{grid-template-columns:1fr}
	.card-reasons__title{max-width:unset}
	.card-reasons__text{max-width:unset}
	.offer_img .offer__body{flex-direction:column-reverse}
	.offer_img .offer__graph{justify-content:center}
	.offer__body{flex-direction:column}
	.offer__decor{max-width:450px;width:100%;aspect-ratio:327/252}
	.offer__decor img{-o-object-fit:contain;object-fit:contain;-o-object-position:top;object-position:top}
	.offer__image{margin-bottom:32px}
	.cases__grid{grid-template-columns:1fr}
	.team__body{flex-direction:column-reverse;align-items:stretch}
	.team__info{padding-left:0;margin-bottom:46px}
	.data{flex-direction:column;padding:0 24px}
	.data__item:not(:last-child){border-right:none;border-bottom:1px solid rgba(255,255,255,.2)}
	.data__item{padding:24px}
	.feedback::after{display:none}
	.feedback__body{flex-direction:column;gap:32px;padding-block:64px}
	.feedback__title{max-width:unset}
	.feedback__text{max-width:unset}
	.feedback__form-wrapper{padding:0}
	.feedback__form{max-width:unset}
	.intro-green::after{display:none}
	.intro-green__pre-title{text-align:center}
	.intro-green__title{width:100%;text-align:center}
	.intro-green__text{width:100%;text-align:center}
	.item-service{flex-direction:column}
	.item-service:nth-child(2n+1){flex-direction:column}
	.blog__main{flex-direction:column;align-items:stretch;max-width:654px;width:100%}
	.single__body{flex-direction:column;gap:0}
	.single__sidebar{flex:unset;width:100%}
	.sidebar__share{position:relative;top:24px}
	.sidebar__share.sticky{position:relative}
	.sidebar__share.fixed{position:relative}
	.footer__contacts{flex-direction:column;align-items:flex-start}
	.footer__mail{margin:0 0 16px 0}}

@media (max-width:576px){
	.form__block{flex-direction:column}
	.services__grid{grid-template-columns:1fr}
	.offer_img .offer__info{padding:0}
	.offer__btn{width:100%}
	.cases__btn{width:100%}
	.form-calc__item{flex-direction:column;align-items:flex-start;padding-inline:0}
	.form-calc__range{flex:unset;width:100%;margin:0}
	.case__table tr{display:flex;flex-direction:column}
	.case__table td:first-child{border:none}
	.blog__grid{grid-template-columns:1fr}}

@media (max-width:480px){
	.pages__num_desk{display:none}.calc__btn{width:100%}
}

@media (any-hover:hover){
	.btn-light:hover{box-shadow:0 12px 16px rgba(0,0,0,.08)}
	.btn-green:hover{box-shadow:0 12px 16px rgba(0,0,0,.08)}
	.navigation__next:hover,.navigation__prev:hover{box-shadow:0 12px 16px rgba(0,0,0,.08)}
	.pages__next:hover,.pages__prev:hover{background:var(--green);color:var(--white);opacity:1}
	.pages__next:hover svg,.pages__prev:hover svg{stroke:#fff}
	.pages__num:hover{background:var(--green);color:var(--white);opacity:1}
	.breadcrumbs__item:hover{opacity:1}
	.header__menu-icon:hover{border-color:#45d279}
	.header__phone:hover{box-shadow:0 12px 16px rgba(0,0,0,.08)}
	.menu__link:hover{color:var(--light-green)}
	.menu__link:hover::after{transform:translate(0,0);opacity:1}
	.lang__btn:hover{color:var(--light-green);opacity:1}
	.blog__image:hover img{transform:scale(1.05)}
	.menu-blog__link:hover{background:var(--green);color:var(--white)}
	.card-blog__image:hover img{transform:scale(1.05)}
	.card-blog__title:hover{color:var(--black)}
	.card-blog__btn:hover{box-shadow:0 12px 16px rgba(0,0,0,.08)}
	.sidebar__link:hover{box-shadow:0 12px 16px rgba(0,0,0,.08)}
}

