.wth{
	max-width:1180px;
	margin:0 auto;
	padding:0 10px;
}
.header{
	padding:20px 0;
	background:#2f2f31;
}
.header-container{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
}
.header-logo{
	width:200px;
}
.header-menu-open{
	display:none;
}
.header-menu-close{
	display:none;
}
.header-menu{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
.header-menu > ul{
	display:flex;
	align-items:center;
}
.header-menu > ul > li{
	margin:0 30px 0 0;
}
.header-menu > ul > li > a{
	color:#fff;
	font-size:14px;
	font-weight:500;
}
.header-menu > ul > li > a:hover, .header-menu > ul > li.active > a{
	color:var(--main-color);
}
.header-language{
	margin:0 0 0 50px;
	display:flex;
	align-items:center;
	
}
.header-language a{
	color:var(--main-color);
}
.header-contact{
	
}
.header-contact a{
	font-size:16px;
	font-weight:500;
	color:var(--main-color);
}
@media (max-width: 1200px) {
.header-logo{
	width:150px;
}
.header-container{
	
}	
.header-menu-open{
	display:block;
	position:absolute;
	top:20px;
	right:20px;
	cursor:pointer;
}
.header-menu-close{
	display:none;
	position:absolute;
	top:20px;
	right:20px;
	cursor:pointer;
}
.header-menu-open i, .header-menu-close i{
	font-size:22px;
	color:var(--main-color);
}
.header-menu{
	display:none;
}
.header-menu.show{
	position:fixed;
	top:0px;
	left:0;
	right:0;
	bottom:0;
	z-index:999;
	background:#2f2f31;
	padding:20px 20px 40px 20px;
	display:block;
}	
.header-menu ul{
	flex-wrap:wrap;
	text-align:center;
	padding:100px 0 0 0;
}
.header-menu ul li{
	width:100%;
	margin:0 0 15px 0;
}
.header-language{
	display:block;
	margin:0;
	text-align:center;
}
.header-contact{
	margin:0 60px 0 0;
}
}





.banner{
	position:relative;
	background:#2f2f31;
	padding:100px 0 0 0;
}

.banner-container{
	position:relative;
}
.header-banner-title{
	position:relative;
	z-index:3;
	color:var(--main-color);
	font-weight:600;
	font-size: 62px;
	line-height:100%;
	margin:0 0 100px 0;
}
.header-banner-text{
	position:relative;
	z-index:3;
	color:#fff;
	font-weight:400;
	font-size: 32px; 
	line-height:130%;
	padding:0 0 50px 0;
}
.header-banner-button{
	position:absolute;
	left:0;
	bottom:-170px;
	padding:0 0 20px 0;
	z-index:4;
}
.banner-container:after {
	content:'';
	position:absolute;
	top:100%;
	left:50%;
	transform:translate(-50%, 0);
	width: 0;
	height: 0;
	border-top: 150px solid #2f2f31; 
	border-right: 100vw solid transparent;	
}
.banner:before {
	content:'';
	position:absolute; 
	bottom:-250px;
	right:0;
	width: 702px;
	height: 699px;
	background:url(../../common/upload/images/banner-img.png) no-repeat center center;
	z-index:2;
}
@media (max-width: 1200px) {
.banner{
	padding:50px 0 0 0;
}
.banner:before {
	display:none;
}
.header-banner-title{
	font-size: 32px;
	margin:0 0 50px 0;
	text-align:center;
}
.header-banner-text{
	font-size: 18px; 
	padding:0 0 50px 0;
	text-align:center;
}	
.header-banner-button{
	text-align:center;
	width:100%;
	bottom: -75px;
}
.banner-container:after {
	border-top: 50px solid #2f2f31; 
}
.header-banner-button .btn{
	height:60px;
	line-height:60px;
	padding:0 20px;

}
}




.service{
	position:relative;
	z-index:9;
	margin:250px 0 0px 0;
}
.service-title{
	font-weight:600;
	font-size: 52px;
	text-align:center;
	margin:0 0 75px 0;
	color:#444;
}
.service-list{
	display:flex;
	flex-wrap:wrap;
	margin:0 0 0 -50px;
}
.service-item{
	position:relative;
	width:calc(50% - 50px);
	margin:0 0 50px 50px;
	height:316px;
	border-radius:20px;
	overflow:hidden;
	background:#333;
}
.service-item-cover{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	padding:50px;
	z-index:2;
}
.service-item-cover p{
	position:relative;
	z-index:3;
	font-size:26px;
	font-weight:400;
	color:#fff;
	margin:0 0 30px 0;
}
.service-item-cover span{
	position:relative;
	z-index:3;
	font-size:26px;
	font-weight:600;
	color:var(--main-color);
}
.service-item-img{
	opacity:0.4;
}
.service-item-img img{
	width:100%;
	transition:0.3s;
}
.service-item:hover .service-item-img img{
	transform:scale(1.1,1.1);
}
.service-buttons{
	position:relative;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	width:calc(50% - 50px);
	margin:0 0 50px 50px;
	height:316px;
	overflow:hidden;
	padding:30px;
}
.service-buttons span, .service-buttons a{
	display:block;
	width:100%;
}
@media (max-width: 980px) {
.service{
	margin:100px 0 0px 0;
}
.service-title{
	font-size: 32px;
	margin:0 0 50px 0;
}
.service-list{
	margin:0 0 0 -20px;
}
.service-item{
	position:relative;
	width:calc(100% - 20px);
	margin:0 0 20px 20px;
	height:200px;
}	
.service-item-cover p {
    text-align:center;
    font-size: 18px;
}
.service-item-cover span {
	display:block;
    text-align:center;
    font-size: 22px;
}
.service-buttons{
	width:100%;
	margin:0 0 0 20px;
	padding:20px;
	height:200px;
}	
.service-buttons .btn{
	height:60px;
	line-height:60px;
	padding:0 20px;
}
.service-buttons a{	
	color:#444;
	border:2px solid #444;
}
.service-buttons a:hover{	
	color:#444;
}
}


		
		
		
.slider{
	position:relative;
	background:#2f2f31;
	margin:-150px 0 400px 0;
}
.slider-title{
	font-weight:600;
	font-size: 52px;
	text-align:center;
	padding:200px 0 0 0 ;
	color:#fff;
}
.slider:before {
	content:'';
	position:absolute;
	bottom:100%;
	left:50%;
	transform:translate(-50%, 0);
	width: 0;
	height: 0;
	border-bottom: 150px solid #2f2f31; 
	border-left: 100vw solid transparent;	
}
.slider:after {
	content:'';
	position:absolute;
	top:100%;
	left:50%;
	transform:translate(-50%, 0);
	width: 0;
	height: 0;
	border-top: 150px solid #2f2f31; 
	border-right: 100vw solid transparent;	
}
.cascade-slider_container {
	position: relative;
	width: 900px;
	height: 500px;
	margin: 0 auto;
	top:200px;
}
.cascade-slider_slides{
	
}
.cascade-slider_item {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%) scale(0.5);
	transition: all 1s ease;
	opacity: 0;
	z-index: -1;
	border-radius:20px;
	overflow:hidden;
	background:#222;
}
.cascade-slider_item img{
	
}
.cascade-slider_item.next {
	left: 50%;
	transform: translateY(-50%) translateX(-130%) scale(1);
	opacity: 1;
	z-index: 1;
}
.cascade-slider_item.prev {
	left: 50%;
	transform: translateY(-50%) translateX(30%) scale(1);
	opacity: 1;
	z-index: 1;
}
.cascade-slider_item.next img, .cascade-slider_item.prev img{
	opacity:0.5;
}
.cascade-slider_item.now {
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%) scale(1.6);
	opacity: 1;
	z-index: 5;
	
}

.cascade-slider_arrow {
	display: inline-block;
	position: absolute;
	top: 50%;
	cursor: pointer;
	z-index: 5;
}
.cascade-slider_arrow-left { left: 0; }
.cascade-slider_arrow-right { right: 0; }

.cascade-slider_arrow i{
	color:var(--main-color);
	font-size:50px;
}
@media (max-width: 980px) {
.slider{
	display:none;
}
	
}



.faq{
	position:relative;
	margin:250px 0 50px 0;
}
.faq-container{
	
}
.faq-title{
	font-weight:600;
	font-size: 52px;
	text-align:center;
	margin:0 0 75px 0;
	color:#444;
}
.faq-container{
	padding:0 0 100px 0;
}
.faq-button{
	position:relative;
	z-index:4;
	text-align:center;
}
.faq-list {
	margin: 0.5em;
}
.faq-item{
	border-bottom:1px solid #d3e3e3;
}
.faq-item:last-child{
	border:none;
}
.faq-item-title {
	position:relative;
	font-size:18px;
	font-weight:500;
	padding:20px 50px 20px 0;
	cursor:pointer;
}
.faq-item-title:hover, .faq-item.active .faq-item-title {
	color:var(--main-color)
}
.faq-item-title:after{
	content: "\f0dd";
	font-family: "Font Awesome 5 Free";
    font-weight: 900;
	position:absolute;
	top:12px;
	right:0;
	transition:0.3s;
}
.faq-item.active .faq-item-title:after{
	transform:rotate(180deg);
}
.faq-item-text {
	display:none;
	overflow: hidden;
	padding:0 0 20px 0;
}
.faq-item.active .faq-item-text {
	display:block;
}
@media (max-width: 980px) {
.faq{
	position:relative;
	margin:50px 0 50px 0;
}
.faq-title{
	font-size: 32px;
	margin:0 0 50px 0;
}	
.faq-item-title {
	position:relative;
	font-size:16px;
	font-weight:500;
	padding:15px 50px 15px 0;
}
.faq-button{
	
}
.faq-button .btn{
	height:60px;
	line-height:60px;
	padding:0 20px;
}
}

/**/
.page {
	margin:0 0 200px 0;
}
.page-header{
	margin:50px 0 50px 0;
}
.page-title{
	font-size:42px;
	font-weight:600;
	line-height:110%;
	color:#444;
}
.page-container{
	margin:0 0 50px 0;
}
.page-description{
	
}
@media (max-width: 980px) {
.page-title{
	font-size:32px;
}	
}


.gallery{
	display:flex;
	flex-wrap:wrap;
	margin:0 0 200px -20px;
}
.gallery-image{
	width:calc(20% - 20px);
	margin:0 0 20px 20px;
	cursor:pointer;
}
.gallery-image:hover{
	opacity:0.6;
}
@media (max-width: 980px) {
.gallery-image{
	width:calc(33.3333% - 20px);
	margin:0 0 20px 20px;
	cursor:pointer;
}	
}



.contacts{
	display:flex;
	flex-wrap:wrap;
	margin:0 0 200px -20px;
}
.contact{
	width:calc(50% - 20px);
	margin:0 0 0 20px;
}
.contact-city{
	font-size:26px;
	font-weight:600;
	margin:0 0 20px 0;
	color:#444;
}
.contact-address{
	font-size:16px;
	font-weight:500;
	margin:0 0 20px 0;
}
.contact-phones a{
	font-size:16px;
	font-weight:500;
	color:var(--main-color);
}
.contact-phones{
	margin:0 0 20px 0;
}
.contact-work{
	font-size:16px;
	font-weight:500;
	margin:0 0 20px 0;
}
@media (max-width: 980px) {
.contacts{
	display:flex;
	flex-wrap:wrap;
	margin:0 0 200px 0;
}
.contact{
	width:100%;
	margin:0 0 50px 0;
}	
}



.article-list{
	
}
.article-list-item{
	padding:8px 0;
}
.article-list-item a{
	color:#333;
	
}





.modal-form{
	width:600px;
	padding:50px;
	border-radius:20px;
	background:#fff url(../images/modal-fon.jpg) top right;
	background-size:cover;
}
.modal-form .form-group{
	max-width:300px;
	margin:0 0 20px 0;
}
.modal-form .control-label{
	height:20px;
	line-height:20px;
	font-size:14px;
	font-weight:400;
	display:none;
}
.modal-form .form-control{
	display:block;
	width:100%;
	height:50px;
	line-height:50px;
	border-radius:10px;
	border:1px solid #ccc;
	padding:0 10px;
	outline:none;
	
}
.has-error .form-control{
	border:1px solid #f20000;
	
}
.modal-form .help-block{
	display:none;
}
.modal-form-success{
	display:none;
}
.modal-form-success-title{
	font-size:22px;
	font-weight:500;
	color:var(--main-color);
	margin:0 0 30px 0;
}
.modal-form-success-text{
	font-size:18px;
	font-weight:500;
	color:#444;
	margin:0 0 30px 0;
}
.modal-form-social{
	display:flex;
}
.modal-form-social a{
	margin:0 10px 0 0;
	width:40px;
	height:40px;
	transition:0.3s;
}
.modal-form-social a:hover{
	transform:scale(0.8, 0.8);
}

@media (max-width: 980px) {
.modal-form{
	width:340px;
	padding:20px;
	border-radius:20px;
	background:#fff;
	background-size:cover;
}	
.modal-form .form-group{
	max-width:100%;
	margin:0 0 20px 0;
}
}





.home-description{
	height:0;
	overflow:hidden;
	opacity:0;
}


.footer{
	position:relative;
	background:#2f2f31;
	padding:0 0 30px 0;
}
.footer:after {
	content:'';
	position:absolute;
	bottom:100%;
	left:50%;
	transform:translate(-50%, 0);
	width: 0;
	height: 0;
	border-bottom: 150px solid #2f2f31; 
	border-left: 100vw solid transparent;	
}
.footer-container{
	display:flex;
	flex-wrap:wrap;
	padding:0 0 20px 0;
}
.footer-about{
	width:40%;
	padding:0 60px 0 0;
}
.footer-about p{
	color:#ccc;
}
.footer-menu{
	width:30%;
}
.footer-menu > ul{
	
}
.footer-menu > ul > li{
	margin:0 0 10px 0;
}
.footer-menu > ul > li > a{
	color:#ccc;
	font-size:14px;
	font-weight:500;
}
.footer-menu > ul > li > a:hover, .footer-menu > ul > li.active > a{
	color:var(--main-color);
}
.footer-contact{
	width:30%;
}

.footer-copyright{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	border-top:1px solid #444;
	padding:20px 0 20px 0;
}
.footer-dev a{
	color:#ccc;
}
.footer-dev a:hover{
	color:var(--main-color);
}
.footer-self{
	color:#ccc;
}

.footer-tabs{
	
}
.footer-tabs-nav{
	display:flex;
}
.footer-tabs-nav li{
	color:#ccc;
	cursor:pointer;
	font-size:20px;
	font-weight:500;
	margin:0 10px 0 0;
}
.footer-tabs-nav li.active{
	color:var(--main-color);
}

.footer-tabs-content{
	display:none;
}
.footer-tabs-content.active{
	display:block;
}
.footer-tabs-content ul li{
	margin:0 0 2px 0;
}
.footer-tabs-content ul li p, .footer-tabs-content ul li a{
	color: #ccc;
    font-size: 14px;
    font-weight: 500;
}
.footer-social{
	display:flex;
	align-items:center;
}
.footer-social a{
	margin:0 10px 0 0;
	width:40px;
	height:40px;
	transition:0.3s;
}
.footer-social a:hover{
	transform:scale(0.8, 0.8);
}

@media (max-width: 980px) {

.footer-about, .footer-menu, .footer-contact{
	width:100%;
	padding:0 20px 20px 20px;
	text-align:center;
}	
.footer-logo a{
	display:block;
	width:150px;
	margin:0 auto;
}
.footer-tabs-nav{
	justify-content:center;
}
.footer-social{
	justify-content:center;
}
.footer-dev, .footer-self{
	width:100%;
	display:flex;
	justify-content:center;
}

}

.viber-desktop{
	display:block;
}
.viber-mobile{
	display:none;
}
@media (max-width: 980px) {
.viber-desktop{
	display:none;
}
.viber-mobile{
	display:block;
}	
}



.site-error{
	display:flex;
	align-items:center;
	margin:50px 0 200px 0;
}
.site-error-img{
	width:50%;
}
.site-error-content{
	width:50%;
	padding:0 0 0 100px;
}
.site-error-content h1{
	font-size:182px;
	color:var(--main-color);
}
.site-error-content p{
	font-size:26px;
	margin:0 0 40px 0;
}
@media (max-width: 980px) {
.site-error-img{
	display:none;
}	
.site-error-content{
	width:100%;
	padding:0;
}	
.site-error-content h1{
	font-size:52px;
}
.site-error-content p{
	font-size:20px;
	margin:0 0 20px 0;
}
.site-error-content .btn{
	height:50px;
	line-height:50px;
	padding:0 20px;
}
}