/* Shared classic Divi navigation: readable dropdowns, native menu behavior. */
html body #page-container #main-header {
  --om-nav-surface:#263d4a;
  --om-nav-text:#e9f2f5;
  --om-nav-active:#b9df75;
  --om-nav-hover:#304b59;
  --om-nav-border:#597989;
}
html.om-hell body #page-container #main-header {
  --om-nav-surface:#f9fcfd;
  --om-nav-text:#172e39;
  --om-nav-active:#297389;
  --om-nav-hover:#e4f1f3;
  --om-nav-border:#abc9d4;
}
html body #page-container #main-header #top-menu .sub-menu,
html body #page-container #main-header .et_mobile_menu {
  box-sizing:border-box;
  background:var(--om-nav-surface)!important;
  border:1px solid var(--om-nav-border)!important;
  border-radius:24px;
  box-shadow:0 14px 30px -20px rgba(0,20,30,.5);
}
html body #page-container #main-header #top-menu .sub-menu {
  width:280px!important;
  padding:8px!important;
}
html body #page-container #main-header #top-menu > li:last-child > .sub-menu {
  left:auto;
  right:0;
}
html body #page-container #main-header #top-menu > li.wpml-ls-current-language > .sub-menu {
  width:140px!important;
  min-width:140px!important;
}
html body #page-container #main-header #top-menu li:focus-within > .sub-menu {
  visibility:visible;
  opacity:1;
}
html body #page-container #main-header #top-menu .sub-menu li {
  display:block;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
html body #page-container #main-header #top-menu .sub-menu a,
html body #page-container #main-header .et_mobile_menu a {
  box-sizing:border-box;
  display:block;
  width:100%!important;
  min-height:44px;
  padding:11px 14px!important;
  color:var(--om-nav-text)!important;
  background:transparent!important;
  border:0!important;
  border-radius:12px;
  font-size:15px!important;
  font-weight:500!important;
  line-height:1.45!important;
  letter-spacing:0!important;
  white-space:normal;
  overflow-wrap:break-word;
  opacity:1!important;
}
html body #page-container #main-header #top-menu .sub-menu a:hover,
html body #page-container #main-header .et_mobile_menu a:hover {
  background:var(--om-nav-hover)!important;
}
html body #page-container #main-header #top-menu .sub-menu a,
html body #page-container #main-header .et_mobile_menu .sub-menu a {
  min-height:34px;
  padding:7px 14px!important;
  line-height:1.3!important;
}
html body #page-container #main-header #top-menu li.menu-item-object-page.current-menu-item > a,
html body #page-container #main-header #top-menu li.menu-item-object-page.current-menu-ancestor > a,
html body #page-container #main-header .et_mobile_menu li.menu-item-object-page.current-menu-item > a,
html body #page-container #main-header .et_mobile_menu li.menu-item-object-page.current-menu-ancestor > a {
  color:var(--om-nav-active)!important;
  font-weight:600!important;
}
html body #page-container #main-header .et_mobile_menu {
  left:0!important;
  right:0!important;
  width:100%!important;
  margin:0!important;
  padding:12px!important;
  max-height:calc(100dvh - 140px);
  overflow-y:auto;
}
html body #page-container #main-header .et_mobile_menu > li > a {
  font-size:16px!important;
}
html body #page-container #main-header .et_mobile_menu .sub-menu {
  margin:0 0 4px!important;
  padding:0 0 0 16px!important;
}
html body #page-container #main-header .et_mobile_menu .sub-menu li {
  padding:0!important;
}
html body #page-container #main-header a:focus-visible {
  outline:2px solid var(--om-nav-active);
  outline-offset:2px;
}
/* The appearance control needs its own space beside the language item. */
@media (min-width:1951px) {
  html body #page-container #main-header #et-top-navigation {
    position:relative;
    padding-top:16px!important;
    padding-right:64px!important;
    padding-bottom:16px!important;
  }
  html body #page-container #main-header #top-menu-nav {
    float:none!important;
  }
  html body #page-container #main-header #top-menu {
    display:flex!important;
    flex-wrap:nowrap;
    align-items:center;
    gap:20px;
    float:none!important;
  }
  html body #page-container #main-header #top-menu > li {
    flex:0 0 auto;
    margin:0!important;
    padding:0!important;
  }
  html body #page-container #main-header #top-menu > li > a {
    box-sizing:border-box;
    display:flex;
    align-items:center;
    min-height:44px;
    margin:0!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    line-height:1.3!important;
    letter-spacing:.02em!important;
    white-space:nowrap;
  }
  html body #page-container #main-header #top-menu > li.menu-item-has-children > a:first-child::after {
    top:50%;
    transform:translateY(-50%);
  }
  html body #page-container #main-header .om-modus,
  html body #page-container #main-header .ov-mode-button {
    right:0!important;
  }
  html body #page-container #main-header #et-top-navigation > .om-modus {
    position:absolute;
    top:50%;
    margin:0!important;
    transform:translateY(-50%);
    float:none;
  }
}
