/****************************
 * Desktop Menu
****************************/
/* STICKY HEADER */
body {--header-padding:30px;}
.site-nav--desktop {
    position:fixed; top:0; left:0; right:0; z-index:30;
    background:#fff;
    transition:var(--twc-transition);
}
.site-nav--row.highlight {height:var(--twc-header-height-highlight); padding:5px var(--twc-gap-container);}
.site-nav--row.top {border-bottom:1px solid rgba(112, 112, 112, 0.2); position:relative; z-index:2;}
.site-nav--row.main {height:var(--twc-header-height-main);}
.site-nav-col.right .nav-block {padding-right:var(--header-padding);}

/* Scroll middle down: hide header */
html:not(.accordion-moving):not(.menu-open) .scroll-middle.scroll-down:not(.scroll-bottom) .site-nav--desktop {
    transform:translateY(calc(-1 * var(--twc-header-height-sticky-minus) - 1px));
}

/* Scroll middle up: show header with separator */
html.menu-open .site-nav--desktop,
.scroll-middle .site-nav--desktop {box-shadow:0 0 0 1px rgba(112, 112, 112, 0.2);}

/* TOP PANEL (HIGHLIGHT) */
body.twc-has-top-panel {
    --twc-header-height-highlight:37px;
    --twc-header-height:calc(var(--twc-header-height-highlight) + var(--twc-header-height-top) + var(--twc-header-height-main));
    --twc-header-height-sticky-minus:calc(var(--twc-header-height-highlight) + var(--twc-header-height-top));
}

/* LOGO */
.nav-logo-link {display:block; height:var(--twc-logo-height); padding:0 var(--header-padding);}
.nav-logo-link img {height:100%; width:auto;}

/* 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:var(--twc-transition);
}
.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%;}

/* DESKTOP MENU */
.desktop-menu ul {list-style:none; margin:0;}
.desktop-menu ul > li {padding:0; position:relative;}
.desktop-menu ul > li > a {text-decoration:none; font-size:var(--twc-size-18); font-weight:600; color:var(--twc-color-black);}
.desktop-menu ul.sub-menu ul.sub-menu {display:none;}
.desktop-menu ul > li > a:hover, .desktop-menu ul > li > a:focus {color:var(--twc-color-permalink);}
.desktop-menu ul > li[class*="current"] > a {font-weight:800; color:var(--twc-color-primary);}

/* DESKTOP MENU > Lv1 */
.desktop-menu ul.menu {display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}
.desktop-menu ul.menu > li {padding:8px 0;}
.desktop-menu ul.menu > li:not(:last-child) {margin-right:56px;}

/* DESKTOP MENU > Lv1 has submenu */
.desktop-menu ul.menu > li[class*="has-child"] > a:after {
    content:"\e931"; font-family:var(--twc-font-icomoon); font-size:.7em;
    margin-left:10px; display:inline-block;
    transition:transform .3s ease;
}
.desktop-menu ul.menu > li[class*="has-child"]:hover > a:after {transform:rotate(180deg);}

/* DESKTOP MENU > Lv2 */
.desktop-menu li:not(:hover) > ul.sub-menu {opacity:0; visibility:hidden; pointer-events:none;}
.desktop-menu ul.sub-menu {
    position:absolute; top:100%; left:-20px; min-width:calc(100% + 40px);
    background:#fff; border:1px solid rgba(112, 112, 112, 0.2); padding:7px 0;
    transition:var(--twc-transition);
}
.desktop-menu ul.sub-menu > li {}
.desktop-menu ul.sub-menu > li > a {
    display:block; padding:5px 20px;
    white-space:nowrap; font-size:var(--twc-size-16);
}

/* DESKTOP MENU > submenu animation (search submenuAnimationDelay to edit stagger time) */
.desktop-menu ul.menu > li[class*="has-child"]:hover > ul.sub-menu > li {
    animation:slide-fade-in .4s ease forwards;
    opacity:0;
}
@keyframes slide-fade-in {
    0% {transform:translate(-15px); opacity:0;}
    100% {transform:translate(0); opacity:1;}
}