/* Mezzo header active menu underline - global CSS control */
:root {
  --mz-header-active-color: var(--c-primary, #A0522D);
  --mz-header-active-line-height: 0.2rem;
  --mz-header-active-line-offset: 0.45rem;
  --mz-header-active-line-width: 2.8rem;
}

html body .site-header .nav > ul,
html body .site-header .nav .menu {
  align-items: center !important;
}

html body .site-header .nav > ul > li > a,
html body .site-header .nav .menu > li > a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .site-header .nav > ul > li > a::before,
html body .site-header .nav .menu > li > a::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: calc(-1 * var(--mz-header-active-line-offset)) !important;
  width: 0 !important;
  height: var(--mz-header-active-line-height) !important;
  border-radius: 999px !important;
  background: var(--mz-header-active-color) !important;
  transform: translateX(-50%) !important;
  opacity: 0 !important;
  transition: width 0.22s ease, opacity 0.22s ease !important;
}

html body .site-header .nav > ul > li.current-menu-item > a,
html body .site-header .nav > ul > li.current_page_item > a,
html body .site-header .nav > ul > li.current-menu-parent > a,
html body .site-header .nav > ul > li.current-menu-ancestor > a,
html body .site-header .nav > ul > li.current_page_parent > a,
html body .site-header .nav > ul > li.current_page_ancestor > a,
html body .site-header .nav .menu > li.current-menu-item > a,
html body .site-header .nav .menu > li.current_page_item > a,
html body .site-header .nav .menu > li.current-menu-parent > a,
html body .site-header .nav .menu > li.current-menu-ancestor > a,
html body .site-header .nav .menu > li.current_page_parent > a,
html body .site-header .nav .menu > li.current_page_ancestor > a,
html body .site-header .nav > ul > li > a[aria-current="page"],
html body .site-header .nav .menu > li > a[aria-current="page"] {
  color: var(--mz-header-active-color) !important;
  -webkit-text-fill-color: var(--mz-header-active-color) !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .site-header .nav > ul > li.current-menu-item > a::before,
html body .site-header .nav > ul > li.current_page_item > a::before,
html body .site-header .nav > ul > li.current-menu-parent > a::before,
html body .site-header .nav > ul > li.current-menu-ancestor > a::before,
html body .site-header .nav > ul > li.current_page_parent > a::before,
html body .site-header .nav > ul > li.current_page_ancestor > a::before,
html body .site-header .nav .menu > li.current-menu-item > a::before,
html body .site-header .nav .menu > li.current_page_item > a::before,
html body .site-header .nav .menu > li.current-menu-parent > a::before,
html body .site-header .nav .menu > li.current-menu-ancestor > a::before,
html body .site-header .nav .menu > li.current_page_parent > a::before,
html body .site-header .nav .menu > li.current_page_ancestor > a::before,
html body .site-header .nav > ul > li > a[aria-current="page"]::before,
html body .site-header .nav .menu > li > a[aria-current="page"]::before {
  width: var(--mz-header-active-line-width) !important;
  opacity: 1 !important;
}

html body .site-header .nav .sub-menu li > a {
  text-decoration: none !important;
  text-decoration-line: none !important;
}

html body .site-header .nav .sub-menu li > a::before {
  display: none !important;
}

html body .site-header .nav .sub-menu li.current-menu-item > a,
html body .site-header .nav .sub-menu li.current_page_item > a,
html body .site-header .nav .sub-menu li.current-menu-parent > a,
html body .site-header .nav .sub-menu li.current-menu-ancestor > a,
html body .site-header .nav .sub-menu li.current_page_parent > a,
html body .site-header .nav .sub-menu li.current_page_ancestor > a {
  color: var(--white-color, #ffffff) !important;
  -webkit-text-fill-color: var(--white-color, #ffffff) !important;
  background: var(--mz-header-active-color) !important;
}

html body .mobile-panel .menu li.current-menu-item > a,
html body .mobile-panel .menu li.current_page_item > a,
html body .mobile-panel .menu li.current-menu-parent > a,
html body .mobile-panel .menu li.current-menu-ancestor > a,
html body .mobile-panel .menu li.current_page_parent > a,
html body .mobile-panel .menu li.current_page_ancestor > a,
html body .mobile-panel a[aria-current="page"] {
  color: var(--mz-header-active-color) !important;
  -webkit-text-fill-color: var(--mz-header-active-color) !important;
  background: transparent !important;
  text-decoration: underline !important;
  text-decoration-thickness: var(--mz-header-active-line-height) !important;
  text-underline-offset: 0.45rem !important;
}

@media (max-width: 1080px) {
  :root {
    --mz-header-active-line-width: 2.4rem;
  }
}
