@import url('reset.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&family=Rubik:ital,wght@0,300..900;1,300..900&display=swap');
:root{
	--bg-soft:#0e131a;
	--bg-header:rgb(0 16 51 / 73%);
	--card: linear-gradient(180deg, rgb(255 255 255 / 7%), rgb(0 196 255 / 5%));
	--line:rgba(255,255,255,0.1);
	--muted:rgba(255,255,255,0.7);
	--text:#ffffff;
	--blue:#43b3ff;
	--light_blue:#8fe3ff;
	--radius:16px;
	--shadow:0 0 0 1px rgba(255,255,255,0.03);
	--shadow-line:0 0 0 1px #4b78976b;
	--blur: saturate(120%) blur(3px);
	--bg: #001f43;
	--veil: rgba(11,15,20,.10);
	--track:#233150;
	--needle:#e2ecff;
	--cap:#1d2946;
	--ring:14px;
	--shadow-speed:0 10px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.03);
	--gap:20px;
	
}

::-webkit-scrollbar {
	width: 10px; 
	height: 10px;
}

::-webkit-scrollbar-track {
	background: rgba(255,255,255,0.05);
}

::-webkit-scrollbar-thumb {
	background-color: rgba(56,189,248,0.7);
	border-radius: 10px; 
	border: 2px solid transparent;
	background-clip: content-box;
}

::-webkit-scrollbar-thumb:hover {
	background-color: rgba(56,189,248,0.9);
}

/* Firefox */
* {
	scrollbar-width: thin; 
	scrollbar-color: rgba(56,189,248,0.7) rgba(255,255,255,0.05);
}

.htmlmain{
	scroll-snap-type: y mandatory;
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--header-h, 56px));
}

@media (prefers-reduced-motion: reduce) {
  .htmlmain { scroll-behavior: auto; }
}

html, body {
  width: 100%;
  /* height: 100%; */
}

body{
	margin:0;
	font:16px 'Noto Sans','Rubik', Arial, Helvetica, Geneva, sans-serif;
	color:var(--text);
	background: #002443;
}

#scene-cross{
	position: fixed;
	inset: 0;
	display: block;
	pointer-events: none;
	z-index: -1;
	--veil: rgba(11,15,20,.10);
	width: 100%;
	height: 100%;
}

input, textarea, select, button {
  font: 16px 'Rubik', Arial, Helvetica, Geneva, sans-serif;
}

img {
  vertical-align: top;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  height: auto;
}
input {
	width: 100%;
	padding: 14px 20px;
	border: 1px solid var(--line);
	border-radius: var(--radius);
	background: var(--card);
	color: var(--text);
	font-size: 16px;
	transition: all 0.3s ease;
	box-sizing: border-box;
}
input::placeholder{
	color: var(--muted);
}
input:focus, input:active {
    border-color: var(--blue);
	background: var(--bg-soft);
	outline: none;
}
input[type=checkbox] {
  position: absolute;
  left: -9999px;
  opacity: 0.01;
}
.modify-checkbox {
  padding-left: 25px;
  font-size: 15px;
  position: relative;
}
input[type=checkbox]+.modify-checkbox:before {
  content: '';
  width: 16px;
  border: 1px solid #fff;
  height: 16px;
  position: absolute;
  top: 2px;
  left: 0;
  border-radius: 4px;
}
input[type=checkbox]:checked+.modify-checkbox:before {
	background: var(--blue);;
	border: none;
}
textarea {
	border: 1px solid #d9d9d9;
	padding: 5px 10px;
	color: #000;
	height: 150px;
	resize: none;
	border-radius: 4px;
	border-radius: 8px;
}
select {
  padding: 10px 32px;
  cursor: pointer;
  border: 1px solid #d9d9d9;
  background: #fff;
  font-weight: 400;
  border-radius: 8px;
}
p {
  margin-bottom: 10px;
}
h1 {
  margin-bottom: 32px;
  font-size: 38px;
  font-weight: 600;
  color: #fff;
}
h2 {
  font-size: 22px;
  margin-bottom: 15px;
  font-weight: 500;
  color: #fff;
  margin-top: 20px;
}
h3 {
  font-size: 18px;
  margin-bottom: 15px;
  font-weight: 400;
  text-transform: uppercase;
  color: #000;
  margin-top: 20px;
}
table{
	margin: 20px 0;
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid #ddd;
	box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1);
}
td{
	border: 1px solid #ddd;
	padding: 14px;
}
th{
	font-weight:700;
	border: 1px solid #ddd;
	padding: 14px;
}
a {
  color: #fff;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
a:hover {
  color: var(--blue);;
  text-decoration:
  none;
}
ul {
  padding-left: 30px;
  margin-bottom: 20px;
}
ul li {
  margin-bottom: 7px;
}
ol {
  padding-left: 30px;
  margin-bottom: 20px;
}
ol li {
  margin-bottom: 10px;
}
e[type="button"] {
  cursor: hand;
  cursor: pointer;
}
.site-bg{
	position:fixed;
	inset:0;
	z-index:0;
	pointer-events:none;
	overflow:hidden;
}
.site-bg__layer{
	opacity:0.8;
}

.site-bg__layer::after{
	content:"";
	position:absolute;
	inset:0;
	background: radial-gradient(circle at 20% 2%, rgb(179 234 255 / 33%), transparent 55%);
	mix-blend-mode:screen;
}
.popups {
  position: fixed;
  top: 0px;
  left: 0px;
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: none;
}
.popups__shadow {
  background: rgba(0, 0, 0, 0.79);
  z-index: 10;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  backdrop-filter: var(--blur);
}
.popup__body {
  display: none;
  width: 90%;
  max-width: 650px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  position: absolute;
  top: 100px;
  z-index: 10;
  background: rgba(0,0,0,0.6);
  border: 1px solid var(--blue);
  padding: 40px 40px;
  border-radius: 20px;
}
.popup__title {
  font-size: 30px;
  margin-bottom: 20px;
}
.popup__minititle {
  font-size: 16px;
  margin-bottom: 5px;
  font-weight: 600;
}
.form__row {
  width: 100%;
  margin-bottom: 16px;
}
.form__label{
	width: 100%;
	float: left;
	margin-bottom: 10px;
	font-weight: 500;
}
.form__input{
	width: 100%;
}
.form__row-last{
	overflow:hidden;
}
.button{
	cursor: pointer;
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	font-weight: 400;
	border-radius: 20px;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	box-shadow: inset 0 0 0px 0 #fff;
	padding: 10px 20px;
	background: rgba(67, 179, 255, 0.2);
	color: #fff;
	border: 1px solid rgba(67, 179, 255, 0.3);
	float: right;
}
.button:hover{
	background:rgba(67,179,255,0.3);
	color:#fff;
}
.popup__button{
  cursor: pointer;
  float: left;
  width: 100%;
}
.popup__close {
  width: 16px;
  height: 16px;
  position: absolute;
  top: 25px;
  right: 25px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  cursor: pointer;
}
.popup__close:before {
  content: '';
  width: 100%;
  height: 2px;
  background: var(--blue);;
  position: absolute;
  top: 7px;
  left: 0px;
}
.popup__close:after {
  content: '';
  height: 100%;
  width: 2px;
  background: var(--blue);;
  position: absolute;
  top: 0px;
  left: 7px;
}
.popup__text-main{
	margin-bottom: 32px;
	font-size: 18px;
	font-weight: 300;
}
.popup__body_city {
	width:650px;
}
.popup__text_city{
	margin-bottom:20px;
	columns: 4;
	break-after: avoid;
	float: left;
	width: 100%;
}
.popup__cityItem{
	display: block;
	margin-bottom: 10px;
}
.clearfix:after {
  content: '';
  width: 100%;
  display: table;
}
.container {
  max-width: 94%;
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding: 0 20px;
  min-width: 1240px;
}
.container:after {
  content: '';
  width: 100%;
  display: table;
}
.wrapper{
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	position: relative;
	z-index: 1;
}
.wrapper__content{
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  overflow: visible;
  padding-bottom: 40px;
}
  
  /* Header */

.header{
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	-webkit-backdrop-filter: saturate(120%) blur(6px);
	backdrop-filter: saturate(120%) blur(6px);
	border-bottom: 1px solid var(--line);
	background: var(--bg-header);
}
.headerTop{
	position: relative;
	z-index: 2;
	border-bottom: 1px solid var(--line);
	padding: 8px 0;
	overflow: hidden;
	will-change: opacity; 
	transition: opacity .2s ease;
	max-height: 999px;
	opacity: 1;
}

.headerMid{
	position: relative;
	z-index: 1;
	border-bottom: 1px solid var(--line);
	padding: 10px 0;
}
.header__contactBlock{
	color:var(--muted);
	font-size: 14px;
	float: left;
	margin-right: 8px;
	padding-top: 2px;
}
.header__phoneNumber{
	color:var(--muted);
	text-decoration: none;
}
.header__phoneIcon{
	color:var(--blue);
}
.header__socials{float: right;}
.header__social{
	display: inline-block;
	vertical-align: top;
	margin-left: 8px;
	font-size: 18px;
}
.header__social_wa{
	color: #05df72;
}
.header__social_tg{
	color: #00bcff;
}
.header__social:hover{
	color:#fff;
	border-color:rgba(255,255,255,0.25);
}
.header__logo{
	float:left;
	display: flex;
	align-items: end;
}
.header__logo a{
	display:block;
	float:left;
}
.header__logo img{
	max-height:42px;
}
.header__ist{
	float:left;
	font-size: 14px;
	text-align: center;
	color: var(--blue);
	margin-left: 5px;
	padding-bottom: 2px;
}
.nav{
	display:flex;
	align-items:center;
	gap: 4px;
	flex-wrap: nowrap;
	float: left;
	margin-left: 32px;
}
.nav__item{
	color: #fff;
	padding: 14px 10px;
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
	font-size: 14px;
	text-transform: uppercase;
}
.nav__item:hover,
.nav__item_selected{
	color:var(--light_blue);
}
.header__callback{
	float: right;
	font-size: 14px;
	margin-top: 4px;
	cursor: pointer;
	transition: 0.2s;
}
.main{
	overflow: visible;
}
.footer{
	background: var(--bg-header);
	padding: 50px 0;
	float: left;
	width: 100%;
	-ms-flex: 0 0 auto;
	-webkit-box-flex: 0;
	flex: 0 0 auto;
	color: #fff;
	backdrop-filter: saturate(120%) blur(6px);
	scroll-snap-align: start;
}
.footer__top{
	width: 100%;
	float: left;
}
.footer__col{
	float: left;
	width: 33%;
	padding-right: 20px;
}
.footer__head{
	font-weight: 700;
	margin-bottom: 23px;
	font-size: 20px;
	text-transform: uppercase;
}
.footer__logo{
	margin-bottom: 20px;
	background: #fff;
	padding: 10px;
}
.footer__item{
	margin-bottom: 16px;
	display: block;
	text-decoration: none;
}
.footer__link{
	display: block;
	margin-bottom: 20px;
	text-decoration: none;
	font-size: 16px;
}
.footer__bottom{
	width: 100%;
	float: left;
	margin-top: 40px;
	border-top: 1px solid #444;
	padding-top: 40px;
}
.footer__bottomBlock{
	float: left;
	width: 100%;
}
.footer__bottomOffer{
	float: right;
	width: 100%;
	text-align: left;
	font-size: 14px;
	color: var(--muted);
}
.footer__bottomPowered{
	float: left;
	width: 100%;
	text-align: left;
	font-size: 14px;
	color: #555;
	margin-top:16px;
	text-decoration:none;
}
.container-left{
	float: left;
	width: 100%;
	margin-bottom: 20px;
}
.container-right{
	float: right;
	width: 100%;
}
.container-left_none{
	display:none;
}
.container-right_full{
	width:100%;
}
.h1path{
	text-align: left;
}
.h1path_center{
	text-align:center;
}
.path{
	padding: 32px 0 32px;
}
.path__item{
	display: inline;
	font-size: 16px;
	color: var(--muted);
	text-decoration: none;
}
.path__item:nth-last-child(1){
	color: #fff;
}
.path__item-arrow{
	display: inline;
	margin: 0 10px;
}
.products__content{
	float: left;
	margin-bottom: 20px;
}
.pagination{
	text-align: center;
	margin-top: 20px;
	display: block;
	float: left;
	width: 100%;
}
.pagination_right{
	float: right;
}
.pagination__item {
	text-decoration: none;
	font-weight: 400;
	color: #000;
	font-size: 16px;
	margin-left: 5px;
	border: 1px solid #ddd;
	border-radius: 2px;
	width: 40px;
	height: 40px;
	display: inline-block;
	vertical-align: top;
	line-height: 40px;
	border-radius: 40px;
}
.pagination__item:hover, .pagination__item_selected{
	color: var(--blue);;
	border-color: var(--blue);;
}
.leftCatalog{
	float: left;
	width: 100%;
}
.leftcatalog__body{
	display: flex;
	flex-wrap: wrap;
	gap: var(--gap);
}
.leftcatalog__body_hidden{
	display: none;
}
.leftCatalog__block{
	position:relative;
	float: left;
}
.leftCatalog__block:nth-last-child(1){
	border-bottom:none;
}
.leftCatalog__item{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:var(--radius);
	backdrop-filter: var(--blur);
	box-shadow:var(--shadow);
	padding: 10px 20px;
	float:left;
	text-decoration: none;
	width: 100%;
}
.leftCatalog__item:hover, .leftCatalog__item_selected{
	color: var(--light_blue);
}
.tiny-products{
	position: relative;
	float: left;
	width: 100%;
	margin: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: distribute;
	-webkit-box-pack: left;
	justify-content: left;
	transition:0.2s;
	opacity: 1;
	margin-bottom: 20px;
	gap: var(--gap);
}
.tiny-products .slick-track{
	display:flex;
}
.tiny-products .slick-track .product{
	margin: 0 20px;
}
/* Slider */
.sliderBlock{
	position:relative;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(to bottom, #000 70%, rgba(0,0,0,0) 100%);
	mask-image: linear-gradient(to bottom, #000 70%, rgba(0,0,0,0) 100%);
	width: 100%;
}
.sliderBlock::after{
	content:"";
	position:absolute;
	left:0; right:0; bottom:0;
	height:120px;
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, var(--bg-soft) 100%);
	pointer-events:none;
}
.sliderBlock.supports-mask::after{ display:none; }
.fireflies{
	position: absolute; inset:0;
	z-index: 2;
	pointer-events: none;
}
.js-slider-main{
	position:relative;
	overflow:hidden;
	border-bottom:1px solid var(--line);
}
.slider__item{
	/* position:absolute; */
	inset:0;
	transition:opacity .5s ease;
	position: relative;
}
.slider__item.is-active{
	opacity:1;
}
.slider__back{
	position:absolute;
	inset:0;
	background: linear-gradient(180deg, rgba(11,15,20,0.3), rgba(11,15,20,0.0));
}
.slider__block{
	position:absolute;
	top: 40%;
	transform: translateY(-50%);
	width: 100%;
}
.slider__content{
	max-width: 920px;
	margin: 0 auto;
	text-align: center;
}
.slider__title{
	font-size: 59px;
	font-weight: 900;
	color:#fff;
	margin-bottom:12px;
	text-shadow:0 6px 24px rgba(0,0,0,0.45);
	line-height: 1.2;
}
.slider__text{
	font-size: 22px;
	line-height:24px;
	font-weight: 400;
	line-height: 1.5;
}
/* Common blocks */
.mainblock{
	margin: 0;
	padding: 40px 0;
	min-height: calc(100vh - var(--header-h));
	scroll-snap-align: center;
	scroll-snap-stop: always;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.mainslogan {
	scroll-snap-align: start;
	padding-top: 0;
	margin-top: 0;
	align-items: start;
}
.main__titleBlock{
	margin-bottom: 20px;
}
.main__title{
	font-size: 45px;
	color:#fff;
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
}
/* Slogan */
.mainslogan__content{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	background: var(--card);
	box-shadow:inset 0 1px 0 rgba(255,255,255,0.08), var(--shadow);
	border:1px solid var(--line);
	border-radius:16px;
	padding: 50px 20px;
	backdrop-filter: var(--blur);
}
.mainslogan__text{
	font-size: 20px;
	line-height: 1.5;
	position:relative;
}
.mainslogan__button{}

/* Services (категории) */
.maincatalog__block{
	display:flex;
	flex-wrap:wrap;
	gap: var(--gap);
}
.maincatalog__item{
	background:var(--card);
	border:1px solid var(--line);
	border-radius:var(--radius);
	padding: 25px 100px 25px 32px;
	color:#fff;
	text-decoration:none;
	box-shadow:var(--shadow);
	transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	backdrop-filter: var(--blur);
	flex: 1 1 calc((100% - var(--gap)) / 4);
	min-width: 280px;
}
.maincatalog__item:hover{
	transform:translateY(-4px);
	border-color:rgba(255,255,255,0.22);
}
.maincatalog__icon{
	width: 64px;
	height: 64px;
	border-radius: 32px;
	overflow: hidden;
	margin-bottom: 16px;
	position: absolute;
	top: 32px;
	right: 32px;
}
.maincatalog__itemName{
	font-size: 18px;
	font-weight: 700;
	color:#fff;
}
.maincatalog__itemDesc{
	font-size: 16px;
	margin-top: 16px;
}

/* Products slider + cards */
.product{
	overflow: hidden;
	background: var(--card);
	border:1px solid var(--line);
	border-radius:var(--radius);
	box-shadow:var(--shadow);
	position: relative;
	padding-bottom: 62px;
	backdrop-filter: var(--blur);
	flex: 1 1 calc((100% - var(--gap)) / 4);
	min-width: 280px;
}
.product__image{
	overflow:hidden;
	margin-bottom:12px;
	background: #fff;
}
.product__image img{}
.product__content{
	padding: 20px 20px 0 20px;
}
.product__name{
	display:block;
	font-size: 20px;
	color:#fff;
	margin-bottom:8px;
	text-decoration: none;
	font-weight: 700;
}
.product__description{
	font-size:13px;
	line-height:18px;
	color:var(--muted);
	margin-bottom:12px;
}
.product__button{
	display:inline-block;
	text-decoration: none;
	border-bottom: 1px dotted;
	position: absolute;
	bottom: 24px;
}

/* Reasons */
.reasons__block {
	display: flex;
	flex-wrap: wrap;
	gap: var(--gap);
}
.reasons__item {
	position: relative;
	background:var(--card);
	border:1px solid var(--line);
	border-radius:var(--radius);
	backdrop-filter: var(--blur);
	box-shadow:var(--shadow);
	padding: 20px;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
	flex: 1 1 calc((100% - var(--gap)) / 4);
	min-width: 280px;
}
.reasons__item:hover {
	transform: translateY(-2px);
	box-shadow: 0 16px 40px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .04);
	border-color: rgba(99, 164, 255, .35)
}
.reasons__item-head {
	width: 100%;
	text-align: center;
	color: #fff;
}
.reasons__item-title {
	letter-spacing: .2px;
	font-size: 28px;
	font-weight: 700;
}
.reasons__item-subtitle {
	font-size: 18px;
	color: var(--muted);
}
.reasons__item-gauge {
	margin-top: 8px;
	position: relative;
	display: grid;
	place-items: center;
	padding-bottom: 8px
}
.reasons__item-center {
	position: absolute;
	top: 38%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	pointer-events: none;
}
.reasons__item-center .reasons__item-num {
	font-weight: 900;
	font-size: 32px;
}
.reasons__item-center .reasons__item-unit {
	display: block;
	font-size: 12px;
	color: var(--muted);
	margin-top: 2px
}
.reasons__item svg {
	width: 100%;
	max-width: 340px;
	height: auto;
	overflow: visible
}
/* Steps */
.steps__block {
	display: flex;
	flex-wrap: wrap;
	counter-reset: step;
	flex-wrap: wrap;
	gap: var(--gap);
}

.steps__item {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: start;
	text-align: left;
	background:var(--card);
	border:1px solid var(--line);
	border-radius:var(--radius);
	backdrop-filter: var(--blur);
	box-shadow:var(--shadow);
	padding: 32px;
	min-height: 200px;
	overflow: hidden;
	flex: 1 1 calc((100% - var(--gap)) / 5);
	min-width: 280px;
}

.steps__icon {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 140px;
	opacity: .08;
	color: var(--blue);
	pointer-events: none;
}

.steps__item::before {
	counter-increment: step;
	content: counter(step, decimal-leading-zero);
	position: absolute;
	top: 16px;
	right: 16px;
	font-weight: 800;
	font-size: 18px;
	text-align: center;
	color: #fff;
	z-index: 2;
	background: rgb(0 16 51 / 60%);
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 100%;
}

.steps__head {
	position: relative;
	z-index: 1;
	font-size: 20px;
	font-weight: 600;
	color: var(--text);
}

.steps__mini {
	position: relative;
	z-index: 1;
	margin-top: 16px;
	font-size: 14px;
	line-height: 1.5;
}

.steps__item:hover {
	transform: translateY(-2px);
}

/* Brands */
.main__brands{
	display:flex;
	align-items:center;
	justify-content:center;
}
.main__brands .slick-track{
	display: flex;
	gap: 20px;
}
.main__brandsItem{
	max-height: 150px;
	border-radius: 20px;
	background: #ffffff;
	overflow: hidden;
	display:flex;
	align-content: center;
}
.main__brandsItem img{
	padding:10px;
}
.main__brandsItem:hover{
	filter:none;
}

/* News */
.news__slider .slick-track{
	display:flex;
	flex-wrap:wrap;
}
.news__item{
	width:100%;
	margin-bottom:24px;
	margin: 0 16px;
}
.news__item{
	background:var(--card);
	border-radius:var(--radius);
	box-shadow:var(--shadow);
	overflow:hidden;
	backdrop-filter: var(--blur);
}
.news__image{
	display:block;
}
.news__image img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.news__cont{
	padding: 32px;
	text-align: center;
}
.news__header{
	display:block;
	font-size: 20px;
	color:#fff;
	margin-bottom: 10px;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: 700;
}
.news__text{
	font-size: 14px;
	line-height: 140%;
}

/* Main text */
.maintext__text{background: var(--card);border:1px solid var(--line);border-radius:var(--radius);backdrop-filter: var(--blur);box-shadow:var(--shadow);padding: 32px;font-size: 16px;line-height: 1.5;}

/* Animations */
.js-io{
	opacity:0;
	transform:translateY(14px);
	transition: all 0.2s, opacity .5s ease, transform .5s ease;
}
.js-io.is-inview{
	opacity:1;
	transform:translateY(0);
}
.js-typed{
	white-space:pre-wrap;
}
.productpage__top{
	position: relative;
	border-radius: 2px;
	margin-bottom: 10px;
	float: left;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.productpage__imageBlock{
	float:left;
	width: 100%;
}
.productpage__imagesBlock{
	float: left;
	width: 50%;
	position: relative;
	z-index: 1;
}
.productpage__image img{
	max-height: 600px;
	border-radius: var(--radius);
}
.productpage__images{
	width: 100%;
	float: left;
	position: relative;
	margin-top: 20px;
	border-top: 1px solid #ddd;
}
.productpage__imagesItem{
	margin-bottom: 20px;
	margin: 0 10px;
}
.productpage__imagesItem img{
	max-height:180px;
}
.productpage__imagesItem:nth-child(4){
	margin-right:0;
}
.productpage__info{
	float: left;
	margin-left: 5%;
	width: 45%;
	position: relative;
}
.productpage__infoTop{
	width: 100%;
	float: left;
}
.productpage__infoBottom{
	width: 100%;
	float: left;
	margin-top: 10px;
}
.productpage__deliveryBlock{
	float: left;
	width: 100%;
	margin-bottom: 16px;
	border-bottom: 1px solid #ddd;
	padding-bottom: 8px;
}
.productpage__deliveryBlock:nth-last-child(1){
	border-bottom:none;
}
.productpage__deliveryHead{
	font-weight: 700;
	margin-bottom: 10px;
	font-size: 16px;
}
.productpage__deliveryText{
	margin-bottom: 10px;
}
.productpage__selectBlock{
	float: left;
	width: 100%;
	margin: 16px 0;
}
.productpage__prices{
	float: left;
	width: 100%;
}
.productpage__stock + .productpage__stock{
	text-align:right;
}
.productpage__stock span{
	font-weight: 400;
}
.productpage__stock_weight, .productpage__stock_weight span{
	color:#000;
	font-weight:700;
}
.productpage__price{
	font-size: 40px;
	font-weight: 600;
}
.productpage__price_old{
	margin-left: 16px;
	font-size: 20px;
	text-decoration: line-through;
	color: #999;
	font-weight: 300;
	top: -5px;
	position: relative;
}
.productpage__select{
	background: #fff;
	width: 100%;
}
.productpage__onrequest:hover{
}
.productpage__miniTitle{
	font-weight: 500;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.productpage__annotation{
	width:100%;
	float:left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
}
.productpage__description{
	font-size: 16px;
	line-height:140%;
	border-radius: 2px;
	float:left;
	width:100%;
	margin-top: 40px;
}
.productpage__descriptionTitle{
	text-transform: uppercase;
	font-size: 25px;
	margin-bottom: 20px;
	font-weight: 700;
}
.productpage__button{
	float: left;
	margin: 32px 0;
	padding: 10px 50px;
}
.tabs{
	float:left;
	width:100%;
	position: relative;
	margin-top: 40px;
}
.tabs + .tabs_margin{
	margin-top:40px;
}
.tabs__header{
	float: left;
	width: 100%;
}
.tabs__line{
	float: left;
	width: 100%;
}
.tabs__elem{
	float: left;
	font-size: 18px;
	cursor:
	pointer;
	-webkit-transition:0.2s;
	-o-transition:0.2s;
	transition:0.2s;
	margin-bottom: 20px;
	margin-right: 32px;
	font-weight: 400;
	border-bottom: 2px solid #000;
	padding: 8px 0px;
}
.tabs__elem_active, .tabs__elem:hover{border-color: var(--blue);;color: var(--blue);;}
.tabs__body{
	float: left;
	width: 100%;
}
.tabs__body + .tabs__body{
	display:none;
}
.features__item{
	float: left;
	width: 100%;
	margin-bottom: 10px;
	display: table-cell;
    white-space: nowrap;
}
.features__name{
	display: table-cell;
	white-space: nowrap;
	color: #777;
}
.features__pause{
	display: table-cell;
	white-space: nowrap;
	border-bottom: 1px dashed #ccc;
	width: 100%;
}
.features__val{
	display: table-cell;
	white-space: nowrap;
}
.productpage__title{
	margin: 25px 0;
	font-size: 32px;
	font-weight: 500;
}
.productpage__products{
	float: left;
	width: 100%;
	margin-top: 20px;
}
.productpage__documentsItem{
	float: left;
	width: 100%;
	margin-bottom: 10px;
}
.productpage__documentsItem span{
	color: var(--blue);;
	border-bottom: 1px dotted;
}
.cookiepoffer{
	position:fixed;
	width:100%;
	bottom: 0;
	left:0;
	background: #272727;
	padding: 20px 0;
	z-index: 1000;
}
.cookiepoffer__text{
	font-size: 15px;
	font-weight: 400;
	line-height:140%;
	width: 100%;
	color: #fff;
}
.cookiepoffer__text a{
	color:#fff;
}
.cookiepoffer__button{
	margin-top:20px;
	float: left;
	font-size: 14px;
	padding: 8px 20px;
	background: #fff;
	color: #000;
	border: none;
}
.cookiepoffer__button:hover{
	background: #000;
}
.bottomform{width: 100%;margin-top: 32px;}
.bottomform__block{
	background: var(--card);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 24px;
	box-shadow: var(--shadow);
	float: left;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	backdrop-filter: var(--blur);
}
.bottomform__content{
	position: relative;
	width: 50%;
	float: left;
}
.bottomform__title{
	font-size: 32px;
	font-weight: 700;
	color: #fff;
}
.bottomform__title span{
	color: #5ABA48;
}
.bottomform__text{
	margin-top: 10px;
	font-size: 18px;
}
.bottomform__form{
	width: 50%;
	float: right;
	max-width: 500px;
}
.bottomform__error{
	color:#ff0000;
	margin-top: 20px;
}
.bottomform__item{
	float: left;
	width: 100%;
	margin-bottom: 20px;
}
.bottomform__item:nth-child(2n){
	margin-right:0;
}
.bottomform__label{
	font-weight: 500;
	margin-bottom: 8px;
	font-size: 14px;
	color: #fff;
}
.bottomform__input{
	width: 100%;
}
.bottomform__policy{
	font-size: 14px;
	text-align: left;
	color: var(--muted);
}
.bottomform__policy a{
	color: var(--muted);
}
.bottomform__button{
	width: 100%;
}
.projects{
	position: relative;
	float: left;
	width: 100%;
	margin: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: distribute;
	-webkit-box-pack: left;
	justify-content: left;
	transition:0.2s;
	opacity: 1;
	margin-bottom: 20px;
}
.project{
	overflow: hidden;
	background:var(--card);
	border:1px solid var(--line);
	border-radius:var(--radius);
	backdrop-filter: var(--blur);
	box-shadow:var(--shadow);
	margin: 0 10px 32px;
	width: 100%;
	position: relative;
}
.project__image{
	overflow:hidden;
	background: #fff;
	float: left;
	width: 25%;
	border-radius: var(--radius);
}
.project__image img{
}
.project__content{
	float: left;
	width: 75%;
	padding: 40px;
}
.project__name{
	display:block;
	font-size: 22px;
	color:#fff;
	margin-bottom: 16px;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
}
.project__description{
	font-size: 16px;
	color: #fff;
	margin-bottom: 20px;
	line-height: 140%;
}
.project__button{
	display:inline-block;
	text-decoration: none;
	border-bottom: 1px dotted;
}

.service-banner{
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 420px;
	display: flex;
	align-items: center;
	border-radius: var(--radius);
	overflow: hidden;
}
.service-banner__bg{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}
.service-banner__overlay{
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.45), rgba(0,0,0,0.4));
	z-index: 1;
}
.service-banner__inner{
	position: relative;
	z-index: 2;
	padding: 50px 50px;
	height: 100%;
}
.service-banner__content{
	color: #fff;
}
.service-banner__title{
	margin: 0px 0 10px 0;
	font-size: 44px;
	line-height: 1.1;
	font-weight: 700;
	text-shadow: 0 6px 22px rgba(0,0,0,0.35);
	text-align: left;
}
.service-banner__meta{float: left;width: 100%;}
.service-banner__metaItem{float: left;width: 100%;margin-bottom: 16px;font-size: 32px;}
.service-banner__label{
	color: var(--light_blue);
	float: left;
}
.service-banner__value{
	font-weight: 700;
	float: left;
	margin-left: 10px;
}
.service-banner__old{
	margin-left: 12px;
	font-size: 16px;
	text-decoration: line-through;
	color: rgba(255,255,255,0.66);
}
.service-banner__annotation{
	color: #fff;
	line-height: 140%;
	float: left;
	width: 100%;
	font-size: 18px;
}
.service-banner__actions{
	margin-top: 20px;
	float: left;
}
.service-banner__button{
	padding: 10px 32px;
	border-radius: 999px;
	border: 1px solid #fff;
	background: #fff;
	color: #000;
	font-size: 18px;
}

.service-body__content{
	font-size:18px;
	line-height:140%;
}

#page-loader{
  position:fixed; inset:0;
  background:var(--bg);
  z-index:9999;
  display:flex; justify-content:center; align-items:center;
}
.page-loader-inner{display:flex;}

.infinity-box{
	position:relative;
	width:350px;
	height:200px;
	perspective: 800px;
}

.logo-fly{
	width: 300px;
	position:absolute;
	top:50%;
	left:50%;
	transform: translate(-50%,-50%);
	transform-origin: 50% 50%;
	backface-visibility: hidden;
	transform-style: preserve-3d;
	animation: spinX 1.5s linear infinite;
	will-change: transform;
}

@keyframes spinX{
	0%{ transform: translate(-50%,-50%) rotateX(0deg); }
	100%{ transform: translate(-50%,-50%) rotateX(360deg); }
}


.desctop-none{
	display:none;
}