
/* Basic dropdown styles for desktop and mobile */
/* Utility for screen-reader only text */
.visually-hidden {
  position: absolute !important;
  height: 1px; width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}
.header-navigation ul li:hover {
  opacity: 1 !important;
}

/* Position submenus for desktop */
.header-navigation .menu > li {
  position: relative;
}
.header-navigation .menu li .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  border-top: 10px solid transparent;
  padding: 0;
  display: none; /* default hidden for no-js */
  z-index: 9999;
  text-align: left;
}
.header-navigation .menu li:hover > .sub-menu,
.header-navigation .menu li:focus-within > .sub-menu {
  display: block;
}
.header-navigation ul li .sub-menu li {
  margin-left: 0;
  background: #fff;
  width: 100%;
}
.desktop-header .text-right {
  z-index: 99;
}
/* Submenu items */
.header-navigation .menu li .sub-menu li a {
  display: block;
  padding: .5rem .9rem;
  color: #565249;
  letter-spacing: 1px;
}
.header-navigation .menu li .sub-menu li:hover a {
  color: #356978;
}
.header-navigation .sub-menu .current-menu-item a {
  text-decoration: underline;
  border:0 !important;
  color: #356978;
}
.header-navigation .current-menu-parent > a {
  border-bottom: 4px solid #baad9d;
}

/* Toggle button next to parent items */
.header-navigation .menu li.menu-item-has-children > .submenu-toggle,
.mobile-menu-nav .menu li.menu-item-has-children > .submenu-toggle {
  background: transparent;
  border: 0;
  margin-left:0;
  padding: 0;
  cursor: pointer;
  line-height: 1;
}
body.home .submenu-toggle {
  color:#fff;
}
body:not(.home) .submenu-toggle {
  color:#565249;
}
#menu-mobile-menu .submenu-toggle {
  color:#fff;
} 
.header-navigation .menu .submenu-toggle .caret,
.mobile-menu-nav .menu .submenu-toggle .caret { display: inline-block; transform: translateY(-1px); }

/* Mobile menu submenus: collapsible, full width */
@media (max-width: 1024px){
  .header-navigation .menu li .sub-menu { /* in case desktop styles bleed */
    position: static;
    display: block;
    border: 0;
    box-shadow: none;
    padding: 0;
  }
  .mobile-menu-nav .menu li .sub-menu {
    display: block;
    padding-left: 1rem;
  }
  /* Hidden state controlled by [hidden] attribute */
  .mobile-menu-nav .menu li .sub-menu[hidden],
  .header-navigation .menu li .sub-menu[hidden] {
    display: none !important;
  }
  .mobile-menu-nav .menu li.menu-item-has-children > a {
    display: inline-block;
    max-width: calc(100% - 2.2rem);
  }
}

/* Optional visual indicator when open */
.menu li.submenu-open > a { font-weight: 600; }
