@import url(reset.css);
@import url(fonts.css);
/* @import url("https://netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css"); */

::-webkit-scrollbar{
    width:6px;
    height: 6px;
}

::-webkit-scrollbar-thumb{
    border: none;
    background-color: #a6a6a7;
    border-radius: 4px;
    transition: background-color 0.5s;
}

::-webkit-scrollbar-thumb:hover{
    background-color: #a6a6a7;
}

::-webkit-scrollbar-track{
    border-width:0;
    background: #fff;
}

* {
	-webkit-overflow-scrolling:touch;
	-webkit-appearance: none;
}

a {
	text-decoration: none;
	cursor: pointer;
	transition: color 0.3s, background-color 0.3s;
	color: #1a1814;
}

img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	transition: transform 0.2s;
}

sup {
	vertical-align: top;
}

input:focus,
input:active,
select {
	outline: none;
}

select {
	cursor: pointer;
}

input,
textarea {
	-webkit-appearance: none;
	outline: none;
}

.mar-b-none {
	margin-bottom: 0!important;
}

.clear {
	clear: both;
	display: block;
}

.hover-trans {
	transition: 0.2s;
}

.hover-trans:hover {
    --scale: 0.9;
	transform: scale(var( --scale ));
	-webkit-transform: scale(var( --scale ));
	-moz-transform: scale(var( --scale ));
	-o-transform: scale(var( --scale ));
	-ms-transform:scale(var( --scale ));
}

.def-bt {
	background: transparent;
	border: none;
	border-radius: 0;
	outline: none!important;
	padding: 0;
	margin: 0;
	color: transparent;
	cursor: pointer;
	position: relative;
	transition: transform 0.3s, color 0.3s, height 0.3s;
}

.table-block {
	display: table;
	height: 100%;
}

	.table-block > * {
		display: table-cell;
		vertical-align: middle;
	}

.bg {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.image-block {
	width: 100%;
	position: relative;
	overflow: hidden;
}

	.image-block::before {
		content: "";
		display: block;
		padding-top: 100%;
	}
	
	.image-block > * {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
	}

.h-100 {
	height: 100%;
}

.align-center {
	text-align: center;
}

strong {
	font-weight: bold;
}

em {
    font-style: italic;
}

.FA {
	font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands", "FontAwesome";
}

.br-none br {
    display: none;
}

/* ####################################### */

:root {
    --FA: "Font Awesome 5 Free", "Font Awesome 5 Brands", "FontAwesome";
    --font: 'Open Sans', sans-serif;
    
    --site-color: #ce6bb0;
    --site-color2: #af3399;
    --text-color: #333;
    
    
    --f-14: 14px;
    --f-16: 16px;
    --f-21: 21px;
    --f-header-title: 70px;
}

html {
	width: 100%;
	min-width: 320px;
	max-width: 100%;
	height: 1px;
	min-height: 100%;
	overflow-x: hidden;
    font-family: var( --font );
    font-weight: 400;
}

body {
	width: 100%;
	min-width: 320px;
	position: relative;
    z-index: 1;
    transition: margin-left 0.5s;
}

    body * {
        line-height: 1.2;
        color: var( --text-color );
    }
    
a i {
    color: inherit;
}

.container {
	width: calc( 100% - 30px );
	padding: 0 15px;
	margin: 0 auto;
	position: relative;
}

.home-header .header-bottom {
    min-height: calc( 100vh - 125px );
}

    .home-header .header-center {
        --home-bt-h: 200px;
        --home-logo-width: 500px;
        width: 100%;
        height: var( --home-bt-h );
        position: absolute;
        top: calc( 50% - ( var( --home-bt-h ) / 2 ) );
        left: 0;
        z-index: 10;
    }
    
        .home-header .header-center .home-bt {
            height: var( --home-bt-h );
            position: absolute;
            top: 0;
            background: rgba( 255, 255, 255, 0.7 );
            transition: background-color 0.3s, color 0.3s;
        }
        
        .home-header .header-center .home-bt-left,
        .home-header .header-center .home-bt-right {
            width: calc( 50% - ( var( --home-logo-width ) / 2 ) );
            padding: 5px 20px;
            font-size: 40px;
            font-weight: bold;
            color: #000;
        }
        
        .home-header .header-center .home-bt-left:hover,
        .home-header .header-center .home-bt-right:hover {
            background: transparent;
            color: #fff;
        }
        
        .home-header .header-center .home-bt-left {
            left: 0;
            padding-left: 20px;
        }
        
        .home-header .header-center .home-bt-right {
            right: 0;
            padding-right: 20px;
        }
        
        .home-header .header-center .home-bt-center {
            width: var( --home-logo-width );
            left: calc( 50% - ( var( --home-logo-width ) / 2 ) );
            z-index: 5;
            padding: 5px 20px;
        }
        
            .home-header .header-center .home-bt-center img {
                display: block;
                transition: transform 0.3s;
            }
            
            .home-header .header-center .home-bt-center:hover img {
                transform: scale( 0.95 );
            }
    
    .home-header .header-top .left {
        display: none;
    }

.header-bg {
    position: relative;
    background-size: cover!important;
}

.header-bg::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: fixed url( "../images/header_bg.png" ) top center;
    background: rgba( 0, 0, 0, 0.5 );
}

    header .header-top {
        --header-logo-width: 300px;
        height: 125px;
    }
    
        header .header-top .left,
        header .header-top .right {
            box-sizing: border-box;
            height: 100%;
        }
    
        header .header-top .left {
            width: var( --header-logo-width );
            float: left;
        }
            
            header .header-top .left > div {
                width: 100%;
            }
        
                header .header-top .left .header-logo {
                    --scale: 0.95;
                    width: 100%;
                    max-height: 100%;
                    box-sizing: border-box;
                    padding: 10px 10px;
                    background: #fff;
                    display: inline-block;
                }
                
                    header .header-top .left .header-logo img {
                        object-fit: contain;
                    }
                
                header .company-year {
                    position: absolute;
                    width: var( --header-logo-width );
                    top: 130px;
                }
                
                    header .company-year img {
                        display: block;
                        width: 60%;
                        margin: 0 auto;
                    }
                
                header .header-center .company-year {
                    width: 100%;
                    top: calc( 50% + 120px );
                }
                
                    header .header-center .company-year img {
                        width: 250px;
                    }
        
        header .header-top .right {
            --menu-h: 55px;
            --call-bt-width: 200px;
            width: calc( 100% - var( --header-logo-width ) );
            float: right;
            padding-left: 25px;
        }
        
            /* Menu Start */
            .header-menu {
                float: right;
                max-width: calc( 100% - var( --call-bt-width ) );
            }
            
                .header-menu > ul {
                    border-bottom: 1px solid #a6a6a7;
                    display: table;
                    line-height: 1;
                }
                
                    .header-menu > ul > li {
                        display: inline-block;
                        position: relative;
                        height: var( --menu-h );
                        margin: 0 3px;
                    }
                    
                    .header-menu > ul > li:first-of-type {
                        margin-left: 0;
                    }
                    
                        .header-menu > ul > li::before {
                            content: '';
                            position: absolute;
                            left: calc( 50%  );
                            bottom: -3px;
                            transform: translateX(-50%);
                            border: 10px solid transparent;
                            border-bottom: 10px solid var( --site-color );
                            opacity: 0;
                            z-index: 2;
                            transition: all .3s ease-in-out;
                        }
                        
                        .header-menu > ul > li:hover::before {
                            opacity: 1;
                            bottom: -23px;
                            transform: translateX(-50%) scale( 1, -1 )!important;
                        }
                    
                        .header-menu > ul > li::after {
                            content: '';
                            position: absolute;
                            bottom: -5px;
                            left: 0;
                            right: 100%;
                            height: 3px;
                            background: var( --site-color );
                            transition: right 0.3s;
                        }
                        
                        .header-menu > ul > li:hover::after {
                            right: 0;
                        }
                    
                        .header-menu > ul > li > a {
                            height: var( --menu-h );
                            display: table-cell;
                            vertical-align: middle;                            
                        }
                    
                        .header-menu > ul > li a {
                            color: #fff;
                            font-size: var( --f-16 );
                            font-weight: 400;
                            padding: 5px 16px;
                            box-sizing: border-box;
                            height: var( --menu-h );
                            width: 100%;                                                        
                        }
                    
                    .header-menu .sub-menu {
                        --sub-menu-width: 245px;
                        --sub-menu-pad: 5px;
                        width: var( --sub-menu-width );
                        position: absolute;
                        left: calc( 50% - ( var( --sub-menu-width ) / 2 ) );
                        box-sizing: border-box;
                        padding: 0;
                        background: #333536;
                        border: 2px solid var( --site-color );
                        opacity: 0;
                        pointer-events: none;
                        z-index: 20;
                        transition: opacity 0.3s;
                        box-shadow: 0 0 8px 2px rgb( 0, 0, 0, 0.2 );
                    }
                    
                        .header-menu .sub-menu li {
                            display: table;
                            width: 100%;
                            transition: background-color 0.3s;
                            position: relative;
                        }
                            
                            .header-menu .sub-menu li a {
                                position: relative;
                            }
                            
                            .header-menu > ul > li > .sub-menu {
                                top: calc( 100% + 17px );
                            }
                            
                                .header-menu > ul > li > .sub-menu::before {
                                    content: "";
                                    display: block;
                                    position: absolute;
                                    bottom: 100%;
                                    left: 0;
                                    height: 22px;
                                    width: 100%;
                                    z-index: 2;
                                }
                            
                            .header-menu > ul > li > .sub-menu .sub-menu {
                                width: calc( var( --sub-menu-width ) * 0.8 );
                                left: auto;
                                right: 95%;
                                top: 20%;
                                z-index: 2;
                            }
                            
                                .header-menu > ul > li > .sub-menu .sub-menu > li > a {
                                    height: calc( var( --menu-h ) * 0.6 );
                                    font-size: var( --f-14 );
                                }
                        
                        .header-menu .sub-menu > li:first-of-type {
                            padding-top: var( --sub-menu-pad );
                        }
                        
                            .header-menu .sub-menu > li:first-of-type > a::before,
                            .header-menu .sub-menu > li:last-of-type > a::before {
                                content: "";
                                display: block;
                                width: 100%;
                                height: var( --sub-menu-pad );
                                position: absolute;
                                left: 0;
                            }
                            
                            .header-menu .sub-menu > li:first-of-type > a::before {
                                bottom: 100%;
                            }
                            
                            .header-menu .sub-menu > li:last-of-type > a::before {
                                top: 100%;
                            }
                        
                        .header-menu .sub-menu > li:last-of-type {
                            padding-bottom: var( --sub-menu-pad );
                        }
                    
                            .header-menu .sub-menu a {
                                display: table-cell;
                                height: calc( var( --menu-h ) * 0.8 );
                                text-align: center;
                                vertical-align: middle;
                                transition: color 0.3s, background-color 0.3s;
                            }
                            
                            .header-menu .sub-menu li:hover {
                                background: rgba( 0, 0, 0, 0.1 );
                            }
                            
                                .header-menu .sub-menu li:hover > a,
                                .header-menu .sub-menu li.active > a,
                                .header-menu .sub-menu li.current-menu-item > a,
                                .header-menu .sub-menu li.current-menu-ancestor > a {
                                    color: var( --site-color );
                                }
                                
                                .header-menu > ul > li.active::before,
                                .header-menu > ul > li.current-menu-item::before,
                                .header-menu > ul > li.current-menu-ancestor:before {
                                    opacity: 1;
                                    transform: translateX(-50%);
                                }
                                .header-menu > ul > li.active::after,
                                .header-menu > ul > li.current-menu-item::after,
                                .header-menu > ul > li.current-menu-ancestor:after {
                                    right: 0;
                                }
                    
                    .header-menu > ul > li:hover > .sub-menu {
                        opacity: 1;
                        pointer-events: auto;
                    }
                    
                        .header-menu > ul > li > .sub-menu > li:hover > .sub-menu {
                            opacity: 1;
                            pointer-events: auto;
                        }
                    
                    
            /* Menu End */
            
            .header-mob-logo {
                display: none;
            }
            
            header .header-call-bt {
                height: calc( var( --menu-h ) + 3px );
                width: var( --call-bt-width );
                box-sizing: border-box;
                position: relative;
                display: block;
                margin-right: -15px;
                float: right;
                background: rgba(255,255,255,.25);
                padding: 5px calc( var( --menu-h ) + 15px ) 5px 15px;
                border-bottom: 1px solid #a6a6a7;
                color: #fff;
                font-size: var( --f-16 );
                font-weight: 400;
            }
            
                header .header-call-bt::before {
                    content: "\f2b9";
                    display: block;
                    position: absolute;
                    top: 0;
                    right: 0;
                    height: calc( var( --menu-h ) + 3px );
                    width: calc( var( --menu-h ) + 3px );
                    background: var( --site-color );
                    font-family: var( --FA );
                    line-height: calc( var( --menu-h ) + 3px );
                    font-weight: 900;
                    font-size: 20px;
                }
                
                header .header-call-bt::after {
                    content: '';
                    position: absolute;
                    bottom: -3px;
                    left: 0;
                    right: 100%;
                    height: 3px;
                    background: var( --site-color );
                    transition: right 0.3s;
                }
                
                header .header-call-bt:hover::after {
                    right: 0;
                }
            
            header .header-tel-block {
                position: absolute;
                height: var( --menu-h );
                right: 0;
                top: calc( var( --menu-h ) );
            }
            
                header .header-social {
                    float: left;
                    box-sizing: border-box;
                    padding-right: 20px;
                }
                
                .social-links a {
                    font-size: 20px!important;
                    padding: 3px;
                    display: inline-block;
                    transition: color 0.3s;
                    color: #fff;
                }
                
                .social-links a:hover {
                    color: var( --site-color );
                }
            
                header .header-tel-block a {
                    font-size: var( --f-16 );
                    color: #fff;
                }
                
                    header .header-tel-block .header-tel a::before {
                        content: "\f095";
                        font-family: var( --FA );
                        font-weight: 900;
                        margin-right: 7px;
                    }
                
                header .header-tel-block .header-tel {
                    float: left;
                    box-sizing: border-box;
                    padding-right: 10px;
                }
                
                     header .header-tel-block .header-tel a:hover {
                        color: var( --site-color );
                    }
                
                header .header-tel-block .header-lang {
                    min-width: calc( var( --menu-h ) );
                    padding: 2px 8px;
                    float: left;
                    box-sizing: border-box;
                }
                
                    header .header-tel-block .header-lang li {
                        line-height: 1.3;
                    }
                    
                    header .header-tel-block .header-lang li.current-lang a {
                        color: var( --site-color );
                    }
                
            header .mob-menu-close-bt,
            header .mob-menu-bt-block {
                display: none;
            }
    
    header .header-bottom {
        min-height: 160px;
        box-sizing: border-box;
        padding-bottom: 20px;
        position: relative;
        z-index: 5;
    }
    
        header .header-bottom .table-block {
            width: 100%;
            min-height: 140px;
        }
    
        .header-page-title {
            font-size: var( --f-header-title );
            font-weight: 300;
            color: var( --site-color );
            text-align: center;
            display: block;
            text-shadow: 0 0 10px #000;
        }

.body-content {
    min-height: 100vh;
    box-sizing: border-box;
    background: #fff;
    /*background: fixed url( "../images/body_bg.png" ) center no-repeat;*/
    background-size: cover;
    position: relative;
    z-index: 10000000;
}

    .main-content-block {
        padding: 30px 0 130px 0;
    }
    
        .main-content-block .container {
            max-width: 1400px;
        }
    
            .main-content-block .right {
                --f-42: 42px;
                --f-21: 21px;
                
                --mar-b: 15px;
                
                width: 75%;
                padding-left: 60px;
                float: right;
                box-sizing: border-box;
            }
            
            .main-content-block .right.full-width {
                width: 100%!important;
            }
            
                .main-content-block .right * {
                    line-height: 1.3;
                }
            
                .main-content-block .right .main-title h1 {
                    font-size: var( --f-42 );
                    font-weight: bold;
                    margin-bottom: calc( var( --mar-b ) );
                }
                
                .main-content-block .right .breadcrumbs {
                    margin-bottom: calc( var( --mar-b ) * 3 );
                }
                
                    .main-content-block .right .breadcrumbs a,
                    .main-content-block .right .breadcrumbs span {
                        display: inline-block;
                        font-size: var( --f-16 );
                        text-decoration: none;
                    }
                    
                    .main-content-block .right .breadcrumbs a {
                        margin-right: 20px;
                    }
                    
                        .main-content-block .right .breadcrumbs a::after {
                                content: "\f105";
                                font-family: var( --FA );
                                font-weight: 900;
                                position: absolute;
                                margin-left: 9px;
                                pointer-events: none;
                                color: var( --text-color )!important;
                        }
                
                .main-content-block .right p,
                .main-content-block .right li {
                    font-size: var( --f-21 );
                    font-weight: 300;
                    margin-bottom: var( --mar-b );
                }
                
                .main-content-block .right h1 {
                    font-size: 36px;
                    margin-bottom: var( --mar-b );
                }
                
                .main-content-block .right h2 {
                    font-size: 30px;
                    margin-bottom: var( --mar-b );
                }
                
                .main-content-block .right h3,
                .main-content-block .right h4,
                .main-content-block .right h5,
                .main-content-block .right h6 {
                    font-size: 26px;
                    margin-bottom: var( --mar-b );
                }
                
                .main-content-block .right a {
                    text-decoration: underline;
                }
                
                .main-content-block .right a:hover {
                    color: var( --site-color );
                }
                
                .main-content-block .right p > a {
                    text-decoration: none;
                }
                
                .main-content-block .right ol,
                .main-content-block .right ul {
                    padding-left: 40px;
                    margin-bottom: calc( var( --mar-b )* 2 );
                }
                
                .main-content-block .right ol {
                    list-style-type: decimal;
                }
                
                .main-content-block .right ul {
                    list-style-type: disc;
                }
                
                .main-content-block .right iframe {
                    width: 100%;
                    height: 400px;
                    margin-bottom: var( --mar-b );
                }
                
                .main-content-block .right img {
                    width: 100%;
                    height: auto;
                    margin-bottom: var( --mar-b );
                }
                
                .main-content-block .right hr {
                    display: block;
                    border: none;
                    width: 100%;
                    height: 1px;
                    background: #a6a6a7;
                    margin: calc( var( --mar-b )* 2 ) 0;
                }
                
                .main-content-block .right form {
                    margin: calc( var( --mar-b )* 2 ) 0;
                }
                
                    .main-content-block .right.form-block label textarea {
                        height: 200px;
                    }
            
            .main-content-block .left {
                width: 25%;
                float: left;
                box-sizing: border-box;
            }
            
                .sitebar-menu {
                    --li-h: 40px;
                    margin-bottom: 50px;
                    border-bottom: 1px solid #cfcfd3;
                }
                
                    .sitebar-menu ul {
                        display: table;
                        width: 100%;
                    }
                
                    .sitebar-menu ul li {
                        display: block;
                        width: 100%;
                        min-height: var( --li-h );
                        box-sizing: border-box;
                        padding: 5px 15px;
                        cursor: pointer;
                    }
                    
                    .sitebar-menu .menu-item-has-children > a {
                        position: relative;
                    }
                    
                        .sitebar-menu .menu-item-has-children > a::after {
                            content: "\f107";
                            font-family: var( --FA );
                            font-weight: 900;
                            position: absolute;
                            margin-left: 7px;
                            pointer-events: none;
                        }
                        
                        .sitebar-menu .menu-item-has-children.active > a::after,
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor > a::after {
                            content: "\f106";
                        }
                        
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor.js-active > a::after {
                            content: "\f107"!important;
                        }
                        
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor.js-active.active > a::after {
                            content: "\f106"!important;
                        }
                    
                    .sitebar-menu > div > ul > li {
                        border-top: 1px solid #cfcfd3;
                    }
                    
                        .sitebar-menu ul li a,
                        .sitebar-menu ul li span {
                            display: table-cell;
                            height: var( --li-h );
                            vertical-align: middle;
                            font-size: var( --f-16 );
                        }
                        
                        .sitebar-menu ul li a > pre {
                            transition: color 0.3s;
                        }
                        
                        .sitebar-menu ul li a:hover,
                        .sitebar-menu ul li.active > a,
                        .sitebar-menu ul li.current-menu-item > a,
                        .sitebar-menu ul li a:hover > pre,
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor.js-active > a  {
                            color: var( --site-color );
                        }
                        
                        
                        .sitebar-menu ul .sub-menu {
                            --li-h: 30px;
                            display: none;
                        }
                        
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor.js-active > .sub-menu {
                            display: none;
                        }
                        
                        .sitebar-menu .menu-item-has-children.active > .sub-menu,
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor > .sub-menu,
                        .sitebar-menu .menu-item-has-children.current-menu-ancestor.js-active.active > .sub-menu,
                        .sitebar-menu .left-sitebar-contact-w .sub-menu {
                            display: table;
                        }
                        
                        
                        
                        .sitebar-menu .left-sitebar-contact-w li,
                        .sitebar-menu .left-sitebar-contact-w .menu-item-has-children,
                        .sitebar-menu li {
                            cursor: default!important;
                        }
                        
                        .sitebar-menu .menu-item-has-children {
                            cursor: pointer!important;
                        }
                        
                        .sitebar-menu .left-sitebar-contact-w .menu-item-has-children > a {
                            color: var( --text-color )!important;
                            font-weight: bold;
                            cursor: default;
                            pointer-events: none;
                        }
                        
                        .sitebar-menu .left-sitebar-contact-w .menu-item-has-children > a::after {
                            display: none;
                        }
                        
                            .sitebar-menu ul .sub-menu li {
                                padding-right: 0;
                                padding-left: 20px;
                            }
            
                .main-content-block .left .search-block input {
                    border-width: 1px;
                }
                
                .main-content-block .left .search-block  button {
                    width: 38px;
                    height: 38px;
                    top: 1px;
                    right: 1px;
                }

footer {
    --footer-logo-width: 300px;
    --text-o: 0.5;
    width: 100%;
    box-sizing: border-box;
    position: fixed;
    bottom: 0;
    left: 0;
    background: url( "../images/footer_bg.png" );
    padding: 30px 0 20px 0;
    z-index: -1;
    transition: left 0.5s;
    box-shadow: inset 0 5px 8px 3px rgb(0 0 0 / 20%);
}

    footer .container {
        max-width: 1400px;
    }

    footer * {
        color: #fff;
    }

    footer .f-col {
        width: 25%;
        float: left;
        box-sizing: border-box;
        padding-left: 30px;
        margin-bottom: 25px;
    }
    
        footer .f-col-title {
            height: 45px;
            border-bottom: 1px solid rgba(255, 255, 255, 0.5);
            margin-bottom: 20px;
        }
        
            footer .f-col-title span {
                font-size: var( --f-21 );
                font-weight: 300;
            }
    
    footer .f-col-1 {
        padding-left: 0;
    }
    
        footer .f-col-1 .f-col-title {
            border-bottom-color: transparent;
        }
    
        footer .footer-logo {
            width: var( --footer-logo-width );
        }

            footer .footer-logo > div {
                width: 100%;
            }
        
                footer .footer-logo a {
                    --scale: 0.95;
                    width: 100%;
                    max-height: 100%;
                    box-sizing: border-box;
                    padding: 10px 10px;
                    background: #fff;
                    display: inline-block;
                }
                
                    footer .footer-logo a img {
                        object-fit: contain;
                    }
        
        .f-col-1-text {
            padding-top: 30px;
        }
        
            .f-col-1-text p {
                font-size: var( --f-16 );
                font-weight: 300;
                opacity: var( --text-o );
            }
    
        footer .f-col-2 li  {
            margin-bottom: 5px;
            font-size: var( --f-16 );
        }
        
            footer .f-col-2 li a {
                opacity: 0.5;
                transition: opacity 0.3s;
            }
            
            footer .f-col-2 li a:hover,
            footer .f-col-2 li.active a:hover,
            footer .f-col-2 li.current-menu-item a:hover {
                opacity: 1;
            }
            
            footer .f-col-2 li.active a,
            footer .f-col-2 li.current-menu-item a {
                color: var( --site-color );
                opacity: 1;
            }
    
        footer .f-col-3 .call-pop-bt {
            margin-bottom: 15px;
        }
        
        footer .footer-contacts {
            margin-bottom: 10px;
        }
        
            footer .footer-contacts p,
            .f-col-4-text p {
                font-size: var( --f-16 );
                font-weight: 400;
            }
            
                footer .footer-contacts p a {
                    margin-bottom: 5px;
                    display: inline-block;
                }
            
                footer .footer-contacts p a:hover,
                .f-col-4-text p a:hover {
                    color: var( --site-color );
                }
        
        .f-col-4-text {
            margin-bottom: 50px;
        }
    
        .footer-coop p {
            font-size: var( --f-16 );
        }

.search-block {
    position: relative;
}

    .search-block label input {
        padding-right: 55px!important;
        color: var( --text-color )!important;
    }
    
    .search-block label input:active {
        transform: scale( 1 )!important;
    }
    
    .search-block button {
        width: 36px;
        height: 36px;
        position: absolute;
        right: 2px;
        top: 2px;
        background: #a6a6a7;
        font-size: 16px;
        transition: background-color 0.3s;
    }
    
    .search-block button:hover {
        background: var( --site-color );
    }

.form-block form br {
    display: none;
}

    .form-block label {
        display: block;
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 20px;
        font-size: var( --f-16 );
        font-weight: bold;
        color: var( --site-color );
    }
    
        .form-block label input,
        .form-block label textarea {
            font-size: var( --f-16 );
            font-weight: bold;
            display: block;
            box-sizing: border-box;
            height: 40px;
            width: 100%;
            margin: 5px 0;
            padding: 5px 15px;
            background: transparent;
            border: 2px solid #a6a6a7;
            border-radius: 0;
            transition: border-color 0.3s, background-color 0.3s, transform 0.3s;
        }
        
        .form-block label input[ type='file' ] {
            width: auto!important;
        }
        
        .form-block label.l,
        .form-block label.r {
            width: calc( 50% - 15px );
        }
        
        .form-block label.l {
            float: left;
        }
        
        .form-block label.r {
            float: right;
        }
        
        .form-block label textarea {
            padding: 10px 15px;
            resize: none;
            height: 100px;
        }
        
        .form-block label input:focus,
        .form-block label textarea:focus {
            border-color: var( --site-color );
            background: #fff;
        }
        
        .form-block label input:active,
        .form-block label textarea:active {
            transform: scale( 0.95 );
        }

.button {
    display: block;
    min-height: 45px;
    box-sizing: border-box;
    padding: 5px 20px;
    color: #a6a6a7;
    background: transparent;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    border: 2px solid #a6a6a7;
    border-radius: 0;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s, transform 0.3s;
}

.button.color {
    color: var( --site-color );
    border-color: var( --site-color );
}

.button:active {
    transform: scale( 0.9 );
}

.button:hover {
    background: var( --site-color );
    border-color: var( --site-color );
    color: #fff;
}

.link-bt a {
    display: block;
    color: transparent;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.case-block {
    overflow: hidden;
    margin-bottom: 30px;
}

    .case-block .case-img {
        width: 30%;
        float: left;
    }
    
        .case-block .case-img::before {
            padding-top: 75%;
        }
    
        .case-block .case-img img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            object-position: center;
        }
    
    .case-block .case-content {
        width: calc( 70% - 20px );
        float: right;
        padding-top: 30px;
    }
    
    .case-block.news-block {
        margin-bottom: 50px;
    }

    .case-block.news-block .case-content {
        padding-top: 0;
    }
    
        .case-block.news-block .case-img img {
            object-fit: cover;
        }
        
        .case-block.news-block hr {
            display: none;
        }

.case-block.case-block-3 {
    --case-count: 3;
    --case-mar: 30px;
    display: block;
    float: left;
    box-sizing: border-box;
    width: calc( ( 100% - ( var( --case-mar ) * var( --case-count ) ) ) / var( --case-count ) );
    margin: calc( var( --case-mar ) / 2 );
}

    .case-block.case-block-3 .case-img {
        width: 100%;
        float: none;
    }
    
        .case-block.case-block-3 .case-img::before {
            padding-top: 100%;
        }
        
        .case-block.case-block-3 .case-img img {
            margin-bottom: 0;
        }
    
    .case-block.case-block-3 .case-content {
        display: none!important;
    }

.paginate-block h2 {
    display: none;
}

    .paginate-block a,
    .paginate-block span {
        --link-h: 30px;
        display: inline-block;
        height: var( --link-h );
        width: var( --link-h );
        line-height: var( --link-h )!important;
        text-align: center;
        text-decoration: none!important;
        border: 1px solid #a6a6a7;
        margin: 3px 0;
        transition: border-color 0.3s. background-color 0.3s, color 0.3s;
    }
    
    .paginate-block a:hover,
    .paginate-block span.current {
        color: #fff!important;
        background-color: var( --site-color );
        border-color: var( --site-color );
    }

.review-container {
    --r-count: 3;
    --r-mar: 15px;
    margin-bottom: 30px;
}

    .review-block {
        display: block;
        width: calc( ( 100% - ( var( --r-mar ) * 2 * var( --r-count ) ) ) / var( --r-count ) );
        margin: var( --r-mar );
        box-sizing: border-box;
        float: left;
    }
    
        .review-block .review-img::before {
            padding-top: 133%;
        }
        
        .review-block .review-img img {
            object-fit: contain;
            height: 100%;
        }
        
        .review-content {
            height: 25px;
            padding-top: 10px;
        }
        
            .review-content p {
                font-weight: bold!important;
                text-align: center;
            }

form .thank-text {
    display: none!important;
}

.wpcf7-response-output {
    display: none!important;
}

.pop-wrapper {
    --pop-o: 0;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 1000000000;
    overflow: hidden;
    background: rgba(0,0,0,var(--pop-o));
    cursor: pointer;
    transition: background-color .3s;
    pointer-events: none;
}

.pop-wrapper.thank-pop {
    z-index: 100000000000;
}

    .pop-wrapper.thank-pop .pop-block {
        max-width: 460px;
        text-align: center;
    }

.pop-wrapper.active {
    --pop-o: 0.5;
    pointer-events: auto;
}

    .pop-wrapper > div {
        width: 100%;
        height: 100%;
        overflow: auto;
        margin-top: 120vh;
        transition: margin-top .3s;
    }
    
    .pop-wrapper.active > div {
        margin-top: 0;
    }
    
        .pop-wrapper > div > .table-block {
            width: 100%;
            padding: 5% 0;
        }
        
            .pop-wrapper .pop-block {
                width: 90%;
                margin: 0 auto;
                padding: 30px;
                padding-top: 50px;
                box-sizing: border-box;
                position: relative;
                background: url( "../images/body_bg.png" ) center no-repeat;
                box-shadow: 0 0px 13px 2px rgb(0 0 0 / 50%);
                cursor: auto;
            }
            
                .pop-wrapper .pop-block h2,
                .pop-wrapper .pop-block h3 {
                    font-size: var( --f-21 );
                    font-weight: bold;
                    margin-bottom: 30px;
                }
                
                .pop-wrapper .pop-block.center h2,
                .pop-wrapper .pop-block.center h3 {
                    text-align: center;
                }
                
                .pop-wrapper .pop-block.center .button {
                    margin: 0 auto;
                }
                
                .pop-wrapper .pop-block .pop-close-bt {
                    display: inline-block;
                    position: absolute;
                    top: 10px;
                    right: 10px;
                    z-index: 100000000;
                    color: var( --site-color );
                    transition: top 0.3s, transform 0.3s;
                }
                
                    .pop-wrapper .pop-block .pop-close-bt::before {
                        content: "\f057";
                        font-family: var( --FA );
                        font-weight: 900;
                        font-size: 30px;
                        line-height: 1;
                    }
                
                .pop-wrapper .pop-block .pop-close-bt:active {
                    top: 7px;
                }
            
            .call-pop .pop-block {
                max-width: 500px;
            }

@media all and (min-width: 1800px) {
    .main-content-block .container,
    footer .container {
        max-width: 1700px;
    }
}

@media all and (max-width: 1500px) {
    :root {
        --f-16: 15px;
        --f-header-title: 60px;
    }
    
    .home-header .header-bottom {
        min-height: calc( 100vh - 100px );
    }
    
    .home-header .header-center {
        --home-bt-h: 160px;
        --home-logo-width: 400px;
    }
    
    .home-header .header-center .home-bt-left,
    .home-header .header-center .home-bt-right {
        font-size: 26px;
    }
    
    header .company-year {
        top: 100px;
    }
    
    header .header-top {
        --header-logo-width: 240px;
        height: 100px;
    }
    
    header .header-top .right {
        --menu-h: 45px;
        --call-bt-width: 180px;
    }
    
    .header-menu > ul > li a {
        padding: 5px 12px;
    }
    
    footer {
        --footer-logo-width: 240px;
    }
    
    .main-content-block {
        --sitebar-w: 320px;
    }
    
    .main-content-block .right {
        --f-42: 36px;
        --f-21: 18px;
        --mar-b: 12px;
        width: calc( 100% - var( --sitebar-w ) );
    }
    
    .main-content-block .left {
        width: var( --sitebar-w );
    }
    
    .main-content-block .right h1 {
        font-size: 32px;
    }
    
    .main-content-block .right h2 {
        font-size: 26px;
    }
    
    .main-content-block .right h3, .main-content-block .right h4, .main-content-block .right h5, .main-content-block .right h6 {
        font-size: 22px;
    }
}

@media all and (max-width: 1300px) {
    .header-menu {
        max-width: 100%;
        margin-right: -20px;
    }
    
    header .header-call-bt {
        height: calc( var( --menu-h ) + 3px );
        position: absolute;
        top: calc( var( --menu-h ) + 3px );
        right: 0;
        margin-right: 0;
    }
    
    header .header-tel-block {
        height: calc( var( --menu-h ) + 3px );
        top: calc( var( --menu-h ) + 3px );
        right: var( --call-bt-width );
    }
}

@media all and (max-width: 1150px) {
    .header-menu-wrapper {
        --mob-menu-header-h: 90px;
        --mob-menu-w: 320px;
        position: fixed;
        right: -320px;
        top: 0;
        width: var( --mob-menu-w );
        height: 100vh;
        background: #333536;
        box-sizing: border-box;
        height: 100%;
        overflow: auto;
        overflow-x: hidden;
        z-index: 1000000000;
        box-shadow: inset 3px 0px 8px 0px rgb( 0, 0, 0, 0.2 );
        transition: right 0.5s;
    }
    
    .mob-menu-active .header-menu-wrapper {
        right: 0;
    }
    
    .home-header .header-center {
        --home-bt-h: 160px;
    }
    
    .home-header .header-center .home-bt-center {
        display: none;
    }
    
    .home-header .header-center .home-bt-left,
    .home-header .header-center .home-bt-right {
        width: 100%;
        height: calc( var( --home-bt-h ) / 2 );
        left: 0;
        right: 0;
        font-size: 22px;
        padding: 20px;
    }
    
    .home-header .header-center .home-bt-right {
        top: calc( var( --home-bt-h ) / 2 );
    }
    
    .home-header .header-top .left {
        display: block;
    }
    
    header .header-top .right::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: rgba( 0, 0, 0, 0.5 );
        z-index: 1000000000;
        cursor: pointer;
        transition: opacity 0.3s;
        opacity: 0;
        pointer-events: none;
    }
    
    .mob-menu-active {
        margin-left: -320px;
    }
    
    .mob-menu-active footer {
        left: -320px;
    }
    
    .mob-menu-active header .header-top .right::before {
        opacity: 1;
        pointer-events: auto;
    }
    
    .header-menu > ul {
        border-bottom: none;
    }
    
    .header-menu-wrapper .header-menu-block {
        padding: 240px 0 50px 0;
    }
    
    .header-mob-logo {
        display: table;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: var( --mob-menu-header-h );
        box-sizing: border-box;
        padding: 10px;
        background: #fff;
        box-shadow: inset 3px 0px 8px 0px rgb( 0, 0, 0, 0.2 );
    }
    
    header .header-call-bt {
        top: var( --mob-menu-header-h );
        border-bottom-color: #fff;
        transition: background-color 0.3s;
    }
    
    header .header-call-bt:hover {
        background: rgba(255,255,255,.45);
    }
    
    header .header-call-bt::before {
        background: var( --site-color );
        height: calc( var( --menu-h ) + 2px );
    }
    
    header .header-call-bt::after {
        display: none;
    }
    
    .header-mob-logo a {
        display: block;
        width: 210px;
    }
    
    header .header-tel-block {
        top: var( --mob-menu-header-h );
        left: 0;
        right: auto;
    }
    
    header .header-tel-block .header-tel {
        position: absolute;
        width: var( --call-bt-width );
        left: calc( var( --mob-menu-w ) - var( --call-bt-width ) );
        top: 100%;
        right: auto;
        text-align: right;
        padding-right: 20px;
    }
    
    header .header-tel-block .header-tel a:hover {
        color: var( --site-color );
    }
    
    header .header-tel-block .header-lang {
        width: calc( var( --mob-menu-w ) - var( --call-bt-width ) );
        border-bottom: 1px solid #fff;
    }
    
    header .header-tel-block .header-lang li {
        display: inline-block;
        margin: 0 5px;
    }
    
    header .header-tel-block .header-lang li.current-lang a {
        color: var( --site-color );
    }
    
    .header-menu {
        margin-right: 0;
        float: none;
    }
    
    .header-menu > ul {
        width: 100%;
    }
    
    .header-menu > ul > li {
        display: block;
        margin: 0!important;
    }
    
    .header-menu .sub-menu {
        display: none;
        position: relative;
        top: auto!important;
        left: auto;
    }
    
    .header-menu li.active-m > .sub-menu {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }
    
    .header-menu > ul > li {
        min-height: var( --menu-h );
        height: auto;
        transition: background-color 0.3s;
    }
    
    .header-menu > ul li {
        min-height: var( --menu-h );
    }
    
    .header-menu > ul > li a {
        display: table-cell;
        height: var( --menu-h )!important;
    }
    
    .header-menu > ul > li::before,
    .header-menu > ul > li::after {
        display: none;
    }
    
    .header-menu > ul > li > .sub-menu::before {
        display: none;
    }
    
    .header-menu > ul > li:hover,
    .header-menu li.active-m,
    .header-menu li.active {
        background: rgba( 0, 0, 0, 0.1 );
    }
    
    .header-menu li.active-m > a,
    .header-menu li.current-menu-item > a,
    .header-menu li.current-menu-ancestor > a {
        color: var( --site-color )!important;
    }
    
    .header-menu .sub-menu {
        width: 100%;
        border: none;
        box-shadow: inset 0 0 8px 2px rgb( 0, 0, 0, 0.2 );
    }
    
    .header-menu .sub-menu li a {
        text-align: left;
    }
    
    .header-menu .menu-item-has-children .menu-item-has-children {
        cursor: pointer;
    }
    
    .header-menu .menu-item-has-children > a::after {
        content: "\f107";
        font-family: var( --FA );
        font-weight: 900;
        margin-left: 7px;
        pointer-events: none;
        position: absolute;
    }
    
    .header-menu .menu-item-has-children.active-m > a::after {
        content: "\f106";
    }
    
    .header-menu .menu-item-has-children > a {
        width: auto!important;
        padding-right: 0!important;
    }
    
    .header-menu > ul > li > .sub-menu .sub-menu {
        width: 100%;
        position: relative;
        top: auto;
        left: auto;
        right: auto;
    }
    
    .header-menu > ul > li > .sub-menu li {
        display: block;
    }
    
    .header-menu .sub-menu > li:first-of-type > a::before,
    .header-menu .sub-menu > li:last-of-type > a::before {
        display: none!important;
    }
    
    .header-menu .sub-menu > li:first-of-type {
        padding-top: 0;
    }
    
    .header-menu > ul > li > a {
        font-size: 16px;
    }
    
    .header-menu > ul > li a {
        width: var( --mob-menu-w );
        padding: 5px 20px;
        color: #fff!important;
        transition: color 0.3s;
    }
    
    .header-menu > ul li > a:hover,
    .header-menu > ul li.active > a {
        color: var( --site-color )!important;
    }
    
    .header-menu > ul > li > .sub-menu a {
        padding-left: 40px;
    }
    
    .header-menu > ul > li > .sub-menu .sub-menu a {
        padding-left: 60px;
    }
    
    .header-menu .sub-menu > li:last-of-type {
        padding-bottom: 0;
    }
    
    header .mob-menu-close-bt {
        display: inline-block;
        position: absolute;
        top: 30px;
        right: 20px;
        z-index: 100000000;
        color: var( --site-color );
        transition: top 0.3s, transform 0.3s;
    }
    
    header .mob-menu-close-bt:active {
        top: 27px;
    }
    
    header .mob-menu-close-bt::before {
        content: "\f057";
        font-family: var( --FA );
        font-weight: 900;
        font-size: 30px;
        line-height: 1;
    }
    
    header .mob-menu-bt-block {
        display: table;
        width: 100%;
    }
    
    header .mob-menu-bt {
        height: var( --menu-h );
        box-sizing: border-box;
        display: block;
        background: rgba(255,255,255,.25);
        padding: 5px calc( var( --menu-h ) + 15px ) 5px 15px;
        color: #fff;
        font-size: 16px;
        font-weight: 400;
        float: right;
        position: relative;
        border-bottom: 1px solid #a6a6a7;
        transition: background-color 0.3s;
    }
    
    header .mob-menu-bt:hover {
        background: rgba(255,255,255,.5);
    }
    
    header .mob-menu-bt::before {
        content: "\f0c9";
        display: block;
        height: var( --menu-h );
        width: var( --menu-h );
        line-height: var( --menu-h );
        background: var( --site-color );
        position: absolute;
        top: 0;
        right: 0;
        font-family: var( --FA );
        font-weight: 900;
        font-size: 26px;
        color: #fff;
    }
    
    header .header-social {
        position: absolute;
        top: 170%;
        left: 0;
        text-align: right;
        width: var( --mob-menu-w );
        padding-left: 20px;
    }
    
    .header-menu-wrapper::-webkit-scrollbar {
        width: 0;
    }
    
    body {
        padding-bottom: 0!important;
    }
    
    footer {
        height: auto!important;
        position: relative;
        bottom: auto;
        left: auto!important;
    }
    
    footer .f-col {
        width: 50%;
        padding: 0 15px!important;
        padding-right: calc( 50% - 300px )!important;
        margin-bottom: 50px;
    }
    
    .footer-coop {
        padding: 0 15px;
    }
    
    .main-content-block {
        --sitebar-w: 280px;
    }
    
    .main-content-block .right {
        --f-42: 30px;
        --f-21: 16px;
        --mar-b: 8px;
        padding-left: 40px;
    }
    
    .main-content-block .right h1 {
        font-size: 28px;
    }
    
    .main-content-block .right h2 {
        font-size: 22px;
    }
    
    .main-content-block .right h3, .main-content-block .right h4, .main-content-block .right h5, .main-content-block .right h6 {
        font-size: 18px;
    }
    
    header .header-center .company-year {
        display: none;
    }
    
    .review-container {
        --r-count: 2;
        --r-mar: 15px;
    }
    
    .case-block.case-block-3 {
        --case-count: 2;
    }
}

@media all and (max-width: 900px) {
    :root {
        --f-header-title: 45px;
    }
    
    .main-content-block .right,
    .main-content-block .left {
        width: 100%;
        float: none;
        padding-left: 0;
    }
    
    .main-content-block .right {
        margin-bottom: 100px;
    }
    
    .main-content-block .right.full-width {
        margin-bottom: 0!important;
    }
    
    .case-block.case-block-3 {
        --case-count: 3;
    }
}

@media all and (max-width: 600px) {
    :root {
        --f-header-title: 36px;
    }
    
    .pop-wrapper .pop-block {
        --f-21: 18px;
        --f-16: 14px;
        padding: 35px 15px 15px 15px;
    }
    
    footer .f-col {
        width: 100%;
        padding: 0 15px!important;
    }
    
    .form-block label.l, .form-block label.r {
        width: 100%;
        float: none;
    }
    
    .main-content-block .right {
        --f-42: 26px;
        --f-21: 15px;
        --mar-b: 7px;
    }
    
    .main-content-block .right h1 {
        font-size: 24px;
    }
    
    .case-block {
        margin-bottom: 50px;
    }

    .case-block .case-img {
        width: 100%;
        float: none;
        margin: 0 auto;
        max-width: 400px;
    }
    
    .case-block .case-content {
        width: 100%;
        float: none;
        padding-top: 10px;
        text-align: center;
    }
    
    .case-block.news-block .case-content {
        padding-top: 10px;
        text-align: left;
    }
    
    .case-block.news-block hr {
        display: block;
    }
    
    .case-block.news-block .case-img {
        max-width: none;
    }
    
    .case-block.case-block-3 {
        --case-count: 2;
    }
}

@media all and (max-width: 450px) {
    :root {
        --f-header-title: 30px;
    }
    
    header .header-bottom {
        min-height: 140px;
    }
    
    header .mob-menu-bt {
        width: var( --menu-h );
        padding: 0;
        color: transparent;
    }
    
    header .header-top {
        --header-logo-width: 220px;
    }
    
    footer {
        --footer-logo-width: 220px;
    }
    
    .pop-wrapper .pop-block .button {
        width: 100%;
    }
    
    .review-container {
        --r-count: 1;
        --r-mar: 15px;
    }
    
    .case-block.case-block-3 {
        --case-count: 1;
    }
}