/****************************
 * Mobile Menu
****************************/
/* Mobile Menu */
html:not(.menu-open) .site-nav--mobile__container {transform:translateX(-105%);}
html:not(.menu-open) .site-nav--mobile {visibility:hidden; opacity:0;}

.site-nav--mobile {position:fixed; top:0; left:0; width:100%; height:100%; transition:var(--twc-transition);}
.site-nav--mobile__container {
    position:absolute; z-index:20; top:0; bottom:0; left:0;
    overflow-y:auto; width:100%;
    max-width:450px; padding-top:calc(var(--twc-header-height) + 40px);
    transition:var(--twc-transition); background:#fff;
    box-shadow:0 0 5px 0 rgba(0, 0, 0, .2);
}
.scroll-up:not(.scroll-top) .site-nav--mobile__container {
    padding-top:calc(var(--twc-header-height) + 40px - var(--twc-header-top-height));
}
.site-nav--mobile__inner {height:100%;}
.site-nav--mobile__close {
    font-size:0; position:absolute; z-index:15; top:0;
    left:0; width:100%; height:100%; background:rgba(0, 0, 0, .3);
}

/* Mobile Menu > Sections */
.site-nav--mobile__section {padding:0 var(--twc-gap-container) var(--twc-gap-container);}

/* Accordion Button */
.open-sub-menu {background:none; padding:5px 15px; font-size:.8em; color:var(--twc-color-black); margin-top:3px;}
.open-sub-menu.active {transform:rotate(180deg); margin-top:0;}
.open-sub-menu.active, .open-sub-menu:hover {color:var(--twc-color-primary);}

/* Common Menu */
.mobile-menu:not(:last-child) {margin-bottom:40px;}
.mobile-menu.main-menu {padding-bottom:40px; position:relative;}
.mobile-menu.main-menu:before {
    content:""; display:block;
    width:calc(100% + 2 * var(--twc-gap-container)); height:1px; background:rgba(112, 112, 112, .2);
    position:absolute; bottom:0; left:calc(-1 * var(--twc-gap-container));
}
.mobile-menu ul {
    --mobile-menu-item-color:var(--twc-color-black);
    --mobile-menu-item-color-hover:var(--twc-color-primary);
    --mobile-menu-item-weight:500;
    --mobile-menu-item-weight-hover:700;
}
.mobile-menu ul > li:not(:last-child) {margin-bottom:12px;}
.mobile-menu ul {list-style:none; margin:0;}
.mobile-menu ul > li {padding:0; display:flex; flex-wrap:wrap; position:relative;}
.mobile-menu ul > li > a {
    position:relative; display:block;
    padding:5px 0; text-decoration:none;
    color:var(--mobile-menu-item-color); font-size:21px; font-weight:var(--mobile-menu-item-weight);
}
.mobile-menu ul > li[class*="current-"] > a {font-weight:var(--mobile-menu-item-weight-hover);}
.mobile-menu ul > li[class*="current-"] > a,
.mobile-menu ul > li > a:hover, .mobile-menu ul > li > a:focus {color:var(--mobile-menu-item-color-hover);}

/* Common Sub Menu */
.mobile-menu ul.sub-menu {
    --mobile-menu-item-color:rgba(35, 31, 32, .5);
    --mobile-menu-item-weight:400;
    padding-top:5px; width:100%;
}
.mobile-menu ul.sub-menu > li {padding-left:25px; position:relative;}
.mobile-menu ul.sub-menu > li:before {
    font-family:var(--twc-font-icomoon); content:"\e952";
    line-height:1; font-size:9px; color:rgba(112, 112, 112, .5);
    position:absolute; top:12px; left:0;
}
.mobile-menu ul.sub-menu > li:first-child {margin-bottom:0;}
.mobile-menu ul.sub-menu > li > a {font-size:20px;}


/* Top menu */
.mobile-menu.top-menu ul {
    --mobile-menu-item-color:rgba(35, 31, 32, .5);
    --mobile-menu-item-weight:400;
}
.mobile-menu.top-menu ul > li:not(:last-child) {margin-bottom:10px;}
.mobile-menu.top-menu ul > li > a {font-size:18px;}


/****************************
 * Mobile Menu Responsive
****************************/
@media only screen and (max-width:1180px) {
    html.menu-open {overflow:hidden; height:100%;}
    .site-nav--mobile.hidden {display:block;}
}

@media only screen and (max-width:480px) {
    .site-nav--mobile__container {max-width:unset;}
}