/*
	font-family: 'Source Sans Pro', sans-serif;
	font-family: 'Ubuntu', sans-serif;
*/

*{
	margin:0;
	padding:0;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}

body{
	color:#1C1C1C;
	background-color:#fff;
}

::-webkit-input-placeholder {color:rgba(#444);}
::-moz-placeholder  {color:rgba(#444);}
:-moz-placeholder     {color:rgba(#444);}
:-ms-input-placeholder {color:rgba(#444);}

body, input, select, textarea, button{
	font-size:19px;
	font-family: 'Source Sans Pro', sans-serif;
	line-height:26px;
	border:none;
}

ul li, ul{
	list-style:none;
}

a{
	color:#1C1C1C;
	text-decoration:none;
}

a:hover, a:focus{
	text-decoration:none;
}

input[type="text"], input[type="password"], input[type="email"]{
	height:40px;
	line-height:38px;
	width:100%;
	padding:0 12px;
	border:1px solid #CBCBCB;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, textarea:focus, select:focus{
	border:1px solid #4EA6FE;
}

input, textarea, button{
	outline:none !important;
}

input:required {
    box-shadow:none;
}

input[type="submit"], button{
	border:none;
}

input[type="submit"]:hover,
.button:hover,
.close:hover,
.checkbox:hover{
	cursor:pointer;
}

strong, .bold{
	font-weight:600;
}

li a{
	display:block;
}

h1, h2, h3{
	font-weight:normal;
}

img{
	display:block;
}

.container{
	position:relative;
	margin:auto;
}

.title{
	position:relative;
	font-family: 'Ubuntu', sans-serif;
	font-weight:600;
	font-size:37px;
	line-height:43px;
	font-weight:600;
	padding-bottom:30px;
	margin-bottom:50px;
}

.title:after{
	content:'';
	display:flex;
	position:absolute;
	left:0;
	bottom:0;
	width:320px;
	height:10px;
	background-color:#FF9900;
}

.title.right{
	text-align:right;
}

.title.right:after{
	right:0;
	left:auto;
}

.button{
	min-width:300px;
	height:70px;
	line-height:70px;
	font-weight:600;
	color:#fff;
	text-align:center;
	background-color:#4EA6FE;
	transition:color 0.2s ease-in-out, border 0.2s ease-in-out, background-color 0.2s ease-in-out, line-height 0.2s ease-in-out;
}

.button:hover{
	line-height:60px;
	color:#4EA6FE;
	background-color:white;
	border:5px solid #4EA6FE;
}

nav{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background-color:#fff;
	z-index:8000;
}

nav ul{
	display:flex;
	flex-flow:row wrap;
	justify-content:space-between;
}

nav a{
	position:relative;
	padding:0 5px;
	font-size:17px;
	font-weight:600;
	line-height:72px;
	transition:color 0.1s ease-in-out;
}

nav a:hover{
	color:#4EA6FE;
}

nav a:before{
	content:'';
	display:block;
	position:absolute;
	top:-4px;
	left:0;
	width:100%;
	height:4px;
	background-color:#4EA6FE;
	transition:top 0.1s ease-in-out;
}

nav a:hover:before{
	top:0;
}

header{
	padding-top:82px;
	overflow-x:hidden;
}

header .container{
	display:flex;
	/*align-items:flex-start;*/
	flex-flow:row-reverse nowrap;
}

header .left{
	position:relative;
	flex:1;
}

header .top{
	display:flex;
	flex-flow:row wrap;
	align-items:center;
	margin-bottom:350px;
}

.logotype{
	display:block;
	height:65px;
}

header .logotype{
	margin-right:70px;
}

header .top .phone{
	font-size:22px;
	font-family:'Ubuntu', sans-serif;
	line-height:30px;
	padding-left:32px;
	background:url(../images/icons/phone.svg) 0 50% no-repeat;
	background-size:22px auto;
}

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

header .tagline{
	position:absolute;
	top:95px;
	width:660px;
}

header .tagline .wrapper{
	padding:30px;
	font-family:'Ubuntu', sans-serif;
	font-weight:600;
	background-color:#fff;
	border:10px solid #FF9900;
}

header .tagline h1{
	font-size:46px;
	line-height:64px;
	margin-bottom:10px;
}

header .tagline h1 span{
	position:relative;
	display:inline-block;
	margin-right:30px;
	text-transform:uppercase;
}

header .tagline h1 span:last-child{
	margin-right:0;
}

header .tagline h1 span:after{
	content:'';
	display:block;
	position:absolute;
	top:50%;
	margin-top:-4px;
	right:-18px;
	width:8px;
	height:8px;
	border-radius:50%;
	background-color:#FF9900;
}

header .tagline h1 span:last-child:after{
	display:none;
}

header .tagline p{
	text-transform:uppercase;
	font-size:20px;
	line-height:28px;
}

header .tagline p .sm{
	display:none;
}

.marker > li{
	position:relative;
	padding-left:30px;
}

.marker > li:not(:last-child){
	margin-bottom:20px;
}

.marker > li:before{
	content:'';
	display:block;
	position:absolute;
	top:6px;
	left:0;
	width:8px;
	height:8px;
	border:3px solid #4EA6FE;
	border-radius:50%;
}

header .left .wrap{
	position:relative;
	padding-right:30px;
	padding-bottom:70px;
	z-index:2;
}

header .left:after{
	content:'';
	display:block;
	position:absolute;
	top:0;
	right:0;
	width:500%;
	height:100%;
	background-color:white;
	box-shadow: 7px 7px 16px rgba(0, 0, 0, 0.04);
	z-index:1;
}

header .left .button{
	position:absolute;
	top:444px;
	right:-370px;
}

header .right{
	position:relative;
	width:650px;
	background-color:#F1F1F1;
}

.shadow-gray{
	background-color:#F1F1F1;
}

.shadow-gray:before,
.shadow-gray:after{
	content:'';
	display:block;
	position:absolute;
	right:0;
	width:500%;
	height:209px;
	background-color:#f1f1f1;
	z-index:-1;
}

.shadow-gray:before{
	width:55%;
	height:300px;
	top:-298px;
	right:0;
	left:auto;
}

.shadow-gray:after{
	width:45%;
	right:0;
	height:100px;
	bottom:-100px;
}

header .right img{
	max-width:100%;
}

section{
	position:relative;
	margin-bottom:70px;
}

#materials:before{
	top:-189px;
}

#materials .title{
	position:absolute;
	top:-116px;
	right:0;
}

.list .item .wrap{
	position:relative;
}

.list > .wrap{
	display:flex;
	flex-flow:row wrap;
	margin:0 -15px;
}

.flex-list .item{
	padding:15px;
}

.flex-list-2 .item{
	width:50%;
}

.flex-list-3 .item{
	width:33.3%;
}

.flex-list-4 .item{
	width:25%;
}

.flex-list-5 .item{
	width:20%;
}

#materials .list{
	padding-top:35px;
}

#materials .item .wrap{
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
}

#materials .item .wrap:before{
	content:'';
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.55);
	z-index:0;
}

.ttl{
	position:relative;
	font-size:25px;
	line-height:32px;
	padding-bottom:13px;
	color:#fff;
	font-family:'Ubuntu', sans-serif;
	font-weight:600;
}

.ttl:after{
	content:'';
	display:block;
	position:absolute;
	left:50%;
	bottom:0;
	margin-left:-29px;
	width:58px;
	height:3px;
	background-color:#4EA6FE;
}

#materials .item .ttl{
	position:absolute;
	z-index:2;
}

.photo{
	position:relative;
}

.photo img{
	width:100%;
}

#services .ttl, #dopservices .ttl{
	position:absolute;
	left:17px;
	bottom:17px;
}

#services .ttl:after,
#dopservices .ttl:after{
	left:0;
	margin-left:0;
}

#services .item .wrap{
	box-shadow:7px 5px 16px rgba(0, 0, 0, 0.04);
	border:1px solid #CBCBCB;
}

#services .marker{
	background-color:#fff;
	min-height:300px;
	padding:24px 17px;
}

#services .bottom{
	border-top:1px solid #CBCBCB;
	background-color:#F2F2F2;
	padding:30px 17px;
}

#services .total{
	display:flex;
	flex-flow:row nowrap;
	font-weight:600;
}

#services .total > div:last-child{
	margin-left:auto;
}

#services .term{
	min-height:26px;
	margin-bottom:5px;
}

#services .price{
	margin-bottom:30px;
}

#services .price > div:first-child{
	padding-top:5px;
}

#services .price > div:last-child{
	font-size:25px;
	font-family:'Ubuntu', sans-serif;
	line-height:32px;
}

#services .button{
	min-width:100%;
	height:60px;
	line-height:60px;
}

#services .button:hover{
	line-height:50px;
}

#why .list{
	padding-bottom:100px;
}

#why .list .icon{
	display:flex;
	justify-content:center;
	align-items:center;
	width:50px;
	height:50px;
	margin-bottom:30px;
}

#why .list .icon img{
	width:50px;
	height:50px;
}

#why .list .item{
	margin-bottom:15px;
}

#why .list .item p{
	font-weight:600;
}

#kind-works .marker{
	margin-bottom:55px;
}

#kind-works li{
	font-weight:600;
}

#kind-works li a:hover{
	text-decoration:underline;
}

#kind-works .wrap-but{
	padding-bottom:70px;
}

#kind-works .button,
#steps .button{
	width:350px;
	margin:auto;
}

#dopservices:before{
	width:100%;
	top:-105px;
}

#dopservices .item .photo{
	height:320px;
	transition:border 0.2s ease-in-out;
	overflow:hidden;
}

#dopservices .item:hover .photo{
	border:5px solid #4EA6FE;
}

#equipment{
	margin-bottom:160px;
}

#equipment .item img{
	max-width:100%;
	margin-bottom:10px;
}

#equipment .item p{
	font-weight:600;
	text-align:center;
}

#equipment .item .wrap:hover{
	cursor:pointer;
}

#equipment .item .wrap:hover p{
	color:#4EA6FE;
}

#docs:before{
	top:-100px;
}

#docs .item .wrap{
	position:relative;
	display:flex;
	padding:45px;
	background-color:#fff;
	border: 1px solid #CBCBCB;
	box-shadow: 7px 5px 16px rgba(0, 0, 0, 0.04);
	z-index:2;
}

#docs .item .wrap img{
	max-width:100%;
}

#docs .item .wrap img:hover{
	cursor:pointer;
	opacity:0.8;
}

#steps{
	margin-bottom:240px;
}

#steps:before{
	content:'';
	display:block;
	position:absolute;
	top:-200px;
	width:55%;
	height:200px;
	background-color:#fff;
}

#steps .list{
	padding:70px 0 120px;
}

#steps .num{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:72px;
	height:72px;
	font-size:25px;
	line-height:32px;
	margin-bottom:30px;
	font-family: 'Ubuntu', sans-serif;
	border:5px solid #000;
	border-radius:50%;
}

#steps .num:after{
	content:'';
	display:block;
	position:absolute;
	left:82px;
	top:50%;
	width:100px;
	height:1px;
	background-color:#C4C4C4;
}

#steps .item p{
	font-weight:600;
}

#map .title{
	padding-bottom:0;
	margin-bottom:30px;
}

#map .title:after{
	display:none;
}

#map .contacts{
	position:absolute;
	top:-100px;
	width:488px;
	padding:35px;
	font-weight:600;
	background-color:#fff;
	border:10px solid #FF9900;
	z-index:2;
}

#map .contacts .numbs{
	margin-bottom:40px;
}

#map .contacts .numbs li{
	margin-bottom:10px;
}

#map .contacts .subttl{
	font-size:25px;
	font-family: 'Ubuntu', sans-serif;
	line-height:32px;
	margin-bottom:30px;
}

#map .contacts .contacts-info li{
	padding-left:32px;
	background-repeat:no-repeat;
	background-position:0 5px;
	background-size:20px auto;
}

#map .contacts .contacts-info li:not(:last-child){
	margin-bottom:30px;
}

#map .contacts .contacts-info .address{
	background-image:url(../images/icons/address.svg);
}

#map .contacts .contacts-info .phone{
	background-image:url(../images/icons/phone.svg);
}

#map .contacts .contacts-info .mail{
	background-image:url(../images/icons/mail.svg);
}

#map .contacts .contacts-info .shedule{
	background-image:url(../images/icons/shedule.svg);
}

#map iframe{
	width:100%;
	height:620px;
}

footer{
	padding-bottom:70px;
}

footer .col-3{
	width:25%;
}

footer .container{
	display:flex;
	flex-flow:row wrap;
}

footer .container > div{
	display:flex;
	flex-direction:column;
	justify-content:center;
}

footer .col-6{
	width:50%;
}

footer .info .pol{
	font-weight:600;
	margin-bottom:20px;
}

footer .info .pol:hover{
	cursor:pointer;
	text-decoration:underline;
}

footer .copyright{
	text-align:right;
}

.background{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.55);
	z-index:9998;
}

.background, .videoframe, .quiz, .policy-text{
	visibility:hidden;
	opacity:0;
	transition:opacity 0.2s ease-in-out;
}

.background.show, .videoframe.show, .quiz.show, .policy-text.show{
	visibility:visible;
	opacity:1;
}

.videoframe, .quiz{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:9999;
}

.videoframe .wrap{
	position:relative;
	width:50vw;
	height:50vh;
	background:url(../images/loading.gif) 50% no-repeat #fff;
}

.close{
	display:none;
	position:absolute;
	top:17px;
	right:17px;
	width:35px;
	height:35px;
	background:url(../images/close.svg) 50% no-repeat #fff;
	background-size:14px auto;
	z-index:9999;
	border-radius:50%;
}

.videoframe iframe{
	width:100%;
	height:100%;
}

.quiz{
	position:fixed;
	background-color:rgba(0,0,0,0.55);
}

.quiz .close, .videoframe .close{
	display:block;
}

.quiz .wrap{
	position:relative;
	width:620px;
	padding:30px;
	background-color:#fff;
}

.quiz .quiz-steps{
	display:none;
}

.quiz .quiz-step-1{
	display:block;
}

.quiz .top{
	display:flex;
	flex-flow:row nowrap;
}

.quiz .title{
	margin-bottom:24px;
	margin-right:30px;
}

.quiz .title:after{
	width:55px;
}

.quiz .leftquest{
	font-weight:600;
}

.quiz .subttl{
	font-family: 'Ubuntu', sans-serif;
	font-size:25px;
	line-height:32px;
	margin-bottom:5px;
}

.quiz .content{
	margin-bottom:30px;
}

.quiz .content .area{
	padding-top:30px;
}

.quiz .wrap-but{
	display:flex;
	flex-flow:row wrap;
}

.quiz .back{
	font-weight:600;
	line-height:60px;
	padding-left:34px;
	background:url(../images/icons/back.svg) 0 50% no-repeat;
	background-size:17px auto;
}

.quiz .back:hover{
	text-decoration:underline;
}

.field-text{
	margin-bottom:10px;
}

.field-text .empty{
	border:1px solid red;
}

.field label{
	position:relative;
	display:flex;
	flex-flow:row nowrap;
	align-items:center;
	font-size:16px;
}

/*.field label:after{
	content:'';
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:2;
}*/

.field label input{
	display:none;
	position:absolute;
}

.field .text{
	flex:1;
	line-height:24px;
}

.quiz .back:hover,
.checkbox label:hover,
.radio label:hover{
	cursor:pointer;
}

.checkbox .square,
.radio .circle{
	display:flex;
	justify-content:center;
	align-items:center;
	width:16px;
	height:16px;
	border:1px solid #000;
}

.checkbox .text,
.radio .text{
	padding-left:10px;
}

.checkbox .square:before,
.radio .circle:before{
	content:'';
	display:none;
	width:10px;
	height:10px;
	background-color:#FF9900;
}

.checkbox input:checked + .square:before,
.radio input:checked + .circle:before{
	display:block;
}

.radio .circle:before,
.radio .circle{
	border-radius:50%;
}

.quiz .fields{
	display:flex;
	flex-flow:row wrap;
}

.quiz-step-1 .fields .field{
	width:33.3%;
	margin-bottom:24px;
}

.quiz-step-1 .fields .field.full{
	width:100%;
}

.quiz-step-7 .fields,
.quiz-step-8 .fields{
	justify-content:center;
}

.quiz-step-7 .fields .field,
.quiz-step-8 .fields .field{
	width:25%;
}

.quiz-step-9 .fields{
	justify-content:space-between;
}

.quiz-step-9 .fields.other{
	padding-top:30px;
}

.quiz-step-9 .fields.other .radio{
	display:flex;
	justify-content:center;
	margin-right:24px;
}

.quiz-step-9 .fields.other .field-text{
	flex:1;
}

.quiz .content .area .field:last-child{
	margin-bottom:0;
}

.quiz .button{
	height:60px;
	line-height:60px;
	margin-left:auto;
}

.quiz .button:hover{
	line-height:50px;
}

.policy-text{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding:0 15px;
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:9999;
}

.policy-text .close{
	display:block;
}

.policy-text .container{
	position:relative;
	height:90vh;
	padding:30px;
	background-color:#fff;
	border-radius:8px;
	overflow:auto;
}

.policy-text .title{
	margin-bottom:30px;
}

.policy-text .ttl-sub{
	font-size: 25px;
    line-height: 32px;
    margin-bottom:15px;
    font-family: 'Ubuntu', sans-serif;
    font-weight: 600;
}

.policy-text p{
	margin-bottom:15px;
}

.thanks .butmenu{
	position:absolute;
	top:27.5px;
	right:15px;
	z-index:100;
}

.thanks section{
	padding:100px 0 70px;
	margin-bottom:0;
}

.thanks .thanks-block{
	position:relative;
	padding-top:35px;
	text-align:center;
}

.thanks-block .logotype{
	position:absolute;
	top:0;
	left:0;
}

.thanks .title{
	display:flex;
	justify-content:center;
}

.thanks .title:after{
	left:auto;
}

.thanks-block > p,
.thanks-block > a{
	margin-bottom:24px;
}

.thanks-block > .sub-ttl,
.thanks-block > a{
	font-size:20px;
	font-family:'Ubuntu', sans-serif;
	font-weight:600;
	font-weight:bold;
}

.thanks-block > a{
	display:block;
}

.thanks footer{
	padding-top:60px;
	border-top:1px solid #C4C4C4;
}