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: 'Roboto', sans-serif;
	background: #fff;
	font-size: 14px;
	color: #000;
}

.inner{width: 1140px; margin: 0 auto; box-sizing: border-box;}





header{border-bottom: 1px solid #c4c4c4; position: fixed; z-index: 1000; top: 0; left: 0; width: 100%; padding: 43px 0 0; color: #fff;}
	header .logo{float: left; margin: 0 120px 0 0;}
		header .logo span{color: #bdbcbb; font-weight: 300; font-style: italic; margin-top: 5px; display: block;}
	header nav{float: left;}
		header nav .pull{display: none;}
		header nav li{float: left; margin: 0 0 0 34px;}
		header nav li:first-child{margin: 0;}
			header nav li a{color: #fff; border-bottom: 1px solid transparent; font-weight: 500; display: block; padding: 10px 0 37px; position: relative; top: 1px;}
			header nav li a.active,header nav li a:hover{color: #ffa21c; border-color: #ffa21c;}
	header .contacts{float: right;}
		header .contacts .phone{float: left; font-size: 22px; font-weight: 500; margin: 5px 30px 0 0;}
			header .contacts .phone a{color: #fff;}
		header .contacts .callback{float: right; position: relative; top: -3px;}

	header.f-nav{background: #fff; padding: 15px 0 0;}
	header.f-nav .logo span{color: #000;}
	header.f-nav nav{margin-top: 7px;}
	header.f-nav nav li a{color: #000; padding: 5px 0 24px 0;}
	header.f-nav nav li a:hover,header.f-nav nav li a.active{color: #ffa21c}
	header.f-nav .contacts{margin-top: 3px;}
	header.f-nav .contacts .phone,header.f-nav .contacts .phone a{color: #000;}






#promo{background: url("../img/bg_promo.jpg") 50% 0 no-repeat; min-height: 100vh; background-size: cover; color: #fff; box-sizing: border-box; height: 800px; position: relative; overflow: hidden;}
	#promo .inner{position: relative; z-index: 3;}
	#promo .ov{position: absolute; z-index: 2; width: 100%; height: 100%; background: rgba(0,0,0,0.5); top: 0; left: 0;}
	#video-bg{position: absolute; top: 0; left: 0; min-height: 100%; min-width: 100%; z-index: 1;}
	#promo .data{max-width: 570px; line-height: 1.2;}
		#promo .data .title{text-transform: uppercase; font-size: 48px; font-weight: 700; padding: 270px 0 55px;}
		#promo .data p{max-width: 340px; font-size: 24px; margin-bottom: 90px;}
		#promo .data a{display: inline-block; font-size: 18px; font-weight: 700; color: #fff; border-bottom: 2px solid #ffa21c; padding-bottom: 3px;}
			#promo .data a:hover{border-color: transparent}





#about{padding: 60px 0 120px;}
	#about .data{position: relative; margin-top: -37px;}
		#about .data:after{position: absolute; content: ''; background: #f9f9f9; height: 45px; width: 90%; bottom: -45px; left: 5%; display: block;}
		#about .data ul{position: relative; z-index: 2; width: 100%; max-width: 455px; background: #ffa21c; padding: 36px 0 35px 39px;}
			#about .data ul li{padding: 0 0 0 27px; background: url("../img/ls.png") 0 50% no-repeat;}
				#about .data ul li a{color: #fff; font-size: 18px; line-height: 1.2; display: block; padding: 13px 0;}
				#about .data ul li a:hover{opacity: 0.8;}
				#about .data ul li a.active{font-weight: 700;}
		#about .data .image{position: absolute; top: 0; right: 0; height: 400px; overflow: hidden;}
			#about .data .image img{min-height: 400px; width: auto;}
			#about .data .image .item__image{display: none;}
			#about .data .image #item__1{display: block;}





#services{background: #f9f9f9; padding: 60px 0 125px;}
	#services .bt{color: #ececec;}
	#services li{position: relative; padding: 0 0 0 580px; margin-bottom: 95px;}
		#services li .image{position: absolute; top: -30px;}
		#services li:nth-child(2n+1) .image{left: 0%;}
		#services li:nth-child(2n) .image{right: 0%;}
		#services li:nth-child(2n){padding: 0 580px 0 20px;}
		#services li .title{position: relative; font-size: 28px; font-weight: 700; margin-bottom: 35px;}
			#services li .title i{position: relative; z-index: 2; font-style: normal;}
			#services li .title span{font-size: 120px; font-weight: 700; color: #ececec; position: absolute; top: -50px; left: -10px; z-index: 1;}
		#services li .excerpt{font-size: 16px; line-height: 1.8; max-width: 500px;}
		#services li .hw{margin: 32px 0; font-size: 18px; font-weight: 700;}
		#services li .items{margin-bottom: 60px;}
		#services li .item{width: calc(100%/3); box-sizing: border-box; padding: 0 10px 0 45px; position: relative; float: left; line-height: 1.5; font-size: 13px;}
			#services li .item span{position: absolute; top: 0; left: 0; width: 35px; height: 35px; line-height: 35px; text-align: center; border-radius: 50%; border: 1px solid #103783; color: #103783; font-size: 16px; font-weight: 500;}
		#services li .readmore a{font-size: 18px; font-weight: 700; color: #000; display: inline-block; padding-bottom: 4px; border-bottom: 2px solid #ffa21c}
			#services li .readmore a:hover{border-color: #103783}





#form__order{position: relative; margin: -130px 0 0;}
	#form__order .inner{width: 1290px; padding: 30px 75px 40px; box-sizing: border-box; background: url("../img/bg_form.png") 50% 0 no-repeat; background-size: cover; color: #fff; text-align: center;}
	#form__order .title{font-size: 44px; font-weight: 700;}
		#form__order .title span{font-size: 24px; display: block; margin: 15px 0 40px;}
	#form__order .form{margin-bottom: 38px;}
		#form__order .coll{float: left; width: 265px; margin: 0 26px 0 0;}
			#form__order .coll.coll__last{margin: 0;}
	#form__order p{font-size: 16px;}
		#form__order p a{color: #fff; font-weight: 700; font-size: 24px;}





#gallery{padding: 60px 0 100px;}
	#gallery .slider__gallery{margin-top: -50px;}
		#gallery .slider__gallery .coll{float: left; width: calc(100%/3)}
		#gallery .slider__gallery .coll img{width: 100%; height: auto;}
		#gallery .slider__gallery .coll .item{position: relative;}
			#gallery .slider__gallery .coll .item a{position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; background: rgba(16,55,131,0.73) url("../img/zoom.png") 50% 50% no-repeat; opacity: 0;}
			#gallery .slider__gallery .coll .item:hover a{opacity: 1;}





#reviews{background: #f9f9f9; padding: 60px 0 45px;}
	#reviews .bt{color: #ececec;}
	#reviews .center{margin-top: 20px;}
	#reviews a.loadmore{display: inline-block; color: #c2c2c2; padding: 3px 0 3px 23px; background: url("../img/load.png") 0 50% no-repeat;}
		#reviews a.loadmore:hover{color: #000;}
	#reviews a.btn{width: 260px; height: 43px; line-height: 43px; margin-top: 15px;}

	#reviews ul{position: relative; margin-top: -45px;}
	#reviews li{width: 49%; background: #fff; box-sizing: border-box; float: left; padding: 45px 35px 45px 125px; position: relative; margin-bottom: 2%; display: none;}
		#reviews li:nth-child(2n){float: right;}
		#reviews li:nth-child(1),#reviews li:nth-child(2),#reviews li:nth-child(3),#reviews li:nth-child(4){display: block;}
		#reviews li .user{position: absolute; top: 20px; left: 20px;}
			#reviews li .user img{border-radius: 50%; width: 80px; height: 80px;}
		#reviews li .author{font-size: 18px; font-weight: 700;}
			#reviews li .author span{display: block; font-size: 14px; font-weight: 400; font-style: italic; margin: 4px 0 25px;}
		#reviews li .text{line-height: 1.7;}





#contacts{position: relative;}
	#contacts #map{height: 630px;}
	#contacts .wrapper{position: absolute; top: 0; left: 0; height: 0px; width: 100%; z-index: 2}
		#contacts .wrapper .inner{height: 0;}
		#contacts .wrapper .data{background: #fff; width: 100%; max-width: 570px; position: relative; padding: 45px 35px 25px; margin: 85px 0 0; box-sizing: border-box;}
			#contacts .wrapper .data:after{position: absolute; top: -18px; left: -18px; display: block; content: ''; border-left: 18px solid #ffa21c; border-top: 18px solid #ffa21c; width: 100%; height: 100%; box-sizing: border-box;}
			#contacts .wrapper .data:before{position: absolute; top: 18px; left: 18px; display: block; content: ''; border-right: 18px solid #0e3581; border-bottom: 18px solid #0e3581; width: 100%; height: 100%; box-sizing: border-box;}
			#contacts .wrapper .data span{display: block; font-size: 16px; color: #9c9c9c; margin-bottom: 7px;}
			#contacts .wrapper .data p{font-size: 24px; font-weight: 700; line-height: 1.2;}
			#contacts .wrapper .data .row{margin-bottom: 22px;}
			#contacts .wrapper .data .row.row__c{margin-bottom: 45px;}
			#contacts .wrapper .data a{color: #000;}



























.form input{width: 100%; height: 43px; border: none; text-align: center;}







.bt{position: relative; font-weight: 700; font-size: 120px; text-transform: uppercase; color: #f9f9f9; padding: 0 0 0 40px;}
	.bt span{position: absolute; top: 40px; right: 0; text-transform: none; font-size: 14px; color: #ffa21c; border-bottom: 1px dashed #ffa21c; display: block; padding-bottom: 4px;}
		.bt span:hover{border-color: transparent;}








/* Slider */
.slick-slider{position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent;}

	.slick-list{position: relative; display: block; overflow: hidden; margin: 0; padding: 0;}
	.slick-list:focus{outline: none;}
	.slick-list.dragging{cursor: pointer; cursor: hand;}

	.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0);}

	.slick-track{position: relative; top: 0; left: 0; display: block;}
	.slick-track:before, .slick-track:after{display: table; content: '';}
	.slick-track:after{clear: both;}
	.slick-loading .slick-track{visibility: hidden;}
	.slick-slide{display: none; float: left; height: 100%; min-height: 1px;}
	[dir='rtl'] .slick-slide{float: right;}
	.slick-slide img{display: block;}
	.slick-slide.slick-loading img{display: none;}
	.slick-slide.dragging img{pointer-events: none;}
	.slick-initialized .slick-slide{display: block;}
	.slick-loading .slick-slide{visibility: hidden;}
	.slick-vertical .slick-slide{display: block; height: auto; border: 1px solid transparent;}
	.slick-arrow.slick-hidden {display: none;}





	.slick-loading .slick-list{background: none;}

	.slick-prev,.slick-next{border: none; font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 39px; height: 72px; padding: 0; cursor: pointer; margin-top: -36px; opacity: 1;}

	.slick-prev,.slick-next{display: block!important; z-index: 10;}
	.slick-prev{background: url("../img/arr_l.png") 50% 50% no-repeat; left: -75px;}
	.slick-next{background: url("../img/arr_r.png") 50% 50% no-repeat; right: -75px;}

	.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus{color: transparent; outline: none; opacity: 1;}
	.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before{opacity: 1;}
	.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before{opacity: .25;}
	.slick-prev:before, .slick-next:before{display: none;}
	.slick-prev{display: none;}
	.slick-next{display: none;}

	.slick-dots{position: absolute; bottom: 0; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center;}
	.slick-dots li{position: relative; display: inline-block; margin: 0 7px; cursor: pointer;}
	.slick-dots li button{font-size: 0; line-height: 0; display: block; box-sizing: border-box; cursor: pointer; color: transparent; border: none; outline: none; background: #fff; border-radius: 50%; padding: 0; width: 20px; height: 20px;}
	.slick-dots li button{width: 20px; height: 20px; background: #f3faff; border: 2px solid #ffa200; box-sizing: border-box;}
	.slick-dots li.slick-active button{background: #ffa200}






.box__modal{display: none; width: 750px;}
	.box__modal.box__modal__service{width: 100%; max-width: 1140px;}
	.box__modal .bt{color: #000; font-size: 44px; text-transform: none; padding: 0; margin-bottom: 25px;}
	.box__modal .inn{text-align: center; padding-bottom: 20px;}
	.box__modal input[type="text"],.box__modal input[type="email"],.box__modal input[type="tel"],.box__modal textarea{
		width: 100%; max-width: 360px; background: #ececec; margin-bottom: 20px; padding: 0 15px; border: none; text-align: center;
	}
	.box__modal textarea{resize: none; height: 150px; padding: 15px;}
	.box__modal .btn{max-width: 265px;}
	.box__modal p{font-size: 24px; line-height: 1.3;}
	.box__modal .th{width: 73px; height: 73px; background: url("../img/th.png") 50% 50% no-repeat; margin: 30px auto;}

	.box__modal.box__modal__service .inn{text-align: left;}
		.box__modal.box__modal__service .image{float: left; width: 35%;}
			.box__modal.box__modal__service .image img{max-width: 100%; height: auto;}
		.box__modal.box__modal__service .text{float: right; width: 63%; padding: 30px 0 0;}
		.box__modal.box__modal__service .title{position: relative; font-size: 28px; font-weight: 700; margin-bottom: 45px;}
			.box__modal.box__modal__service .title i{position: relative; z-index: 2; font-style: normal;}
			.box__modal.box__modal__service .title span{font-size: 120px; font-weight: 700; color: #ececec; position: absolute; top: -50px; left: -10px; z-index: 1;}
		.box__modal.box__modal__service .text .desc{font-size: 14px; line-height: 1.5; max-height: 370px; overflow-x: auto; padding-right: 15px;}
		.box__modal.box__modal__service .text .desc p{font-size: 14px; margin-bottom: 25px; line-height: 1.5;}
		.box__modal.box__modal__service .text .desc span{display: block; margin-bottom: 25px; font-weight: 500;}

		.box__modal.box__modal__service .call{padding: 5px 0 5px 30px; font-weight: 700; background: url("../img/call.png") 0 50% no-repeat;}
		.box__modal.box__modal__service .call span{color: #ffa21c; border-bottom: 1px dotted #ffa21c; font-size: 15px;}
		.box__modal.box__modal__service .call:hover span{border-color: transparent;}


	#about__info.box__modal.box__modal__service .title{margin: 0 0 15px;}
	#about__info.box__modal.box__modal__service .text{padding-top: 0;}




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


a{text-decoration: none; transition: all 0.5s ease-out;}
	a:hover{transition: all 0.5s ease-out;}
a:focus{outline: none;}

img{display: block;}


.btn{display: inline-block; text-align: center; cursor: pointer; border: none; transition: all 0.5s ease-out; box-sizing: border-box;}
	.btn:hover{transition: all 0.5s ease-out;}


	.btn-orange{color: #fff; background: #ffa21c; font-weight: 500; height: 36px; width: 165px; line-height: 36px;}
		input.btn-orange{line-height: normal;}
		.btn-orange:hover{background: #fd8900;}


input,textarea,select{-webkit-appearance: none; box-sizing: border-box; font-family: 'Roboto', sans-serif; font-size: 14px;}

/*responsive*/

@media screen and (max-width: 1320px){
	#form__order .inner{width: 100%; padding: 25px;}
	#form__order .coll{width: 23%; margin: 0 1%!important}

	.slick-prev{left: 0;}
	.slick-next{right: 0;}
}


@media screen and (max-width: 1140px){
	.inner{width: 100%; padding: 0 2%;}


	header{padding: 15px 0;}
	header.f-nav{padding: 10px 0 10px;}
	header .logo{margin: 0;}
	header nav{float: none;}
	header nav .pull{display: block; width: 30px; height: 30px; background: url("../img/pull.png") 50% 50% no-repeat; background-size: 100%; position: absolute; top: 20px; right: 2%;}
	header.f-nav nav .pull{top: 20px}
	header nav ul{display: none; position: absolute; top: 65px; left: 0; width: 100%; border-top: 1px solid #ffa21c; z-index: 9999;}
	header nav ul li{float: none; margin: 0;}
	header nav ul li a,header.f-nav nav ul li a{display: block; padding: 13px 2%; background: #fff; color: #000; border-bottom: 1px solid #ffa21c}
	header .contacts{margin: 5px 40px 0 0;}


	#services{padding: 60px 0 10px;}
	#services .bt{text-align: center; padding: 0; font-size: 60px; margin-bottom: 30px;}
	#services li{padding: 0 0 30px!important; border-bottom: 2px solid #ddd; margin-bottom: 50px;}
	#services li .image{position: relative; top: 0;}
	#services li .image img{max-width: 100%; margin: 0 auto 60px;}
	#services li .excerpt{max-width: 100%;}


	#form__order{margin: 0;}


	.box__modal.box__modal__service .image,.box__modal.box__modal__service .text{float: none; width: 100%;}
	.box__modal.box__modal__service .image img{margin: 0 auto 20px;}
}




@media screen and (max-width: 768px){
	.bt,#services .bt,#reviews .bt{font-size: 30px; padding: 0; color: #111; text-align: center; margin-bottom: 20px;}
	.bt span{display: none;}


	#promo{height: auto; padding: 150px 0 80px;}
	#promo .data{max-width: 100%; text-align: center;}
	#promo .data .title{padding: 0 0 30px; font-size: 24px;}
	#promo .data p{max-width: 100%; font-size: 16px; margin-bottom: 30px;}


	#about,#gallery{padding: 30px 0;}
	#about .data{margin: 0;}
	#about .data:after{display: none;}
	#about .data ul{max-width: 100%; padding: 20px; box-sizing: border-box;}
	#about .data .image{position: relative; height: auto;}
	#about .data .image img{width: 100%; height: auto;}
	#about .data ul li a{padding: 5px 0; font-size: 16px;}


	#services li .item{float: none; width: 100%; padding: 7px 0 7px 35px;}
	#services li .item span{display: none1; width: 25px; height: 25px; line-height: 25px; font-size: 14px; top: 3px;}
	#services li .title{font-size: 18px;}
	#services li .title span{left: 0;}
	#services li .image{display: none;}


	#services{padding: 30px 0;}
	#form__order .title{font-size: 20px;}
	#form__order .title span{font-size: 15px;}
	#form__order .coll{float: none; width: 98%; margin: 5px 1%!important;}
	#form__order p a{display: block; font-size: 20px; margin-top: 10px;}


	#gallery .slider__gallery{margin: 0;}


	#reviews{padding: 30px 0;}
	#reviews ul{margin: 0;}
	#reviews li{float: none!important; width: 100%; padding: 25px 15px 25px 85px;}
	#reviews li .user img{width: 55px; height: 55px;}


	#contacts #map{height: 250px;}
	#contacts .wrapper,#contacts .wrapper .inner{position: relative; height: auto; top: 0; margin: 0;}
	#contacts .wrapper .data{max-width: 100%; padding: 0 20px;}
	#contacts .wrapper .data br{display: none;}
	#contacts .wrapper .data p{font-size: 20px;}
	#contacts .wrapper .data:after,#contacts .wrapper .data:before{display: none;}
	#contacts:after{display: block; content: ''; height: 20px; display: block; width: 100%; position: absolute; top: -50px; left: 0; background: #ffa21c;}

	.box__modal{width: 90%;}
	.box__modal .bt{font-size: 24px;}
	.box__modal p{font-size: 18px;}
}





@media screen and (max-width: 640px){
	header .contacts{display: none;}
}
/*responsive*/