@charset "UTF-8";
@font-face {
  font-family: 'Inter';
  src: url('/css/fonts/Inter-Regular.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: 'Verdana Pro';
  src: url('/css/fonts/VerdanaPro-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Montserrat';
  src: url('/css/fonts/Montserrat-Regular.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: 'MEDIUM';
  src: url('/css/fonts/RussoOne-Regular.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}
html{
	font-family:'TSans';
	margin:0;
	padding:0;
	width:100%;
	height:100%;
	color:#000;
    font-size:22px;
    line-height:32px;
	overflow-x:hidden;
}
body{
	font-family:'TSans';
	margin:0;
	padding:0;
	width:100%;
	height:100%;
	color:#000;
    font-size:18px;
    line-height:28px;
	font-weight:300;
}
a{
	cursor:pointer;
	color:#000;
	text-decoration:none;
	transition:ease all 0.3s;
}
a:hover{
	color: #ff8562;
	transition:ease all 0.3s;
}
header{
	   background-color: rgb(238, 238, 238);
	   padding:10px 0;
	   position:sticky;
	   z-index:20;
	   top:0;
	   margin-bottom:70px;
}
.m20{
	margin:20px 0;
}
.m30{
	margin:30px 0;
}
.m40{
	margin:40px 0;
}
.m50{
	margin:50px 0;
}
.m60{
	margin:50px 0;
}
.m70{
	margin:70px 0;
}
.mb70{
	margin-bottom:70px;
}
.p70{
	padding:70px 0;
}
.p60{
	padding:60px 0;
}
.p50{
	padding:50px 0;
}
.p40{
	padding:40px 0;
}
.p20{
	padding:20px 0;
}
.p10{
	padding:10px 0;
}
.p30{
	padding:30px 0;
}
.p45{
	padding:45px 0 30px 0;
}
.p100{
	padding:100px 0;
}
.container2{
	padding:0 40px;
}
.container{
	max-width:1160px;
	margin:0 auto;
	
}
.rel{
	position:relative;
}

.top{
	display:flex;
	align-items:center;
}
.top-left{
	flex:0 0 50%;
}

.top-right{
	flex:0 0 50%;
	text-align:right;
}
.top-left img{
	width:200px;
}
.top-contact{
	display:inline-flex;
	align-items:center;
}
.top-contact-col{
	margin-left:40px;
	
}
.top-contact-col .button{
	margin-right:0;
}
.top-contact-col svg{
	margin-left:10px;
}
.top .tel{
	display:block;
	font-size: 20px;
	font-weight:600;
}
.adr{
font-weight: 300;
    font-size: 14px;	
}
.button{
color: #ffffff;
	display:inline-block;
    background-color: #ff7900;
    border-style: none !important;
    border-radius: 100px;
    box-shadow: none !important;
    transition-duration: 0.2s;
    transition-property: background-color,color,border-color,box-shadow,opacity,transform;
    transition-timing-function: ease-in-out;
	height:45px;
	line-height:45px;
	font-size: 16px;
	font-weight:600;
    padding-left: 30px;
    padding-right: 30px;
	border-radius:10px;
	margin-right:15px;
	transition:ease all 0.3s;
	white-space:nowrap;
}	
.button:hover{
	color:#fff;
	background-color:#000;
	transition:ease all 0.3s;
}
.button.black{
	background-color:#000;
}
.button.black:hover{
	background-color: #ff7900;
}
.buttons .button{
	height:60px;
	line-height:60px;
	padding:0 60px;
	font-size:16px;
}
.button.white{
	background-color:#fff;
	color:#000;
	border:1px solid #000!important;
	height:40px;
	line-height:40px;
	font-size:16px;
	border-radius:20px;
	padding:0 20px;
	font-weight:600;
	transition:ease all 0.3s;
}
.button.white:hover{
	background-color:#000;
	color:#fff;
	transition:ease all 0.3s;
}
.topmenu{
	height:55px;
	margin-top:10px;
}
.topmenu ul{
	height:100%;
	display:flex;
	align-items:Center;
	margin:0;
	padding:0;
	justify-content:space-between;
}
.topmenu ul li{
	display:inline-block;
	height:55px;
	
}
.topmenu ul li.sub span{
	display: inline-block;
    vertical-align: middle;
    
    position: relative;
    width: 6px;
    border-color: inherit;
	margin-left:6px;	
}
.topmenu ul li.sub span:after{
content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 3px 0;
    position: absolute;
    top: 45%;
    left: 0;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-color: transparent;
    border-top-color: inherit;	

}
.topmenu ul li a{
	font-size: 16px;
	font-weight: 400;
	line-height:55px;
}

.topmenu ul li .submenu{
	display:none;
}
.topmenu ul li:hover .submenu{
	display:block;
	position:absolute;
	background-color:#eeeeee;
	border-radius:10px;
	box-shadow: 0 0 7px 0 rgb(0 0 0 / 20%);
	padding:20px;
	min-width:120px;
	height:auto;
	z-index:100;
	
}
.topmenu ul li:nth-of-type(1):hover .submenu{
	left:0;
}
.topmenu ul li:nth-of-type(7):hover .submenu{
	right:0;
}
.topmenu ul li:nth-of-type(7):hover ul:before{
	right:30%;
}
.topmenu ul li:hover ul:before{
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border-left: 1px solid #aaa;
	border-top: 1px solid #aaa;
    right: 65%;
    transform:rotate(45deg);
	top: -7px;
    background-color: #eee;
}
.submenu li{
	display:block!important;
	height:24px!important;
}
.submenu li a{
	line-height:24px!important;
}

footer{
	margin-top:50px;
}
.footer-cons{
font-size: 36px;
text-align:center;
margin-bottom:100px;
}
.footer-cons div{
}
.footer-cons .button{
	margin-top:50px;
	font-size:22px;
	height:60px;
	line-height:60px;
	padding: 0 70px;
	border-radius:30px;
}
.footer-icons{
	text-align:center;
}
.footer-icons img{
	max-height:100px;
	margin:0 100px;
}


.footer-links{
	background-color:#f2f2f2;
	padding: 100px 0;
	
}
.footer-links-wrap{
	display:flex;
	justify-content:space-between;
}
.footer-links-col{
	flex:0 0 23%;
	
}
.footer-links-col ul{
	display:block;
	padding:0;
	margin:0;
}
.footer-links-col ul li{
	display:block;
	font-size:14px;
}
.footer-title{
font-weight: 600;
font-size: 32px;
 text-align:center;
 margin-bottom:30px;
}
.footer{
	background-color:#eeeeee;
	padding:30px 0;
}
.footer-wrap{
	display:flex;
	
}
.footer-col{
	flex:0 0 calc(25% - 30px);
	padding-right:30px;
}

.footer-col ul{
	display:block;
	margin:0;
	padding:0;
}
.footer-col ul li{
	display:block;
	margin:0;
	padding:0;
	margin-bottom:10px;
	
	font-size:16px;
}
.footer-col ul li a{
	
	font-size:16px;
}
.footer-text{
	color: #525252;
    margin-top: 21px;
	font-size: 14px;
}

.podval{
	padding:20px 0;
	text-align:center;
	background-color:#eeeeee;
}
.podval a{
	
	font-size:16px;
	display:inline-block;
	margin-right:20px;
}

.logo img{
	width:200px;
}

.flex{
	display:flex;
	align-items:center;
	justify-content:space-between;
}
#razrab .flex{
	align-items:flex-start;
}
#razrab{
	margin-bottom:20px;
}
.flex-col{
	flex:0 0 50%;
}
.flex.serv .flex-col-3{
	flex:0 0 calc((100% - 240px)/3);
}
#razrab .flex .flex-col:nth-of-type(1){
	flex:0 0 calc(50% - 20px);
	padding-right:20px;
}
#razrab .flex .flex-col:nth-of-type(2){
	flex:0 0 calc(50% - 20px);
	padding-left:20px;
}
.flex-col-3{
	flex: 0 0 calc((100% - 40px)/3);
}
.komp .flex-col-3{
	flex: 0 0 calc((100% - 80px)/3);
}
.komp .flex-col-3 .flex-text{
	font-size:16px;
	margin-top:-10px;
}
.mainmap img{
	width:100%;
}
h1{
	font-size:50px;
	font-weight:600;
	line-height:1.1;
	
}
h1.h1{
	font-weight:400;
}
h4{
font-size: 24px;
    line-height: 1.50;	
	font-weight:300;
}
.buttons{
	margin-top:100px;
}
.gray{
	
	background-color:#eeeeee;
}
section{
	margin-bottom:60px;
}

.serv .flex-col{
	background-color:#fff;
	    padding: 30px 30px 40px;
		border-radius: 15px;
	box-shadow: 0px 0px 10px rgb(0 0 0 / 10%);
}
.serv.gray{
	background-color:transparent;
}
.serv.gray .flex-col{
	background-color:#eee;
	box-shadow:none;
	min-height:170px;
	padding-bottom:30px;
}
.serv .flex-col-3{
	background-color:#fff;
	    padding: 30px 30px 40px;
		border-radius: 15px;
	box-shadow: 0px 0px 10px rgb(0 0 0 / 10%);
}
.serv.gray .flex-col-3{
	background-color:#eee;
	box-shadow:none;
	min-height:170px;
	padding-bottom:30px;
}
.serv-wrap{
	display:flex;
	align-items:center;
	height:100%;
	min-height:180px;
}
.serv-left img{
	width:120px;
}
.serv-left{
	padding-right:30px;
}
.title{
	font-size: 22px;
	font-weight:600;
	margin-bottom:10px;
}
.text{
	font-size:18px;
	margin-bottom:20px;
	line-height:1.55;
}
.serv .flex-col{
	flex:0 0 calc(50% - 80px);
	min-height:220px;
}
.serv .button{
	height:35px;
	line-height:35px;
	padding:0 15px;
	font-size: 13px;
}

h2{
	font-size:46px;
	font-weight:400;
	margin-bottom:30px;
	
}

h3{
	font-size:30px;
	font-weight:500;
	margin-bottom:30px;
}
.komplekt{
	margin-top:100px;
}
.flex-title{
	font-size:22px;
	font-weight:400;
	margin-bottom:10px;
	
	/*max-width:320px;*/
}
.flex-text{
	font-size:18px;
	margin-bottom:20px;
}
.komplekt .buttons{
	margin-bottom:40px;
}
.uslugi{
	padding-top:10px;
	margin-bottom:120px;
}
.uslugi .flex-text{
	margin-bottom:10px;
}
.flex-image{
	width:100%;
	height:270px;
	border-radius:10px;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	margin-bottom:10px;
}
.flex-list{
	padding-left:20px;
	margin-bottom:16px;
	min-height:170px;
}

.flex-list li{
	padding-left:0;
}
.flex-strong{
	font-weight:700;
	margin-bottom:20px;	
}

.buttons{
	margin:70px 0;
	text-align:center;
}
#razrab .buttons{
	text-align:left;
	margin-bottom:0;
}
.button.calc{
	font-size:22px;
}
.flex.komp{
	align-items:flex-start;
}
.buttons h3{
	margin:60px 0;
}
.user{
	display:flex;
	align-items:center;
}
.user-left{
	
}
.user-right{
	padding-left:30px;
	
}
.avatar{
	width:80px;
	height:80px;
	border-radius:40px;
	overflow:hidden;
}
.avatar img{
	width:100%;
	object-fit:cover;
	object-position:center;
}
.cit{
	
	color: #ff7900;
	position: absolute;
    left: -80px;
    top: -8px;
    font-family: Georgia,serif;
    font-size: 150px;
    line-height: 1;
}
.review .container{
	position:relative;
}
.review p{
	font-size:20px;
}
.user-name{
    font-weight: 700;
margin-bottom:0px;	
}
.user-dol{
}
#etap{
	margin:100px 0;
	
}
.etap-list{
	display:grid;
	grid-template-columns: repeat(4,1fr);
	gap:40px;	
}
.etap{

display:flex;
}
.etap-left{
	flex:0 0 46px;
	padding-right:15px;
}
.etap-left img{
	width:57px;
}
.etap-right{
	flex:0 0 calc(100% - 61px);
}
.num{
	display:inline-flex;
	width:46px;
	height:46px;
	border-radius:23px;
	background-color:#eeeeee;
	align-items:center;
	justify-content:center;
	font-size:20px;
	font-weight:700;
}
/*
.num{
width: 60px;
    height: 60px;
    border-color: #ff7900;
    background: #ff7900;	
	position: absolute;
	top:0;
	margin:0 auto;
	
	color:#fff;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size: 22px;
	border-radius:30px;
	left:50%;
	margin-left:-30px;
	margin-top:-30px;
}
*/
	
.etap-title{
	font-size: 20px;
    line-height: 1.35;
	font-weight: 600;
	text-align:left;
	margin-bottom:10px;	
}
.etap-text{
	font-size:15px;
	font-weight:300;
	line-height:23px;
}

.etap-icon{
	position:absolute;
	left:0;
	bottom:30px;
	right:0;
	text-align:center;
}

.etap-icon img{
	width:80px;
}
#etap h2{
	text-align:center;
	margin-bottom:100px;
}
.exp{
	margin-bottom:20px;
}
.exp-left{
	flex:0 0 260px;
	align-items:flex-start;
	text-align:right;
	font-weight:500;	
}
.exp-right{
	flex:0 0 calc(100% - 300px);
	padding-left:40px;
}
.exp.flex{
	align-items:flex-start;
}
.orange{
	color:rgb(255, 121, 0);
}
.number{
color: rgb(255, 121, 0);
    font-size: 42px;
	text-align:center;
	font-weight:600;
	margin-bottom:18px;
}
.number-title{
	color: rgb(51, 51, 51);
	font-size: 26px;
    line-height: 40px;
	text-align:center;
	font-weight:600;
	
}
.number-title span{
color: rgb(255, 121, 0);
    font-size: 42px;
	text-align:center;	
}
.number-text{
	margin-top:14px;
	border-top:1px solid #FFE4CC;
	padding-top:14px;
	text-align:center;
}
.flex.numbers{
	align-items:flex-start;	
}
.number-text .orange{
	font-weight:600;
}
.news-list{
	display:grid;
	grid-template-columns: repeat(4,1fr);
	gap:40px;	

}
.news{
	
}

.news-image{
	border-radius:10px 10px 0 0;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	margin-bottom:20px;
	height:200px;
}

.news-title{
    font-size: 16px;
	font-weight:600;
    line-height: 1.35;	
	margin-bottom:10px;
}
.news-text{
	margin-bottom:10px;
	font-size: 14px;
}
.news-date{
	font-size: 10px;
	font-weight:600;
	 color:rgba(0,0,0,.5);
}
.news-type{
	font-size:10px;
	display:inline-block;
	margin-left:10px;
	text-transform:uppercase;
}
.mob-menu{
	display:none;
}
.flex.tek .flex-col:nth-of-type(1){
	flex:0 0 calc(70% - 40px);
	padding-right:40px;
}
.flex.tek{
	align-items:flex-start;
}
.flex.tek .flex-col:nth-of-type(2){
	flex:0 0 30%;
}
.flex.tek .flex-col img{
	width:100%;
}

.lic-list{
	display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 40px;	
}
.lic{
	background-color:#eee;
	border-radius:10px;
	padding:30px;
	display:flex;
	align-items:center;
}
.lic-left{
	flex:0 0 120px;
}
.lic-left img{
	width:100%;
}
.lic-right{
	flex:0 0 calc(100% - 150px;);
	padding-left:30px;
}
.map{
	height:600px;
	position:relative;
}
.map-wrap{
	position:absolute;
	max-width:1160px;
	margin: 0 auto;
	left:0;
	right:0;
	top:100px;
	bottom:0;
	z-index:10;
	padding-top:100px;	
}
.map-info{
	
	width:400px;
	padding:60px;
	background-color:#fff;
	border-radius:10px;
	box-shadow: 0 0 7px 0 rgb(0 0 0 / 20%);
}
.map-info a{
	font-weight: 300;
    color: #000000;
}
.social{
}
.social svg{
	width:25px;
	height:25px;
	margin-right:10px;
}
.review-list{
	display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 40px;	
}
.review{
}
.review-image{
	margin-bottom:20px;
}
.review-image img{
	width:100%;
}
.review-title{
	font-size: 18px;
	font-weight:600;
	margin-bottom:20px;
}

.rlist{
	padding:0;
}
.rlist li{
	display:block;
	padding:0;
	line-height:30px;
	margin:0;
	margin-bottom:10px;
}
.rlist li a{
	line-height:30px;
	display:block;
}
.rlist li a span{
	display:inline-block;
	vertical-align:middle;
}
.rlist li a img{
	display:inline-block;
	vertical-align:middle;
	margin-right:10px;
}
.reestr-text{
	display:flex;
}
.reestr-left{
	flex:0 0 calc(100% - 400px);
	padding-right:40px;
}
.reestr-right{
	flex:0 0 360px;
}
.reestr-right img{
	width:100%;
}
.buttons.reestr{
	text-align:left;
}

.content p{
	margin-bottom:15px;
}
.table{
	margin:40px 0;
	
}
.table-head{
	border-bottom:1px solid #000;
}
.table-row{
	display:flex;
}
.table-row:nth-of-type(2n){
	background-color:#eee;
}
.th{
	padding:20px;
	font-weight:600;
}
.th:nth-of-type(1){
	flex:0 0 232px;
}
.th:nth-of-type(2){
	flex:0 0 calc(100% - 312px);
	padding-left:40px;
}
.td{
	padding:20px;
}
.td:nth-of-type(1){
	flex:0 0 232px;
}
.td:nth-of-type(2){
	flex:0 0 calc(100% - 312px);
	padding-left:40px;
}
.flex.serv.reest .flex-col{
	padding-top:10px!important;
	padding-bottom:10px!important;
}

.base.flex{
	padding-bottom:30px;
	border-bottom:1px solid rgba(0,0,0,.15);
	margin-bottom:30px;
}
.base.flex .flex-col:nth-of-type(1){
	flex:0 0 190px;
}
.base.flex .flex-col:nth-of-type(2){
	flex:0 0 calc(100% - 230px);
	padding-left:40px;
	
}
.base.flex .text{
	font-size:16px;
}
.base.flex .date{
	font-size:13px;
	text-transform:uppercase;
}
.base-image{
	height:150px;
	background-color:#eee;
	border-radius:10px;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
}
.bz .buttons{
	text-align:left;
}
.bz .buttons.center{
	text-align:center!important;
}

.center{
	text-align:center;
}
.auto{
	width:160px;
	margin-bottom:30px;
}

.quest{
}
.steps{
	background-color:#fff;
	border-radius:10px;
	box-shadow: 0px 15px 30px -10px rgb(0 11 48 / 20%);
	padding-top:55px;
	position:relative;
	z-index:1;
	height:545px;
	margin-top:50px;
}
.steps-wrap{
	height:100%;
	padding:0 55px 55px 55px;	
	
	position:relative;
	max-height:450px;
	overflow-y:auto;
}
.progress{
	position:absolute;
	z-index:2;
	left:5px;
	top:0;
	right:5px;
	height:6px;
	background-color:rgba(238,238,238);
	border-radius:6px;
	margin-top:-6px;
}
.step{
	display:none;
}
.step.active{
	display:block;
	
}
.step-title{
	font-size: 16px;
	font-weight:600;
	
}
.step-title2{
	font-size:30px;
	line-height:36px;

	font-weight:300;
}
.step-title2 span{
	font-weight:600;
}
.step-text{
	font-size: 16px;
	opacity:0.7;
	
}
.step-text2{
	font-size: 16px;
	font-weight:400;
}
.quest-select{
	margin-top:30px;
}
.radio{
	margin-bottom:15px;
}
.radio input{
	position:absolute;
	left:-99999px;
}
.radio label:before{
	content:"";
	display:inline-block;
	width:10px;
	height:10px;
	border-radius:10px;
	border:4px solid #fff;
	outline:2px solid #ff7900;
	margin-right:10px;
	position:relative;
	background-color:#fff;
	vertical-align:middle;
	margin-top:-2px;
}
.radio input:checked + label:before{
	background-color: #ff7900;
}
.radio label{
		padding-left:2px;
	    font-size: 15px;
		font-weight:400;
		line-height:20px;
		cursor:pointer;
}
.raschet{
	margin-top:50px;
	margin-bottom:40px;

}
.step-num{
	margin:30px 0;
}
.step-num .number{
	margin-top:20px;
	display:flex;
}
.step-num .minus,.step-num .plus{
	border:0;
	display:inline-block;
	height:60px;
	line-height:60px;
	width:36px;
	text-align:center;
}
.step-num input{
	margin:0 6px;
	height:60px;
	line-height:60px;
	background-color: rgb(245, 245, 245);
	border:0;
	border-radius:4px;
	width:70px;
	text-align:center;
	font-size: 16px;
}
.step-footer{
	position:absolute;
	left:55px;
	right:55px;
	bottom:40px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	background-color:#fff;
}
.quest-select.flex{
	display:flex;
	justify-content:spaceb-between;
	margin-top:20px;
	margin-bottom:30px;
}
.quest-select.flex .radio{
	flex:0 0 30%;
}
.quest-select .radio2{
	display:inline-block;
	position:relative;
	background-color: rgba(255,121,0,0.10);
    border: 1px solid rgba(255,121,0,0.40);
	padding:8px 9px;
	border-radius: 4px;
	cursor:pointer;
}
.radio2 svg{
	vertical-align:middle;
}
 .radio2.active{
	background-color: rgba(255,121,0,0.20);
}
.radio2 input{
	position:absolute;
	left:-9999px;
}
.form-input{
	margin-bottom:40px;
}
.form-input input{
	height:60px;
	width:calc(100% - 70px)!important;
	padding:0 20px;
	font-size:16px;
	background-color:#f5f5f5;
	border-radius:4px;
	border:0;
}
.form-input .iti input{
	width: calc(100% - 30px) !important;
}
.phone1,.phone2{
	margin-top:6px;
}
.checkbox input{
	position:absolute;
	opacity:0;
}
.checkbox span{
	display:inline-block;
	width:20px;
	height:20px;
	border:1px solid #ff7900;
	    position: relative;
		vertical-align:middle;
		margin-right:10px;
}
.checkbox{
	position:relative;
}
.checkbox input:checked + span:after{
	border: solid #ff7900;
    border-width: 0 2px 2px 0;
    content: "";
    
    height: 8px;
    left: 8px;
    position: absolute;
    top: 4px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 3px;
}

.step-footer-left{
	flex:0 0 60%;
}
.step-footer-right{
	flex:0 0 40%;
	text-align:right;
}
.step-info{
	font-size: 14px;
	margin-right:20px;
	opacity:0.7;
}
.svyaz{
	font-size: 14px;
}
.button.prev{
	background-color:#fff;
	border:1px solid #fedbcc!important;
	width:50px;
	padding:0;
	vertical-align:middle;
	display:inline-flex;
	align-items:Center;
	text-align:Center;
	justify-content:center;
}
.button.prev svg {
	width:18px!important;
	height:18px!important;
}
.button.prev svg path{
	stroke:#ff7900;
	
}
.button.prev:hover{
	background-color: #ff7900;
}
.button.prev:hover svg path{
	stroke:#ffffff;
	
}
.button.prev.disabled{
	opacity:0.6;
}
.button.next svg{
	width:18px!important;
	height:18px!important;
	vertical-align:middle;
	margin-left:5px;
}
.button.next{
	vertical-align:middle;
}
.phone2{
	display:none;
}

.form-input .iti{
	display:block!important;
}
.sendform{
	display:none;
}
.sendbutton{
	display:none;
}
.sendbutton.active{
	display:inline-block;
}
.button.next.hidden{
	display:none;
}

.agree{
	margin-bottom:50px;
}

.infra{
	
	padding-top:165px;
	display: grid;
	grid-template-columns: 280px calc(100% - 280px);

}
.infra-left{
	
	padding-right:30px;
	height:100%;
	min-height:100%;
	
}
.infra-right{
	
}
.left-menu{
	position:sticky;
	padding:0;
	top: 100px;
	
	max-height:250px;
	z-index:100;
}
.left-menu li{
	display:block;
	margin-bottom:10px;
}
.left-menu li a{
	font-size: 15px;
	font-weight:300;
}
.left-menu li a:hover,.left-menu li a.active{
	font-size: 15px;
	font-weight:600;
	color:#000;
}


.object-list{
	display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 40px;	
	
}
.object{
	margin-bottom:50px;
	text-align:center;
}
.object-image{
	max-width:190px;
}
.object-image img{
	width:100%;
}
.object-image-hover{
	display:none;
}
.object-image-hover img{
	width:100%;
}
.oimg{
	display:block;
	width:190px;
	height:126px;
	margin:0 auto 30px auto; 
}
.oimg:hover .object-image{
	display:none;
}
.oimg:hover .object-image-hover{
	display:block;
}
.object-name{
	font-size: 16px;
    font-weight: 300;
	display:block;
	text-align:center;
	margin-bottom:30px;
	   line-height: 1.35;
}

.infra-detail{
	display:none;
}
.infra-detail.active{
	display:block;
	background-color:#fff;
	z-index:10000;
	position:fixed;
	left:0;
	right:0;
	bottom:0;
	top:0;
}
.infra-top{
	display:flex;
	padding:20px;
}
.infra-top-left{
	flex:0 0 50%;
}
.infra-top-right{
	flex:0 0 50%;
	text-align:right;
}
.infra-content{
	display:flex;
	width:100%;
	max-width:1160px;
	padding-top:65px;
}
.infra-content-left{
	flex:0 0 50%;
	max-width:580px;
}
.infra-content-right{
	flex:0 0 calc(50% - 20px);
	padding-left:20px;
}

.infra-slider{
	
}
.infra-slider .next{
	display:inline-flex;
	width:40px;
	height:40px;
	align-items:center;
	justify-content:center;
	position:absolute;
	right:5px;
	top:50%;
	margin-top:-20px;
	z-index:10001;
	cursor:pointer;
	transition:ease all 0.3s;
}
.infra-slider .prev{
display:inline-flex;
	width:40px;
	height:40px;
	align-items:center;
	justify-content:center;
	position:absolute;
	left:5px;
	top:50%;
	margin-top:-20px;
	z-index:10001;	
	transform:rotate(180deg);
	cursor:pointer;
	transition:ease all 0.3s;
}
.infra-slider .next:hover,.infra-slider .prev:hover{
	background-color:#fff;
	border-radius:20px;
	box-shadow:0 0 10px rgba(0,0,0,0.2);
	transition:ease all 0.3s;
}
.infra-slider .prev svg,.infra-slider .next svg{
	width:9px;
}
.infra-slider-thumb .swiper-slide{
	width:60px!important;
	height:60px!important;
	border:1px solid transparent;
	text-align:center;
	display:inline-flex;
	align-items:center;
}
.infra-slider-thumb .swiper-slide img{
	width:100%;
}
.infra-slider-thumb .swiper-slide.swiper-slide-thumb-active{
	border:1px solid rgba(0,0,0,.15);
}
.infra-slider{
	overflow:hidden;
	width:100%;
	max-width:100%;
}
.infra-slider .swiper-wrapper{
	
}
.infra-slider-thumb .swiper-wrapper{
	display:flex;
}
.infra-slider .swiper-slide img{
	width:100%;
}
.more{
	font-size:14px;
}
.more:before{
	    content: "← ";
    font-family: Arial, Helvetica, sans-serif;
}

.uslugi-wrap{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.usluga{
	flex:0 0 calc(50% - 80px);
	   background-color: #eeeeee;
	   border-radius: 15px;
	   padding: 30px ;
	   margin-bottom:40px;
	   display:flex;
	   align-items:center;
}
.usluga .title{
	font-size:20px;
}
.usluga-left{
	flex:0 0 120px;
}
.usluga-left img{
	width:100%;
}
.usluga-right{
	flex:0 0 calc(100% - 150px);
	padding-left:30px;
}

.news-detail{
	display:flex;
}

.news-detail-left{
	flex:0 0 calc(100% - 400px);
}
.news-detail-right{
	flex:0 0 360px;
}
.news-detail-right img{
	width:100%;

	border-radius:15px;

}
.news-detail p{
	margin:0;
}
.news-table{
	margin:60px 0 10p 0;
	width:100%;
	border-collapse:collapse;
}
.news-table thead{
	border-bottom:1px solid #000;
}
.news-table th{
	padding:20px;
	font-weight:600;
	font-size:18px;
}
.news-table tbody tr:nth-of-type(2n+1){
	background-color:#eee;
	
}
.news-table td{
	padding:5px 20px;
	font-weight:300;
	font-size:18px;
	vertical-align:top;	
}

.news-block{
	margin:50px 0;
	background-color:#eee;
	border-radius: 15px;
	padding:30px;
	display:flex;
	align-items:center;
}

.news-block-left{
	flex:0 0 122px;
}
.news-block-left img{
	width:100%;
}
.news-block-right{
	flex:0 0 calc(100% - 152px);
	padding-left:30px;
}
.buttons.news-button {
	text-align:left;
}
.buttons.news-button .button {
	font-size:18px;
}
.serv.gray.news-serv{
	
}
.serv.gray.news-serv .title{
	font-size:18px;
	font-weight:300;
}
.serv.gray.news-serv .flex-col{
	flex:0 0 calc(50% - 40px);
	min-height:101px;
	padding:10px;
}
.serv.gray.news-serv .serv-left{
	flex:0 0 101px;
	
}
.serv.gray.news-serv .flex-col-3{
	min-height:135px;
	padding:10px;
	flex:0 0 calc((100% - 100px)/3);
}
.serv.gray.news-serv .serv-left img{
	width:100%;
}
.news-serv .serv-wrap{
	min-height:1px;
}

.usluga-detail p{
	margin:0;
}
.usluga-detail ul{
	display:block;
	padding:0;
}
.usluga-detail ul li{
	display:block;
}
.usluga-detail ul.list li a{
	line-height:30px;
	color:#000;
	font-weight:300;
}
.usluga-detail ul.list li svg{
	display:inline-block;
	vertical-align:middle;
	margin-right:10px;
}




.t374__svg {
    stroke: #ff8562;
}

.tablink{
	margin:50px 0;
}
.tablink a{
	display:inline-block;
	height:34px;
	line-height:34px;
	padding:0 18px;
	border-radius:17px;
	border:1px solid #000;
	text-align:center;
	font-size:16px;
	font-weight:400;
	margin-right:10px;
}
.tablink a.active{
	background-color:#000;
	color:rgba(255,255,255,0.7);
}

.news-item{
	display:flex;
	
	border-top:1px solid #D9D9D9;
	padding-top:25px;
	padding-bottom:25px;
}
.news-item:nth-of-type(1){
	margin-top:0;
	border-top:0;
	padding-top:0;
}
.news-item-left{
	flex:0 0 190px;
}
.news-item-left img{
	width:100%;
	border-radius:15px;
}
.news-item-right{
	flex:0 0 calc(100% - 230px);
	padding-left:40px;
}

.button.loadmore{
	height:60px;
	line-height:60px;
	font-size:16px;
	border-radius:10px;
	padding:0 60px;
}
.news-item .title{
	font-size:20px;
}
.news-item .text{
		font-size:16px;
}
.news-item .date{
	font-size:10px;
	color:rgba(0,0,0,0.5);
	letter-spacing: 1px;
	font-weight: 600;
}
.news-item .date span{
	text-transform:uppercase;
}
.flex-wrap {
	flex-wrap:wrap;
}
.flex-wrap .flex-col{
	margin-bottom:40px;
}
.t1059__btn-img_md {
    width: 30px;
}
.table-wrap{
	margin-bottom:30px;
}
tr.white-tr{
	background-color:#fff!important
}
tr.gray-tr{
	background-color:#eee!important
}
.doc{
	margin:30px 0;
}
.doc svg{
	display:inline-block;
	vertical-align:middle;
	margin-right:10px;
}
.pdf{
	margin:30px 0;
}
.pdf svg{
	display:inline-block;
	vertical-align:middle;
	margin-right:10px;
}
.flex.news-serv{
	justify-content:flex-start;
}
.flex.news-serv .flex-col,.flex.news-serv .flex-col-3{
	margin-right:20px;
}
@media (max-width: 1240px){
.top-left{
	flex:0 0 30%;
}
.top-right{
	flex:0 0 70%;
}
.container{
	width:auto;
	padding:0 20px;
	max-width:100%;
}
.container2{
	width:auto;
	padding:0 20px;
	max-width:100%;
}
.komp .flex-title{
	min-height:56px;
}
.uslugi .komp .flex-col-3 .flex-text{
	margin-top:-36px;
}
.quest{
	padding:0 20px;
}
.object-list {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 30px;
}
}
@media (max-width: 1024px){
.object-list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 30px;
}	
.serv .flex-col{
	min-height:358px;
}	
	.komp .flex-col-3 .flex-text{
		min-height:56px;
	}
.mob-menu{
		display:inline-block;
		width:	28px;
		height:20px;
		right:20px;
		top:30px;
		position:absolute;
	}
	.mob-menu span{
		display:block;
		height:3px;
		background-color:#000;
		margin-bottom:5px;
		
	}
	.topmenu{
		display:none;
	}
	.topmenu.active{
		display:block;
		position:absolute;
		left:0;
		right:0;
		top:70px;
		height:auto;
		background-color:#eee;
		z-index:100;
	}
	.topmenu ul{
		display:block;
	}
	.topmenu.active li{
		display:block;
		text-align:center;
		height:auto;
		min-height:55px;
	}
	.topmenu.active:hover .submenu{
		position:relative;
		box-shadow:none;
	}
	.topmenu.active:hover .submenu:before{
		display:none;
	}
.top-right{
	padding-right:60px;
	flex:calc(70% - 60px);
}	
.uslugi .flex-title br{
	display:none;
}
.uslugi .komp .flex-col-3 .flex-text{
	line-height:16px;
	margin-top:-40px;
	min-height:16px;
}
.etap-list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 40px;
}
.number-title span{
	font-size:39px;
}
.news-list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 40px;
}
.steps{
	margin-bottom:50px;
}
}
@media (max-width: 767px){
	.reestr-right {
    flex: 0 0 100%;
}
	
	.top-right{
		display:none;
	}
	.flex{
		flex-wrap:wrap;
		width:100%;
	}
	.flex-col{
		flex:0 0 100%;
		margin-bottom:20px;
	}
	.flex-col-3{
		flex:0 0 100%;
		margin-bottom:20px;
	}
.flex.komp{
	flex-wrap:nowrap;
	
}	
.container{
	padding:0 20px;
}	
h1{
	font-size:40px;
}
.button{
	margin-bottom:10px;
}
h2{
	/*font-size:30px;*/
	font-size:46px;
	line-height:1.1;
}
.serv-wrap{
	flex-wrap:Wrap;
}
.serv-left{
		flex:0 0 100%;
		margin-bottom:20px;	
}
.serv-right{
		flex:0 0 100%;
		margin-bottom:20px;	
}
.serv .flex-col{
		flex:0 0 calc(100% - 60px);
		margin-bottom:20px;	
}
.etap-list{
display: grid;
    grid-template-columns: repeat(1,1fr);
    gap: 20px;	
}
.etap{
	height:auto;
	margin-bottom:60px;
}
.etap-icon{
	position:relative;
	margin-top:20px;
	bottom:auto;
}
#etap{
	margin-bottom:50px;	
}
.exp-left{
	flex:0 0 100%;
	margin-bottom:10px;
	text-align:left;
}
.exp-right{
	flex:0 0 100%;
	margin-bottom:10px;
	padding-left:0;
}
.news-list{
	    display: grid;
    grid-template-columns: repeat(1,1fr);
    gap: 20px;
}
.news{
	flex:0 0 100%;
	margin-bottom:20px;
}
.footer-wrap{
	flex-wrap:wrap;
}
.footer-col{
	flex:0 0 100%;
	margin-bottom:15px;
	text-align:center;
}
.podval a{
	display:block;
	margin-right:0;
	margin-bottom:10px;
	
}
.buttons{
	margin:10px 0;
}
.buttons .button{
	font-size:18px;
}
.mb70{
	margin-bottom:30px;
}
.m70{
	margin:30px 0;
}
.flex.tek .flex-col:nth-of-type(1){
	flex:0 0 100%;
	padding:0;
}
.flex.tek .flex-col:nth-of-type(2){
	flex:0 0 100%;
}
.lic-list {
    grid-template-columns: repeat(1,1fr);
    gap: 40px;
}
.lic{
	flex-wrap:Wrap;
}
.lic-left{
	flex:0 0 90px;
	margin-bottom:10px;
	text-align:center;
}
.lic-right{
	flex:0 0 100%;
	padding:0;
}
.map-wrap{
	position:relative;
	top:0;
	flex:0 0 100%;
	margin-bottom:0px;
	padding-top:0;
}
.map-info{
	box-shadow:none;
	order:1;
	padding:20px;
}

.map{
	display:flex;
	flex-wrap:wrap;
	height:auto;
	padding-top:0!important;
}
.map iframe{
	flex:0 0 100%;
	height:400px;
	order:2;
}
.review-list{
    grid-template-columns: repeat(1,1fr);
    gap: 20px;	
}
.reestr-text{
	flex-wrap:wrap;
}
.reestr-left{
	flex:0 0 100%;
	margin-bottom:20px;
	padding:0;
}
.reestr-left{
	flex:0 0 100%;
	padding:0;
}
.table{
	overflow-x:auto;
}
.table-row .th,.table-row .td{
	font-size:13px;
	
}
.th:nth-of-type(1){
	flex:0 0 100px;
}
.th:nth-of-type(2){
	flex:0 0 calc(100% - 130px);
	padding-left:10px;
}
.td,.th{
	padding:10px;
}
.td:nth-of-type(1){
	flex:0 0 100px;
}
.td:nth-of-type(2){
	flex:0 0 calc(100% - 130px);
	padding-left:10px;
}
.base.flex .flex-col:nth-of-type(1) {
    flex: 0 0 100%;
	padding:0;
}
.base.flex .flex-col:nth-of-type(2) {
    flex: 0 0 100%;
	padding:0;
}
.base-image{
	aspect-ratio:1;
	height:auto;
	width:100%;
}
.infra{
	padding-top:50px;
	display: grid;
	grid-template-columns: 1fr;
}
.infra-left{
	margin-bottom:40px;
}
.left-menu{
	display:block;
	padding:0;
	text-align:center;
}
.left-menu li{
	display:inline-block;
	margin:0 15px 10px 15px;
}
.left-menu li a{
	font-size:12px;
}
.object-list{
	display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;	
	
}
.infra-content-left{
	max-width:100%;
	margin-bottom:30px;
}
.infra-content{
	flex-wrap:wrap;
	
}
.auto{
	width:100%;
}
.quest{
	margin-left:-20px;
	margin-right:-20px;
}
.step-footer{
	flex-wrap:wrap;
	left:20px;
	right:20px;
	padding-top:20px;
}
.step-footer-left{
	flex:0 0 100%;
	order:2;
}
.step-footer-right{
	flex:0 0 100%;
	order:1;
	margin-bottom:30px;
	text-align:center;
	white-space:nowrap;
}
.step.active{
	padding-bottom: 100px;
}
.button.next{
	width:calc(100% - 130px);
	text-align:center;
}
.steps-wrap{
	padding:0 20px 20px 20px;
}
.form-input input{
	    width: calc(100% - 40px)!important;
}
.form-input .iti input{
	width:100%!important;
}
.komp .flex-col-3{
	flex:0 0 100%;
	padding:0;
}
#razrab .flex .flex-col:nth-of-type(1){
	flex:0 0 100%;
	padding:0;
}
#razrab .flex .flex-col:nth-of-type(2){
	flex:0 0 100%;
	padding:0;
}
#razrab .buttons .button{
	margin-right:0;
	width:calc(100% - 120px);
}
#razrab .raschet {
	margin-top:0;
}
.news-detail{
	flex-wrap:wrap;
}
.news-detail-left{
	flex:0 0 100%;
}
.news-detail-right{
	flex:0 0 100%;
}

.table-wrap{
	overflow-x:auto;
}
.news-block{
	flex-wrap:wrap;
}
.news-block-left{
	flex:0 0 100%;
	text-align:center;
	margin-bottom:10px;
}
.news-block-left img{
	width:auto;
}
.news-block-right{
	flex:0 0 100%;
	text-align:center;
	padding:0;
}
.news-h1{
	font-size:30px;
}
.buttons.news-button .button.order{
	display:block;
	text-align:center;
	margin-right:0;
}
}

