
/* DKLD guide navigation */
#mainNav .dkld-main-menu {
  display:flex;
  align-items:center;
  gap:14px;
  list-style:none;
  margin:0;
  padding:0;
}
#mainNav .dkld-main-menu > li {position:relative}
#mainNav .dkld-main-menu > li > a,
#dkldGuideToggle {
  display:block;
  font:inherit;
  color:inherit;
  text-decoration:none;
  padding:10px 5px;
  background:transparent;
  border:0;
  cursor:pointer;
  white-space:nowrap;
}
#mainNav .dkld-submenu {
  display:none;
  position:absolute;
  top:100%;
  left:0;
  z-index:9999;
  min-width:260px;
  max-height:65vh;
  overflow-y:auto;
  margin:0;
  padding:8px;
  list-style:none;
  background:#fff;
  color:#183047;
  border:1px solid #dce6ef;
  border-radius:12px;
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}
#mainNav .dkld-submenu li a {
  display:block;
  padding:11px 13px;
  color:#183047;
  text-decoration:none;
  border-radius:7px;
}
#mainNav .dkld-submenu li a:hover,
#mainNav .dkld-submenu li a:focus {
  background:#edf5fb;
}
#mainNav .dkld-has-submenu.dkld-open > .dkld-submenu {
  display:block;
}
@media(max-width:1100px) {
  #mainNav .dkld-main-menu {
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  #mainNav .dkld-submenu {
    position:static;
    min-width:0;
    max-height:none;
    box-shadow:none;
    margin:4px 0 10px 12px;
  }
}

/* DKLD HEADER LAYOUT V2 */

/* Header desktop */
@media (min-width: 1201px) {
  body > header .nav-wrap {
    width: min(100% - 32px, 1600px);
    max-width: 1600px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: nowrap;
  }

  body > header .logo {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 19px;
  }

  body > header #mainNav {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
  }

  body > header #mainNav .dkld-main-menu {
    justify-content: center;
    gap: 10px;
  }

  body > header #mainNav .dkld-main-menu > li > a,
  body > header #dkldGuideToggle {
    font-size: 14px;
    padding: 10px 3px;
  }

  body > header .header-cta {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  body > header .header-cta .btn {
    white-space: nowrap;
    font-size: 13px;
    padding: 11px 12px;
  }

  body > header #menuToggle {
    display: none;
  }
}

/* Tablet + mobile */
@media (max-width: 1200px) {
  body > header .nav-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px 16px;
  }

  body > header .logo {
    font-size: 18px;
    flex: 1 1 auto;
  }

  body > header .header-cta {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  body > header .header-cta .btn {
    display: none;
  }

  body > header #menuToggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 10px 14px;
  }

  body > header #mainNav {
    display: none;
    width: 100%;
    order: 3;
    flex-basis: 100%;
  }

  body > header #mainNav.dkld-mobile-open {
    display: block;
  }

  body > header #mainNav .dkld-main-menu {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }

  body > header #mainNav .dkld-main-menu > li > a,
  body > header #dkldGuideToggle {
    display: block;
    width: 100%;
    padding: 13px;
    text-align: left;
    white-space: normal;
  }

  body > header #mainNav .dkld-submenu {
    position: static;
    max-height: 55vh;
    overflow-y: auto;
    box-shadow: none;
    min-width: 0;
  }
}

/* DKLD HEADER OVERLAP FIX V3 */
@media (min-width: 1501px) {
  body > header .nav-wrap {
    max-width: 1760px;
    width: calc(100% - 48px);
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 24px;
  }
  body > header .logo {
    flex: 0 0 auto;
    max-width: none;
  }
  body > header #mainNav {
    flex: 1 1 auto;
    min-width: 0;
  }
  body > header #mainNav .dkld-main-menu {
    gap: 12px;
  }
  body > header .header-cta {
    flex: 0 0 auto;
    white-space: nowrap;
  }
}

@media (max-width: 1500px) {
  body > header .nav-wrap {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 12px 20px !important;
  }
  body > header .logo {
    flex: 0 1 auto !important;
    min-width: 0;
    max-width: calc(100% - 90px);
    font-size: 18px !important;
    white-space: normal !important;
  }
  body > header .header-cta {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center;
    gap: 8px;
  }
  body > header .header-cta .btn {
    display: none !important;
  }
  body > header #menuToggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 10px 14px;
  }
  body > header #mainNav {
    display: none !important;
    order: 3 !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body > header #mainNav.dkld-mobile-open {
    display: block !important;
  }
  body > header #mainNav .dkld-main-menu {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
  body > header #mainNav .dkld-submenu {
    position: static;
    min-width: 0;
    max-height: 55vh;
    overflow-y: auto;
    box-shadow: none;
  }
}
