/* theme main menu */
#masthead nav.navbar-expand-xl {
    padding:0
}

#masthead .navbar-nav > li > a,
header#masthead .pushy li a {
    font-size: .875rem;
    font-weight: 500;
    line-height: 20px;
    color: #fff;
    white-space: nowrap;
    display: inline-block;
    text-decoration: none;
    position: relative;
    transition: all .5s
}
header#masthead .pushy li a {
    display: block;
    width: 100%;
}
#masthead .navbar-nav > li > a {
    padding: .375rem 2rem;
    height: 100%;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
	white-space: normal;
}
#masthead .navbar-nav > li > a > .ws_menu_count, #masthead .pushy .pushy-content > li > a > .ws_menu_count {
    display: inline-block;
    position: absolute;
    right: 0.5rem;
    bottom: 0.125rem;
    font-size: 0.75rem;
}
#masthead .pushy .pushy-content > li > a > .ws_menu_count {
    right: 1rem;
    bottom: auto;
    top: 1rem
}

header#masthead .pushy .pushy-content li > a {
    padding: 0.875rem 3rem .875rem 1rem;
    height: 6.25rem;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--Stroke-Primary);
    border-right: 1px solid var(--Stroke-Primary);
    text-align: center;
    justify-content: center;
    font-size: .875rem;
    font-weight: 500;
}
header#masthead .pushy .pushy-content .sub-menu {
    /* display: table; */
    width: 100%
}
header#masthead .pushy .pushy-content .sub-menu-wrap  .sub-menu {
    display: table;
}
/*
header#masthead .pushy .pushy-content .sub-menu li.half_height {
    width: 50%;
    float: left;
}
*/
#masthead .navbar-nav > li:hover > a,
header#masthead .pushy .pushy-content > li.current_page_item > a,
header#masthead .pushy .pushy-content > li:hover > a {
    color: #fff;
    background-color: var(--Background-Secondary);
}
#masthead .navbar-nav > li.current-menu-item > a,
#masthead .navbar-nav > li.current_page_item > a,
#masthead .navbar-nav > li.current-menu-parent > a,
#masthead .navbar-nav > li.current-menu-ancestor.dropdown > a,
header#masthead .pushy .pushy-content > li.pushy-submenu-open > a,
header#masthead .pushy .pushy-content > li.current-menu-parent > a,
header#masthead .pushy .pushy-content > li.current-menu-ancestor > a,
header#masthead .pushy .pushy-content li.current-menu-item > a {
    color: var(--Text-Tertiary);
    background-color: var(--Background-Secondary);
}
.pushy-submenu {
	position: relative
}

.dropdown-toggle::after {
    display:none;
}
/* Dropdown menu */
.navbar-nav.mainmenu .dropdown-menu {
    left: -1px;
    top: 100%;
    margin: -1rem 0 0;
    border: 1px solid var(--Stroke-Primary);
    padding: 0;
    border-radius: 0;
    background-color: var(--Background-Secondary);
    font-size: .875rem;
    min-width: 200px;
    display: block;
    visibility: hidden;
    opacity: 0;
    transition: all .3s
}
.navbar-nav.mainmenu .dropdown-menu .dropdown-menu {
    left: 80%;
    top: -1.6rem;
	margin-top:0;
}
.menu-toggle,
.main-navigation.toggled ul,
.navbar-nav.mainmenu li.dropdown.active > ul {
  /* display: block; */
  visibility: visible;
  opacity: 1;
  margin-top:0
}
.navbar-nav.mainmenu .dropdown-menu  li.dropdown.active > ul {
    left: calc(100% + 2px);
}
.navbar-nav.mainmenu .dropdown-menu li {
    padding: 0;
    position: relative;
}
.navbar-nav.mainmenu .dropdown-menu li:last-child:after {
    top:0
}
.navbar-nav.mainmenu .dropdown-menu > li:last-child {
    padding-bottom: 0
}

.dropdown-item, header#masthead.pushy ul.sub-menu li a {
    line-height: 1.2;
    font-weight: 500;
    padding: 0;
    margin: 0;
    text-align: left;
    white-space: nowrap;
    position: relative;
    display: block;
    color: #fff!important;
    text-decoration: none;
    transition: color .5s;
}
.dropdown-menu > li:not(:last-child) > .dropdown-item {
    border-bottom: 1px solid var(--Stroke-Primary);
}


.nav-item.active > .dropdown-item {
    background-color: transparent;
}
.dropdown-item:focus, .dropdown-item:hover {
    background-color: transparent;
}
/**/
.dropdown-menu li.nav-item > a,
header#masthead .pushy .sub-menu li > a {
    display: flex;
}
header#masthead .pushy .sub-menu li > a {
    align-items: center;
}
.dropdown-menu li.nav-item > a {
    padding: 1rem;
	transition: all .5s
}
.dropdown-menu li.nav-item > a:hover {
	background: var(--Background-Primary);
    color: #fff;
}
.dropdown-menu li.nav-item.current-menu-parent > a,
.dropdown-menu li.nav-item.current-menu-parent > a:hover,
.dropdown-menu li.nav-item.current-menu-item > a,
.dropdown-menu li.nav-item.current-menu-item > a:hover {
	color: var(--Text-Tertiary)!important;
}
header#masthead .pushy .sub-menu li:hover > a {
	color: var(--Text-Tertiary);
}
header#masthead .pushy .sub-menu li.current_page_item > a,
header#masthead .pushy .sub-menu li.current-menu-parent > a {
	color: var(--Text-Tertiary);
}

header#masthead .pushy .sub-menu li > a {
    background-color: var(--Background-Secondary);
}

/**/
@media only screen and (max-width: 1199px) {
    .site-header .menu-btn, .menu-close {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 30px;
    }
    .site-header .menu-btn {
        position: relative;
    }
    .pushy-open-left .site-header .menu-btn {
        background-color: var(--Background-Secondary);
    }
    .pushy-open-left .menu-btn #nav-icon span {
        background-color: var(--Text-Tertiary);
    }
    .menu-close {
        position: absolute;
    }
    /* mobile menu icon */
    #nav-icon, #pushy-icon {
      position: relative;
      cursor: pointer;
      width: 33px;
      height: 32px;
    }

    #nav-icon span, #pushy-icon span {
      display: block;
      position: absolute;
      height: 2px;
      border-radius: 3px;
      background: #fff;
      opacity: 1;
      left: 5px;
      right:5px;
    }
    #nav-icon span:nth-child(1), .pushy-open-left #pushy-icon span:nth-child(1) {
      top: 7px;
    }
    #nav-icon span:nth-child(2),
    .pushy-open-left #pushy-icon span:nth-child(2) {
      top: 15px;
    }
    #nav-icon span:nth-child(3), .pushy-open-left #pushy-icon span:nth-child(3) {
        top: 23px;
    }
    .pushy-open-left #nav-icon span:nth-child(2), #pushy-icon span:nth-child(2) {
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg);
    }
    .pushy-open-left #nav-icon span:nth-child(3), #pushy-icon span:nth-child(3) {
      top: 18px;
      width: 0%;
      left: 50%;
    }
    .pushy-open-left #nav-icon span:nth-child(1), #pushy-icon span:nth-child(1) {
      transform: rotate(-45deg) translate(-6px,6px);
    }
    .navbar.mobile-menu {
        padding:0
    }
    .navbar.mobile-menu .navbar-collapse.show {
        box-shadow: 0px 1px 3px rgba(0,0,0,0.1);
    }
}
@media  screen and (max-width: 767px) {
	header#masthead .pushy li a {
		white-space: normal;
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
   #masthead .navbar-nav > li > a {
        padding-bottom: 1.3rem;
        padding-top: 1.3rem;
        font-size: 18px;
    }
}

@media only screen and (min-width: 1200px) {
    .main-menu-wrap .navbar.navbar-expand-lg {
        padding:0
    }
    #masthead .menu-btn {
        display: none;
    }
    .navbar-nav.mainmenu {
        height: 100%;
    }
    #masthead .navbar-nav > li {
        position: relative;
        margin: 0;
        padding: 0;
        border-right: 1px solid var(--Stroke-Primary);
    }
    #masthead .navbar-nav > li:first-child {
        border-left: 1px solid var(--Stroke-Primary);
    }

    #masthead .navbar-nav > li.empty-menu-item {
        flex-basis:100%;
    }
    #masthead .navbar-nav > li.empty-menu-item > a {
        display: none;
    }
    .main-menu-wrap {
        position: relative;
    }

    .menu-close {
        position: absolute;
    }

}
@media only screen and (min-width: 1200px) and (max-width: 1439px) {
    #masthead .navbar-nav > li > a {
        padding: .375rem .5rem;
        min-width: 5.25rem;
    }
}
@media only screen and (min-width: 1440px) {
    #masthead .navbar-nav > li > a {
        padding: .375rem 1rem;
        min-width: 6.25rem;
    }

}
@media only screen and (min-width: 1600px) {
    #masthead .navbar-nav > li > a {
        padding: .375rem 2rem;
        min-width: 6.25rem;
    }

}
