@font-face {
	 font-family: 'New Channel';
	 src: url('fonts/New_Channel_Font-Black.woff2') format('woff2'),
		  url('fonts/New_Channel_Font-Black.woff') format('woff');
	 font-weight: 900;
	 font-style: normal;
	 font-display: swap;
}

@font-face {
	 font-family: 'New Channel';
	 src: url('fonts/New_Channel_Font-Medium.woff2') format('woff2'),
		  url('fonts/New_Channel_Font-Medium.woff') format('woff');
	 font-weight: 500;
	 font-style: normal;
	 font-display: swap;
}

html{scroll-behavior:smooth;height: 100%;}
body {font-family: 'New Channel', sans-serif;font-weight:500;position: relative;height: 100%;color:#202020;}

a{text-decoration:none;color:#606060;transition:all .2s ease;}
a:hover{text-decoration:none;color:#000;}
b,strong, .bold{font-weight: 600;}
.nw{white-space: nowrap;}
.clear{clear: both;}
.page, .sidebar{transition:all .2s ease;}
.page {display: flex;flex-direction: column;min-height: 100%;z-index: 1;}
.main {flex: 1 0 auto;}
.footer {flex: 0 0 auto;}
.pad{height:88px;}
.minh-100{min-height: 100%;}
.mt-6{margin-top: 48px !important;}
.mb-6{margin-bottom: 48px !important;}
.my-6{margin-top: 48px !important;margin-bottom: 48px !important;}

header{position: fixed;top:0px;padding:2px 0;z-index:1001;width:100%;background: rgba(255,255,255,.96);transition:all .3s ease;overflow: hidden;}
header.active{border-bottom: 1px solid #F4F4F4;background: rgba(255,255,255,1);max-height: 100vh;}
header.submenu-active{padding-bottom: 280px;}
header .container{display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;}
header .right{display: flex;align-items: center;}
header .mobile{display: none;width:100%;padding-top:4px; max-height:calc(100vh - 88px);overflow-y: scroll;}
header .mobile .contacts{padding-bottom:20px;}
header .mobile .contacts a{color:#606060;font-size: 18px;}
header .logo{margin:18px 0;} 

.sidebar{display: none;position: sticky;top:0;left: auto;right: auto;bottom: auto;z-index:0;background: #FFF;width:220px;height:100vh;min-height: 520px;padding:92px 32px 18px 0px;flex-direction: column;justify-content: space-between;overflow-y: scroll;}
.sidebar::-webkit-scrollbar{display: none;}

/*-----------------------MENU-------------------------*/

.navbar-toggler, .navbar-toggler:focus{outline: none;box-shadow: none;}
.navbar-toggler{display: block;width: 24px;height: 24px;position: relative;}

.navbar-toggler-icon,
.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
  position: absolute;
  top: 50%; margin-top: -1px;
  left: 50%; margin-left: -12px;
  width: 24px; height: 2px;border-radius: 2px;
  background-color: #000;
}
.navbar-toggler-icon::before,
.navbar-toggler-icon::after {content: '';display: block;transition: 0.2s;}
.navbar-toggler-icon::before {transform: translateY(-7px);}
.navbar-toggler-icon::after {transform: translateY(7px);}
.active>.navbar-toggler-icon{height:0;}
.active>.navbar-toggler-icon:before {transform:  translateY(1px) rotate(-45deg);}
.active>.navbar-toggler-icon:after {transform:  translateY(1px) rotate(45deg);}

.menu, .submenu{list-style: none;margin: 0;padding: 0;}

.menu-desktop{display: none;align-items: center;}
.menu-mobile{flex-direction: column;margin:0 0 32px -16px;}
.menu .nav-item{padding:0;}
.menu .nav-link{display: inline-block;text-transform: uppercase;color:#000;font-size: 20px;position: relative;}
.menu .nav-link:hover{text-decoration: none;}
.menu .nav-link::before {content: '';display: block; position: absolute;bottom:8px;width: 0;height: 2px;background: #000;transition: width .3s ease-in-out;}
.menu a.nav-link:hover::before, .menu .active>.nav-link::before{width: calc(100% - 2rem);}

.menu-mobile .submenu .nav-link{font-size: 18px;padding:6px 0px;}
.menu-mobile .submenu .nav-link::before{bottom:6px;}
.menu-mobile .submenu a.nav-link:hover::before, .menu-mobile .submenu .active>.nav-link::before{width:100%;}
.menu-mobile .submenu .nav-item{padding-left:20px;display: flex;align-items: center;}
.menu-mobile .submenu .nav-item::before{content: "\2022";display: inline-block;font-size: 32px;line-height:28px; margin:0 6px 4px 0;}

.menu-desktop .parent{position: relative;}
.menu-desktop .parent>.nav-link::after{content:"";display: inline-block;background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23202020' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e") center center no-repeat;width:16px;height:16px;position: relative;top:1px;background-size: 12px 12px;margin-left: 2px;-moz-transition:all .2s ease;-webkit-transition:all .2s ease;-o-transition:all .2s ease;transition:all .2s ease;}
.menu-desktop .parent:hover .nav-link::after{transform: rotate(180deg);}
.menu-desktop .parent>div{visibility: hidden;opacity: 0;transition:all .2s ease;position: absolute;top:36px;left:0px;padding-top:20px;}
.menu-desktop .parent:hover>div{visibility: visible;opacity: 1;}
.menu-desktop .submenu .nav-link{font-size: 18px;text-transform: uppercase;color:#000;padding:6px 16px;}
.menu-desktop .submenu .nav-link::before{bottom:4px;}

.sidebar .menu .nav-link{font-size: 18px;padding:8px 0;}
.sidebar .menu a.nav-link:hover::before, .sidebar .menu .active>.nav-link::before{width:100%;}
.sidebar .contacts{margin-top:32px;}

/*======================MENU_END======================*/


.content .p_r, .content .p_l, .content .p_c{margin:0 auto 30px;max-width: 100%;display: block;}
.content a{color:#487cb2}
.content a:hover{color:#000;}
.content h1{text-transform: uppercase;}
.content ul{padding-left: 20px;}
.content ul li{margin-bottom: 8px;}
.content{;padding-top:10px;}

#slider{height: 100vh;height: 100dvh;background: #EEE;}
#slider img{object-fit: cover;object-position: left top;width:100%;height:100%;}
#slider img{object-fit: cover;object-position: right bottom;width:100%;height:100%;}



.kenburns1{object-position: left top;animation: kenburns1 10s linear infinite;}
.kenburns2{object-position: right bottom;animation: kenburns2 10s linear infinite;}
.kenburns3{object-position: right top;animation: kenburns3 10s linear infinite;}
.kenburns4{object-position: left bottom;animation: kenburns4 10s linear infinite;}

.carousel,.carousel-inner,.carousel-item{height: 100%;}
.carousel-item {transition: transform 2s ease-in-out;}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {transition: opacity 0s 2s;}

@keyframes kenburns1{
  0% {transform: scale(1);object-position: left top;}
  100% {transform: scale(1.25);object-position: center center;}
}

@keyframes kenburns2{
	0% {transform: scale(1.25);object-position: right bottom;}
   100% {transform: scale(1);object-position: center center;}
}
@keyframes kenburns3{
  0% {transform: scale(1);object-position: right top;}
  100% {transform: scale(1.25);object-position: center center;}
}
@keyframes kenburns4{
  0% {transform: scale(1.25);object-position: left bottom;}
  100% {transform: scale(1);object-position: center center;}
}

@keyframes fadeInUp {to {opacity: 1;}}

.bc-scroll{width:100%;overflow-x: scroll;}
.bc-scroll::-webkit-scrollbar{display: none;}
#breadcrumbs{color:#606060;position: relative;padding:0;font-size: 14px;white-space: nowrap;margin-bottom: 8px;}
#breadcrumbs ul{padding: 0;margin:0;}
#breadcrumbs li{display: inline-block;padding:24px 4px 24px 0;margin: 0px;}
#breadcrumbs li:after{content: "—";display: inline-block;padding-left: 4px; }
#breadcrumbs li:last-child:after{display: none;}

.contacts a{color:#606060;font-size: 16px;display: flex;align-items: center;}
.contacts a:hover{color:#000;}
.contacts a img{margin-right: 4px;}

.projects{z-index: 1;} 
.projects a{z-index: 2;position: relative;transition:all .4s ease;opacity: 0;animation: fadeInUp linear forwards;animation-timeline: view(block);animation-range: 0px 240px;}
.projects img{width: 100%;height: auto;border:1px solid #FFF;filter: grayscale(1);transition:all .4s ease;}
.mobile .projects img{filter: grayscale(0);}
.desktop .projects a:hover{z-index: 3;transform: scale(1.1);}
.desktop .projects a:hover img{filter: grayscale(0);border-color: transparent;}
.projects span{position: absolute;left:0px;right:0px;bottom:0px;padding:24px 20px 20px 20px;color:#FFF;font-size: 20px;opacity: 0;background: rgba(0,0,0,.2);
	background: linear-gradient(0deg, rgba(0,0,0,.8) 20%, rgba(0,0,0,0) 100%);transition:all .4s ease;line-height: 22px;}
.projects a:hover span, .mobile .projects span{opacity: 1;}

.project-images a{opacity: 0;animation: fadeInUp linear forwards;animation-timeline: view(block);animation-range: 0px 240px;}

.projects-others img{width: 100%;height: auto;margin-bottom: 16px;transition:all .4s ease;}
.projects-others a span{color:#000;display: block;line-height: 1.2em;}
.projects-others a:nth-child(3){display: none;}
.projects-others a:hover img{transform: scale(1.03);}

.project-info{margin-top:20px;}
.project-info .row:not(:last-child){margin-bottom: 16px;}
.project-info .col-md-5{font-weight: 900;}
.project-info .col-md-7{text-wrap:balance; }
.project-images img{width:100%;border:1px solid #FFF;}

footer{font-size: 12px;color:#000;border-top:1px solid #EEE;padding:24px 0 8px 0;}
footer a{color:#606060;}
footer a:hover{color:#000000;}
footer .copyrights{align-items: center;}
.zls-logo{margin-left:4px;}
.zls-logo .romb{transition:opacity .1s ease .2s, transform .4s ease;}
.zls-logo .right, .zls-logo .zls-gradient{transition:all .4s ease;}
.cr-link:hover .romb{transition:opacity .1s ease,transform .4s ease;opacity: 0;}
.cr-link:hover .right, .zls-long:hover .romb{transform: translateX(142px);}
.cr-link:hover .zls-gradient{width:170px;}

.map{background: #EEE;height:100%;min-height: 300px;}

.form-control:focus{outline: none;box-shadow: none;}

.form-order .input-parent{position: relative;overflow: hidden;margin-bottom:24px;}
.form-order .form-control{width:100%;height:100%;border:none;padding:0 0 16px 0px;margin-top: 28px;line-height: 24px;}
.form-order textarea.form-control{resize: none;padding:0;}
.form-order .input-parent label{position: absolute;bottom:0px;left:0px;width: 100%;height: 100%;pointer-events: none;border-bottom: 2px solid #EEE;display: block;margin:0;}
.form-order .input-parent label::after{content: "";position: absolute;left:0px;bottom:-1px;height:100%;width:100%;border-bottom: 2px solid #273142;transform: translateX(-100%);transition: all .3s ease-in-out;}
.form-order .content{position: absolute;top:0px;left: 0px;color:#606060;opacity: .6;transition: all .3s ease-in-out;padding-top:0px;transform: translateY(100%);}
.form-order .input-parent .form-control:focus + label .content,
.form-order .input-parent .form-control.filled + label .content{transform: translateY(0);color:#273142;}
.form-order .input-parent .form-control:focus + label::after,
.form-order .input-parent .form-control.filled + label::after{transform: translateX(0%);}
.form-order .required-star{color:#CC0000;}
.form-order .error{border:none !important;}
.form-order .error + label::after{border-bottom: 1px solid #CC0000;}
#pd.error{border:1px solid #CC0000 !important;}
.ajax_form .error{color:#CC0000 !important;}

.form-check{display: flex;}
.form-check-input[type=checkbox]{border-radius: 0px;margin-right: 16px;}
.form-check-label span{line-height: 1.2em;display: block;padding:6px 0 0 0;}

.btn{border-radius: 2px;}

.er404{font-size: 160px;line-height: .75em;margin:48px 0;text-align: center;color:#606060;}
.policy{margin-bottom: 0px;}
.policy li:not(:last-child){margin-bottom: 16px;}

@media only screen and (min-width : 360px) {
	.container{padding-left:20px;padding-right: 20px;}
}

@media only screen and (min-width : 576px) {
	.form-order{padding:32px;border:1px solid #EEE;}
	.er404{font-size: 200px;}
}

@media only screen and (min-width : 768px) {
	.content .p_r{float:right;margin:0 0 20px 30px;max-width: 360px;}
	.content .p_l{float:left;margin:0 30px 20px 0;max-width: 360px;}
	header .navbar-toggler{display: none;}
	header .menu-desktop{display: flex;}
	.sidebar{display: flex;}
	#breadcrumbs{font-size: 16px;}
	.er404{font-size: 320px;}
}

@media only screen and (min-width : 992px) {
	.pad{height:96px;}
	.content .p_r,.content .p_l{max-width: 480px;}
	header .logo{margin:22px 0;}
	.sidebar{width:260px;padding:98px 48px 18px 0px;}
	.mt-6{margin-top: 64px !important;}
	.mb-6{margin-bottom: 64px !important;}
	.my-6{margin-top: 64px !important;margin-bottom: 64px !important;}
	.er404{font-size: 480px;}
}

@media only screen and (min-width : 1200px) {
	.content .p_r,.content .p_l{max-width: 570px;}
	.sidebar .contacts a{font-size: 18px; }
	.form-order .content{font-size: 16px;}
	.content, .form-order .form-control{font-size: 18px;}
	.projects-others a:nth-child(3){display: block;}
}

@media only screen and (min-width : 1440px) {
	.mt-6{margin-top: 80px !important;}
	.mb-6{margin-bottom: 80px !important;}
	.my-6{margin-top: 80px !important;margin-bottom: 80px !important;}
	.desktop .projects a.col-xl-4:hover{transform: scale(1.06);    }
}

@media only screen and (min-width : 1600px) {
	.container{max-width: 1440px;}
	.content, .form-order .form-control{font-size: 20px;}
	.form-order .form-control{font-size: 20px;}
	.sidebar{width:280px;}
	footer{font-size: 14px;}
}

@media only screen and (min-width : 1920px) {
	.container{max-width: 1600px;}
	.sidebar{width:320px;}
}