/* DESKTOP MENU */
.main_header {position:relative; z-index:9;}
.site-nav--desktop {
    position:fixed; top:0; left:0; right:0; z-index:9999;
    transition:all .5s ease; background:rgba(255,255,255,.85);
}

.site-nav--desktop-inner {padding:0 20px; min-width:1200px;}
.site-nav-col {min-height:100px;}
.site-nav-col:not(:first-child) {margin-left:80px;}
.site-nav-col.desktop-no-item {display:none;}
.site-nav-block:not(:first-child) {margin-left:20px;}

body.menufixed .site-nav--desktop {background:#fff;}

@media only screen and (min-width:1201px){
    html.msie .site-nav--desktop-inner {padding:24px 20px;}
    html.msie .site-nav-col {min-height:auto;}
}

/* LOGO */
.site-logo-link {height:55px; width:auto; display:block;}
.site-logo-link img {height:100%; width:auto;}

/* MAIN MENU */
.main-nav-menu ul.sub-menu {display:none;}
.main-nav-menu ul.menu {margin:0; padding:0; list-style:none; display:flex;}
.main-nav-menu ul.menu > li {padding:0;}
.main-nav-menu ul.menu > li:not(:last-child) {margin-right:30px;}
.main-nav-menu ul.menu > li > a {
    display:block; color:#000; text-transform:uppercase; padding:0 0 30px;
    font-family:'Montserrat', sans-serif; font-size:17px; line-height:1; position:relative;
    white-space:nowrap;
}
.main-nav-menu ul.menu > li > a:after {
    content:''; position:absolute; bottom:0; left:0; right:0;
    background:#cd181b; height:5px; pointer-events:none;
    transition:all .5s ease; transform:scale(0);
}
.main-nav-menu ul.menu > li[class*="current"] > a:after,
.main-nav-menu ul.menu > li > a:hover:after {transform:scale(1);}
.main-nav-menu ul.menu > li[class*="current"] > a,
.main-nav-menu ul.menu > li > a:hover, .main-nav-menu ul.menu > li > a:focus {
    text-decoration:none; color:#cd181b;
}

/* POPUP FORM */
a.btn-popup-form {
    font-size:16px; padding:15px 25px; color:#fff; background-color:#cd181b;
    display:block; font-weight:700; text-decoration:none;
    transition:all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    white-space:nowrap; text-align:center;
}
a.btn-popup-form:hover {background-color:#000;}

/* DESKTOP MENU > Long menu */
@media only screen and (min-width:1441px){
    .has-long-menu .site-nav-col:not(:first-child) {margin-left:40px;}
    .has-long-menu .main-nav-menu ul.menu > li:not(:last-child) {margin-right:20px;}
    .has-long-menu .site-logo-link {height:50px;}
}

/* HAMBURGER MENU */
button.nav-hamburger {padding:5px 0; background:none;}
.nav-hamburger--lines {display:block; width:30px; height:20px; position:relative;}
.nav-hamburger--lines i {
    position:absolute; left:0;
    display:block; width:100%; height:2px; background:#000;
    transition:all .3s ease-in-out;
}
.nav-hamburger--lines i:nth-child(1) {top:0;}
.nav-hamburger--lines i:nth-child(2) {top:9px;}
.nav-hamburger--lines i:nth-child(3) {bottom:0;}
.menu-open .nav-hamburger--lines i:nth-child(1) {transform:rotate(45deg); top:9px;}
.menu-open .nav-hamburger--lines i:nth-child(3) {transform:rotate(-45deg); bottom:9px;}
.menu-open .nav-hamburger--lines i:nth-child(2) {width:0; left:50%;}


/* MOBILE MENU */
.site-nav--mobile {
    position:fixed; top:0; left:0; bottom:0; z-index:999;
    -webkit-transition:all .3s ease;-o-transition:all .3s ease;transition:all .3s ease;
    -webkit-transform:translateX(-105%);-ms-transform:translateX(-105%);transform:translateX(-105%);
    background:#192d75; color:#fff; box-shadow:0 2px 5px 0 rgba(0,0,0,.2);
    padding:80px 20px 20px; box-sizing:border-box; overflow-y:auto;
    max-width:300px; width:100%;
}
.menu-open .site-nav--mobile {transform:none;}
.site-nav--mobile__inner {height:100%;}
.site-nav--mobile__close {
    position:fixed; top:0; left:0; z-index:99;
    width:100vw; height:100vh; font-size:0; background:rgba(0,0,0,.3);
    -webkit-transition:all .3s ease;-o-transition:all .3s ease;transition:all .3s ease;
    opacity:0; visibility:hidden;
}
.menu-open .site-nav--mobile__close {opacity:1;visibility:visible;}
.site-nav--mobile__bottom {padding:30px 0;}

/* MOBILE MENU > common menu */
.mobile-menu ul {list-style:none; margin:0; padding:0;}
.mobile-menu ul > li {padding:0; display:flex; flex-wrap:wrap;}
.mobile-menu ul > li:not(:last-child) {margin-bottom:15px;}
.mobile-menu ul > li > a {display:block; padding:5px 0; color:#fff; font-weight:700;}
.mobile-menu ul > li[class*="current-"] > a {font-weight:700; border-bottom:3px solid #cd181b;}
.mobile-menu ul > li[class*="current"] > a,
.mobile-menu ul > li > a:hover, .mobile-menu ul > li > a:focus {
    text-decoration:none; color:#cd181b;
}
.mobile-menu ul.menu > li > a {text-transform:uppercase;}

/* MOBILE MENU > sub menu */
.mobile-menu ul.sub-menu {margin:5px 0; border-left:1px solid #ccc; width:100%; display:none;}
.mobile-menu ul.sub-menu > li {padding-left:15px;}


/* FLAG ICON */
.twc-flag-icon img {width:auto; height:50px;}


/* RESPONSIVE */
@media only screen and (max-width:1440px){
    .site-nav--desktop-inner {min-width:unset; width:100%;}
    .site-nav-col {min-height:70px;}
    .site-nav-col:not(:first-child) {margin-left:30px;}
    .main-nav-menu ul.menu > li:not(:last-child) {margin-right:20px;}
    .main-nav-menu ul.menu > li > a {padding:0 0 25px;}
    .site-logo-link {height:40px;}
    .has-long-menu .main-nav-menu ul.menu > li > a {font-size:15px;}
    a.btn-popup-form {padding:10px 15px; font-size:15px;}

    /* FLAG ICON */
    .twc-flag-icon img {height:40px;}
}
@media only screen and (max-width:1200px){
    html.menu-open {overflow:hidden; height:100%;}
    .main_header {padding-top:70px;}
    .site-nav--desktop {background:#fff;}
    .site-nav-col.desktop-no-item {display:flex;}
    .site-nav-col.mid {display:none;}
    .hamburger.hidden, .site-nav--mobile.hidden, .site-nav--mobile__close.hidden {display:block;}
    .language-switcher.list ul {justify-content:flex-start;}
    .twc-flag-icon {transform:none;}
}
@media only screen and (max-width:1024px){
    .main_header {padding-top:60px;}
    .site-nav-col {min-height:60px;}
    .site-logo-link {height:35px;}
    .site-nav-block:not(:first-child) {margin-left:10px;}

    /* FLAG ICON */
    .twc-flag-icon img {height:25px;}
}
@media only screen and (max-width:480px){
    .site-logo-link {height:30px;}
    .site-nav-col:not(:first-child) {margin-left:20px;}
    a.btn-popup-form {padding:5px; white-space:break-spaces; font-size:13px;}

    /* FLAG ICON */
    .twc-flag-icon img {height:20px;}
}