/*
 * GoodSite Pro — refined primary navigation.
 */

#primary-bar {
  border-bottom: 1px solid color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 24%, transparent);
  height: auto;
  min-height: 36px;
}

#primary-bar .container {
  align-items: center;
  display: flex;
  min-height: 36px;
}

#primary-nav {
  min-width: 0;
}

#primary-menu {
  align-items: center;
  display: flex;
  float: none;
  gap: 2px;
}

#primary-menu > li {
  line-height: 1;
}

#primary-menu > li::before {
  content: none;
}

#primary-menu > li > a {
  align-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.7);
  display: flex;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.015em;
  line-height: 1.2;
  margin: 3px 0;
  min-height: 29px;
  padding: 6px 11px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

#primary-menu > li > a:hover,
#primary-menu > li.sfHover > a {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.08);
  color: #fff;
}

#primary-menu > li.current-menu-item > a,
#primary-menu > li.current-menu-ancestor > a,
#primary-menu > li.current_page_item > a,
#primary-menu > li.current_page_ancestor > a {
  background: rgba(255, 255, 255, 0.13);
  border-color: rgba(255, 255, 255, 0.1);
  color: #fff;
}

#primary-menu > li.current-menu-item > a::before,
#primary-menu > li.current-menu-ancestor > a::before,
#primary-menu > li.current_page_item > a::before,
#primary-menu > li.current_page_ancestor > a::before {
  background: var(--goodsite-nav-accent, #ff4422);
  border-radius: 50%;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 20%, transparent);
  content: "";
  height: 5px;
  margin-inline-end: 7px;
  width: 5px;
}

#primary-menu > li > a:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 75%, #fff);
  outline-offset: 2px;
}

#primary-menu.sf-arrows > li > .sf-with-ul {
  padding-right: 27px;
}

#primary-menu.sf-arrows > li > .sf-with-ul::after {
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  content: "";
  height: 5px;
  margin: -4px 0 0;
  right: 12px;
  top: 50%;
  transform: rotate(45deg);
  width: 5px;
}

#primary-menu > li > ul {
  background: #fff;
  border: 1px solid #e7ebf0;
  border-radius: 12px;
  box-shadow: 0 18px 44px rgba(16, 24, 40, 0.18);
  margin-top: 8px;
  padding: 7px;
  width: 235px;
}

#primary-menu > li > ul::before {
  content: "";
  height: 10px;
  left: 0;
  position: absolute;
  right: 0;
  top: -10px;
  width: auto;
}

#primary-menu > li > ul::after {
  content: none;
}

#primary-menu li li {
  border: 0;
  line-height: 1.35;
}

#primary-menu li li + li {
  border-top: 1px solid #f0f2f5;
}

#primary-menu li li a:link,
#primary-menu li li a:visited,
#primary-menu li.sfHover li a {
  background: transparent;
  border-radius: 8px;
  color: #344054;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  margin: 0;
  padding: 10px 11px;
  transition: background-color 150ms ease, color 150ms ease, padding 150ms ease;
}

#primary-menu li li a:hover,
#primary-menu li li.current-menu-item > a {
  background: color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 9%, #fff);
  color: var(--goodsite-nav-accent, #ff4422);
  padding-inline-start: 14px;
}

#primary-menu li li ul {
  border: 1px solid #e7ebf0;
  border-radius: 12px;
  box-shadow: 0 18px 44px rgba(16, 24, 40, 0.18);
  left: calc(100% + 8px);
  margin: -7px 0 0;
  padding: 7px;
}

#secondary-bar {
  background: rgba(255, 255, 255, 0.96);
  border-block: 1px solid #e8edf3;
  box-shadow: 0 3px 14px rgba(16, 24, 40, 0.06);
  height: auto;
  min-height: 58px;
}

#secondary-bar .container {
  align-items: center;
  display: flex;
  gap: 12px;
  min-height: 58px;
}

#secondary-nav {
  flex: 1 1 auto;
  min-width: 0;
}

#secondary-menu {
  align-items: center;
  display: flex;
  float: none;
  gap: 3px;
}

#secondary-menu > li {
  line-height: 1;
}

#secondary-menu > li > a {
  border: 1px solid transparent;
  border-radius: 999px;
  color: #273142;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.018em;
  line-height: 1.2;
  margin: 0;
  padding: 10px 13px;
  text-transform: uppercase;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

#secondary-menu > li > a::before {
  content: none;
}

#secondary-menu > li > a:hover,
#secondary-menu > li.sfHover > a {
  background: color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 10%, #fff);
  border-color: color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 24%, #fff);
  color: var(--goodsite-nav-accent, #ff4422);
  transform: translateY(-1px);
}

#secondary-menu > li.current-menu-item > a,
#secondary-menu > li.current-menu-ancestor > a,
#secondary-menu > li.current_page_item > a,
#secondary-menu > li.current_page_ancestor > a {
  background: var(--goodsite-nav-accent, #ff4422);
  border-color: var(--goodsite-nav-accent, #ff4422);
  box-shadow: 0 6px 16px color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 24%, transparent);
  color: #fff;
}

#secondary-menu > li > a:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 28%, transparent);
  outline-offset: 3px;
}

#secondary-menu.sf-arrows > li > .sf-with-ul {
  padding-right: 30px;
}

#secondary-menu.sf-arrows > li > .sf-with-ul::after {
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  content: "";
  height: 6px;
  margin: -5px 0 0;
  right: 13px;
  top: 50%;
  transform: rotate(45deg);
  transition: transform 180ms ease;
  width: 6px;
}

#secondary-menu.sf-arrows > li.sfHover > .sf-with-ul::after {
  margin-top: -1px;
  transform: rotate(225deg);
}

#secondary-menu > li > ul {
  background: #fff;
  border: 1px solid #e7ebf0;
  border-radius: 14px;
  box-shadow: 0 18px 48px rgba(16, 24, 40, 0.14);
  margin: 10px 0 0;
  padding: 8px;
  width: 258px;
}

#secondary-menu > li > ul::before {
  content: "";
  height: 12px;
  left: 0;
  position: absolute;
  right: 0;
  top: -12px;
}

#secondary-menu li li {
  border: 0;
  line-height: 1.35;
  padding: 0;
}

#secondary-menu li li + li {
  border-top: 1px solid #f0f2f5;
}

#secondary-menu li li a:link,
#secondary-menu li li a:visited,
#secondary-menu li.sfHover li a {
  background: transparent;
  border-radius: 9px;
  color: #344054;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  margin: 0;
  padding: 11px 12px;
  text-transform: none;
  transition: background-color 160ms ease, color 160ms ease, padding 160ms ease;
}

#secondary-menu li li a:hover,
#secondary-menu li li.current-menu-item > a {
  background: color-mix(in srgb, var(--goodsite-nav-accent, #ff4422) 9%, #fff);
  color: var(--goodsite-nav-accent, #ff4422);
  padding-inline-start: 15px;
}

#secondary-menu.sf-arrows li li .sf-with-ul {
  padding-right: 30px;
}

#secondary-menu.sf-arrows li li .sf-with-ul::after {
  border: solid currentColor;
  border-width: 1.5px 1.5px 0 0;
  content: "";
  height: 6px;
  margin: -4px 0 0;
  right: 13px;
  top: 50%;
  transform: rotate(45deg);
  width: 6px;
}

#secondary-menu li li ul {
  border: 1px solid #e7ebf0;
  border-radius: 14px;
  box-shadow: 0 18px 48px rgba(16, 24, 40, 0.14);
  left: calc(100% + 10px);
  margin: -8px 0 0;
  padding: 8px;
}

.is-sticky #secondary-bar {
  background: rgba(255, 255, 255, 0.985);
  box-shadow: 0 8px 30px rgba(16, 24, 40, 0.11);
}

@media only screen and (min-width: 960px) and (max-width: 1079px) {
  #secondary-menu {
    gap: 1px;
  }

  #secondary-menu > li > a {
    font-size: 12px;
    padding-inline: 10px;
    text-transform: none;
  }

  #secondary-menu.sf-arrows > li > .sf-with-ul {
    padding-right: 27px;
  }
}

@media only screen and (max-width: 959px) {
  #secondary-bar {
    border: 0;
    min-height: 0;
  }

  #secondary-bar .container {
    display: block;
    min-height: 0;
  }

}

@media (prefers-reduced-motion: reduce) {
  #primary-menu a,
  #secondary-menu a {
    transition: none;
  }
}
