ul.us_menu {

  display: block;

  /*float: left;*/

  list-style: none;

  padding-left: 0;

  /*width: 280px; */ /* no explicit widths or zoom will break layout */

  background-color: #f2f2f2;

  margin: 0;

  padding: 0;

}



ul.us_menu::after {

  clear: both;

}



ul.us_menu .us_brand {

  padding-top: 0.3125rem;

  padding-bottom: 0.3125rem;

  margin-right: 1rem;

  font-size: 1.25rem;

  text-decoration: none;

  white-space: nowrap;

}



ul.us_menu li.dropdown .caret::after {

  /* content: "\f0d7";

  font-family: FontAwesome; */

  font-size: inherit;

  color: inherit;

  display: inline-block;

  margin-left: 4px;

}



ul.us_menu li {

  display: block;

  white-space: nowrap;

}



ul.us_menu .dropdown-divider {

  height: 0;

  margin: 0.5rem 0;

  overflow: hidden;

  border-top: 1px solid rgba(0,0,0,.15);

  background-color: transparent;

}



ul.us_menu li > a{

  padding: 5px 18px;

  text-decoration: none;

  display: block;

  cursor: pointer;

  color: #333;

}



ul.us_menu li a i,

ul.us_menu li a span:first-child /* hopeful that span can be used for icons going forward */

{

  display: inline-block;

  margin-right: 10px;

}



ul.us_menu li:hover {

  transition: 1s all;

  background-color: #ddd;

}



ul.us_sub-menu {

  padding: 0;

  background-color: #f2f2f2;

  position: absolute;

  display: none;

  float: right;

  top: 0;

  left: 100%;

  z-index: auto;

  border: 1px solid #ddd;

}



.us_menu_backdrop {

  position: absolute;

  top: 0;

  left: 0;

  right: 0;

  bottom: 0;

}



.us_menu_mobile_wrapper {

  display: none;

  justify-content: space-between;

  align-items: center;

  padding: 5px 18px;

}



.us_brand.full_screen {

  padding: 5px 18px;

}



.us_menu_mobile_control i{

  font-size: 1.5rem;

}

/* //////////////////// Horizontal ////////////////////*/



ul.us_menu.horizontal {

  width: 100%;

  display: flex;

  flex-wrap: wrap;

  align-items: center;



  padding: 5px 18px;

}



ul.us_menu.horizontal .us_sub-menu {

  left: 0;

  top: 100%;

}



ul.us_menu.horizontal .us_sub-menu.us_deep-sub-menu {

  left: 100%;

  top: 0;

}



ul.us_menu.horizontal .us_menu_mobile_wrapper {

  padding: 0px;

  flex-wrap: wrap;

}



/*/////////////// Accordion /////////////*/

ul.us_menu.accordion .us_sub-menu{

  position: relative;

  top: unset;

  left: unset;

  display: none;

  float: unset;

  padding-left: 16px;

}



ul.us_sub-menu.show, ul.us_menu.accordion .us_sub-menu.show {

  display: block;

}



/*/////////////// Theme  ////////////////*/

ul.us_menu.dark, ul.us_menu.dark .us_sub-menu li, ul.us_menu.dark li:hover,

ul.us_menu.dark ul.us_sub-menu

{

  background-color: #000000;

}



ul.us_menu.dark a, ul.us_menu.dark .us_menu_mobile_control {

  color: rgba(255, 255, 255, .55);

  border-radius: 4px;

}



ul.us_menu.dark li:hover > a {

  color: rgba(255, 255, 255, .75); /* fallback */

  color: var(--menu-text-hover-color, rgba(255,255,255,0.75)); /* will be used if it exists, or default */

  background-color: #494e53; /* fallback */

  background-color: var(--bs-secondary, #494e53);

}



ul.us_menu.dark li.active-style > a {

  color: white; /* fallback */

  color: var(--menu-text-active-color, white); /* will be used if it exists, or default */

  background-color: #334f6b; /* fallback */

  background-color: var(--bs-primary, #334f6b);

}



ul.us_menu.dark  .us_sub-menu,

ul.us_menu.accordion .us_sub-menu {

  border-color: transparent;

}

ul.us_menu.dark .dropdown-divider{

  border-color: rgba(255, 255, 255, 0.55);

}





@media screen and (max-width: 992px) {

  .us_menu_mobile_wrapper {

    display: flex;

  }

  ul.us_menu.horizontal {

    display: block;

  }

  ul.us_menu.horizontal > li {

    display: none;

  }



  ul.us_menu .us_brand.full_screen {

    display: none;

  }



  ul.us_menu.horizontal.expanded > li {

    display: block;

  }



  ul.us_menu.horizontal .us_sub-menu,

  ul.us_menu.horizontal .us_sub-menu.us_deep-sub-menu{

    width: 100%;

    left: 0;

    top: 100%;

    border: none;

  }



  ul.us_menu:not(.horizontal) {

    transition: all 750ms ease-in-out;

    /*width: 15vw;*/ /* no explicit widths in case of zoom */

    overflow: hidden;

  }



  /* .us_menu:not(.horizontal):not(.expanded) .us_menu_mobile_wrapper {



  } */



  ul.us_menu:not(.horizontal):not(.expanded) .us_menu_mobile_wrapper {

    padding-left: 5px;

  }



  ul.us_menu:not(.horizontal):not(.expanded) .us_brand{

    display: none;

  }



  ul.us_menu:not(.horizontal):not(.expanded) .labelText{

    display: none;

  }



  ul.us_menu:not(.horizontal):not(.expanded) i{

    font-size: 1.25rem;

    padding-left:2px;

  }



  ul.us_menu:not(.horizontal) .us_sub-menu,

  ul.us_menu:not(.horizontal) .us_deep-sub-menu

  {

    position: relative;

    border: none;

    left: unset;

    top: unset;

    float: unset;

  }



  ul.us_menu:not(.horizontal) > li a {

    transition: all 750ms ease-in-out;

  }





  ul.us_menu:not(.horizontal):not(.expanded) > li a{

    padding-left: 5px;

    font-size: 28px;

  }



  ul.us_menu.expanded:not(.horizontal) {

    width: 280px;

  }



}



.caret{

  margin-left:.25rem;

}



.additional-mobile-icons {

  position: absolute;

  right: 3.0rem;

}