
/* --------------------------- */
/* BASIC SETUP */
/* --------------------------- */

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    position: relative;
    color: #000;
    -webkit-tap-highlight-color:rgba(0,0,0,0); /* prevent tap highlight color / shadow */
}

.fancybox-navigation { position: static; }

:focus {outline: 0;}

html,
body {
    font-family: 'Exo 2', sans-serif;
    overflow-x: hidden;
}

/*body { -webkit-overflow-scrolling: touch; }*/

h1 {
    font-size: 14px;
    line-height: 14px;
    font-weight: 400;
    text-transform: uppercase;
    position: absolute;
    bottom: -8px;
    left: 73px;
}

h2,
h3 {
    font-weight: 400;
    font-size: 72px;
    line-height: 60px;
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-fit-content;
}

h2.lined:before,
h3.lined:before {
    content: '';
    height: 1px;
    width: 100%;
    bottom: -15px;
    background-color: #000;
    position: absolute;
}

h3 {
    font-size: 42px;
    line-height: 50px;
}

h4 {
    font-weight: 300;
    font-size: 32px;
    line-height: 30px;
}

p {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
}

.subp {

}

html.noscroll,
body.noscroll { overflow-y: hidden; }

section {
    width: 100%;
    height: auto;
}

/*
section.subp {
    padding: 30px 40px 80px 40px;
}
*/


/* ----- LINKS ----- */

a:link,
a:visited {
    text-decoration: none;
    color: #000;
}

a:hover,
a:active {
    text-decoration: none;
    color: #000;
}

@font-face {
	font-family: 'icomoon';
	src:url('../fonts/icomoon/icomoon.eot');
	src:url('../fonts/icomoon/icomoon.eot?#iefix') format('embedded-opentype'),
		url('../fonts/icomoon/icomoon.woff') format('woff'),
		url('../fonts/icomoon/icomoon.ttf') format('truetype'),
		url('../fonts/icomoon/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

.btn {
    font-size: 16px;
    line-height: 16px;
    text-transform: uppercase;
    font-weight: 400;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: -webkit-fit-content;
    width: fit-content;
    width: -moz-fit-content;
    cursor: pointer;
    height: 25px;
    padding: 0 45px;
    border-radius: 25px;
    border: 1px solid #000;
    background: transparent;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.btn:before {
    content: "\e00d";
    font-family: 'icomoon';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    height: 100%;
    font-size: 100%;
    line-height: 1.5;
    color: #000;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    right: 40px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    top: 0;
}

.btn.back:before {
    right: 3px;
    transform: rotate(180deg);
}

.btn:after {
    content: '';
    position: absolute;
    z-index: -1;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.btn:hover { background: #f3f3f3; }
.btn.grey:hover { background: #dadada; }

.btn:hover:before {
    right: 15px;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}
.btn.back:hover:before {
    right: 22px;
}


img { 
    max-width: 100%;
    width: 100%;
}

/* --------------- */
/*      HEADER     */
/* --------------- */

header {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 85px;
    background-color: #e0e0e0;
    padding: 0 280px;
}

header .logo {
    width: 321px;
    height: 48px;
}

header .logo > img {
    width: 100%;
    height: 100%;
}

header ul {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    list-style: none;
}

header ul li:not(:first-child) { margin-left: 20px; }

header ul li a,
ul.mobil_version li a {
    font-size: 16px;
    color: #424242;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
}

header ul li a:before,
ul.mobil_version li a:before {
    position: absolute;
    top: 100%;
    left: 50%;
    color: transparent;
    content: "•";
    text-shadow: transparent 0px 0px;
    font-size: 1.2em;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    pointer-events: none;
    -webkit-transition: text-shadow 0.3s ease 0s, color 0.3s ease 0s;
    transition: text-shadow 0.3s ease 0s, color 0.3s ease 0s;
}

header ul li a:hover,
header ul li a:focus,
header ul li.clicked a,
ul.mobil_version li a:hover,
ul.mobil_version li a:focus,
ul.mobil_version li.clicked a { color: #e3312c; }

header ul li a:hover:before, 
header ul li a:focus:before,
header ul li.clicked a:before,
ul.mobil_version li a:hover:before, 
ul.mobil_version li a:focus:before,
ul.mobil_version li.clicked a:before {
    color: #e3312c;
    text-shadow: 10px 0 #e3312c, -10px 0 #e3312c;
}

#hamburger {
    display: none;
    width: 42px;
    height: 30px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

#hamburger span {
  display: block;
  position: absolute;
  height: 5px;
  width: 100%;
  background: #000;
  border-radius: 25px;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

#hamburger span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}

#hamburger span:nth-child(2) {
  top: 12.5px;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}

#hamburger span:nth-child(3) {
  top: 25px;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}

#hamburger.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: -1.5px;
  left: 5px;
}

#hamburger.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

#hamburger.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 27.5px;
  left: 5px;
}

ul.mobil_version { 
    display: none; 
    list-style: none;
}

header .lang_selector {
    position: absolute;
    width: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    top: 2px;
    right: 280px;
}

header .lang_selector > a {
    font-weight: bold;
    font-size: 16px;
    color: #424242;
    padding-bottom: 2px;
    -webkit-transition: all .25s ease;
    transition: all .25s ease;
}

header .lang_selector > a.clicked,
header .lang_selector > a:hover {
    border-bottom: 1px solid #e3312c;
    color: #e3312c;
}

/* ------------------- */
/*      FRONT PAGE     */
/* ------------------- */

.front_header {
    height: 88vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: url(../img/svg/dots.svg);
    background-color: rgba(121, 188, 108, 0.8);
    background-repeat: repeat; 
}

.front_header .content {
    width: 879px;
    height: 694px;
    margin-top: 5%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url(../img/header_circle.png);
}

.front_header .content > h2,
.front_header .content > span {
    position: absolute;
    color: #fff;
    font-weight: 300;
    display: block;
}

.front_header .content > h2 {
    font-size: 32px;
    line-height: 28px;
}

.front_header .content > span {
    font-size: 18px;
    line-height: 18px;
}

.front_header .content > h2.one {
    left: 38px;
    top: 15px;
}

.front_header .content > span.one {
    left: 38px;
    top: 76px;
}
.front_header .content.sk > span.one { top: 49px; }

.front_header .content > h2.two {
    left: 583px;
    top: 28px;
}

.front_header .content > span.two {
    left: 583px;
    top: 58px;
}

.front_header .content > h2.three {
    left: 268px;
    top: 365px;
}

.front_header .content > span.three {
    left: 268px;
    top: 400px;
}

.front_header .content > a {
    position: absolute;
    width: 330px;
    height: 290px;
}

.front_header .content > a.one {
    left: -7px;
    top: 48px;
}

.front_header .content > a.two {
    right: 10px;
    top: 0;
}

.front_header .content > a.three {
    left: calc(50% - 180px);
    bottom: 30px;
}

@-webkit-keyframes scroll_anim {
    0% {
        opacity: 0.36;
    }

    33% {
        opacity: 1;
    }
    
    66% {
        opacity: 0.36;
    }
    
    100% {
        opacity: 0.36;
    }
}
@keyframes scroll_anim {
    0% {
        opacity: 0.36;
    }

    33% {
        opacity: 1;
    }
    
    66% {
        opacity: 0.36;
    }
    
    100% {
        opacity: 0.36;
    }
}

.front_header .scroll_cont {
    position: absolute;
    width: 100%;
    height: 20px;
    bottom: 20px;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.front_header .scroll_cont svg path {
    fill: #fff;
    opacity: 0.36;
    display: block;
    -webkit-animation: scroll_anim 1.8s cubic-bezier(0.16, 0.47, 0.52, 1);
    animation: scroll_anim 1.8s cubic-bezier(0.16, 0.47, 0.52, 1);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

.front_header .scroll_cont svg path.sc2 {
    -webkit-animation-delay: 0.32s;
    animation-delay: 0.32s;
}

.front_header .scroll_cont p {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    margin-left: 10px;
    letter-spacing: 2px;
}

#introvideo {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    -o-object-fit: cover;
    object-fit: cover;
}

.agreement {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #89c180;
    padding: 50px 50px 30px 50px;
}

.agreement h2 {
    max-width: 1380px;
    font-size: 35px;
    line-height: 45px;
    color: #FFFFFF;
    text-align: center;
    margin-bottom: 50px;
}

.agreement .btn {
    width: 260px;
    justify-content: center;
}

.front_about_us { display: -webkit-box; display: -ms-flexbox; display: flex; }

.front_about_us .left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 50%;
    padding: 8vw 30px;
    background-color: #e8e8e8;
    background-image: url(../img/bg_about.jpg);
    background-position: left center;
    background-repeat: no-repeat;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
}
.front_about_us.en .left { padding: 15.1vw 30px; }

.front_about_us .left .text_box { width: 70%; }

.front_about_us .left .text_box h2.lined:before {
    width: 300%;
    right: 0;
}

.front_about_us .left .text_box > p { margin-top: 55px; }

.front_about_us .left .text_box > .btn { margin: 60px 0 0 auto; }

.front_about_us .right {
    width: 50%;
    padding: 50px 0 0 120px;
    background-image: url(../img/tires_bg.jpg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: cover;
}

.front_about_us .right > h2 {
    color: #fff;
    margin-left: 80px;
    text-align: center;
}

.front_about_us .right > img {
    width: 490px;
    height: auto;
    display: block;
    margin-top: 80px;
}

.front_company_profile {
    height: 900px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: url(../img/stars_bckg.jpg);
    background-size: cover;
    background-position: left center;
    background-repeat: no-repeat;
}

.front_company_profile .profil_cont {
    width: 1440px;
    height: 680px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 50px 125px 50px 240px;
}

.front_company_profile .profil_cont * { z-index: 1; }

.front_company_profile .profil_cont .abs_bckg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-image: -webkit-linear-gradient(left, rgba(238, 238, 238, 0.5) -150%, rgba(52, 68, 86, 0.5) 100%);
    box-shadow: 0px 30px 55px 0 rgba(0,0,0,0.36);
    z-index: 0;
}

.front_company_profile .profil_cont > h2 {
    position: absolute;
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
    left: 170px;
    bottom: 80px;
}

.front_company_profile .profil_cont .left {
    width: 480px;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.front_company_profile .profil_cont .left .icon_box {
    width: 50%;
    height: 220px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
}

.front_company_profile .profil_cont .left .icon_box.big { 
    margin-top: auto;
    height: 255px; 
}
.front_company_profile .profil_cont .left .icon_box.big > img { height: 67px; }

.front_company_profile .profil_cont .left .icon_box > span,
.front_company_profile .profil_cont .right .icon_box strong {
    text-transform: uppercase;
    color: #fff;
    font-weight: 300;
    font-size: 32px;
    line-height: 24px;
    margin-top: 10px;
}

.front_company_profile .profil_cont .right .icon_box strong > span {
    font-size: 22px;
    text-transform: none;
    margin-top: 0;
    color: #fff;
}

.front_company_profile .profil_cont .left .icon_box > img {
    width: auto;
    height: 57px;
}

.front_company_profile .profil_cont .left .icon_box .text {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: auto;
}

.front_company_profile .profil_cont .left .icon_box .text .line {
    width: 53px;
    height: 6px;
    background-color: #fff;
    margin-bottom: 5px;
}

.front_company_profile .profil_cont .left .icon_box .text > strong {
    font-size: 22px;
    color: #fff;
    font-weight: 900;
}

.front_company_profile .profil_cont .left .icon_box .text > span {
    font-size: 14px;
    line-height: 16px;
    color: #fff;
    font-weight: 400;
}

.front_company_profile .profil_cont .center {
    width: 1px;
    height: 100%;
    background-color: #fff;
}

.front_company_profile .profil_cont .center:after {
    content: '';
    position: absolute;
    width: 15px;
    height: 1px;
    left: 0;
    top: 50%;
    background-color: #fff;
}

.front_company_profile .profil_cont .right {
    width: 440px;
    height: -webkit-fit-content;
    height: fit-content;
    height: -moz-fit-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.front_company_profile .profil_cont .right .icon_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    margin-bottom: 45px;
    height: -webkit-fit-content;
    height: fit-content;
    height: -moz-fit-content;
}

.front_company_profile .profil_cont .right .icon_box > div:nth-child(1) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
}

.front_company_profile .profil_cont .right .icon_box > div:nth-child(1) > img {
    width: auto;
    height: 67px;
}

.front_company_profile .profil_cont .right .icon_box > div:nth-child(2) {
    width: 4px;
    height: 53px;
    background-color: #fff;
    margin-top: 80px;
}

.front_company_profile .profil_cont .right .icon_box > div:nth-child(3) {
    font-weight: 300;
    font-size: 22px;
    line-height: 24px;
    margin-top: 80px;
    color: #fff;
}

.front_company_profile .profil_cont .right .mini_box {
    width: 80px;
    height: 120px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.front_company_profile .profil_cont .right .mini_box > p {
    font-size: 22px;
    color: #fff;
    line-height: 28px;
    font-weight: 300;
}

.front_company_profile .profil_cont .right .mini_box > span {
    display: block;
    font-size: 14px;
    color: #fff;
    line-height: 16px;
    font-weight: 300;
}

.front_company_profile .profil_cont .right .mini_box > .line {
    width: 100%;
    height: 1px;
    background-color: #fff;
    margin: auto 0 15px 0;
}

.front_company_profile .profil_cont .right .mini_box > strong {
    font-size: 22px;
    color: #fff;
    line-height: 22px;
    font-weight: 900;
}

.front_company_profile .profil_cont .right .mini_box > span:last-child { font-size: 16px; }

.front_video {
    height: 47.9vw;
    padding: 6vw 0;
    background-color: #222222;
}

.front_video > h2 {
    position: absolute;
    top: 3.2vw;
    left: 13.5vw;
    color: #818181;
    z-index: 1;
    opacity: 1;
    transition: opacity 1s ease;
}

.front_video > h2.hide { opacity: 0; }

.front_video .video_cont {
    height: 100%;
    width: 1440px;
    margin: 0 auto;
    overflow: hidden;
    box-shadow: 20px 20px 40px 0 rgba(0,0,0,0.36);
}

.front_video .video_cont video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
}

#video-controls {
    position: absolute;
    width: 470px;
    height: 100px;
    right: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 20px;
    background-color: #c5c5c5;
}

#video-controls button {
    width: 40px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border: 0;
    background: transparent;
    cursor: pointer;
}

#video-controls button > img {
    height: 28px;
    width: auto;
}

#video-controls button:last-child > img { height: 33px; }

#video-controls input[type=range] {
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 310px;
    margin: 0 20px;
}

#video-controls input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 3px;
    background: #fff;
    border: none;
    border-radius: 3px;
}

#video-controls input[type=range]::-moz-range-track {
    width: 100%;
    height: 3px;
    background: #fff;
    border: none;
    border-radius: 3px;
}

#video-controls input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    -moz-appearance: none;
    height: 12px;
    width: 12px;
    border-radius: 50%;
    background: #4e4e4e;
    margin-top: -4px;
}

#video-controls input[type=range]::-moz-range-thumb {
    -webkit-appearance: none;
    -moz-appearance: none;
    height: 12px;
    width: 12px;
    border-radius: 50%;
    background: #4e4e4e;
    margin-top: -4px;
}

.front_partners {
    padding: 5.2083vw 40px 14.0625vw 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    overflow-y: hidden;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right center;
    background-image: url(../img/partners_bg.jpg);
}

.front_partners > h2 { 
    text-align: center;
    margin-bottom: 60px;
    color: #fff;
}

.front_partners > .slider_cont {
    width: 1380px;
    padding: 110px 65px;
    background-color: #fff;
}

#partners_slider { width: 100%; }

#partners_slider .swiper-slide {
    padding: 0 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto;
}

#partners_slider .swiper-slide > img {
    width: 100%;
    height: auto;
    display: block;
    margin: auto 0;
}

.front_partners > .slider_cont .swiper-button-prev { left: 20px }
.front_partners > .slider_cont .swiper-button-next { right: 20px }

.front_partners > .slider_cont .swiper-button-prev,
.front_partners > .slider_cont .swiper-container-rtl,
.front_partners > .slider_cont .swiper-button-next {
    background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23253a21'%2F%3E%3C%2Fsvg%3E");
}
.front_partners > .slider_cont .swiper-button-next {
    background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23253a21'%2F%3E%3C%2Fsvg%3E");
}

/*
.front_partners .certificate_cont {
    width: 480px;
    margin-top: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.front_partners .certificate_cont .certificate_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.front_partners .certificate_cont .certificate_box > a {
    display: block;
    width: 122px;
    height: 149px;
    background-image: url(../img/pdf.png);
    background-repeat: no-repeat;
    margin-bottom: 10px;
}

.front_partners .certificate_cont .certificate_box > span {
    display: block;
    font-size: 22px;
    line-height: 24px;
    font-weight: bold;
    color: #365279;
    text-align: center;
}
*/

.front_partners > * { z-index: 1; }


.front_form_cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 47.92vw;
}

.front_form_cont .left {
    width: 50%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-image: url(../img/recycle_bckg.jpg);
}

.front_form_cont .right {
    width: 50%;
    height: 100%;
    padding: 4.15vw 2.6vw 0 4.15vw;
    background-color: #79bc6c;
}

.front_form_cont .right > h2.lined:before {
    right: 10px;
    width: 35vw;
}

#touch_form {
    width: 600px;
    height: auto;
    margin-top: 4.69vw;
}

input[type=text],
input[type=email],
textarea {
    width: 100%;
    background: none;
    font-family: 'Exo 2', sans-serif;
    font-size: 14px;
    font-weight: 400;
    border: 1px solid #000;
    color: #000;
    height: 35px;
    margin-top: 25px;
    text-align: center;
    padding: 0 10px;
}

textarea { 
    resize: none; 
    height: 310px;
    padding: 10px;
}

#touch_form input[type=text]:first-child { margin-top: 0px; }

#touch_form > .btn { 
    margin-top: 2.1vw; 
    cursor: pointer;
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: rgba(0, 0, 0, 1);
    font-family: 'Exo 2', sans-serif;
    font-weight: 400;
    font-size: 14px;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #000;
    opacity:  1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    font-family: 'Exo 2', sans-serif;
    font-weight: 400;
    font-size: 14px;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #000;
    opacity:  1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    font-family: 'Exo 2', sans-serif;
    font-weight: 400;
    font-size: 14px;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: rgba(0, 0, 0, 1);
    font-family: 'Exo 2', sans-serif;
    font-weight: 400;
    font-size: 14px;
}
::-ms-input-placeholder { /* Microsoft Edge */
    color: rgba(0, 0, 0, 1);
    font-family: 'Exo 2', sans-serif;
    font-weight: 400;
    font-size: 14px;
}


#touch_form input.error,
#touch_form textarea.error { border: 2px solid #e20b0b; }

#touch_form input.error::-webkit-input-placeholder { color: #e20b0b; }
#touch_form input.error:-moz-placeholder { color: #e20b0b; }
#touch_form input.error::-moz-placeholder { color: #e20b0b; }
#touch_form input.error:-ms-input-placeholder { color: #e20b0b; }
#touch_form input.error::-ms-input-placeholder { color: #e20b0b; }

#touch_form textarea.error::-webkit-input-placeholder { color: #e20b0b; }
#touch_form textarea.error:-moz-placeholder { color: #e20b0b; }
#touch_form textarea.error::-moz-placeholder { color: #e20b0b; }
#touch_form textarea.error:-ms-input-placeholder { color: #e20b0b; }
#touch_form textarea.error::-ms-input-placeholder { color: #e20b0b; }

#touch_form .thanks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 30px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: #79bc6ce6;
}

.about_us_form #touch_form .thanks {
    background-color: #efededf0;
}

#touch_form .thanks:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 5px;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: 1px solid #000;
}

#touch_form .thanks > span {
    font-size: 25px;
    font-weight: 700;
    text-align: center;
}

.front_form_cont #touch_form > .btn:hover { background-color: #6dac61; }

/* ------------------*/
/*      ABOUT US     */
/* ----------------- */

.about_us { display: -webkit-box; display: -ms-flexbox; display: flex; }

.about_us .left { 
    width: 61%;
    padding: 3.125vw 3.125vw 3.125vw 13.9vw;
    background-color: #e8e8e8;
    z-index: 1;
}

.about_us .left > h2 { line-height: 80px; }
.about_us .left > h2:before {
    width: 200%;
    bottom: -45px;
    right: 10px;
}

.about_us .left > p { margin-top: 20px; }
.about_us .left > p:nth-child(2) { margin-top: 110px; }

.about_us .left > a:not(.btn) {
    color: #ec0b0b;
    display: block;
    font-size: 16px;
    line-height: 24px;
    margin-top: 5px;
}

.about_us .left > p a {
    font-weight: bold;
    color: #ec0b0b;
}

.about_us .right { 
    width: 39%;
    padding: 4vw 3vw 0 0;
    background-color: #fff;
}

.about_us .right > img {
    width: 660px;
    height: auto;
    margin-left: -190px;
}

.about_us_form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 11vw 0;
    background-image: -webkit-linear-gradient(left, #fff 50%, #fafafa 0%);
    background-image: linear-gradient(to right, #fff 50%, #fafafa 0%);
}

.about_us_form > h3 {
    position: absolute;
    left: 14.58vw;
    top: 38%;
}

.about_us_form > h3.lined:before {
    right: -3.64vw;
    width: 50vw;
    bottom: -25px;
}

.about_us_form #touch_form { margin-top: 0; }

.about_us_form #touch_form > .btn { margin: 30px auto 0 auto; }

/* --------------------------*/
/*      PRODUCTS SUBPAGE     */
/* ------------------------- */

.products { padding-bottom: 30px; }

.products > h3 { margin: 50px 0 0 14.6vw; }

.products > h3:before {
    right: -5.2vw;
    width: 50vw;
}

.products .products_cont {
    width: 880px;
    margin: 0 auto;
}

.products .products_cont .product_box {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.products .products_cont .product_box:not(:first-child) { margin-top: 50px; }
.products .products_cont .product_box:nth-child(even) { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }

.products .products_cont .product_box .text {
    width: 480px;
    padding-left: 20px;
}

.products .products_cont .product_box .text:before {
    content: '';
    position: absolute;
    width: 1px;
    height: 105px;
    left: 0;
    top: 0;
    background-color: #000;
}

.products .products_cont .product_box .text > p { margin-top: 20px; }

.products .products_cont .product_box .text > a { margin: 15px 0 0 auto; }

.products .products_cont .product_box > img {
    width: 180px;
    height: auto;
}

.products .products_cont .product_box:nth-child(3) > img { width: 215px; }
.products .products_cont .product_box:nth-child(4) > img { width: 390px; }

/* ----------------------------*/
/*      TECHNOLOGY SUBPAGE     */
/* --------------------------- */

.technology {
    background-image: url(../img/technology_bckg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
    padding: 60px 0 170px 0;
}

.technology .content {
    width: 1370px;
    margin: 0 auto;
}

.technology .content > h3 { line-height: 60px; }
.technology .content > h3:before {
    width: 50vw;
    right: 0;
    bottom: -30px;
    background-color: #fff;
}

.technology .content * { color: #fff; }    
    
.technology .content .text_cont {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 70px;
}

.technology .content .text_cont .left,
.technology .content .text_cont .right { width: 48% }

/* --------------------------*/
/*      SERVICES SUBPAGE     */
/* ------------------------- */

.services {
    padding: 60px 40px 50px 14.58vw;
    background-image: url(../img/services_bckg.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right top;
    background-color: #031016;
}

.services * { color: #fff; }

.services > h3.lined:before {
    right: -3.64vw;
    width: 50vw;
    bottom: -15px;
    background-color: #fff;
}

.services .content {
    width: 620px;
    margin-top: 130px;
}

.services .content > p:last-child { margin-top: 40px; }

.services .content .matrix {
    width: 100%;
    margin-top: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}

.services .content .matrix:before,
.services .content .matrix:after {
    content: '';
    position: absolute;
    width: 10px;
    height: calc(100% - 2px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    left: 0;
    top: 0;
}
.services .content .matrix:after {
    left: auto;
    right: 0;
}

.services .content .matrix > table { 
    width: 100%; 
    font-size: 16px;
}

.services .content .matrix > table span {
    display: block;
    font-size: 14px;
}

.services .content .matrix > table tr { vertical-align: baseline; }

.services .content .matrix > table tr td:nth-child(1) { width: 19%; }
.services .content .matrix > table tr td:nth-child(2) { width: 54%; }
.services .content .matrix > table tr td:nth-child(3) { 
    width: 27%; 
    padding-left: 13%;
}

.services .content .matrix > table tr:nth-child(2) td { padding-top: 5px; }
.services .content .matrix > table tr:nth-child(3) td { padding-top: 25px; }
.services .content .matrix > table tr:nth-child(4) td { padding-top: 30px; }

.services > h3.two.lined { margin-top: 30px; }
.services > h3.two.lined:before { bottom: -40px; }

.services > .row {
    width: 1370px;
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}

.services > .row > .matrix_2 {
    width: 675px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}

.services > .row > .matrix_2:before,
.services > .row > .matrix_2:after {
    content: '';
    position: absolute;
    width: 10px;
    height: calc(100% - 2px);
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    left: 0;
    top: 0;
}
.services > .row > .matrix_2:after {
    left: auto;
    right: 0;
}

.services > .row > .matrix_2 > table { 
    width: 100%; 
    font-size: 16px;
}

.services > .row > .matrix_2 > table span {
    display: block;
    font-size: 14px;
}


.services > .row > .matrix_2 > table tr td:nth-child(1) { width: 70%; }
.services > .row > .matrix_2 > table tr td:nth-child(2) { width: 30%; }

.services > .row > .matrix_2 > table tr:not(:first-child) td { padding-top: 10px; }

.services > .row > ul { width: 560px; }

.services > .row > ul li {
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    margin-top: 15px;
    list-style: decimal;
    padding-left: 10px;
}

/* ------------------------------*/
/*      CERTIFICATES SUBPAGE     */
/* ----------------------------- */

.policies { 
    padding: 60px 0 20px 0;
}

.policies > h3 {
    line-height: 60px;
    margin-left: 14.58vw;
}

.policies > h3.lined:before {
    width: 50vw;
    right: 0px;
}

.policies .diplom_cont {
    width: 1020px;
    height: auto;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
}

.policies .diplom_cont .diplom_box {
    display: block;
    width: 480px;
    height: 650px;
    border: 20px solid #365278;
    box-shadow: 4px 4px 30px 0 rgba(0,0,0,0.33);
    margin-top: 50px;
}

.policies .diplom_cont .diplom_box:nth-child(even) { margin-left: 60px; }

.policies .diplom_cont .diplom_box > img:nth-child(1) {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center;
    background-color: #fff;
}

.policies .diplom_cont .diplom_box:last-child::after {
    content: '';
    position: absolute;
    right: -174px;
    bottom: -20px;
    width: 114px;
    height: 95px;
    pointer-events: none;
    background-image: url("../img/svg/quality.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

/* ----------------------*/
/*      BLOG SUBPAGE     */
/* --------------------- */

.blog {
    background-color: #fff;
    padding: 50px 0;
}

.blog > h3 {
    margin-left: 14.5vw;
}

.blog > h3.lined:before {
    width: calc(100% + 15.5vw);
    right: -1vw;
}

.blog .blog_cont {
    width: 1380px;
    margin: 60px auto;
}

.blog .blog_cont > .row {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.blog .blog_cont > .row h4 {
    line-height: 40px;
}

.blog .blog_cont > .row:not(:first-child) { margin-top: 50px; }

.blog .blog_cont > .row > a.for_img {
    width: 200px;
    height: 160px;
    display: block;
}

.blog .blog_cont > .row > a.for_img > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.blog .blog_cont > .row > .column {
    width: calc(100% - 460px);
    padding-left: 40px;
    display: flex;
    flex-direction: column;
    border-left: 1px solid #000;
}

.blog .blog_cont > .row > .column > span {
    font-size: 12px;
}

.blog .blog_cont > .row > .column > p {
    margin-top: 10px;
}

.blog .blog_cont > .row > a.btn {
    align-self: center;
}

.blog .pagination_cont {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.blog .pagination_cont > a {
    font-size: 16px;
    font-weight: bold;
    margin: 0 10px;
    display: block;
    color: #000;
    height: fit-content;
    height: -moz-fit-content;
}

.blog .pagination_cont > a.current { pointer-events: none; }

.blog .pagination_cont > a.current::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #000;
    left: 0;
    bottom: -2px;
}

.blog .pagination_cont > a.arrow {
    width: 19px;
    height: 38px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("../img/svg/arrow_back.svg");
    margin: 0 30px 0 -19px;
}

.blog .pagination_cont > a.arrow.next {
    transform: rotate(180deg);
    margin: 0 -19px 0 30px;
}

/*---   BLOG ENTRY PAGE  ---*/

.blog_entry {
    padding: 40px 280px;
}

.blog_entry > a.btn {
    margin: 0 0 30px auto;
}

.blog_entry > .row {
    width: 100%;
    display: flex;
    margin-bottom: 20px;
}

.blog_entry > .row > a:nth-child(2) {
    margin-left: 30px;
}

.blog_entry .center {
    width: 710px;
    margin: 0 auto;
}

.blog_entry .center h4 {
    line-height: 40px;
}

.blog_entry .center a.cover {
    width: 280px;
    display: block;
    margin: 30px auto 10px auto;
}

.blog_entry .center a.cover > img {
    width: 100%;
    height: auto;
}

.blog_entry .center > p {
    margin-top: 30px;
}

.blog_entry .center > .row {
    width: 100%;
    height: 160px;
    display: flex;
    margin-top: 40px;
}

.blog_entry .center > .row > a {
    width: 25%;
    height: 100%;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.blog_entry .center > .row > a:nth-child(n+5) { display: none; }

.blog_entry .center > .row > a > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.blog_entry .center > .row > a .abs_number {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 700;
    color: #000;
    background-color: rgba(183, 183, 183, 0.5);
}

.blog_entry .center > .row > a::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(87, 87, 87, 0);
    z-index: 2;
    transition: all .3s ease;
}

.blog_entry .center > .row > a:hover::after {
    background-color: rgba(87, 87, 87, 0.3);
}




/* -------------------------*/
/*      CONTACT SUBPAGE     */
/* ------------------------ */

.contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #e8e8e8;
}

.contact .left {
    width: 50%;
    padding: 60px 30px 30px 280px;
}

.contact .left > h3.lined:before {
    right: -3.64vw;
    width: 50vw;
}

.contact .left .address_box { margin-top: 55px; }

.contact .left .address_box > strong,
.contact .left .address_box > a,
.contact .left .address_box > span {
    font-size: 16px;
    line-height: 24px;
    display: block;
}

.contact .left #touch_form {
    width: 480px;
    margin-top: 60px;
}

.contact .left #touch_form > .btn {
    margin-top: 25px;
}

#loc_map {
    width: 50%;
    height: auto;
}

.contact #touch_form .thanks { background-color: #e8e8e8f0; }

/* ----------------*/
/*      POPUP     */
/* --------------- */

.abs_popup_cont {
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.85);
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    display: none;
}

.abs_popup_cont.visible {
    display: flex;
    z-index: 900;
}

.abs_popup_cont .popup_box {
    width: 1000px;
    height: auto;
}

.abs_popup_cont .popup_box > img {
    display: block;
    position: absolute;
    width: 70px;
    height: 70px;
    right: 0;
    top: 0;
    object-position: center;
    object-fit: cover;
    z-index: 1;
    cursor: pointer;
}

.abs_popup_cont .popup_box .popup {
    width: 100%;
    height: auto;
}

.abs_popup_cont .popup_box .popup > img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
    display: block;
}

.abs_popup_cont .popup_box .popup > span {
    display: block;
    width: 100%;
    padding: 30px 40px;
    background-color: #e0e0e0;
    color: #464646;
    font-size: 48px;
    letter-spacing: 1px;
}

/* ----------------*/
/*      FOOTER     */
/* --------------- */

footer {
    width: 100%;
}


footer .top,
footer .bottom {
    padding: 20px 280px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: auto;
    background-color: #e0e0e0;
}

footer .bottom {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 280px;
    background-color: #d9d9d9;
    height: 40px;    
}

footer .top ul,
footer .top .box {
    width: max-content;
    width: -moz-max-content;
}

footer .top ul li {
    list-style: none;
    margin-top: 12px;
    line-height: 15px;
}

footer .top .media {
    width: 180px;
    height: auto;
    border-left: 1px solid #000;
    border-right: 1px solid #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

footer .top .media > a {
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../img/svg/fb.svg);
}

footer .top .media > a:nth-child(2) { background-image: url(../img/svg/linkedin.svg); }
footer .top .media > a:nth-child(3) { background-image: url(../img/svg/youtube.svg); }
footer .top .media > a:not(:first-child) { margin-top: 15px; }

footer .top a,
footer .top span,
footer .top strong,
footer .bottom a { font-size: 14px; }

footer .top > a:last-child { 
    display: flex; 
    align-self: center;
    height: fit-content;
    height: -moz-fit-content;
    align-items: flex-end;
}
footer .top > a:last-child > img {
    display: block;
    width: 35px;
    height: 35px;
    margin-right: 10px;
}
