.avs-theme-part {
  width: 100%;
  flex-shrink: 0;
}

.section.avs-site-navigation {
  --avs-nav-surface: var(--primary);
  --avs-nav-color: var(--text-light);
  --avs-brand-width: var(--avs-brand-normal-width, 250px);
  --avs-sticky-easing: cubic-bezier(0.22, 1, 0.36, 1);
  --avs-nav-transition:
    opacity var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    background-color var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    color var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    min-height var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    padding-top var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    padding-bottom var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    box-shadow var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    transform var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    top var(--avs-return-duration, 0ms) var(--avs-sticky-easing),
    visibility 0s linear var(--avs-sticky-visibility-delay, 0ms);

  position: relative;
  z-index: 30;
  min-height: var(--avs-nav-normal-height, 0px);
  margin-top: var(--avs-nav-margin-top, 0px);
  margin-right: var(--avs-nav-margin-right, 0px);
  margin-bottom: var(--avs-nav-margin-bottom, 0px);
  margin-left: var(--avs-nav-margin-left, 0px);
  padding-top: var(--avs-nav-padding-top, 0px);
  padding-bottom: var(--avs-nav-padding-bottom, 0px);
  background: var(--avs-nav-normal-background, var(--avs-nav-surface));
  color: var(--avs-nav-normal-color, var(--avs-nav-color));
  box-shadow: none;
  transition: var(--avs-nav-transition);
}

.avs-site-navigation.avs-site-part--light {
  --avs-nav-surface: var(--surface);
  --avs-nav-color: var(--text);
}

.avs-site-navigation.avs-site-part--dark {
  --avs-nav-surface: var(--secondary);
}

.avs-site-navigation__inner {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--gap-horz);
  min-height: var(--header-height);
  padding-block: var(--gap-sm);
  transition:
    min-height var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    padding-top var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    padding-bottom var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing);
}

.avs-site-navigation__brand {
  flex-shrink: 0;
  min-width: 0;
}

.avs-site-navigation.has-divider > .avs-site-navigation__inner::after,
.avs-site-navigation.is-stuck[data-sticky-divider="show"] > .avs-site-navigation__inner::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: var(--divider-width);
  height: var(--divider-height);
  background: var(--divider-color);
  opacity: var(--divider-opacity);
  content: '';
  pointer-events: none;
}

.avs-site-navigation .avs-site-brand {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  max-width: min(var(--avs-brand-width), 45vw);
  color: inherit;
  font-family: var(--heading-font);
  font-size: var(--text-md);
  font-weight: var(--weight-bold);
  line-height: var(--heading-lh);
  text-decoration: none;
  overflow-wrap: anywhere;
  transition:
    max-width var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    width var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    height var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    color var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing);
}

.avs-site-navigation .avs-site-brand__logo {
  display: block;
  width: var(--avs-brand-width);
  max-width: 100%;
  height: auto;
  object-fit: contain;
  transition: width var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing);
}

.avs-site-brand__normal,
.avs-site-brand__sticky {
  display: inline-flex;
  max-width: 100%;
}

.avs-site-brand__sticky {
  display: none;
}

.avs-site-navigation.is-stuck .has-sticky-logo .avs-site-brand__normal {
  display: none;
}

.avs-site-navigation.is-stuck .has-sticky-logo .avs-site-brand__sticky {
  display: inline-flex;
}

.avs-site-navigation .avs-site-brand.has-logo-pair {
  --avs-brand-ratio: var(--avs-brand-normal-ratio);

  position: relative;
  width: min(var(--avs-brand-width), 45vw);
  height: calc(min(var(--avs-brand-width), 45vw) / var(--avs-brand-ratio));
}

.avs-site-navigation.is-stuck .avs-site-brand.has-logo-pair {
  --avs-brand-ratio: var(--avs-brand-sticky-ratio);
}

.avs-site-navigation .avs-site-brand.has-logo-pair .avs-site-brand__normal,
.avs-site-navigation .avs-site-brand.has-logo-pair .avs-site-brand__sticky {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  transition:
    opacity var(--avs-sticky-duration, 400ms) var(--avs-sticky-easing),
    visibility 0s;
}

.avs-site-navigation .avs-site-brand.has-logo-pair .avs-site-brand__logo {
  width: 100%;
  height: 100%;
  transition: none;
}

.avs-site-navigation .has-logo-pair .avs-site-brand__normal,
.avs-site-navigation.is-stuck .has-logo-pair .avs-site-brand__sticky {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s, 0s;
}

.avs-site-navigation .has-logo-pair .avs-site-brand__sticky,
.avs-site-navigation.is-stuck .has-logo-pair .avs-site-brand__normal {
  visibility: hidden;
  opacity: 0;
  transition-delay: 0s, var(--avs-sticky-duration, 400ms);
}

.avs-site-navigation.is-stuck {
  --avs-brand-width: var(--avs-nav-sticky-logo-width, var(--avs-brand-normal-width, 250px));

  min-height: 0;
  padding-block: 0;
  background: var(--avs-nav-sticky-background, var(--avs-nav-normal-background, var(--avs-nav-surface)));
  color: var(--avs-nav-sticky-color, var(--avs-nav-normal-color, var(--avs-nav-color)));
}

.avs-site-navigation.is-stuck .avs-site-navigation__inner {
  min-height: var(--avs-nav-sticky-min-height, var(--header-height));
  padding-block: var(--avs-nav-sticky-padding-y, var(--gap-sm));
}

.avs-site-navigation.is-stuck[data-sticky-shadow="soft"] {
  box-shadow: var(--shadow);
}

.avs-site-navigation.is-stuck[data-sticky-divider="hide"] > .avs-site-navigation__inner::after {
  display: none;
}

.avs-site-navigation.is-fixed {
  position: fixed;
  z-index: 90;
  top: var(--avs-sticky-top, 0px);
  left: var(--avs-sticky-left, 0px);
  width: var(--avs-sticky-width, 100%);
  max-width: none;
  margin: 0;
  transform: none;
}

.avs-site-navigation.is-fixed.is-scroll-hidden {
  --avs-sticky-visibility-delay: var(--avs-sticky-duration, 400ms);

  visibility: hidden;
  pointer-events: none;
  transform: translateY(calc(-100% - var(--avs-sticky-top, 0px) - var(--gap-horz)));
}

html.aos-enabled .section.avs-site-navigation.is-fixed[data-avs-motion] {
  transform: none;
  transition: var(--avs-nav-transition);
}

html.aos-enabled .section.avs-site-navigation.is-fixed.is-scroll-hidden[data-avs-motion] {
  transform: translateY(calc(-100% - var(--avs-sticky-top, 0px) - var(--gap-horz)));
}

.avs-site-navigation.is-returning {
  --avs-return-duration: var(--avs-sticky-duration, 400ms);
}

.avs-site-navigation.is-measuring,
.avs-site-navigation.is-measuring * {
  transition: none !important;
  animation: none !important;
}

.avs-site-navigation.is-measuring {
  transform: none !important;
}

.avs-site-navigation__background-transition {
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
}

.avs-site-navigation__space {
  flex-shrink: 0;
  pointer-events: none;
}

.avs-site-navigation__space[hidden] {
  display: none;
}

html[data-avs-sticky-header] {
  scroll-padding-top: var(--avs-header-offset, 0px);
}

.avs-site-navigation__desktop {
  flex: 1;
  min-width: 0;
}

.avs-site-navigation__body {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--gap-horz);
  min-width: 0;
}

.avs-site-navigation__links {
  min-width: 0;
}

.avs-site-navigation .avs-site-menu,
.avs-site-navigation .sub-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.avs-site-navigation .avs-site-menu {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--gap-horz);
}

.avs-site-navigation .menu-item {
  position: relative;
  display: flex;
  align-items: center;
  min-width: 0;
}

.avs-site-navigation .avs-site-menu a {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 2.75rem;
  padding-block: var(--gap-sm);
  color: inherit;
  font-family: var(--heading-font);
  font-size: var(--text-base, 1rem);
  font-weight: var(--weight-regular);
  line-height: var(--body-lh);
  text-decoration: none;
  overflow-wrap: anywhere;
}

.avs-site-navigation .avs-site-menu a:hover,
.avs-site-navigation .avs-site-menu .current-menu-item > a,
.avs-site-navigation .avs-site-menu .current-menu-ancestor > a {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

.avs-site-navigation .sub-menu a {
  flex: 1;
  padding: var(--gap-sm);
  font-size: var(--text-sm);
}

.avs-site-navigation.is-ready:not(.is-mobile) .sub-menu {
  position: fixed;
  z-index: 31;
  top: var(--avs-submenu-top, 0px);
  left: var(--avs-submenu-left, 0px);
  width: max-content;
  min-width: min(14rem, calc(100vw - var(--gutter) * 2));
  max-width: min(22rem, calc(100vw - var(--gutter) * 2));
  max-height: var(--avs-submenu-room, calc(100dvh - var(--header-height)));
  overflow: auto;
  overscroll-behavior: contain;
  padding: calc(var(--gap-sm) / 2);
  border: 1px solid var(--line);
  border-radius: var(--radius_xs);
  background: var(--surface);
  color: var(--text);
  box-shadow: var(--shadow);
}

.avs-site-navigation__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--gap-sm);
  max-width: 100%;
}

.avs-site-navigation__action {
  display: flex;
  min-width: 0;
  max-width: 100%;
}

.avs-site-navigation__action:empty {
  display: none;
}

.avs-site-navigation__action .btn {
  overflow-wrap: anywhere;
}

.avs-site-navigation__toggle,
.avs-site-navigation__close,
.avs-site-navigation__submenu-toggle {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: var(--radius_xs);
  background: transparent;
  color: inherit;
  cursor: pointer;
}

.avs-site-navigation__toggle {
  display: none;
  margin-left: auto;
}

.avs-site-navigation__toggle svg,
.avs-site-navigation__close svg {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}

.avs-site-navigation__submenu-toggle svg {
  width: 1rem;
  height: 1rem;
}

.avs-site-navigation__submenu-toggle[aria-expanded="true"] svg {
  transform: rotate(180deg);
}

.avs-site-navigation__toggle:hover,
.avs-site-navigation__close:hover,
.avs-site-navigation__submenu-toggle:hover {
  background: color-mix(in srgb, currentColor 10%, transparent);
}

.avs-site-navigation [hidden] {
  display: none !important;
}

.avs-site-navigation a:focus-visible,
.avs-site-navigation button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

.avs-site-menu-hint {
  max-width: 24rem;
  margin: 0;
  font-size: var(--text-sm);
}

.avs-site-navigation__sheet {
  --avs-brand-width: var(--avs-brand-normal-width, 250px);

  position: fixed;
  inset: 0 0 0 auto;
  display: flex;
  flex-direction: column;
  width: min(var(--avs-sheet-width), calc(100% - var(--gap-sm)));
  max-width: 100%;
  height: 100vh;
  height: 100dvh;
  max-height: 100dvh;
  margin: 0;
  padding: var(--gutter);
  border: 0;
  background: var(--avs-nav-surface);
  color: var(--avs-nav-color);
  font: inherit;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.avs-site-navigation__sheet:not([open]) {
  display: none;
}

.avs-site-navigation[data-sheet-side="left"] .avs-site-navigation__sheet {
  inset: 0 auto 0 0;
}

.avs-site-navigation__sheet::backdrop {
  background: color-mix(in srgb, var(--secondary) 55%, transparent);
}

.avs-site-navigation__sheet-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-sm);
  padding-bottom: var(--gutter);
  border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent);
}

.avs-site-navigation__sheet-heading .avs-site-brand {
  min-width: 0;
  max-width: calc(100% - 2.75rem - var(--gap-sm));
}

.avs-site-navigation__sheet-content {
  flex: 1;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding-block: var(--gap-horz);
}

.avs-site-navigation.is-mobile .avs-site-navigation__desktop {
  display: none;
}

.avs-site-navigation.is-mobile .avs-site-navigation__toggle {
  display: grid;
}

.avs-site-navigation.is-mobile .avs-site-navigation__body {
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  min-height: 100%;
}

.avs-site-navigation.is-mobile .avs-site-menu {
  display: block;
}

.avs-site-navigation.is-mobile .menu-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.avs-site-navigation.is-mobile .sub-menu {
  grid-column: 1 / -1;
  padding-left: var(--gutter);
}

.avs-site-navigation.is-mobile .avs-site-menu a {
  padding-block: var(--gap-sm);
}

.avs-site-navigation.is-mobile .avs-site-navigation__actions {
  flex-direction: column;
  align-items: stretch;
  margin-top: auto;
}

.avs-site-navigation.is-mobile .avs-site-navigation__action .btn {
  width: 100%;
}

html:not(.avs-navigation-js) .avs-site-navigation:not(.is-ready) .avs-site-menu {
  display: block;
}

html:not(.avs-navigation-js) .avs-site-navigation:not(.is-ready) .menu-item {
  display: block;
}

html:not(.avs-navigation-js) .avs-site-navigation:not(.is-ready) .sub-menu {
  padding-left: var(--gutter);
}

html.avs-navigation-js .avs-site-navigation:not(.is-ready) .sub-menu {
  display: none;
}

@media (max-width: 767.98px) {
  html.avs-navigation-js .avs-site-navigation[data-nav-breakpoint="768"] .avs-site-navigation__desktop {
    display: none;
  }

  html.avs-navigation-js .avs-site-navigation[data-nav-breakpoint="768"] .avs-site-navigation__toggle {
    display: grid;
  }
}

@media (max-width: 1023.98px) {
  html.avs-navigation-js .avs-site-navigation[data-nav-breakpoint="1024"] .avs-site-navigation__desktop {
    display: none;
  }

  html.avs-navigation-js .avs-site-navigation[data-nav-breakpoint="1024"] .avs-site-navigation__toggle {
    display: grid;
  }
}

@media (max-width: 1199.98px) {
  html.avs-navigation-js .avs-site-navigation[data-nav-breakpoint="1200"] .avs-site-navigation__desktop {
    display: none;
  }

  html.avs-navigation-js .avs-site-navigation[data-nav-breakpoint="1200"] .avs-site-navigation__toggle {
    display: grid;
  }
}

html.avs-navigation-sheet-open,
html.avs-navigation-sheet-open body {
  overflow: hidden;
}

html.avs-navigation-sheet-open body {
  padding-right: calc(var(--avs-navigation-body-padding, 0px) + var(--avs-navigation-scrollbar-gap, 0px));
}

@media (prefers-reduced-motion: reduce) {
  .section.avs-site-navigation {
    --avs-sticky-duration: 0ms !important;
  }

  .section.avs-site-navigation,
  .avs-site-navigation__inner,
  .avs-site-navigation .avs-site-brand,
  .avs-site-navigation .avs-site-brand__logo,
  .avs-site-navigation .has-logo-pair .avs-site-brand__normal,
  .avs-site-navigation .has-logo-pair .avs-site-brand__sticky,
  .avs-site-navigation .btn {
    transition: none !important;
  }
}

