body{
	font-family: "Montserrat", sans-serif;
	color: #fff;
	position:relative;
	background:#1B1C21;
	margin:0;
	font-size:16px;
	line-height:28px;
}
*{
	min-width:0;min-height:0;
	margin:0;padding:0;
}
*,::after,::before{
	-webkit-box-sizing: border-box;
    box-sizing: border-box;
}
ul{list-style:none;}
.container{
	max-width:1280px;
	width:100%;
	padding-left:22px;
	padding-right:22px;
	margin-right:auto;
	margin-left:auto;
	position:relative;
	z-index:3;
}
button, input, textarea{font-family: "Montserrat", sans-serif;}
a{color:#ffffff;}
button, button:active, button:focus, a, a:active, a:focus, a:hover, div:focus, input:focus{outline: none;text-decoration:none;}
button, button::-moz-focus-inner, a::-moz-focus-inner {border:none;}
a.phone, .price, .mail{display:inline-block;white-space:nowrap;}
iframe{border:0;box-shadow:none;margin:0;padding:0;}
ul{list-style:none;}
h1,h2,h3{
	font-size:42px;
	line-height:60px;
	text-transform:none;
	font-weight:bold;
	text-align:center;
	margin: 0 0 19px;
}
h1.h1{
	font-size:46px;
	margin: 0 0 37px;
}
br{
	font-size:0;line-height:0;height:0;
}
.pagewrap{
	overflow:hidden;
}
.flex{
	display: flex;
}
.btn{
	display: flex;
	align-items: center;
	justify-content: center; 
	text-align:center;
	min-width:200px;
	width:fit-content;
	padding:0px 56px;
	height:112px;
	color:#fff;
	font-family: "Montserrat", sans-serif;
	font-size:16px;
	line-height:18px;
	font-weight:600;
	border-radius:180px;
	border:0;	
	background:	#35A647;
	background:linear-gradient(25.19deg, #35A647 28.73%, #65FB7D 91.24%);
	padding-bottom:1px;
	position:relative;
	box-shadow: 0px 4px 0px 0px #146837;
	cursor:pointer;
	transition:all ease 0.3s;
	overflow: hidden;
	z-index: 1; 
}
.btn:hover,.btn:focus{
	background:	#65FB7D;
	background:linear-gradient(25.19deg, #65FB7D 28.73%, #35A647 91.24%);
	box-shadow: 0px 6px 0px 0px #146837, 0 0 30px rgba(101, 251, 125, 0.3);
}
.btn:before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(255, 255, 255, 0.4),
		transparent
	);
	transition: left 0.5s ease;
}
.btn:hover:before {
	left: 100%;
}
.btn:hover {
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}
.btn-simple{
	background:transparent;
	color:#fff;
	padding:0px 20px;
	border:1px solid #fff;
	box-shadow:none;
}
.btn-simple:before {
	display:none;
}
.btn-simple:hover,.btn-simple:focus{
	background:transparent;
	box-shadow: 0 0 30px rgba(255, 255,255, 0.3);
}
.btn-tg-color{
	background:linear-gradient(25.19deg, #357AA6 28.73%, #52B7F8 91.24%);
	box-shadow: 0px 4px 0px 0px #1A3C52;
}
.btn-tg-color:hover,.btn-tg-color:focus{
	background:	#65FB7D;
	background:linear-gradient(25.19deg, #52B7F8 28.73%, #357AA6 91.24%);
	box-shadow: 0px 6px 0px 0px #1A3C52, 0 0 30px rgba(101, 251, 125, 0.3);
}



.btn-c{
	margin:0 auto;
}


.header{
	height:1028px;	
	color:#fff;
	background-size:cover;	
	position:relative;
	z-index:1;
	background:#1B1C21 url('./img/decor/bg.jpg') no-repeat center bottom / cover;
}
.header-top-wrap{
	background: linear-gradient(180deg, rgba(18, 19, 24, 0.9) 41.35%, rgba(0, 0, 0, 0) 100%);
}
.header.header-inner{
	height:auto;
	background:#121318;
}
.header .container{
	display:flex;
	flex-direction: column;
	flex-grow: 1;
}
.header-top{	
	padding:38px 0 26px;
	align-items: center;
	justify-content: space-between;
	gap:24px;
	padding:15px 0 1px;
}
.header.header-inner .header-top{	
	padding:10px 0;
}
.logo{
	display: flex;
	flex-shrink: 0;
	align-items: center;
	width:254px;
	height:69px;
}
.logo.logo-n{
	width: 225px;
	height: 114px;
}
.header.header-inner .logo.logo-n {
  width: 164px;
  height: 83px;
}
.logo-ni{
	display:block;
	width:100%;
	height:100%;
	object-fit:contain;
}
.logo-img{
	width:67px;
	height:69px;
	margin-right:6px;
}
.logo-text-wrap{
	display: flex;
	flex-direction: column;
	justify-content: center; 
	width:179px;
}
.logo-title{
	display:inline-block;
	font-size:29px;
	line-height:30px;
	white-space:nowrap;
	font-weight:500;
	letter-spacing: 0.03em;
	text-transform:uppercase;
	width:100%;
    color: #fff;
	margin-bottom:4px;
}
.logo-text{
	display:inline-block;
	width:100%;
	font-size:11px;
	line-height:17px;
	font-weight:500;
	color:#8C94A1;
}

.header-mainmenu{
	width:100%;
}
.header-nav{
	width:100%;
}
.mainmenu{
	padding:0px 31px 0 26px;
	width:100%;
	display:flex;
	align-items: center;
	justify-content: space-between;
}
.mainmenu a{
	display:inline-block;
	font-size:16px;
	line-height:40px;
	font-weight:500;
	color:#fff;
	white-space:nowrap;
}
.mainmenu a.active{
	color:#55DE6B;
}
.mainmenu li{
	position:relative;
}
.mainmenu li a:hover{
	text-shadow: 0 0 5px #55DE6B;
}
.mainmenu li.popup-item{
	display:none;
}
.header-phones{
	flex-shrink:0;
	min-width:208px;
	width:fit-content;
	flex-direction: column;
	text-align:right;
	justify-content: end;
}
.header-phones .phone{
	font-size:16px;
	line-height:29px;
	font-weight:500;
}
.header-phones .mainphone{
	font-size:22px;
	font-weight:bold;
}
.header-btn{
	flex-shrink:0;
}
.header-btn .btn{
	border: 1px solid rgba(255,255,255,0.3);
	height:59px;
	min-width:185px;
	width:185px;
	font-size:15px;
	font-weight:500;
	border-radius:60px;
}


.header-mid{
	max-width:883px;
	width:100%;
	padding-top:62px;
}
.worktime{
	border: 1px solid #8C94A1;
	background: rgba(90, 90, 90, 0.3);
	display: inline-block;
	padding:9px 24px 10px 43px;
	font-size:14px;
	border-radius:60px;
	line-height:31px;
	margin:0 0 32px;
	position:relative;
}
.worktime:before{	
	content:'';
	background:#0AEB68;
	display:block;
	width:11px;
	height:11px;
	border-radius:50%;
	position:absolute;
	top:19px;
	left:20px;
}
.header-title{
	display:inline-block;
	font-size:46px;
	line-height:70px;
	font-weight:bold;
	text-align:left;
	margin-bottom:16px;
}
.descriptor{
	max-width:764px;
	width:100%;
	font-size:20px;
	line-height:40px;
	color:#8C94A1;
	margin-bottom:45px;
	font-weight:500;
}
.header-advantages{
	gap:48px;
}
.header-advantages li{
	display: flex;
	align-items: center;
	font-size:14px;
	line-height:29px;
	font-weight:600;
	position:relative;
}
.a-ico{
	font-family: "Instrument Sans", sans-serif;
	width:fit-content;
	padding:0 23px;
	min-width:61px;
	display: flex;
	align-items: center;
	justify-content: center; 
	height:54px;
	font-size:29px;
	line-height:29px;
	font-weight:500;
	position:relative;
	text-align:center;
	font-style:normal;
	margin-right:8px;
}
.a-ico:before,
.a-ico:after{
	content:'';
	display:block;
	position:absolute;
	width:27px;
	height:54px;
	top:2px;
}
.a-ico:before{
	background:url('./img/decor/v1.svg') no-repeat center / contain;
	left:1px;
}
.a-ico:after{
	background:url('./img/decor/v2.svg') no-repeat center / contain;
	right:1px;
}
.a-ico-1{
	background:url('./img/icons/star.svg') no-repeat center / 26px 25px;
}
.a-ico-2{
	background:url('./img/icons/star2.svg') no-repeat center / 19px 24px;
}
.a-ico-3{
	background:url('./img/icons/star3.svg') no-repeat center / 24px 23px;
}
.a-ico-4{
	background:url('./img/icons/star4.svg') no-repeat center / 20px 26px;
}
.sblock-item .a-ico-4 {
	background-size:28px 37px;
}
.a-ico-5{
	background:url('./img/icons/star5.svg') no-repeat center / 22px;
}
.a-ico-6{
	background:url('./img/icons/star6.svg') no-repeat center / 25px;
}
.a-ico-7{
	background:url('./img/icons/star7.svg') no-repeat center / 24px 23px;
}
.a-ico-8{
	background:url('./img/icons/star8.svg') no-repeat center / 46px 36px;
}
.a-ico-9{
	background:url('./img/icons/star9.svg') no-repeat center / 36px;
}
.a-ico-10{
	background:url('./img/icons/star10.svg') no-repeat center / 40px;
}
.a-ico-11{
	background:url('./img/icons/star11.svg') no-repeat center / 36px;
}
.a-ico-12{
	background:url('./img/icons/star12.svg') no-repeat center / 32px;
}
.ico-good,.ico-bad,.ico-risk{
	display:inline-block;
	height:17px;
	padding-left:22px;
	margin-right:4px;
	background:url('./img/icons/good.svg') no-repeat 0 center / 17px 16px;
}
.ico-bad{
	background:url('./img/icons/bad.svg') no-repeat 0 center / 17px;
}
.ico-risk{
	background:url('./img/icons/risk.svg') no-repeat 0 center / 19px 16px;
}

.header-btns{
	display: flex;
	gap:20px;
	margin:59px 0 0;
}
.btn-tg{
	padding:10px 53px;
}
.tg-ico{
	fill:#fff;
	width:21px;
	height:17px;
}
.btn-tg .tg-ico{
	margin-right:7px;
}

.cols{
	display: flex;
	gap:30px 25px;
	flex-wrap: wrap;
}
.cols-2 .col{
	width:calc(50% - 13px);
}
.cols-3 .col{
	width:calc(33% - 17px);
}
.cols-4 .col{
	width:calc(25% - 19px);
}
.cols-5 .col{
	width:calc(20% - 20px);
}

.section{
	padding:27px 0;
	position:relative;
	z-index:2;
}
.section-title{
	text-align:center;
}
.title-light{
	font-weight:400;
}
.subtitle{
	display:block;
	width:100%;
	color:#8C94A1;
	font-size:18px;
	line-height:30px;
	font-weight: 400;
	text-align:center;
	margin:0 0 40px;
}

.breadcrumb {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: 0;
	color:#8C94A1;
	font-size:13px;
	line-height:30px;
	margin:16px 0 40px;
}
.breadcrumb__item:not(:last-child):after {
	content:'-';
	margin-left: 8px;
	margin-right: 8px;
	color: #8C94A1;
	font-size:13px;
	line-height:30px;
}
.breadcrumb a {
	color: #8C94A1;
	text-decoration: none;
}
.breadcrumb a:hover {
	text-decoration: underline;
}



.section-services{
	
}
.services-block{
	margin:0 0 23px;
}
.services-block .cols{
	margin-bottom:30px;
}
.service-item{
	display:block;
	width:100%;
	height:291px;
	border-radius:10px;
	overflow:hidden;
	position:relative;
	padding:24px 28px 91px;
}
.service-item-img,
.pasting-item img{
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	object-fit:cover;
}
.service-item h3{
	text-align:left;
	font-size:20px;
	line-height:30px;
	margin:0 0 12px;
	position:relative;
	z-index:2;
}
.service-item p{
	color:#9FAABC;
	font-size:15px;
	line-height:26px;
	font-weight:500;
	position:relative;
	z-index:2;
}
.btn-more{
	display: flex;
	align-items: center;
	justify-content: center; 
	text-align:center;
	background: rgba(0, 0, 0, 0.3);
	border: 1px solid rgba(36, 38, 36, 0.3);
	color:#fff;
	font-size:13px;
	height:58px;
	padding:13px 26px;
	position:absolute;
	left:28px;
	bottom:33px;
	z-index:2;
	border-radius:50px;
}
.btn-more i{
	display:inline-block;
	margin-left:9px;
	width:14px;
	height:8px;
	transition:0.3s ease all;
	background:url('./img/icons/arr.svg') no-repeat center / contain;
}
.service-item:hover .btn-more i,
.btn-more:hover i{
	transform:translateX(5px);
}

.section-serviceblock{
	
}
.serviceblock-cols{
	margin-bottom:30px;
}
.serviceblock-item{
	display: flex;
	flex-direction: column;
	border-radius:10px;
	overflow:hidden;
	background:#2F3240;
	height:100%;
}
.serviceblock-item .service-item{
	border-radius:0;
}
.service-price{
	display:inline-block;
	border-radius:40px;
	padding:10px 23px;
	background:#1C1C1C;
	position:absolute;
	left:28px;
	bottom:27px;
	font-size:19px;
	line-height:20px;
	font-weight:bold;
}
.serviceblock-info{
	padding:28px ;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap:29px;
	height: auto;
	flex: 1;
}
.ul-list{
	font-size:15px;
	line-height:36px;
	margin:0;
	padding:0;
}
.ul-list li{
	padding-left:30px;
	position:relative;
}
.ul-list li:before{
	content:'';
	background:#4DD062;
	display:block;
	width:9px;
	height:2px;
	border-radius:10px;
	position:absolute;
	left:0;
	top: 19px;
}
.serviceblock-info .btn{
	min-width:242px;
	height:70px;
	border:2px solid #fff;
	background:transparent;
	box-shadow:none;
	font-size:16px;
}
.serviceblock-info .btn:hover,
.serviceblock-btns .btn.btn-scroll{
	background: linear-gradient(25.19deg, #35A647 28.73%, #65FB7D 91.24%);
	box-shadow: 0px 3px 0px 0px #146837;
	border:0;
}
.serviceblock-info .btn.btn-go2p:hover{
	background:transparent;
	box-shadow:none;
	border:2px solid #fff;
}
.serviceblock-info .ul-list {
	height: 290px;
	overflow-y: auto;
	overflow-x: hidden;
	margin: 0;
	padding-right: 10px;
}
.serviceblock-info .ul-list::-webkit-scrollbar {
	width: 6px;
}
.serviceblock-info .ul-list::-webkit-scrollbar-track {
	background: #54586C;
	border-radius: 3px;
}
.serviceblock-info .ul-list::-webkit-scrollbar-thumb {
	background: #1B1C21;
	border-radius: 3px;
}
.serviceblock-info .ul-list::-webkit-scrollbar-thumb:hover {
	background: #2f313a;
}
.serviceblock-info .ul-list {
	scrollbar-width: thin;
	scrollbar-color: #1B1C21 #54586C;
}
.serviceblock-btns{
	display: flex;
	align-items: center;
	gap:16px;
}
.serviceblock-btns .btn{
	padding:10px;
	min-width:calc(50% - 8px);
	width:100%;
	max-width:calc(50% - 8px);
	font-weight:600;
}

.section-text{
	padding:58px 0 90px;
}
.section-text h3{
	font-size:18px;
	line-height:34px;
	text-align:left;
	margin:20px 0 5px;
}
.section-text p{
	font-size:16px;
	line-height:28px;
	margin:0 0 5px;
}
.sblocks{
	margin:11px 0 30px;
}
.sblock-item{
	background:#2F3240;
	border-radius:10px;
	padding:60px 35px 46px;
	text-align:center;
	height:100%;
}
.sblock-item:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 20px;
	right: 20px;
	bottom: 20px;
	border: 1px solid #34394E;
	border-radius: 10px; 
	pointer-events: none; 
}
.sblock-item h3{
	text-align:center;
	position:relative;
	font-size:18px;
	line-height:34px;
	margin:0 0 27px;
}
.sblock-item h3:after{
	content:'';
	display:block;
	width:31px;
	height:4px;
	background:#4DD062;
	border-radius:10px;
	position:absolute;
	left:50%;
	bottom:-15px;
	transform:translateX(-50%);
}
.sblock-item p{
	font-size:15px;
	line-height:26px;
	color:#8C94A1;
	margin:0;
}
.sblocks-wgals .sblock-item{
	padding:70px 37px 31px;
	background:#2F3240 url('./img/icons/gal.svg') no-repeat center 35px / 24.39px 18px;
}
.sblocks-wgals .sblock-item:before {
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
}
.sblocks-wgals .sblock-item p{
	font-size:16px;
	line-height:30px;
	color:#fff;
}

.section-text-minbp{
	padding-bottom:55px;
}

.sblocks.wblocks{
	
}
.sblocks.wblocks .sblock-item{
	background:#fff;
	border-radius:10px;
	padding:40px 30px 28px;
	color:#2F3240;
}
.sblocks.wblocks .sblock-item:before,
.wblocks .sblock-item h3:after,
.sblocks2 .sblock-item h3:after{
	display:none;
}
.wblocks .sblock-item h3{
	font-size:16px;
	color:#2F3240;
	margin:0 0 7px;
	padding:0;
}
.wblocks .sblock-item p{
	font-size:15px;
	line-height:26px;
	color:#2F3240;
	max-width:320px;
	display:block;
	width:100%;
	margin:0 auto;
}
.sblock-img{
	width:100%;
	height:57px;
	margin:0 0 35px;
	position:relative;
	display: flex;
	align-items: center;
	justify-content: center; 
}
.sblock-img img{
	display:block;
	width:100%;
	height:100%;
	object-fit:scale-down;
}
.sblocks2 .sblock-item h3{
	font-size:16px;
	margin:0 0 9px;
}
.sblock-item .a-ico{
	padding: 0 26px;
	min-width: 98px;
	height: 88px;
	font-size: 50px;
	line-height: 88px;
	margin:0 auto 21px;
}
.sblock-item .a-ico:before, 
.sblock-item .a-ico:after {
	width: 44px;
	height: 88px;
}
.section-topblock .header-title{
	font-size:42px;
	line-height:54px;
	margin:0 0 29px;
}
.section-topblock .header-title-s{
	font-size:40px;
}

.topslider {
	height: 408px;
	width: 100%;
	border-radius: 20px;
	margin-bottom: 20px;
}
.topslider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	user-select: none;
}
.thumbs-wrapper {
	position: relative;
	display: flex;
	align-items: center;
	padding: 0 69px;
}
.thumbs-slider {
	height: fit-content;
	width: 100%;
}
.thumbs-slider .swiper-slide {
	opacity: 1;
	cursor: pointer;
	position: relative;
	border-radius:10px;
	overflow:hidden;
	aspect-ratio: 106 / 85;
}
.thumbs-slider .swiper-slide:before{
	content:'';
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background:rgba(0,0,0,0.4);
}
.thumbs-slider .swiper-slide-thumb-active:before{
	display:none;
}
.thumbs-slider img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	user-select: none;
}
.thumbs-wrapper .swiper-button-prev,
.thumbs-wrapper .swiper-button-next {
	background:rgba(47,50,64,0.8);
}

.thumbs-wrapper .swiper-button-prev { left: 0; }
.thumbs-wrapper .swiper-button-next { right: 0; }

/* Уменьшаем размер иконок стрелок */
.thumbs-wrapper .swiper-button-prev::after,
.thumbs-wrapper .swiper-button-next::after {
  font-size: 18px;
}
.topslider .swiper-slide a {
  display: block;
  width: 100%;
  height: 100%;
}



.section-about{
	background:#202128 url('./img/decor/bg2.jpg') no-repeat center bottom / 100% auto;
}
.section-about:before{
	content:'';
	display:block;
	width:100%;
	height:300px;
	position:absolute;
	top:0;
	left:0;
	right:0;
	background: linear-gradient(180deg, #1B1C21 0%, #202128 50%, transparent 100%);
}
.whywe-block{
	display: flex;
	justify-content: space-between;
	gap:24px;
	margin-bottom:69px;
}
.whywe-block-col1{
	max-width:690px;
	width:60%;
}
.whywe-block-col2{
	max-width:500px;
	width:40%;
}
.whywe-block .section-title,
.whywe-block .subtitle{
	text-align:left;
	margin:0 0 26px;
}

.advantage-item{
	position:relative;
	padding:0 0 0 80px;
}
.advantage-item h3{
	font-size:16px;
	line-height:30px;
	font-weight:600;
	margin:0 0 6px;
	text-align:left;
}
.advantage-item p{
	color:#8C94A1;
	font-size:15px;
	line-height:26px;
	max-width:220px;
	width:100%;
}
.advantage-item .a-ico{
	position:absolute;
	top:0;
	left:0;
}

.partner-block{
	gap:23px 25px;
}
.partner-item{
	display: flex;
	align-items: center;
	justify-content: center; 
	width:100%;
	height:106px;
	background:#1B1C21;
	border-radius:20px;
	padding:26px;
}
.partner-item img{
	display:block;
	width:100%;
	height:100%;
	margin:auto;
	object-fit:contain;
}
.cols-5 {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 25px;
}
.cols-5 .col:nth-child(1),
.cols-5 .col:nth-child(2),
.cols-5 .col:nth-child(3),
.cols-5 .col:nth-child(4) {
	width: calc(25% - 19px);
}
.cols-5 .col:nth-child(5),
.cols-5 .col:nth-child(6),
.cols-5 .col:nth-child(7) {
	width: calc(33.33% - 17px);
}
.cols-5 .col:nth-child(n+8) {
	width: calc(33.33% - 17px);
}
.pasting-item{
	display:block;
	/*max-width:225px;*/
	width:100%;
	/*height:auto;
	aspect-ratio: 225 / 265;*/
	height:265px;
	border-radius:20px;
	overflow:hidden;
	position:relative;
}
.pasting-item p{
	position:absolute;
	z-index:2;
	font-size:16px;
	line-height:30px;
	font-weight:bold;
	text-align:center;
	left:10px;
	right:10px;
	bottom:22px;
}

.section-portfolio{
	background:#202128;
	padding-bottom:75px;
}




.section-form{
	background:#1b1c21 url('./img/decor/bg3.jpg') no-repeat center top / 100% auto;
	padding-bottom:98px;
}
.section-wait{
	padding:0 0 98px;
}
.contacts-form-wrap{	
	position:relative;		
	max-width:666px;
	width:100%;
	margin:0 0 109px;
}
.contacts-form-wrap:after{
	content:'';
	display:block;
	width:calc(100% - 30px);
	position:absolute;
	left:15px;
	right:15px;
	bottom:-10px;
	background:#23252C;
	height:57px;
	border-radius:40px;
}
.contacts-form-screenshot{
	position:absolute;
	top:76px;
	right:-345px;
	width:378px;
	height:619px;
	background:url('./img/decor/messages-bg.png') no-repeat 0 center / contain;
	z-index:1;
}
.contacts-form-bg{
	background:#2F3240;
	padding:66px 72px 69px;
	border-radius:40px;
	position:relative;		
	z-index:2;
}
.contacts-form-bg .section-title{
	margin:0 0 35px;
}
.form-text{
	max-width:479px;
	width:100%;
	font-size:19px;
	line-height:40px;
	font-weight:bold;
	margin:0 auto 29px;
	text-align:center;
}
.form-text2{
	max-width:425px;
	width:100%;
	font-size:16px;
	line-height:26px;
	margin:0 auto 28px;
	text-align:center;
}
.contacts-inner-form-wrap .form-text2 {
	margin-bottom:18px;
}
.form-text3{
	max-width: 595px;
	width: 100%;
	font-size: 16px;
	line-height: 30px;
	margin: -12px auto 38px;
	text-align: center;	
}
.toggle-group {
    display: flex;
	justify-content: center; 
    gap: 10px;
	margin:0 0 30px;
}
.toggle-item {
	cursor: pointer;
}
.toggle-item input {
	display: none;
}
.button-text {
	display: flex;
	align-items: center;
	justify-content: center; 
	width:144px;
	height:45px;
	padding: 11px;
	border-radius: 30px;
	background: transparent;
	color: #fff;
	border:1px solid #9FA4BD;
	font-size:16px;
	line-height:16px;
	color:#9FA4BD;
	font-weight: 600;
	transition: all 0.2s ease;
}
.button-text svg{
	fill:#9FA4BD;
}
.toggle-item input:checked + .button-text {
    color: #fff;
    background: #202128;
    border-color: #202128;
}
.toggle-item input:checked + .button-text svg {
    fill: #fff;
}
.toggle-item input:not(:checked):hover + .button-text {
    color: #fff;
}
.toggle-item input:not(:checked):hover + .button-text svg {
    fill: #fff;
}



.button-text .tel-ico{
	width:13px;
	height:13px;
	margin-right:5px;
}
.button-text .tg-ico{
	width:13px;
	height:13px;
	margin-right:6px;
}
.form-input{
	background:#fff;
	width:100%;
	height:100px;
	text-align:center;
	border-radius:70px;
	font-size:16px;
	font-weight:500;
	box-shadow:none;
	border:0;
	color:#202128;
	margin-bottom:18px;
}
.form-inputs,
.btn-submit{
	max-width:380px;
	width:100%;
	margin:0 auto;
}
.btn-submit{
	margin:0 auto 20px;
}
.agreement{
	font-size:11px;
	line-height:16px;
	font-weight:400;	
	color:#fff;
}
.soglasie{
	display: flex;
	position:relative;
	justify-content: center; 
}
input.mcheckbox {
	display: none;
}
.mcheckbox-c {
	position: relative;
	width: 16px;
	height: 16px;
	background:transparent;
	margin-right:8px;
	cursor:pointer;
	border-radius:4px;
	border:1px solid #9FA4BD;
}
.mcheckbox-c,
.mlabel {
	display: inline-block;
	vertical-align: middle;
}
.mlabel {
	width:fit-content;
}
input.mcheckbox:checked + .mcheckbox-c:before {
    content: '';
    display: block;
    position: absolute; 
    width: 15px;
    height: 15px;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    top: 0px;
	left: 0px;
    border-radius: 0; 
}
.agreement a{
	color:#fff;
	text-decoration:underline;
}
@keyframes glowing {
  0% { background-color: #ffbdc7;}
  50% { background-color: transparent;}
  100% { background-color: #ffbdc7;}
} 
.glow{
	background:#ffbdc7;
	animation: glowing 500ms infinite; 
}
.sendform{
	position:relative;
}
.loader{
	position:absolute;
	top:-5px;right:-5px;bottom:-5px;left:-5px;
	background: rgb(255,255,255);
	background: -moz-radial-gradient(circle, rgba(47,50,64,1) 0%, rgba(255,255,255,0) 67%, rgba(255,255,255,0) 100%);
	background: -webkit-radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 67%, rgba(255,255,255,0) 100%);
	background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 67%, rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1); 
	z-index:999;
	display:none;
}
.sendform.sending .loader{
	display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex;
}
.loadericon{
	width:100px;
	height:100px;
}
.lds-form {
	display: inline-block;
	position: absolute;
	top:calc(50% - 40px);
	left:calc(50% - 40px);
	width: 80px;
	height: 80px;
}
.lds-form div {
	display: inline-block;
	position: absolute;
	left: 8px;
	width: 16px;
	background: #65FB7D;
	animation: lds-form 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite;
}
.lds-form div:nth-child(1) {
	left: 8px;
	animation-delay: -0.24s;
}
.lds-form div:nth-child(2) {
	left: 32px;
	animation-delay: -0.12s;
}
.lds-form div:nth-child(3) {
	left: 56px;
	animation-delay: 0s;
}
@keyframes lds-form {
	0% {top: 8px;height: 64px;}
	50%, 100% {top: 24px;height: 32px;}
}

.welcome-block{
	display: flex;
	gap:24px;
	justify-content: space-between;
}
.welcome-text{
	width:500px;
}
.welcome-photo{
	width:calc(100% - 524px);
	border-radius:30px;
	overflow:hidden;
	position:relative;
}
.welcome-photo img{
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	display:block;
	width:100%;
	height:100%;
	margin:auto;
	object-fit:cover;
}
.welcome-text .section-title{
	text-align:left;
	margin:0 0 27px;
}
.worktime-text{
	font-size:27px;
	line-height:41px;
	margin:0 0 38px;
}
p.address{
	font-size:21px;
	line-height:31px;
	padding-left:40px;
	min-height:28px;
	background:url('./img/icons/adr.svg') no-repeat 0 0 / 22px 28px;
	margin:0 0 33px;
}
.w-phones{
	display: flex;
	flex-direction: column;
	font-size:37px;
	line-height:51px;
	padding-left:40px;
	min-height:28px;
	background:url('./img/icons/tel.svg') no-repeat 0 11px / 24px;
	margin:0 0 44px;
}
.welcome-text .btn{
	max-width:380px;
	width:100%;
}
.welcome-text-inner{
	padding-bottom:60px;
}
.w-txt{
	margin:0 0 24px;
}
.w-txt2{
	margin:27px 0 33px;
}
.w-txt-c{
	text-align:center;
}

.w-txt p{
	font-size:16px;
	line-height:28px;
	font-weight:400;
	margin:0 0 8px;
}


.section-map{
	width:100%;
}
.section-map .container{
	position:relative;
	height:100%;
}
.map{
	display:block;
	width:100%;
	height:719px;
	position:relative;
}
.mapaddress{
	display:block;
	width:546px;
	position:absolute;
	top:0px;
	left:calc(50% + 70px);
	bottom:0;
}
.map-form-bg{
	background:#2F3240;
	height:100%;
	padding:56px 69px 30px;
}
.map-form-bg .section-title{
	font-size:32px;
	line-height:50px;
	margin: 0 0 11px;
}
.balloon{
	display:block; 
	width: 69px; 
	height: 69px;
	/*background: #2F3240 url('./img/logo.svg') no-repeat center / 43px 44px;*/
	border-radius: 50%;
	box-shadow: 0 2px 5px rgba(0,0,0,0.2);
	background:url('./img/balloon.png') no-repeat center / contain;
	
}
#map {
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width: 100%;
	height:719px;
	padding: 0;
	margin: 0;
}



.tabs-nav {
    position: relative;
    margin-bottom: 40px;
    padding: 0;
}
.tab-btn {
    width: 100%;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
    text-align: center;
    outline: none;
}
.tab-btn-img {
    position: relative;
    width: 100%;
    aspect-ratio: 223 / 134;
    margin-bottom: 13px;
    overflow: hidden;
    border-radius: 20px;
    border: 3px solid transparent;
    transition: border-color 0.3s ease;
}
.tab-btn img {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tab-btn.active .tab-btn-img {
    border-color: #4DD062;
}
.tab-btn span {
    font-size: 18px;
	line-height:30px;
	color:#fff;
    font-weight: bold;
}
.tab-pane {
    display: none;
}
.tab-pane.active {
    display: block;
}

.tab-content-flex {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: flex-start;
}
.tab-gallery { 
	width: 57.2%; 
	min-width: 0; 
}
.tab-info { 
	width: 40.6%; 
}
.mainGallery {
    border-radius: 20px;
    margin-bottom: 18px;
    aspect-ratio: 710 / 426;
}
.mainGallery img {
    width: 100%; 
	height: 100%; 
	object-fit: cover;
}
.thumbGallery {
    height: 85px;
}
.thumbGallery .swiper-slide {
    opacity: 1;
    cursor: pointer; 
	overflow:hidden;
	border-radius: 10px;
}
.thumbGallery .swiper-slide:after{
	content:'';
	display:block;
	width:100%;
	height:100%;
	transition: 0.3s;
	background:rgba(0,0,0,0.4);
	position:absolute;
	top:0;
	left:0;
}
.thumbGallery .swiper-slide-thumb-active:after {
    opacity: 0;
}
.thumbGallery img {
    width: 100%; 
	height: 100%;
	object-fit: cover;
}
.tab-info{
	min-height:420px;
	height:fit-content;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.tab-info-text h2 { 
	font-size: 25px; 
	line-height:30px;
	text-align:left;
	margin:0 0 24px;
}
.tab-info-text p { 
	font-size: 16px; 
	line-height: 30px; 
	margin:0 0 24px;
	color: #8C94A1; 
}
.t-block-cols{
	margin:0 0 24px;
}
.t-block{
	padding:22px 20px 20px;
	background:#2F3240;
	width:100%;
	height:100%;
	border-radius:10px;
	display: flex;
	justify-content: center; 
	align-items: center;
	flex-direction: column;
	text-align:center;
	position:relative;
}
.t-block:before {
	content: '';
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
	border: 1px solid #34394E;
	border-radius: 10px;
	pointer-events: none;
}
.t-block h3{
	font-size:21px;
	line-height:30px;
	margin:0;
}
.t-block p{
	font-size:14px;
	line-height:30px;
	color:#8C94A1;
	margin:0;
}
@media (max-width: 991.9px) {
    .tab-content-flex { flex-direction: column; }
    .tab-gallery, .tab-info { width: 100%; }
}      
.g-block-cols .t-block{
	padding:37px 20px 29px;	
}
.g-block-cols .t-block h3{
	color:#DFCC74;
	font-size:25px;
	margin:0 0 5px;
}
.g-block-cols .t-block p{
	color:#fff;
}
.topblock-cols .t-block-cols{
	max-width:580px;
}
.topblock-cols .header-btns{
	margin-top:40px;
	max-width:580px;
	align-items: center;
	justify-content: space-between;
	padding-left:20px;
	flex-wrap: nowrap;
}
.topblock-cols .header-btns .btn{
	flex-grow: 1;
    max-width: 380px;
	width:100%;
}
.topblock-cols .header-advantages {
    flex-shrink: 0; 
}
.topblock-cols .header-advantages li{
	font-size:15px;
	line-height:24px;
	font-weight:400;
}

	
.swiper-button-next, .swiper-button-prev,
.carousel__button.is-prev, .carousel__button.is-next{
	width:44px;
	height:44px;
	background:rgba(53,166,71,0.8);
	border-radius:50%;
	z-index:9;
}
.swiper-button-next:hover, .swiper-button-prev:hover,
.carousel__button.is-prev:hover, .carousel__button.is-next:hover{
	background:rgba(53,166,71,0.9);
}
.swiper-button-prev{
	left:30px;
}
.swiper-button-next{
	right:30px;
}
.swiper-button-disabled{
	display:none;
}
.swiper-button-next:after, 
.swiper-button-prev:after {
	display: none;
}
.swiper-button-next:before, 
.swiper-button-prev:before {
	content: '';
    display: block;
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 50%;
    left: 50%;
}
.swiper-button-next:before {
	transform: translate(-65%, -50%) rotate(45deg);
}
.swiper-button-prev:before {
	transform: translate(-35%, -50%) rotate(-135deg);
}
.tabs-nav .swiper-button-next, .tabs-nav .swiper-button-prev{
	top: 0;
    margin-top: 0;
    top: calc((134 / 223 * 100%) / 2); 
}
.tabs-nav .swiper-button-next, .tabs-nav .swiper-button-prev,
.tabs-nav .swiper-button-next:hover, .tabs-nav .swiper-button-prev:hover{
	background:transparent;
}
.tabs-nav .swiper-button-prev{
	left:-28px;
}
.tabs-nav .swiper-button-next{
	right:-28px;
}

.fancybox__slide .fancybox__content:has(.fancybox__iframe),
.fancybox__content:has(iframe) {
    height: auto !important; 
    width: 90% !important;
    max-width: 1000px !important;
    aspect-ratio: 16 / 9 !important;    
    background: #000 !important;
    padding: 0 !important;
    margin: auto !important;
}
.fancybox__iframe {
    width: 100% !important;
    height: 100% !important;
    display: block;
}
.fancybox__content {
    transition-timing-function: ease-in-out;
}
.fancybox__image {
    cursor: default !important;
}
.carousel__button.fancybox__button--zoom{
	display:none !important;
}
.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
	border-color:#35A647;
}




.section-gallery{
	min-height:700px;
	height:auto;
	opacity:0;
	transition: opacity 0.5s ease-in-out; 
	padding:0 0 100px;
}
.gallery-wrapper {
    width: 100%;
}
.g-row {
    display: flex;
    gap: 25px;
    margin-bottom: 21px;
    width: 100%;
    height: 403px; 
}
.g-col-50 {
    width: calc(50% - 12px);
    display: flex;
    flex-direction: column;
    height: 100%;
}
.g-grid-4 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr; 
    gap: 25px;
    width: 100%;
    height: 100%;
}
.g-grid-4 .photo-item {
    width: 100%;
    height: 100%;
}
.photo-item {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
	border-radius:10px;
}
.photo-item:hover:after{
	content:'';
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background:rgba(0,0,0,0.5) url('./img/icons/zoom.svg') no-repeat center / 36px;
}
.photo-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.row-type-2 .photo-half {
    height: 100%;
}
.gallery-controls {
    text-align: center;
    display: none;
	padding-top:25px;
}
#loadMoreBtn {
	min-width:242px;
	margin:0 auto;
	height:70px;
	border:2px solid #fff;
	font-size:16px;
}

@media (max-width: 1024px) {
    .g-row {
        height: auto !important;
        flex-direction: column;
        gap: 20px;
    } 
    .g-col-50 {
        width: 100% !important;
        height: auto;
    }
    .photo-big, .photo-half {
        aspect-ratio: 1 / 1; 
        width: 100%;
        height: auto;
    }
    .g-grid-4 {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto; 
        height: auto;
        gap: 20px;
    }
    .g-grid-4 .photo-item {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
    }    
    .row-type-2 {
        flex-direction: row !important;
    }
    .row-type-2 .g-col-50 {
        width: calc(50% - 10px) !important;
    }
}


.breadcrumbs-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 16px 0;
    margin: 0;
    font-size: 13px;
	line-height:30px;
}
.breadcrumbs-item {
    display: flex;
    align-items: center;
}
.breadcrumbs-item:not(:last-child)::after {
    content: "-";
    margin: 0 10px;
    color: #8C94A1;
}
.breadcrumbs-link {
    text-decoration: none;
    color: #8C94A1;
}
.breadcrumbs-link:hover {
    text-decoration: underline;
}
.breadcrumbs-current {
    color: #8C94A1;
    pointer-events: none;
}
.page-bg-1{
	background:url('./img/decor/page-bg-1.jpg') no-repeat center top / 100% auto;
}
.section.section-nop{
	padding-top:0 !important;
}
.section-form2 {
	background: #1b1c21 url('./img/decor/bg3_t.jpg') no-repeat center bottom / 100% auto;
	padding-bottom: 98px;
}
.contacts-inner-form-wrap{
	margin-bottom:0 !important;
}
.contacts-inner-form-wrap .contacts-form-bg {
	padding-left:53px;
	padding-right:53px;
}
.subtext{
	margin:27px 0 70px;
}
.w-txt-nm{
	margin-bottom:10px;
}
.subtext p{
	font-size:16px;
	line-height:28px;
	margin:0 0 12px;
}
.title-sm{
	font-size:18px;
	line-height:34px;
	margin:30px 0 19px;
}

.g-ul{
	margin:0 0 20px;
}
.g-ul li{
	min-height:22px;
	position:relative;
	padding-left:30px;
	background: url('./img/icons/gal.svg') no-repeat 0 3px / 24.39px 18px;
	margin:0 0 4px;
}


.green-nums{
    counter-reset: g-counter; 
}
.green-nums-item {
    counter-increment: g-counter;
    position: relative;
	margin:0 0 22px;
}
.green-nums-item h3{
	display: flex;
	align-items: center;
	min-height:47px;
	margin:0 0 10px;
	position: relative;
	font-size:18px;
	line-height:34px;
	font-weight:bold;
	padding-left:60px;
}
.green-nums-item h3:before,
.sblocks-wnums .sblock-item h3:before{
    content: counter(g-counter);
	display:block;
	width:47px;
	height:47px;
	background:#55DE6B;
    color: #fff;
    font-weight: bold;
    color:#2F3240;
	font-size:21px;
	line-height:47px;
	text-align:center;
	border-radius:50%;
	position:absolute;
	top:0;
	left:0;
	padding-left:1px;
}
.green-nums-item p{
	font-size:16px;
	line-height:28px;
}

.sblocks-wnums{
    counter-reset: wn-counter; 
}
.sblocks-wnums .sblock-item h3:after{
	display:none;
}
.sblocks-wnums .sblock-item{
	counter-increment: wn-counter;
	padding-top:100px;
}
.sblocks-wnums .sblock-item h3{
	margin:0 0 6px;
}
.sblocks-wnums .sblock-item h3:before{
	content: counter(wn-counter);
	top:-57px;
	left:50%;
	transform:translateX(-50%);
}
.sblocks-risks .sblock-item{
	padding-top:100px;
	background:#2F3240 url('./img/icons/risk.svg') no-repeat center 45px / 47px 40px;
}


.section-faq{
	padding:80px 0 70px;
}
.questions-answers{
	display: flex;
	gap:20px;
	justify-content: space-between;
	margin-top:25px;
}
.questions-col{
	width:50%;
}
.panel{
	border-radius:20px; 
	padding:0px;
	margin-bottom:20px;
	min-height:85px;
	background: #2F3240;
	color:#fff;
}
.panel-heading{
	padding:12px 82px 12px 30px;
	min-height:85px;
	cursor:pointer;
	position:relative;
	display: flex;
	align-items: center;
}
.panel-collapse{
	display:none;
}
.question-text{
	font-weight:500;
	font-size:17px;
	line-height:26px;
	text-align:left;
	margin:0;
}
.panel-body{
	padding:0px 60px 35px 30px;
	font-size:15px;
	line-height:28px;
}
.panel-body ul{
	margin:8px 0;
	list-style:disc;
	padding-left:15px;
}
.panel-heading .open{
	display:block;
	width:44px;
	height:44px;
	background: #DFCC74;
	position:absolute;
	top:21px;
	right:20px;
	border-radius:50%;
	transition: all 0.3s ease;
}
.panel-heading .open:before,
.panel-heading .open:after{
	content:'';
	display:block;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%);
	width:13.26px;
	height:2.21px;
	background:#937136;
	border-radius:3px;
}
.panel-heading .open:after{
	transform:rotate(-90deg) translateY(-300%);
}
.ina .panel-heading .open{
	background:#937136;
}
.ina .panel-heading .open:after{
	display:none;
}
.ina .panel-heading .open:before{
	background:#fff;
}


.footer{
	
}
.footer-info{
	padding:41px 0 40px;
	flex-wrap: wrap;
	gap:25px;
	justify-content: space-between;
}
.subfooter-content{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	border-top:1px solid #2F3240;
	padding:4px 0 6px;
	font-size:13px;
	line-height:40px;
	color:#5D5F68;
	gap:20px;
}
.footer-logo{
	align-items: start;
}
.footer-block{
	padding-top:10px;
}
.footer-block h3{
	font-size:16px;
	line-height:40px;
	text-align:left;
	margin:0;
}
.footer-menu a{
	font-size:15px;
	line-height:40px;
	margin:0;
	display:inline-block;
	color:#fff;
}
.footer-menu a:hover,
.footer-menu a.active{
	color:#55DE6B;
}
.f-tg-btn{
	margin-top:11px;
	display: flex;
	align-items: center;
	height:46px;
	font-size:15px;
	text-decoration:underline;
}
.f-tg-btn i{
	display: flex;
	flex-shrink:0;
	align-items: center;
	justify-content: center; 
	width:46px;
	height:46px;
	border:1px solid #2F3240;
	border-radius:50%;
	margin-right:8px;	
}
.f-tg-btn svg{
	fill:#52B7F8;
	width:16px;
	height:14px;
	margin-right:1px;
}
.footer-contacts{
	display: flex;
	flex-direction: column;
	font-size:15px;
	line-height:40px;
}
.footer-contacts .phone{
	padding-left: 21px;
	min-height: 12px;
	background: url('./img/icons/tel.svg') no-repeat 0 14px / 12px;
}
.footer-contacts .adr{
	padding-left: 21px;
	min-height: 12px;
	background: url('./img/icons/adr.svg') no-repeat 0 14px / 11px 14px;
}
.footer-contacts .time{
	padding-left: 21px;
	min-height: 12px;
	background: url('./img/icons/time.svg') no-repeat 0 14px / 11px;
}

.policy{
	color:#5D5F68;
	text-decoration:underline;
}
.policy:hover{
	color:#55DE6B;
	text-decoration:underline;
}
.copyright{
	text-align:center;
}
.dev{
	display: flex;
	align-items: center;
	gap:9px;
	color:#5D5F68;
}


::-webkit-input-placeholder { color: #9FA4BD;opacity: 1;}
:-moz-placeholder { color: #9FA4BD; opacity: 1;}
::-moz-placeholder { color: #9FA4BD; opacity: 1;}
:-ms-input-placeholder { color: #9FA4BD; opacity: 1;}
::-ms-input-placeholder { color: #9FA4BD; opacity: 1;}
::placeholder { color: #9FA4BD; opacity: 1;}


.dm-modal.form-modal{
	max-width:493px;
	background:#F3F8FF;
	border-radius:40px;
	padding:53px 47px 47px;
}
.form-modal h3{
	font-size:30px;
	line-height:37px;
	font-weight:600;
	text-align:center;
	margin:0 0 22px;
}
.modal-form .form-input,
.modal-form .select-selected {
	height:90px;
	font-size: 16px;
	border-radius:20px;
	margin-bottom:19px;
}
.modal-form .form-select{
	margin-bottom:20px;
}
.modal-form .select-item {
	font-size:14px;
}
.modal-form .btn.btn-submit{
	height:90px;
	border-radius:20px;
	font-size:14px;
	line-height:15px;	
}
.modal-form .agreement{
	max-width:381px;
	width:100%;
	color:#21272C;
	text-align:center;
}
.modal-form .agreement a{
	color:#21272C;
}
.formtheme{
	font-size:17px;
	line-height:21px;
	margin:0 0 36px;
	text-align:center;
	color:#7C8286;
	font-weight:600;
}


.btn-hamburger{
	position:fixed;
	right: 20px;
	top: 20px;	
}
.hamburger{
	display:none;
	width:65px;
	height:65px;
	background: #2F3240;
	background: linear-gradient(332.61deg, #2F3240 1.47%, #1B1C21 98.34%);
	border:0;
	border-radius:8px;
	cursor:pointer;
	box-shadow: none;
	z-index:999;
}
.hamburger span{
	display:block;
	position:absolute;
	width:32px;
	height:3px;
	background:#65FB7D;
	background: linear-gradient(137.03deg, #65FB7D -38.77%, #35A647 121.89%);
	top:21px;
	right:17px;
	border-radius:2px; 
}
.hamburger span:nth-child(2){
	top:31px;
}
.hamburger span:nth-child(3){
	top:41px;
}
.hamburger.opened{
	right:20px;
	top:20px;
	bottom:auto;
	z-index:99999999;
}
.hamburger.opened span:nth-child(2){
	display:none;
}
.hamburger.opened span:nth-child(1),
.hamburger.opened span:nth-child(3){
	width:33px;
	top:31px;
	right: 16px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.hamburger.opened span:nth-child(3){
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.dm-overlay {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(33,39,44, 0.8);
    display: none;
    overflow: auto;
    width: 100%;
    height: 100%;
    z-index: 999999;
}
.dm-overlay:target {
    display: block;
    -webkit-animation: fade .6s;
    -moz-animation: fade .6s;
    animation: fade .6s;
}
.dm-table {
    display: table;
    width: 100%;
    height: 100%;
}
.dm-cell {
    display: table-cell;
    padding: 0 1em;
    vertical-align: middle;
    text-align: center;
}
.dm-modal {
    display: inline-block;
	display:none;
	max-width: 1270px;
	width:100%;   
    color: #21272C;
	background:transparent;
    text-align: left;
    -webkit-animation: fade .8s;
    -moz-animation: fade .8s;
    animation: fade .8s;
	position:relative;
	padding: 0;
	border-radius:40px;
}
@-moz-keyframes fade {
    from { opacity: 0; }
to { opacity: 1 }
}
@-webkit-keyframes fade {
    from { opacity: 0; }
to { opacity: 1 } 
}
@keyframes fade {
    from { opacity: 0; }
to { opacity: 1 }
}
.closeme {
	display:block;
	position: absolute;
	right: 30px;
	top: 28px;
	width: 30px;
	height: 30px;
	opacity: 1;
	z-index:9999;
	background:transparent;
	box-shadow:none;
	border:0;
}
.closeme:hover {
	opacity: 0.9;
	cursor:pointer;
}
.closeme:before, .closeme:after {
	content:'';
	position: absolute;
	top: 10px;
	right:0px;
	height: 3px;
	width: 29px;
	background-color: #35A647;
	border-radius:3px;
}
.closeme:before {
	transform: rotate(45deg);
}
.closeme:after {
	transform: rotate(-45deg);
}

.dm-overlay.menuoverlay{
	background: rgba(33,39,44, 0.97);
}
@media (max-width: 768px){
	.dm-overlay.menuoverlay{
		background: rgba(33,39,44, 1);
	}
}

.popupmenu .modal-content{
	display: flex;
	align-items: center;
	justify-content: center; 
	flex-direction: column;
	min-height:100vh;
	height:fit-content;
	padding:40px 0;
	position:relative;
}
.popupmenu .mainmenu{
	width:100%;
	padding:0;
	display: flex;
 	justify-content: center; 
	flex-direction: column;
	align-items: center;
}
.popupmenu .mainmenu li{
	display:inline-block;	
	padding:0;
}
.popupmenu .mainmenu li{
	text-align:center;
	height:auto;
}
.popupmenu .mainmenu li a{
	display:inline-block;
	color:#fff;
	font-size:19px;
	height:auto;
	line-height:18px;
	margin-bottom:20px;
	padding:6px 0;
	text-transform:none;
	font-weight:500;
}
.popupmenu .mainmenu li a.active{
	color:#55DE6B;
}
.popupmenu .header-nav {
	width:100%;
	margin:0 auto;
	display:block;
}
.popupmenu .popup-item{
	display:block;
}
.popup-tel .phone{
	display:block;
	width:fit-content;
	position:relative;
	margin: 0 auto 40px;
	text-align:center;
	font-size:22px;
	font-weight:bold;
}
.popupmenu-messengers{
	margin:20px auto 5px;
	text-align:center;
	color:#fff; 
}
.popupmenu-messengers .f-tg-btn {
	margin:10px 0 30px;
	display: flex;
	height:auto;
	flex-direction: column;
}
.popupmenu-messengers .f-tg-btn i {
	background: rgba(255,255,255,0.1);
	margin:0;
}
.popupmenu .worktime{
	text-align:center;
	color:#fff; 
	display:block;
	margin:10px auto;
	font-size:13px;
}

.dm-modal.popuptext{
	max-width:420px;
}
.modal-text-insert .popup-text{
	display:block;
	background:#fff;
	border-radius:20px;
	padding:60px 30px 50px;
	margin:0 auto;
}
.popup-response{
	text-align:center;
}


@media (max-width: 1279.9px){
	.header {
		height: auto;
		padding-bottom:60px;
	}
	.header.header-inner{
		padding-bottom:0;
	}
	.header .mainmenu {
		padding: 0px;
	}
	.header-top {
		gap:16px;
	}
	.header-phones {
		min-width:auto;
		padding-left:15px;
	}
	.header-phones .mainphone {
		font-size: 18px;
	}
	.header-btn .btn {
		min-width:150px;
		width:150px;
	}
	.header-mid {
		max-width: 722px;
		padding-top: 32px;
	}	
	.header-phones {
		min-width:auto;
	}
	.header-title {
		font-size: 32px;
		line-height: 46px;
		margin-bottom:8px;
	}
	.descriptor {
		max-width: 588px;
		font-size: 18px;
		line-height: 29px;
		margin-bottom: 25px;
	}
	.header-btns {
		gap: 10px;
		margin: 29px 0 0;
	}
	.btn {
		min-width: 150px;
		padding: 0px 20px;
		font-size:15px;
		height: 97px;
	}
	.mainmenu a {
		font-size: 15px;
	}
	.header-advantages {
		gap: 32px;
	}
	.header-advantages li {
		font-size:13px;
		line-height:20px;
	}
	h1, h2 {
		font-size: 40px;
		line-height: 58px;
		margin: 0 0 24px;
	}
	h1.h1 {
		font-size: 42px;
		line-height: 50px;
		margin: 0 0 27px;
	}
	.subtitle {
		font-size: 16px;
		line-height: 28px;
		margin: 0 0 30px;
	}
	.service-item {
		padding: 24px 20px 91px;
	}
	.btn-more {
		left:20px;
	}
	.whywe-block {
		margin-bottom: 53px;
	}
	.whywe-block .section-title{
		font-size: 36px;
		margin: 0 0 20px;
	}
	.advantage-item {
		padding: 0 0 0 70px;
	}
	.advantage-item p,
	.tab-info-text p {
		font-size: 14px;
		line-height: 24px;
	}
	.partner-block.cols{
		gap:10px;
	}
	.partner-block.cols-2 .col {
		width: calc(50% - 5px);
	}
	.tab-info-text h2 {
		font-size: 23px;
		line-height: 27px;
	}
	.t-block h3 {
		font-size: 19px;
		line-height: 28px;
	}
	.section-portfolio {
		padding-bottom: 50px;
	}
	.contacts-form-wrap {
		max-width: 600px;
		margin: 0 0 79px;
	}
	.contacts-form-bg {
		padding: 50px 52px 59px;
	}
	.contacts-form-bg .section-title {
		font-size: 38px;
		line-height: 50px;
		margin: 0 0 20px;
	}
	.form-text {
		font-size: 17px;
		line-height: 30px;
		margin: 0 auto 19px;
	}
	.form-input {
		height:97px;
	}
	.mapaddress {
		width: 475px;
		left:50%;
	}
	.map-form-bg {
		padding: 46px 49px 30px;
	}
	.serviceblock-info {
		padding: 24px 20px;
	}
	.section-topblock .header-title {
		font-size: 32px;
		line-height: 46px;
		margin: 0 0 20px;
	}
}
@media (max-width: 991.9px){
	.header-top{
		position:relative;
		padding: 18px 0 66px;
	}
	.header.header-inner .header-top{	
		padding:10px 0 66px;
	}
	.header-mainmenu{
		max-width: 605px;
		left:50%;
		transform:translateX(-50%);
		position:absolute;
		top:100px;
	}
	.header-phones {
		margin-left:auto;
	}
	.whywe-block .section-title {
		font-size: 29px;
	}
	.services-block {
		margin: 0;
	}
	.section-about {
		padding-top:0;
	}
	.partner-block.cols{
		flex-wrap: wrap;
	}
	.partner-block.cols-2 .col{
		width:100%;
	}
	.pasting-block {
		gap:10px;
	}
	.pasting-block .col{
		width:calc(50% - 10px);
	}
	.pasting-item {
		max-width: 100%;
		aspect-ratio: 2 / 1;
	}
	.cols-5 .col:nth-child(1),
	.cols-5 .col:nth-child(2),
	.cols-5 .col:nth-child(3),
	.cols-5 .col:nth-child(4) {
		width:calc(50% - 10px);
	}
	.cols-5 .col:nth-child(5),
	.cols-5 .col:nth-child(6),
	.cols-5 .col:nth-child(7) {
		width:calc(50% - 10px);
	}
	.cols-5 .col:nth-child(7) {
		width:100%;
	}
	.cols-5 .col:nth-child(n+8) {
		width:100%;
	}
	.pasting-item{
		height:200px;
	}
	.tab-info {
		min-height:auto;
	}
	.contacts-form-wrap {
		max-width: 431px;
		margin: 0 0 49px;
	}
	.contacts-form-bg {
		padding: 30px 22px 39px;
	}
	.contacts-inner-form-wrap .contacts-form-bg {
		padding-left:20px;
		padding-right:20px;
	}
	.form-text3 {
		margin-top:0;
	}
	.contacts-form-bg .section-title {
		font-size: 27px;
		line-height: 39px;
		margin: 0 0 10px;
	}
	.mapaddress {
		width:400px;
		left:auto;
		right:10px;
	}
	.map-form-bg {
		padding:40px 20px 30px;
	}
	.map-form-bg .section-title {
		font-size: 26px;
		line-height: 42px;
	}
	.footer-info {
		gap:10px;
	}
	.footer-block.footer-soc{
		width:100%;
		display: flex;
		align-items: center;
		flex-direction: row;
		justify-content: center; 
		gap:20px;
		flex-wrap: wrap;
	}
	.footer-soc .f-tg-btn{
		margin:0;
	}
	.cols-3.serviceblock-cols .col{
		width:calc(50% - 15px);
	}
	.cols-3.serviceblock-cols .col:nth-child(3n) {
		width:100%;
	}
	.welcome-text .section-title{
		font-size: 32px;
		line-height: 57px;
		
	}
	.welcome-text{
		width: 451px;
	}
	.welcome-photo {
		width: calc(100% - 474px);
	}
	
	.section-faq{
		padding-bottom:40px;
	}
	.panel {
		margin-bottom:10px;
		border-radius:15px;
	}
	.questions-col{
		width:100%;
	}
	.questions-answers{
		flex-wrap: wrap;
		gap:0;
	}
	.question-text {
		font-size:14px;
		line-height:22px;
		font-weight:500;
	}
	.panel-heading {
		padding-right:50px;
	}
	.panel-body {
		padding:0px 20px 24px 30px;
		font-size: 14px;
		line-height: 26px;
	}
	.panel-heading .open {
		top: 28px;
		width: 30px;
		height: 30px;
	}
	.panel-heading .open::before, .panel-heading .open::after {
		width:10px;
	}
	.panel-heading .open::after {
		transform: rotate(-90deg) translateY(-230%);
	}
	
	.topblock-cols .col{
		width:100%;
	}
	.product-gallery{
		max-width:605px;
		margin:0 auto;
	}
	.topslider{
		width:100%;
		height:auto;
		aspect-ratio: 605 / 408;
		border-radius: 15px;
		margin-bottom: 10px;
	}
	.thumbs-wrapper {
		padding:0 40px;
	}
	.topblock-cols .g-block-cols .col {
		width: calc(50% - 15px);
	}
	.topblock-cols .g-block-cols,
	.topblock-cols .header-btns{
		max-width:580px;
		margin:0 auto 20px;
	}
	.section-topblock .header-title {
		font-size: 32px;
		line-height: 45px;
		text-align:center;
	}
	.breadcrumbs-list {
		padding: 10px 0 8px;
		margin: 0;
		font-size: 12px;
		line-height: 16px;
	}
}
@media (max-width: 900px){
	.container{
		padding-left:10px;
		padding-right:10px;
	}
	.header-top{
		padding-right:61px;
	}
	.hamburger,
	.hamburger.opened {
		width:43px;
		height:43px;
		top:18px;
		right:10px;
		border-radius:8px;
		display:block!important;
		opacity:1!important;
	}
	.hamburger span{
		width:22px;
		height:2px;
		top: 14px;
		right: 10px;
	}
	.hamburger span:nth-child(2) {
		top: 20px;
	}
	.hamburger span:nth-child(3) {
		top: 26px;
	}
	.hamburger.opened span:nth-child(1), 
	.hamburger.opened span:nth-child(3) {
		width:28px;
		top: 21px;
		right: 7px;
	}
	
	
}
@media (max-width: 767.9px){
	.header-mainmenu,
	.header-btn{
		display:none;
	}
	.header {
		padding-bottom: 50px;
	}
	.header.header-inner {
		padding-bottom: 0;
	}
	.header-top,
	.header.header-inner .header-top{
		padding: 5px 0 12px;
		flex-wrap: wrap;
		gap:0;
	}
	.logo.logo-n,
	.header.header-inner .logo.logo-n {
		width: 166px;
		height: 91px;
	}
	.header-phones{
		width:100%;
		text-align:center;
	}
	.header-mid{
		padding-top:0;
		text-align:center;
	}
	.worktime {
		font-size:13px;
		white-space:nowrap;
	}
	.header-title {
		font-size: 25px;
		line-height: 40px;
		text-align:center;
	}
	.header-advantages{
		justify-content: center; 
		gap:20px;
	}
	.header-advantages li{
		gap:10px;
		flex-wrap: wrap;
		justify-content: center; 
		align-items: start;
		font-size: 12px;
	}
	.header-advantages .a-ico {
		margin:0;
	}
	.header-btns{
		flex-wrap: wrap;
		justify-content: center; 
	}
	h1, h2 {
		font-size: 32px;
		line-height: 45px;
		margin:0 0 8px;
	}
	h1.h1 {
		font-size: 38px;
		line-height: 45px;
		margin:0 0 8px;
	}
	.whywe-block{
		flex-wrap: wrap;
	}
	.cols.cols-2 .col,
	.cols.cols-3 .col,
	.whywe-block-col1,
	.whywe-block-col2{
		width:100%;
	}
	.whywe-block-col1,
	.whywe-block-col2{
		max-width:400px;
		margin:0 auto;
	}
	.whywe-block .section-title {
		font-size: 26px;
		text-align:center;
	}
	.advantage-item p {
		max-width:100%;
	}
	.pasting-item {
		aspect-ratio: 225 / 265;
	}
	.pasting-item p{
		font-size: 14px;
		line-height: 22px;
	}
	.tabs-nav .swiper-button-next, .tabs-nav .swiper-button-prev {
		top:30px;
	}
	.tab-btn-img {
		border-radius:10px;
		margin-bottom:5px;
	}
	.tabs-nav {
		margin-bottom:15px;
	}
	.mainGallery {
		border-radius: 10px;
		margin-bottom: 8px;
	}
	
	.popup-tel .phone{
		position:absolute;
		top:65px;
		left:0;
	}
	.popup-tel{
		position:absolute;
		top: -36px;
		left: -7px;		
	}
	.thumbGallery {
		height: 55px;
	}
	.mainGallery .swiper-button-prev {
		left:0;
	}
	.mainGallery .swiper-button-next {
		right:0;
	}
	.t-block-cols.cols{
		gap:5px;
	}
	.t-block-cols.cols .col{
		width:calc(50% - 3px);
	}
	.contacts-form-wrap{
		margin: 0 auto 50px;
	}
	.contacts-form-screenshot{
		display:none;
	}
	.tab-info-text h2 {
		text-align:center;
	}
	.tab-info .btn{
		margin:0 auto;
	}
	.welcome-text{
		width:100%;
		text-align:center;
		display: flex;
		justify-content: center; 
		flex-direction: column;
		align-items: center;
	}
	.welcome-text .section-title {
		font-size: 29px;
		text-align:center;
		line-height: 45px;
	}
	.worktime-text {
		font-size: 18px;
		line-height: 22px;
		margin: 0 0 18px;
	}
	p.address {
		font-size:16px;
		line-height: 22px;
		margin: 0 0 13px;
		text-align:left;
	}
	.w-phones {
		width:fit-content;
		font-size: 23px;
		line-height: 40px;
		text-align:left;
	}
	.welcome-photo{
		display:none;
	}
	.welcome-block-inner{
		flex-wrap: wrap;
	}
	.welcome-text-inner,.welcome-block-inner .welcome-photo{
		width:100%;
	}
	.welcome-block-inner .welcome-photo{
		display:block;
		height:240px;
	}
	.section-form {
		padding-bottom:40px;
	}
	#map,  .mapaddress {
		width:100%;
		position:static;
	}
	#map{
		height:400px;
	}
	.map{
		height:auto;
	}
	
	.footer-logo{
		margin:0 auto;
		height: 110px;
	}
	.footer-block{
		width:100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.footer-menu{
		display: flex;
		flex-direction: row;
		gap:25px;
	}
	.footer-block.footer-soc{
		gap:5px;
	}
	.subfooter-content{
		gap:5px;
	}
	.section-gallery{
		margin-top:30px;
	}
	.section-wait {
		padding: 0 0 40px;
	}
	
	.panel-heading {
		padding: 12px 50px 12px 20px;
	}
	.subtext{
		margin:20px 0 30px;
	}
	.subtext p{
		font-size:14px;
		line-height:26px;
		margin:0 0 10px;
		text-align:center;
	}
	.welcome-text-inner{
		padding-bottom:20px;
	}
	.sblocks.wblocks .sblock-item {
		padding: 20px;
	}
	.sblock-img {
		width: 100%;
		height: 50px;
		margin: 0 0 25px;
	}
	.sblocks{
		gap:10px;
	}
	.wblocks .sblock-item h3 {
		margin: 0 0 5px;
	}
	.section-text-minbp {
		padding-bottom: 20px;
	}
	.section-text-mt{
		padding-top:30px;
	}
	.topblock-cols .header-btns{
		padding:0 10px;
	}
}
@media (max-width: 420.9px) {
	.g-block-cols .t-block h3 {
		font-size: 20px;
		margin: 0 0 3px;
	}
	.g-block-cols .t-block p {
		font-size: 13px;
		line-height: 20px;
	}
	.topblock-cols .header-btns{
		flex-wrap: wrap;
		gap:25px;
		justify-content: center; 
	}
	.topblock-cols{
		gap:10px;
	}
	.serviceblock-btns{
		gap:8px;
	}
	.serviceblock-btns .btn{
		max-width:calc(50% - 4px);
		font-size: 14px;
	}
}

table {
	border-collapse: collapse; 
	width: 100%; 
	border: 2px solid #2f3240;
}
table th,
table td {
	padding: 10px 15px;
	text-align: center;
	border: 2px solid #2f3240;
	vertical-align:middle;
}
.section-text table td p,
table td p{
	width:100%;
	display: flex;
	align-items: center;
	justify-content: center; 
	text-align:left;
	font-size:16px;
	line-height:1.2rem;
}
table td:first-child {
	text-align: left;
}
table.table-c th,
table.table-c td,
table.table-c td:first-child{
	text-align: center;
}
.green-nums-item h3 {
	justify-content: start;
	text-align:left;
}
@media (max-width: 768px) {
	.cols-4.sblocks .col{
		width:calc(50%  - 10px);
	}
}
@media (max-width: 600px) {
	table th, table td {
		padding: 5px;
		font-size:12px;
	}
	.section-text table td p,
	table td p{
		font-size:12px;
		text-align:left;
	}
	.cols-4.sblocks .col{
		width:100%;
	}
}
.comparison-swiper {
	overflow: visible;
}
.comparison-swiper .swiper-slide {
	padding: 24px 0;
}
.comparison-table.swiper{
	overflow:visible;
}
@media (max-width: 768px) {
	.section-comparison{
		overflow: hidden;
	}
    .comparison-swiper {
        width: 100%;
        overflow: visible;
		cursor: grab;
    }
    .comparison-swiper .swiper-slide {
        width: auto !important;
        display: flex;
        justify-content: flex-start;
    }
    .comparison-table {
		width: 580px;
    }
}
@media (min-width: 769px) {
    .comparison-swiper .swiper-wrapper {
        display: block !important;
        transform: none !important;
    }    
}


.section-title, .panel, .anim1, .anim2, .h1{
	opacity: 0;
	transform-style: preserve-3d;
	transform: translateY(50px);
	transition: all 0.8s ease-out;
}
.section-title, .anim2 {
	transform: translateY(-50px);
}
.h1 {
	transform: translateY(-10px);
}
.element-show {
	opacity: 1;
	transform: translateY(0);
}
.anim1:nth-child(2), .anim2:nth-child(2) { transition-delay: 0.1s; }
.anim1:nth-child(3), .anim2:nth-child(3) { transition-delay: 0.2s; }
.anim1:nth-child(4), .anim2:nth-child(4) { transition-delay: 0.3s; }
.anim1:nth-child(5), .anim2:nth-child(5) { transition-delay: 0.4s; }
.anim1:nth-child(6), .anim2:nth-child(6) { transition-delay: 0.5s; }
.anim1:nth-child(7), .anim2:nth-child(7) { transition-delay: 0.6s; }
.anim1:nth-child(8), .anim2:nth-child(8) { transition-delay: 0.7s; }
.anim1:nth-child(9), .anim2:nth-child(9) { transition-delay: 0.8s; }
.anim1:nth-child(10), .anim2:nth-child(10) { transition-delay: 0.9s; }
.anim1:nth-child(11), .anim2:nth-child(11) { transition-delay: 0.98s; }



.floating-btns-block{
	position:fixed;
	top:50%;
	right:30px;
	transform:translateY(-50%);
	z-index:99;
}
.floating-btn{
	margin:0 0 20px;
	text-align:center;
	display: flex;
	justify-content: center; 
	align-items: center;
	flex-direction: column;
	width:45px;
	height:45px;
	transition:transform 0.3s ease;
	border-radius:50%;
	backdrop-filter: blur(10px);
	background: rgba(0, 0, 0, 0.1);
	border:1px solid #fff;
	box-shadow:none;
	cursor:pointer;
}
.floating-btn:hover{
	transform:scale(1.04);
	background: rgba(0, 0, 0, 0.3);
}
.floating-btn svg{
	fill:#fff;
}
.floating-tel{
	width:18px;
	height:18px;
}
.floating-tg{
	width:18px;
	height:15px;
	margin-right:3px;
}
@media (max-width: 991.9px) {
	.floating-btns-block {
		right:5px;
	}
}