html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}ul{list-style: none;}input:focus,select:focus,textarea:focus{outline: none;}


body{
	font-family: 'RF Dewi';
	background: #fff;
	font-size: 16px;
	line-height: normal;
	color: #303030;
	min-width: 320px;
	overflow-x: hidden;
	position: relative;
}

html{overflow-x: hidden;}



.container{max-width: 1120px; width: 100%; padding: 0 40px; margin: 0 auto; box-sizing: border-box;}






header{position: absolute; top: 0; left: 0; width: 100%; z-index: 300; padding: 23px 0;  transition: all 0.15s;}
	.animate{-webkit-animation: pulsing 2s infinite; animation: pulsing 2s infinite;}

/*
@-webkit-keyframes pulsing {
  0% {
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5)
  }
  50% {
    -webkit-transform: scale(1.0, 1.0);
    transform: scale(1.0, 1.0);
  }
  100% {
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
  }
}*/

@keyframes pulsing {
  0% {
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
    transform: rotateY(180deg);
  }
  50% {
    -webkit-transform: scale(1.0, 1.0);
    transform: scale(1.0, 1.0);
    transform: rotateY(360deg);
  }
  100% {
    -webkit-transform: scale(0.5, 0.5);
    transform: scale(0.5, 0.5);
    transform: rotateY(180deg);
  }
}





	header .flex{align-items: center;}
	header .pull{display: none;}
	header nav{margin-left: 45px}
		header nav ul{display: flex; align-items: center;}
		header nav li{display: inline-block; margin-right: 10px; position: relative;}
			header nav li a{display: flex; padding: 0 15px; background: rgba(255, 255, 255, 0.05); border-radius: 40px; height: 36px; align-items: center; justify-content: center; text-transform: uppercase; color: #fff; font-size: 12px; font-weight: 600;}
			header nav li svg{margin-right: 10px;}
			header nav li:hover a{color: #A2B691; background: #fff}
			header nav li.has:after{position: absolute; top: calc(50% - 8px); left: 15px; width: 16px; height: 16px; background: url("../img/minus.svg") 50% 50% no-repeat; content: ''; opacity: 0;}
			header nav li:hover:after{opacity: 1}
		header nav .sub-menu{position: absolute; top: 100%; left: 0; box-sizing: border-box; width: 320px; display: none; padding: 20px 5px 10px;}
			header nav li:hover .sub-menu{display: block;}
			header nav .sub-menu:after{position: absolute; top: 10px; left: 0; width: 100%; height: calc(100% - 10px); background: #fff; content: ''; border-radius: 20px;}
			header nav .sub-menu li{display: block; margin: 0; width: 100%; position: relative; z-index: 2}
				header nav .sub-menu li a{justify-content: flex-start; background: transparent; color: #151515; text-transform: none; font-weight: normal; font-size: 14px;}
					header nav .sub-menu li a:hover{background: #E4EADF;}





#promo{padding: 350px 0 125px; position: relative; background: url("../img/bg_promo.jpg") 50% 0% no-repeat; background-size: cover; color: #fff;}
	#promo h1{font-size: 84px; font-weight: 700; max-width: 680px; margin-bottom: 60px; line-height: 84px}
	#promo.promo__page{padding: 170px 0 210px}
	#promo.promo__page .inn{max-width: 100%; align-items: center; justify-content: space-between;}
		#promo.promo__page .inn p{margin-bottom: 0; font-size: 18px;}
	#promo.promo__page h1{max-width: 870px}
	#promo .flex{justify-content: flex-end;}
	#promo .inn{max-width: 290px;}
		#promo .inn p{font-size: 16px; margin-bottom: 23px; line-height: 24px;}





#about{padding: 10px 0; background: #fff; border-radius: 40px 40px 0 0; margin-top: -55px; position: relative; text-align: center;}
	#about .text{display: flex; align-items: center; justify-content: center; flex-wrap: wrap; margin: 0 auto; max-width: 1070px; line-height: 58px; position: relative;}
	#about .text span{font-size: 14px; font-weight: 600; text-transform: uppercase; position: absolute; top: 4px; left: calc(50% - 380px)}
	#about .text p{font-size: 40px; font-weight: 600;}
	#about .text b.color{color: #C5C5BF; font-weight: 600;}
	#about .text i{width: 70px; height: 10px; border-radius: 50%; display: inline-block; position: relative; top: -38px}
		#about .text i svg{position: absolute; top: 25px; left: calc(50% - 10px);}
			#about .text i:hover svg{transform: scale(1.65);}





#services{}
	#services .list__services{margin-top: -20px; position: relative;}
	#services .item{border-radius: 20px; background: #F1F4EF; margin: 0 20px 5px; cursor: pointer;}
		#services .item.open .inn{display: block; cursor: default;}
		#services .item:nth-child(2){background: #E4EADF}
		#services .item:nth-child(3){background: #D7DFCF}
		#services .item:nth-child(4){background: #CED8C5}
		#services .item:nth-child(5){background: #BCCBB0}
		#services .item .inn{padding-bottom: 45px; display: none;}
		#services .item .title{padding: 32px 0; font-size: 30px; font-weight: 600; align-items: center; min-height: 46px;}
			#services .item .title b{font-weight: normal;}
			#services .item .title i{display: block; font-style: normal; opacity: 0.5; font-weight: normal; font-size: 18px}
			#services .item .title span{font-size: 25px; font-weight: normal; opacity: 0.3}
	#services .item .data{align-items: flex-end;}
		#services .item .data .text{max-width: 450px}
			#services .item .data .text p{margin-bottom: 30px; line-height: 24px;}
		#services .item .data .image,#services .item .data .image img{width: 207px; border-radius: 20px}





#works{background: #fff; padding: 160px 0; border-radius: 0 0 40px 40px; position: relative; z-index: 3}
	#works .active__slide{position: relative; width: 383px;}
		#works .active__slide img{width: 100%; border-radius: 58px;}
		#works .active__slide .text{position: absolute; top: 0; left: calc(100% + 28px); width: 180px}
			#works .active__slide .text p{font-weight: 600; font-size: 20px; margin-bottom: 10px}
			#works .active__slide .text span{display: block;}
	#works .list__works{width: calc(100% - 615px); position: absolute; top: 276px; left: calc(50% + 100px); width: calc(50% - 100px);}
	#works .swiper-slide{width: 264px; opacity: 0.7}
		#works .swiper-slide .info{display: none;}
		#works .swiper-slide img{width: 100%; height: auto; border-radius: 40px;}





#consultation{background: #A2B691; padding: 200px 0 0; color: #fff; margin-top: -40px; position: relative;}
	#consultation .block__title{font-size: 14px; text-transform: uppercase; font-weight: 600;}
	#consultation .text{max-width: 685px;}
		#consultation .text p{margin-bottom: 35px; font-size: 40px; font-weight: 600; line-height: 38px;}
	#consultation img{margin: 88px auto 0;}





#advantages{padding: 160px 0 10px; border-radius: 40px 40px 0 0; position: relative; margin-top: -40px; background: #fff;}
	#advantages .item{width: 417px; position: relative; box-sizing: border-box; padding: 50px 45px; margin-bottom: 28px; background: #E4EADF; border-radius: 40px;}
		#advantages .item:nth-child(2),#advantages .item:nth-child(3){width: 595px}
		#advantages .item:nth-child(2){padding: 0}
			#advantages .item:nth-child(2) img{position: absolute; bottom: 0; left: 0; width: 100%; border-radius: 0 0 40px 40px}
		#advantages .item:nth-child(3){background: #D7DFCF}
		#advantages .item:nth-child(4){background: #F1F4EF}
		#advantages .item .count{font-weight: 600; font-size: 40px; align-items: center; margin-bottom: 45px; line-height: 1;}
		#advantages .item:nth-child(2) .image.mobile{display: none;}






#certificates{padding: 150px 0 160px; border-radius: 0 0 40px 40px; background: #fff; position: relative; z-index: 3}
	#certificates .bt{margin-bottom: 110px}
	.swiper-certificates{overflow: hidden;}
	#certificates .swiper-slide{height: 500px; display: flex; align-items: center;}
		#certificates .swiper-slide a{display: block; margin: 15px 0}
	#certificates .swiper-wrapper{transition-timing-function: linear;}





#contacts{padding: 200px 0 0; background: #A2B691; color: #fff; position: relative; margin-top: -40px}
	#contacts .text{max-width: 330px}
	#contacts .bt{line-height: 46px; margin-bottom: 45px;}
	#contacts .form{max-width: 545px; width: 100%;}
	#contacts .data{padding-bottom: 130px; border-bottom: 1px solid rgba(236, 240, 233, 0.3);}
	#contacts .ct{padding: 100px 0; align-items: flex-end;}
		#contacts .ct span{display: block; margin-bottom: 15px; display: block; color: #DAE2D3}
		#contacts .ct p,#contacts .ct a{color: #fff; font-size: 25px;}
		#contacts .ct p{margin-bottom: 5px}
		#contacts .ct a{border-bottom: 1px solid transparent;}
			#contacts .ct a:hover{border-color: #fff;}
	#contacts .ct .socials a{margin-left: 10px; border-radius: 50%; display: flex; align-items: center; justify-content: center; border: 1px solid #C7D3BD; width: 54px; height: 54px;}
		#contacts .ct .socials a:hover{border-color: #fff; background: #fff}
		#contacts .ct .socials a:hover svg path{fill: #A2B691;}

	#contacts img{margin: 0 auto }





#error__page{min-height: 100vh; padding-top: 100px; box-sizing: border-box; box-sizing: border-box; text-align: center; background: #A2B691; color: #fff; display: flex; justify-content: center; align-items: center;}
	#error__page p{font-size: 55px; font-weight: 600; line-height: 48px; margin-bottom: 45px}
	#error__page img{position: relative; left: -40px}





#about__service{padding: 120px 0 60px; border-radius: 40px 40px 0 0; margin-top: -40px; position: relative; z-index: 3; background: #fff;}
	#about__service .block__title{text-transform: uppercase; font-size: 14px; margin-bottom: 25px; font-weight: 600;}
	#about__service p{max-width: 775px; font-size: 40px; line-height: 45px; font-weight: 600; color: #C5C5BF}
		#about__service p strong{font-weight: 600; color: #303030}





#description__services{padding: 100px 0}
	#description__services .container{max-width: 1190px}
	#description__services .item{border-radius: 70px; padding: 55px; background: #F1F4EF;}
		#description__services .item:first-child{margin-bottom: 30px}
		#description__services .item:nth-child(2){background: #E4EADF; position: absolute; width: 1000px; z-index: 20;}
		#description__services .item .image{width: 445px}
		#description__services .item .data{position: relative; align-items: flex-end; width: 510px}
			#description__services .item .data span{position: absolute; top: 0; left: 0; opacity: 0.4; text-transform: uppercase;}
			#description__services .item .data .title{font-size: 30px; font-weight: 600; line-height: 35px; margin-bottom: 30px}
			#description__services .item .data p{margin-bottom: 35px; line-height: 24px;}





#process{padding: 60px 0 160px}
	#process .block__title{text-transform: uppercase; font-size: 14px; margin-bottom: 25px; font-weight: 600;}
	#process .list__process{padding: 150px 0 0; position: relative;}
	#process .swiper{overflow: inherit;}
	#process .flex p{max-width: 600px; font-size: 40px; font-weight: 600; line-height: 38px}
	#process .swiper-slide{width: 534px;}
	#process .item{padding: 45px 40px; box-sizing: border-box; transition: all 0.15s; background: #F1F4EF; border-radius: 30px; position: relative; min-height: 230px;}
		#process .swiper-slide:nth-child(2) .item{background: #E4EADF; transform: rotate(-5deg);}
		#process .swiper-slide:nth-child(3) .item{background: #D7DFCF; transform: rotate(5deg);}
		#process .swiper-slide:nth-child(4) .item{background: #CED8C5; transform: rotate(-5deg);}
		#process .swiper-slide:nth-child(5) .item{background: #BCCBB0; transform: rotate(5deg);}
		#process .swiper-slide.swiper-slide-active .item,#process .swiper-slide:last-child .item{transform: none;}
		#process .item span{display: flex; align-items: center; justify-content: center; border-radius: 50%; color: #fff; font-size: 16px; font-weight: 600; width: 35px; height: 35px; background: #A2B691; position: absolute; top: 15px; right: 15px;}
		#process .item .title{font-size: 25px; font-weight: 600; margin-bottom: 25px}
		#process .item p{line-height: 24px;}





#popular{padding: 0 0 160px; border-radius: 0 0 40px 40px; background: #fff; position: relative; z-index: 4}
	#popular .item img{width: 100%; height: auto; border-radius: 50px; margin-bottom: 7px;}
	#popular .item .title a{position: relative; color: #303030; font-weight: 600; line-height: 20px; display: block; min-height: 70px; display: flex; align-items: center; padding: 5px 65px 5px 40px; border-radius: 50px; background: #F1F4EF url("../img/more.svg") calc(100% - 20px) 50% no-repeat;}
		#popular .item .title a:hover{background-color: #CED8C5}
	#popular .list__popular{position: relative;}
















.bt{margin-bottom: 50px; font-size: 55px; line-height: normal; font-weight: 600; letter-spacing: -2px; align-items: center;}
	.bt p{letter-spacing: normal; max-width: 420px; font-weight: normal; color: #555555; font-size: 16px; line-height: 24px;}
	.bt strong{font-weight: 600; border-bottom: 2px solid #EDC126; color: #fff; text-shadow: 1px 0 1px #000, 0 1px 1px #000, -1px 0 1px #000, 0 -1px 1px #000;}







#works .swiper-button-next, #works .swiper-button-prev{width: 42px; height: 42px; background: transparent; box-sizing: border-box; top: 100px; margin-top: 0; transition: all 0.25s ease-out; display: flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid #A2B691;}
#works .swiper-button-next:hover, #works .swiper-button-prev:hover{background: #A2B691}
#works .swiper-button-next:hover svg path, #works .swiper-button-prev:hover svg path{stroke: #fff;}
#works .swiper-button-prev{left: -205px}
#works .swiper-button-next{right: calc(100% + 110px)}


#process .swiper-button-next, #process .swiper-button-prev{width: 42px; height: 42px; background: transparent; box-sizing: border-box; top: 30px; margin-top: 0; transition: all 0.25s ease-out; display: flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid #A2B691;}
#process .swiper-button-next:hover, #process .swiper-button-prev:hover{background: #A2B691}
#process .swiper-button-next:hover svg path, #process .swiper-button-prev:hover svg path{stroke: #fff;}
#process .swiper-button-prev{left: calc(50% - 80px)}
#process .swiper-button-next{right: calc(50% - 16px)}


#popular .swiper-button-next, #popular .swiper-button-prev{width: 42px; height: 42px; background: transparent; box-sizing: border-box; top: -100px; margin-top: 0; transition: all 0.25s ease-out; display: flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid #A2B691;}
#popular .swiper-button-next:hover, #popular .swiper-button-prev:hover{background: #A2B691}
#popular .swiper-button-next:hover svg path, #popular .swiper-button-prev:hover svg path{stroke: #fff;}
#popular .swiper-button-prev{left: calc(100% - 98px)}
#popular .swiper-button-next{right: 0}





.swiper-button-prev svg,.swiper-button-next svg{width: 14px!important;}

.swiper-button-prev{left: 8px;}
.swiper-button-next{right: 8px;}
.swiper-button-next:after, .swiper-button-prev:after{display: none;}

.swiper-scrollbar.swiper-scrollbar-horizontal{opacity: 1!important; max-width: 400px; left: calc(50% - 200px)!important}
.swiper-scrollbar-drag{background: #EDC126!important}



.form input[type="text"],.form input[type="email"],.form input[type="tel"],.form input[type="number"],.form textarea{width: 100%; height: 64px; margin-bottom: 5px; border: none; border-radius: 20px; padding: 0 25px; font-size: 16px; color: #000}
.form .btn{width: 100%; margin-top: 20px;}
.form textarea{resize: none; height: 150px; padding: 15px 20px;}

label.checkbox{display: block; cursor: pointer; position: relative; padding: 0 0 0 25px; margin: 7px 0 24px; cursor: pointer; font-size: 14px; font-family: 'Arial', sans-serif;}
label.checkbox:after{position: absolute; top: calc(50% - 7px); left: 0; width: 14px; height: 14px; box-sizing: border-box; border: 1px solid #B2B2B2; content: ''; border-radius: 2px; background: #3A74E4;}
label.checkbox i{font-style: normal;}
label.checkbox i:after{position: absolute; top: calc(50% - 7px); left: 0px; width: 14px; height: 14px; content: ''; background: url("../img/check.svg") 50% 50% no-repeat; box-sizing: border-box; display: none; border-radius: 5px; z-index: 2;}
label.checkbox input:checked + i:after{display: block;}


.box__modal{display: none; font-family: 'RF Dewi'; background: #fff!important; max-width: calc(100% - 30px)!important; box-sizing: border-box!important; width: 1300px!important; padding: 50px 140px!important; border-radius: 70px!important;}
	.box__modal .ct.flex{justify-content: flex-start; align-items: center; padding-bottom: 50px;}
		.box__modal .ct a{color: #303030; border-bottom: 1px solid transparent;}
			.box__modal .ct a:hover{border-color: #303030}
		.box__modal .ct span{width: 5px; height: 5px; display: block; border-radius: 50%; background: #A2B691; margin: 0 15px;}
	.box__modal .bt{margin-bottom: 35px;}
	.box__modal .btn:hover{background: #303030; color: #fff}
	.box__modal .form{padding: 55px 0 0}
	.box__modal p{font-size: 16px; margin-bottom: 10px;}
	.box__modal p strong{font-size: 20px; font-weight: 600;}
	.box__modal input[type="text"],.box__modal input[type="tel"],.box__modal input[type="email"]{width: calc(50% - 5px); background: rgba(215, 223, 207, 0.3);}

	.fancybox__content>.f-button.is-close-btn{top: 40px!important; right: 40px!important; background: #C5C5BF url("../img/close.svg") 50% 50% no-repeat!important; width: 64px; height: 64px; border-radius: 50%; opacity: 1!important}
		.fancybox__content>.f-button.is-close-btn:hover{background-color: #303030!important}
	.fancybox__content>.f-button.is-close-btn svg{display: none!important;}


#privacy{padding: 40px!important; background: #EDC126!important}

.content{line-height: 1.3;}
.content p{margin-bottom: 15px;}


.select{width: 100%; font-size: 18px; font-family: 'Arial', sans-serif; height: 50px; cursor: pointer; box-sizing: border-box; border: 1px solid #000; padding: 0 40px 0 24px; position: relative; display: flex; align-items: center; justify-content: flex-start;}
	.select:after{width: 20px; height: 10px; position: absolute; top: calc(50% - 5px); right: 25px; content: ''; background: url("../img/arr.svg") 50% 50% no-repeat; transform: rotate(180deg);}
	.select.open:after{transform: rotate(0deg);}
	.select .current{position: relative;}
	.select ul{position: absolute; top: 100%; display: none; left: -1px; width: calc(100% + 2px); z-index: 20; background: #EDC126; border: 1px solid #000; border-top: none;}
	.select ul li{padding: 10px 24px; font-size: 14px; border-top: 1px solid #000; cursor: pointer; transition: all 0.15s;}
		.select ul li:hover{color: #fff; background: #000;}

.hidden{display: none;}



.flex{display: flex; justify-content: space-between; flex-wrap: wrap;}
.grid{display: grid; grid-template-columns: repeat(3,1fr); gap: 24px;}




.clearfix{clear: both;}
.center{display: inline-block; width: 100%; text-align: center;}


a, svg, svg path{text-decoration: none; transition: all 0.25s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
	a:hover{transition: all 0.25s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
a:focus{outline: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}

div,img{display: block;-webkit-tap-highlight-color: rgba(0, 0, 0, 0); height: auto;}
img{max-width: 100%;}


.btn{display: inline-block; font-family: 'RF Dewi'; text-align: center; cursor: pointer; border: none; transition: all 0.25s ease-out; box-sizing: border-box;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
	.btn:hover{transition: all 0.25s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}




.btn-green{position: relative; padding: 25px 30px; font-weight: 700; font-size: 14px; color: #fff; background: #A2B691; border-radius: 66px; text-transform: uppercase;}
	.btn-green:hover{background: #fff; color: #A2B691;}
	@keyframes background{100% {background-position: right center; background: #819b6a}}
	@keyframes backgroundH{100% {background-position: right center; background: #eeffdf}}



#promo .btn-green::after, #promo .btn-green::before{content: ''; position: absolute; border: 1px solid #A2B691; left: -8px; opacity: 0.7; right: -8px; top: -8px; bottom: -8px; border-radius: 66px; animation: pulse 2.5s linear infinite;}
#promo .btn-green::after{animation-delay: 1.25s; left: -16px; right: -16px; top: -16px; bottom: -16px;}
@keyframes pulse {0% {transform: scale(0.5);opacity: 0;}50% {opacity: 1;}100% {transform: scale(1.2);opacity: 0;}}







.btn-call{background: #fff; height: 36px; width: 140px; display: flex; align-items: center; justify-content: center; color: #A2B691; text-transform: uppercase; font-size: 12px; font-weight: 600; border-radius: 66px}
	.btn-call svg{margin-left: 10px;}
	.btn-call:hover{background: #A2B691; color: #fff}
	.btn-call:hover svg path{fill: #A2B691;}
	.btn-call:hover svg circle{fill: #ffffff}



.btn-white{background: #fff; height: 36px; width: 166px; display: flex; align-items: center; justify-content: center; color: #A2B691; text-transform: uppercase; font-size: 12px; font-weight: 600; border-radius: 66px}
	.btn-white svg{margin-right: 10px;}
	.btn-white:hover{background: #A2B691; color: #fff}
	.btn-white:hover svg path{fill: #A2B691;}
	.btn-white:hover svg circle{fill: #ffffff}



.btn-white-tr{background: transparent; color: #fff; border-radius: 66px; border: 1px solid #fff; padding: 25px 30px; font-weight: 700; font-size: 14px; text-transform: uppercase;}
	.btn-white-tr:hover{background: #fff; color: #A2B691}





#navigation{position: fixed; display: none; bottom: 0; right: 0; width: 100%; height: calc(100% - 90px); box-sizing: border-box; z-index: 199; padding: 25px 30px; overflow-y: auto; background: #F1F4EF; border-radius: 20px 20px 0 0}
#navigation.f-nav{border-radius: 0; height: calc(100% - 70px)}
#navigation li{margin-bottom: 0; border-bottom: 1px solid rgba(162, 182, 145, 0.2); position: relative;}
#navigation li:last-child{border-bottom: none;}
#navigation li a{display: block; padding: 15px 0; line-height: 1; text-transform: uppercase; font-weight: 600; color: #303030; font-size: 20px; position: relative;}
#navigation li a svg{position: absolute; top: calc(50% - 16px); right: 0; width: 32px; height: 32px;}
#navigation li .sub-menu{display: none;}
#navigation li:hover .sub-menu{display: block;}
#navigation li li a{text-transform: none; font-size: 16px; font-weight: normal; line-height: 1.2; padding: 10px 0}
#navigation li li{border-bottom: none;}
#navigation li.has:after{position: absolute; top: 9px; right: 0px; width: 32px; height: 32px; background: url("../img/minus.svg") 50% 50% no-repeat; background-size: 100%; content: ''; opacity: 0;}
#navigation li.open:after{opacity: 1}
#navigation .btn{width: 100%; margin-top: 70px}
#navigation .contacts{font-size: 18px; margin-bottom: 20px; padding-top: 70px}
#navigation .contacts p{margin-top: 15px; line-height: 1;}
#navigation .contacts a{color: #303030}
#navigation .contacts span{opacity: 0.4; font-size: 14px;}
#navigation .btn{height: 65px; font-size: 14px; width: 100%;}
#navigation .btn svg{width: 34px; height: 34px;}



.wpcf7-response-output{margin: 15px 0 0!important; display: flex; justify-content: center; align-items: center; min-height: 50px; border-color: rgba(236, 240, 233, 0.3)!important; border-radius: 10px}
.wpcf7-form-control-wrap{position: relative; display: block;}
.wpcf7-not-valid-tip{position: absolute!important; top: 0!important; right: 10px!important; text-align: center!important; width: 20px!important; height: 100%!important; line-height: 64px!important; font-size: 20px!important; font-weight: 700!important;}

.form .flex{width: 100%;}
.form .flex p{display: flex; justify-content: space-between; width: 100%; flex-wrap: wrap;}
.form .flex p .wpcf7-form-control-wrap{width: 49%;}
.form .flex p input{width: 100%; max-width: 100%;}


input,textarea,select,button{-webkit-appearance: none; box-sizing: border-box; font-family: 'Arial', sans-serif;}

/*responsive*/




@media screen and (max-width: 1200px){
	.container{padding: 0 20px}
	header nav,header .callback{display: none;}
	header .pull{display: flex; position: relative; width: 46px; height: 46px; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.1); border-radius: 50%;}
	header .pull:after{opacity: 0; transition: all 0.15s; background: url("../img/close.svg") 50% 50% no-repeat; position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''}
	header .pull.open:after{opacity: 1}
	header .pull.open svg{opacity: 0}
	header{position: fixed; z-index: 200;}
	header.f-nav{background: #000; padding: 12px 0;}


	#promo{padding: 250px 0 120px}

	#about,#works{padding: 100px 0}
	#about .text p br{display: none;}
	#about .text span{position: relative; left: 0}


	#works .active__slide{display: none;}
	#works .list__works{position: relative; top: 0; left: 0; width: 100%;}
	#works .swiper-slide{opacity: 1}
	#works .swiper-slide .info{display: block; margin-bottom: 25px;}
	#works .swiper-slide .info p{font-size: 20px; font-weight: 600;}
	#works .swiper-slide .info span{display: block; margin-top: 10px;}


	#consultation{padding: 100px 0 0}
	#consultation .block__title{width: 100%; margin-bottom: 20px;}


	#advantages{padding-top: 100px}
	#advantages .item{width: 100%!important; min-height: 205px; box-sizing: border-box;}
	#advantages .item:first-child{margin-bottom: 220px}


	#certificates{padding: 100px 0}
	#certificates .bt{margin-bottom: 40px}
	#certificates .swiper-slide{height: 220px}


	.box__modal{padding: 60px 15px 325px!important}
	.box__modal .logo{display: none;}
	.box__modal .form{padding: 0}
	.fancybox__content>.f-button.is-close-btn{top: 15px!important; right: 15px!important}


	#contacts{padding-top: 140px}
	#contacts .text{max-width: 100%; width: 100%; margin-bottom: 40px}
	#contacts .form{max-width: 100%; width: 100%;}
	#contacts .ct.flex{align-items: flex-start;}
	#contacts .ct .col{width: 50%;}
	#contacts .ct .col.socials{margin-top: 40px; justify-content: flex-start;}
	#contacts .ct .col.socials a{margin: 0 10px 0 0;}
	#contacts .ct p,#contacts .ct p a{font-size: 20px;}


	.box__modal,#privacy{padding: 30px 15px 50px!important; border-radius: 30px!important; text-align: center;}
	.box__modal .ct.flex span{display: none;}
	.box__modal .ct.flex a{margin-right: 40px}
	.box__modal .form{max-width: 100%; width: 100%;}
	.fancybox__content>.f-button.is-close-btn{width: 40px!important; height: 40px!important; top: 25px!important; right: 15px!important}
	.box__modal .bt{font-size: 35px; margin-bottom: 30px;}
	.box__modal p strong{font-size: 19px;}
	.box__modal p{font-size: 14px; margin-bottom: 30px;}
	.box__modal input[type="text"], .box__modal input[type="tel"], .box__modal input[type="email"]{width: 100%;}

	#error__page img{left: 0}


	#description__services .item .image{width: 100%; margin-bottom: 25px}
	#description__services .item .image img{width: 100%;}
	#description__services .item .data{width: 100%;}
	#description__services .item .data span{position: relative; display: block; margin-bottom: 20px;}
	#description__services .item:nth-child(2){position: relative; width: 100%; box-sizing: border-box;}


	#process .list__process{padding: 50px 0 0}
	#process .swiper-button-next, #process .swiper-button-prev{top: calc(100% + 30px)}
	#process .swiper-button-prev{left: 0;}
	#process .swiper-button-next{right: calc(100% - 100px)}

	html.with-fancybox{overflow-x: hidden!important;}
}


@media screen and (max-width: 767px){
	.bt{font-size: 35px; margin-bottom: 40px}
	.bt br{display: none;}
	.bt p{width: 100%; max-width: 100%; margin-top: 30px}


	#promo{background: url("../img/bg_promo_m.jpg") 50% 0 no-repeat; background-size: cover; padding: 315px 0 130px}
	#promo h1{font-size: 53px; line-height: 48px; margin-bottom: 80px;}
	#promo h1 br{display: none;}
	#promo .inn{max-width: 240px}
	#promo.promo__page{padding: 150px 0; background: url("../img/bg_page_m.jpg") 50% 0 no-repeat; background-size: cover;}
	#promo.promo__page h1{margin-bottom: 0;}
	#promo.promo__page .inn p{margin: 10px 0 40px; width: 100%; font-size: 16px;}


	#about, #works{padding: 0px 0;}
	#about .text p{font-size: 21px; line-height: 40px}
	#about .text i{width: 48px; top: -20px}
	#about .text i svg{top: 15px;}


	#services .list__services{margin-top: -29px}
	#services .item .inn{display: block; padding-bottom: 0}
	#services .item .title{padding: 0; min-height: 0; height: auto; margin-bottom: 30px;}
	#services .item .title b{order: 1; width: 100%; font-size: 21px; line-height: 22px;}
	#services .item .title span{order: 0; width: 100%; margin-bottom: 14px; font-size: 14px;}
	#services .container{padding: 40px 25px 25px}
	#services .item .data .text{max-width: 100%; width: 100%; color: #555; margin-bottom: 35px}
	#services .item .data .image, #services .item .data .image img{width: 100%; height: auto; border-radius: 20px;}


	#works{padding-bottom: 140px}
	#works .swiper-slide{width: 100%}
	#works .swiper-button-next,#works .swiper-button-prev{top: calc(100% + 20px)}
	#works .swiper-button-next{right: calc(100% - 100px)}
	#works .swiper-button-prev{left: 0}


	#consultation .text p{font-size: 34px;}
	#consultation img{max-width: calc(100% - 40px); position: relative; top: -30px}


	#advantages{padding: 80px 0 10px;}
	#advantages .item:nth-child(2) .image{display: none;}
	#advantages .item:nth-child(2) .image.mobile{display: block;}
	#advantages .item:first-child{margin-bottom: 20px}
	#advantages .item{padding: 40px 30px; min-height: 222px}


	#certificates{padding: 40px 0 80px}
	#certificates .swiper-slide{height: 270px}


	#contacts{padding-top: 120px;}
	#contacts .bt{position: relative; padding-right: 40px; margin-bottom: 15px;}
	#contacts .bt svg{position: absolute; top: 10px; right: 0px; transform: rotate(90deg);}
	#contacts .data{padding-bottom: 40px}
	#contacts .ct.flex{padding: 40px 0;}
	#contacts .ct .col{width: 100%; margin: 0 0 50px!important}
	#contacts img{max-width: calc(100% - 40px)}


	.box__modal{max-width: 100%!important;}

	#error__page{padding: 100px 20px 50px; box-sizing: border-box;}
	#error__page p{font-size: 35px;}
	#error__page br{display: none;}


	#about__service{padding: 80px 0 25px}
	#about__service p{font-size: 21px; line-height: 27px;}


	#description__services{padding: 30px 0 40px}
	#description__services .item{padding: 25px; border-radius: 40px;}
	#description__services .item .image img{border-radius: 30px;}
	#description__services .item .data .title{font-size: 21px; line-height: 25px;}


	#process .flex p{font-size: 21px; line-height: 27px; max-width: 100%; width: 100%;}
	#process{padding: 50px 0 160px}
	#process .swiper-slide{max-width: 305px!important; width: 305px!important; border-radius: 30px}
	#process .swiper-slide .item{width: 100%; width: 305px; border-radius: 30px; padding: 25px; }


	#popular .list__popular{width: calc(100% + 40px); left: -20px;}
	#popular .swiper{padding: 0 20px}
	#popular .swiper-button-next, #popular .swiper-button-prev{top: calc(100% + 30px)}
	#popular .swiper-button-prev{left: 20px;}
	#popular .swiper-button-next{right: calc(100% - 120px)}
	#popular .swiper-slide{max-width: 305px!important; width: 305px!important; border-radius: 30px}


	.form .flex p .wpcf7-form-control-wrap{width: 100%;}
	.form p{margin: 0}
}


@media screen and (max-width: 380px){
	#promo h1{font-size: 47px;}
	#promo.promo__page h1{font-size: 40px;}
}

iframe {
	border-radius: 50px;
border: 10px solid #bccbb0;
}
.endblock {
	background: #94ab80;
}
.endblock .container {
display: flex;
padding: 10px;
justify-content: space-between;
color: #fff;
font-size: 12px;
}
.endblock .container a{
display: flex;
	align-items:center;
color: #fff;

}
.endblock .container a img{
display: flex;
color: #fff;
margin-left: 10px;
}
@media (max-width: 480px){
	.endblock .container {

flex-wrap: wrap;
}
		.endblock .container a{

margin-top:10px;
}
	
	iframe {
		height: 215px;
	}
}
/*responsive*/