.primary-nav .mega-menu {
  position: relative;
}

.primary-nav .mega-menu a,
.primary-nav .mega-menu a:hover,
.primary-nav .mega-menu a:focus {
  text-decoration: none;
}

.primary-nav .mega-menu__tabs,
.primary-nav .mega-menu__links,
.primary-nav .mega-menu__links > li > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.primary-nav .mega-menu__tabs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.primary-nav .mega-menu__tab-item {
  position: relative;
}

.primary-nav .mega-menu__tab-link {
  display: inline-flex;
  align-items: center;
  min-height: var(--space-xl);
  padding: 0 var(--space-sm);
  font-size: var(--text-normal);
  font-weight: 600;
  color: var(--color-other-light);
}

.primary-nav .mega-menu__tab-item:hover .mega-menu__tab-link,
.primary-nav .mega-menu__tab-item.is-active .mega-menu__tab-link,
.primary-nav .mega-menu__tab-item.is-current .mega-menu__tab-link {
  background: var(--color-other-light);
  color: #6b8218;
}

.primary-nav .mega-menu__panels {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  z-index: 120;
  display: none;
  background: #ececec;
}

.primary-nav .mega-menu.is-open .mega-menu__panels {
  display: block;
}

.primary-nav .mega-menu__panel {
  display: none;
  width: 100%;
  max-width: var(--layout-max-width);
  margin: 0 auto;
  padding: var(--space-xl) var(--space-2xs);
}

.primary-nav .mega-menu__panel.is-active {
  display: block;
}

.primary-nav .mega-menu__columns {
  display: inline-flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: var(--space-lg);
  max-width: 100%;
}

.primary-nav .mega-menu__column {
  flex: 0 0 auto;
  width: auto;
  min-width: max-content;
}

.primary-nav .mega-menu__group {
  margin-bottom: var(--space-md);
}

.primary-nav .mega-menu__group:last-child {
  margin-bottom: 0;
}

.primary-nav .mega-menu__heading {
  display: inline-block;
  margin-bottom: var(--space-2xs);
  font-size: var(--text-normal);
  font-weight: 600;
  color: #121212;
}

.primary-nav .mega-menu__links {
  display: block;
}

.primary-nav .mega-menu__links > li {
  margin: 0 0 var(--space-3xs);
}

.primary-nav .mega-menu__links > li:last-child {
  margin-bottom: 0;
}

.primary-nav .mega-menu__sublink {
  display: inline-block;
  font-size: var(--text-small);
  font-weight: 300;
  color: #252525;
}

.primary-nav .mega-menu__links > li > ul {
  display: block;
  margin-top: var(--space-3xs);
  padding-left: var(--space-sm);
}

.primary-nav .mega-menu__links > li > ul > li {
  margin: 0 0 var(--space-3xs);
}

.primary-nav .mega-menu__links > li > ul > li > .mega-menu__sublink {
  font-size: var(--text-small);
}

.primary-nav .mega-menu__group a:hover,
.primary-nav .mega-menu__group a:focus {
  color: var(--color-brand-primary);
}

.primary-nav .mega-menu__heading.is-current,
.primary-nav .mega-menu__sublink.is-current {
  color: var(--color-brand-primary);
}

.primary-nav .mega-menu__sublink.is-current {
  font-weight: 600;
}

.mega-menu-mobile {
  position: relative;
  width: 100%;
}

.mega-menu-mobile .mega-menu-mobile__nav {
  position: relative;
  min-height: 0;
  padding: 0;
}

.mega-menu-mobile .navbar-collapse {
  position: absolute;
  top: calc(var(--header-logo-height) / 4);
  left: 0;
  width: 100%;
  z-index: 220;
  background: #ececec;
  padding: var(--space-xs) var(--space-sm);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  will-change: height;
}

.mega-menu-mobile .navbar-collapse.collapse {
  display: block;
  height: 0;
  visibility: hidden;
  pointer-events: none;
}

.mega-menu-mobile .navbar-collapse.collapse.show {
  height: auto;
  visibility: visible;
  pointer-events: auto;
  overflow: visible;
}

.mega-menu-mobile .navbar-collapse.collapsing {
  display: block;
  height: 0;
  visibility: visible;
  pointer-events: auto;
  overflow: hidden;
  transition: height .28s ease;
}

.mega-menu-mobile .navbar-toggler {
  border: 1px solid rgba(255, 255, 255, 0.6);
  color: var(--color-other-light);
}

.mega-menu-mobile .navbar-toggler-icon {
  position: relative;
  width: 1.2em;
  height: 1.2em;
  background-image: none;
}

.mega-menu-mobile .navbar-toggler-icon::before,
.mega-menu-mobile .navbar-toggler-icon::after,
.mega-menu-mobile .navbar-toggler-icon {
  display: block;
  content: "";
  border-top: 2px solid currentColor;
}

.mega-menu-mobile .navbar-toggler-icon::before {
  margin-top: 0.35em;
}

.mega-menu-mobile .navbar-toggler-icon::after {
  margin-top: 0.35em;
}

.mega-menu-mobile .navbar-nav .nav-link {
  display: block;
  width: 100%;
  text-align: left;
  color: #252525;
  padding: var(--space-2xs) 0;
  font-size: var(--text-small);
  line-height: var(--lh-small);
  font-weight: 300;
}

.mega-menu-mobile .navbar-nav {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin: 0;
  padding: 0;
}

.mega-menu-mobile .navbar-nav > li {
  width: 100%;
  list-style: none;
}

.mega-menu-mobile .navbar-nav > .menu-item > .nav-link,
.mega-menu-mobile .navbar-nav > .nav-item > .nav-link {
  color: #121212;
  font-size: var(--text-normal);
  font-weight: 600;
}

.mega-menu-mobile .dropdown-menu {
  position: static !important;
  float: none !important;
  min-width: 0;
  margin: 0;
  padding: 0 0 0 var(--space-sm);
  border: 0;
  background: transparent;
  display: none;
  text-align: left;
}

.mega-menu-mobile .dropdown-menu li {
  list-style: none;
}

.mega-menu-mobile .dropdown.show > .dropdown-menu {
  display: block;
}

.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current-menu-parent > .dropdown-menu,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current-menu-ancestor > .dropdown-menu,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current-menu-item > .dropdown-menu,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current_page_item > .dropdown-menu,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.active > .dropdown-menu {
  display: block;
}

.mega-menu-mobile .dropdown-menu .nav-link,
.mega-menu-mobile .dropdown-menu .dropdown-item {
  display: block;
  width: 100%;
  text-align: left;
  font-size: var(--text-small);
  font-weight: 300;
  color: #252525;
  padding: var(--space-3xs) 0;
  background: transparent;
  border: 0;
  white-space: normal;
}

.mega-menu-mobile .dropdown-toggle {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: flex-start;
  padding-right: calc(var(--space-sm) + 14px);
}

.mega-menu-mobile .dropdown-toggle::after {
  position: absolute;
  right: 0;
  top: 50%;
  margin-left: 0;
  transform: translateY(-50%);
}

.mega-menu-mobile .dropdown.show > .dropdown-toggle::after {
  transform: translateY(-50%) rotate(180deg);
}

.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current-menu-parent > .dropdown-toggle::after,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current-menu-ancestor > .dropdown-toggle::after,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current-menu-item > .dropdown-toggle::after,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.current_page_item > .dropdown-toggle::after,
.mega-menu-mobile:not(.is-manual-dropdown) .dropdown.active > .dropdown-toggle::after {
  transform: translateY(-50%) rotate(180deg);
}

.mega-menu-mobile .navbar-nav .nav-link:hover,
.mega-menu-mobile .navbar-nav .nav-link:focus {
  color: var(--color-brand-primary);
}

.mega-menu-mobile .navbar-nav > .current-menu-item > .nav-link,
.mega-menu-mobile .navbar-nav > .current_page_item > .nav-link,
.mega-menu-mobile .navbar-nav > .active > .nav-link,
.mega-menu-mobile .dropdown-menu > .current-menu-item > .dropdown-item,
.mega-menu-mobile .dropdown-menu > .current_page_item > .dropdown-item,
.mega-menu-mobile .dropdown-menu > .active > .dropdown-item {
  color: var(--color-brand-primary);
}

@media (min-width: 1200px) {
  .primary-nav .mega-menu__panel {
    padding-right: var(--space-sm);
    padding-left: var(--space-sm);
  }
}
