/* components.navigation.mobile */
/* components.navigation.menu.main-mobile */
/* mixins.color    */
/* vars.ci */
/* mixins.color    */
/* mixins.space */
/* utilities.hacks */
/* mixins.fallbacks */
/* mixins.numbers */
/* mixins.icons */
/* components.navigation.utils */
body[data-mobile] {
  overflow: hidden;
}

.menu-feature,
.promo-wrapper,
.cta-wrapper {
  display: none;
}

#menu-main {
  --js_item-count: 6 !important;
  --menu-width: max(25rem, min(80vw, var(--max-content-width)));
  position: absolute;
  z-index: 227;
  width: var(--menu-width);
  height: 100vh;
  top: 0;
  padding: 0;
  overflow-y: auto;
  visibility: hidden;
}
#menu-main[data-mobile] {
  visibility: visible;
}

.menu-main-toggle {
  height: var(--_site-bar);
  color: inherit;
}
.menu-main-toggle span {
  visibility: hidden;
}

#menu-main-toggle[data-mobile] {
  display: flex;
  flex-direction: column;
  justify-content: end;
  visibility: visible;
}

nav.menu-main .menu-bar {
  flex-direction: column;
  align-items: start;
  gap: unset;
}
nav.menu-main :is(.menu-main-toggle,
summary > .menu-label,
.menu-link > .menu-label) {
  padding: var(--menu-label-padding-block) var(--menu-label-padding-inline);
}
nav.menu-main .menu {
  isolation: isolate;
  z-index: 1;
  margin-left: 0;
  user-select: none;
}
nav.menu-main .menu .menu {
  z-index: 7;
  width: var(--menu-width);
}
nav.menu-main .menu-dropdown [data-symbol]::after {
  margin: unset;
}
nav.menu-main .menu-label[data-show="55"][data-skip="54"] {
  display: inline-block;
}
nav.menu-main .menu-label[data-show="54"][data-skip="55"] {
  display: none;
}
nav.menu-main nobr,
nav.menu-main .menu-link {
  pointer-events: none;
}
@media (min-width: 30em) {
  nav.menu-main br[data-skip] {
    display: none;
  }
}

nav.menu-main :is(.menu-bar, .sub-wrapper) {
  transition: translate var(--transition);
}
nav.menu-main[data-open] {
  --offset: 50%;
}
nav.menu-main[data-open] .menu-main-toggle span {
  visibility: visible;
}
nav.menu-main[data-open] .menu-bar {
  translate: calc(-1 * var(--offset)) 0;
}
nav.menu-main[data-open] .menu-bar > li:not([aria-current]) {
  display: none;
}
nav.menu-main li[aria-current] summary {
  translate: calc(-2 * var(--offset)) 0;
}
nav.menu-main li[aria-current] .sub-wrapper {
  translate: var(--offset) 0;
}
nav.menu-main .sub-wrapper {
  --menu-w: max(18em, 20%);
  position: absolute;
  top: 0;
  left: 0;
}
nav.menu-main .sub-wrapper > .menu > li > .menu {
  --menu-label-padding-block: var(--size-2);
  display: none;
}
nav.menu-main .sub-wrapper li:focus-within > .menu {
  display: block;
  margin-left: var(--menu-label-padding-inline);
}
nav.menu-main .sub-wrapper li:focus-within > .menu .menu-link {
  pointer-events: all;
}

#hamburger {
  --icon-size: 2rem;
  display: block;
  z-index: 277;
}
#hamburger svg {
  width: var(--icon-size);
  height: var(--icon-size);
}
#hamburger :is(svg, rect) {
  pointer-events: none;
}
#hamburger rect {
  --dur: 200ms;
  transition-property: transform, opacity;
  transition-duration: var(--dur);
  transform-origin: center;
}
#hamburger[data-mobile] rect:nth-of-type(1) {
  transform: translate(0, 33%);
  animation: var(--dur) ease-in var(--dur) 1 forwards spin_left;
}
#hamburger[data-mobile] rect:nth-of-type(2) {
  opacity: 0;
}
#hamburger[data-mobile] rect:nth-of-type(3) {
  transform: translate(0, -33%);
  animation: var(--dur) ease-in var(--dur) 1 forwards spin_right;
}

@keyframes spin_left {
  to {
    rotate: 45deg;
  }
}
@keyframes spin_right {
  to {
    rotate: -45deg;
  }
}
.menu-main,
.menu-main-toggle {
  border-bottom: 1px solid var(--color-7);
  background: transparent linear-gradient(to right, var(--surface-9) 70%, transparent) no-repeat;
}

nav.menu-main summary.menu-label,
nav.menu-main .menu-link .menu-label {
  border-bottom: var(--border-width) solid var(--color-8);
}
nav.menu-main .menu-link {
  -webkit-text-decoration: none;
  text-decoration: none;
}
@media (max-width: 23.249em) {
  nav.menu-main .sub-wrapper {
    font-size: var(--font-size-0);
  }
}
