/*****************************************************************************************************
* Menus Module: Mobile Nav CSS
******************************************************************************************************/

/* Mobile Menu Container
--------------------------------------------- */

.mobile-menu-container,
.bub-menu-toggle,
.nav-mobile {
  display: none;
}


/* Mobile Menu Main
--------------------------------------------- */

@media screen and (max-width: 1000px/*mobileMenuMaxWidth*/) {

  /* Mobile Normalize */

  .mobile-menu-open .site-header {
    box-shadow: none;
  }

  /* Mobile Menu > Display / Hide */

  .nav-primary,
  .nav-secondary,
  .genesis-nav-menu.mobile-menu .menu-item.bub-desktop-search-trigger,
  .genesis-nav-menu.mobile-menu,
  .genesis-nav-menu.mobile-menu > .menu-item > .sub-menu {
    display: none;
  }

  .bub-menu-toggle,
  .nav-mobile--header {
    display: block;
  }

  .nav-mobile {
    position: relative;
      /* Prevent flashing on page load. */
      visibility: hidden;
  }

  /* Mobile Menu > Top Level */

  .genesis-nav-menu.mobile-menu {
    background: var(--bg-primary-def);
    display: flex;
    flex-flow: column nowrap;
    height: auto;
    min-width: 270px;
    padding: 0;
    position: absolute;
    width: 100%;
    z-index: 10;
  }

  .genesis-nav-menu.mobile-menu a {
    background: var(--bg-primary-def);
    text-decoration: none !important;
    transition: none;
  }
  
  .genesis-nav-menu.mobile-menu .menu-item {
    display: block;
    height: auto;
  }

  .genesis-nav-menu.mobile-menu .menu-item a {
    display: flex;
    flex-flow: column nowrap;
    height: 51px;
    justify-content: center;
    line-height: 1;
    padding: 0px 20px 0px;
    width: 100%;
  }

  .genesis-nav-menu.mobile-menu .menu-item a:hover,
  .genesis-nav-menu.mobile-menu .menu-item.menu-open a {
    background: var(--bg-primary-sh1);
  }

  .genesis-nav-menu.mobile-menu .mobile-menu > .menu-item:last-child {
    margin-left: 6px;
  }

  .genesis-nav-menu.mobile-menu .menu-item-has-children a {
    position: relative;
  }

  .genesis-nav-menu.mobile-menu > .menu-item-has-children > a::before {
    color: #ddd;
    content: "\f347";
    display: block;
    font: normal 16px/1 'dashicons';
    position: absolute;
      top: 50%;
      right: 20px;
    transform: translateY(-50%);
  }

  .genesis-nav-menu.mobile-menu .menu-open.menu-item-has-children > a::before {
    content: "\f343";
  }
  
  /* Mobile Menu > Submenus */

  .genesis-nav-menu.mobile-menu .sub-menu {
    border: none;
    display: block;
    margin: 0;
    opacity: 1;
    padding: 0;
    position: relative;
      left: 0;
    transition: opacity .4s ease-in-out;
    visibility: visible;
    width: 100%;
    z-index: 5;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .menu-item {
    border: none;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .menu-item:first-child {
    border-top: none;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .menu-item a,
  .genesis-nav-menu.mobile-menu .sub-menu .menu-item a:hover {
    height: auto;
    padding: 13px 40px;
    position: relative;
    text-transform: inherit;
    width: 100%;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .menu-item a:hover {
    background: var(--bg-primary-sh2);
  }

  .genesis-nav-menu.mobile-menu .sub-menu .menu-item:first-child a {
    padding-top: 20px;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .menu-item:last-child a {
    padding-bottom: 20px;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .sub-menu {
    background-color: transparent;
    border: none;
    padding: 0;
    position: relative;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .sub-menu .menu-item a {
    padding-left: 58px;
    position: relative;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .sub-menu .menu-item a::before {
    content: "-";
    position: absolute;
      top: 9px;
      left: 45px;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .sub-menu .menu-item:first-child a {
    padding-top: 10px;
  }

  .genesis-nav-menu.mobile-menu .sub-menu .sub-menu .menu-item:last-child a {
    padding-bottom: 10px;
  }
}


/* Mobile Menu Borders
--------------------------------------------- */

.bub-menu-toggle {
  border-left: 1px solid #aaa;
}

.genesis-nav-menu.mobile-menu .menu-item,
.genesis-nav-menu.mobile-menu .sub-menu {
  border-top: 1px solid #aaa;
}