/* [project]/shared/components/layout/Header/Header.module.css [app-client] (css) */
.Header-module__DxdwwG__headerWrapper {
  background: var(--color-bg-primary);
  width: 100%;
}

.Header-module__DxdwwG__headerTop {
  background: var(--color-bg-primary);
  z-index: 101;
  width: 100%;
  padding: 1.9375rem 1.5rem;
  transition: padding .3s;
  position: relative;
  top: 0;
}

.Header-module__DxdwwG__headerTop.Header-module__DxdwwG__headerTopFixed {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  box-shadow: 0 .125rem .5rem #00000014;
}

.Header-module__DxdwwG__headerTopScrolled {
  padding: 1.25rem 1.5rem;
}

.Header-module__DxdwwG__headerTop.Header-module__DxdwwG__headerTopMenuOpen {
  z-index: 1002;
}

.Header-module__DxdwwG__container {
  flex-direction: column;
  width: 100%;
  max-width: 87rem;
  margin: 0 auto;
  padding: 0;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__headerRow {
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  width: 100%;
  min-height: 4.5rem;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__breadcrumbsContainer {
  max-width: 87rem;
  margin: 0 auto;
  padding: 0 1.5rem;
}

.Header-module__DxdwwG__leftSection {
  flex: none;
  align-items: center;
  gap: 1.5rem;
  min-width: 0;
  display: flex;
}

.Header-module__DxdwwG__logoContainer {
  flex: none;
  min-width: 0;
}

.Header-module__DxdwwG__logoLink {
  color: inherit;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.Header-module__DxdwwG__logoFull {
  aspect-ratio: 311 / 56;
  flex-shrink: 1;
  width: 15rem;
  max-width: 100%;
  height: auto;
  display: block;
}

.Header-module__DxdwwG__navigation {
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 2.25rem;
  min-width: 0;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__navItemWrapper {
  align-items: center;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__navItem, .Header-module__DxdwwG__navItemButton {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-loose);
  color: var(--color-brand-cyan);
  white-space: nowrap;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  text-decoration: none;
  transition: color .2s;
}

.Header-module__DxdwwG__navItem:hover, .Header-module__DxdwwG__navItemButton:hover, .Header-module__DxdwwG__navItemActive {
  color: var(--color-accent);
}

.Header-module__DxdwwG__dropdown {
  background: var(--color-bg-primary);
  border-radius: var(--border-radius-md);
  z-index: 1000;
  min-width: 12rem;
  margin-top: .5rem;
  padding: .5rem 0;
  animation: .2s Header-module__DxdwwG__dropdownFadeIn;
  position: absolute;
  top: 100%;
  left: 0;
  box-shadow: 0 .25rem .75rem #0000001a;
}

@keyframes Header-module__DxdwwG__dropdownFadeIn {
  from {
    opacity: 0;
    transform: translateY(-.5rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.Header-module__DxdwwG__dropdownList {
  margin: 0;
  padding: 0;
  list-style: none;
}

.Header-module__DxdwwG__dropdownItem {
  margin: 0;
}

.Header-module__DxdwwG__dropdownLink {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-base);
  line-height: var(--line-height-normal);
  color: var(--color-text-primary);
  white-space: nowrap;
  padding: .75rem 1.25rem;
  text-decoration: none;
  transition: background-color .2s, color .2s;
  display: block;
}

.Header-module__DxdwwG__dropdownLink:hover {
  background-color: var(--color-bg-light);
  color: var(--color-accent);
}

.Header-module__DxdwwG__rightSide {
  flex-shrink: 0;
  align-items: center;
  gap: 1.5rem;
  display: flex;
}

.Header-module__DxdwwG__phoneNumber {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-3xl);
  line-height: var(--line-height-snug);
  color: var(--color-brand-cyan);
  text-underline-offset: 16.5%;
  white-space: nowrap;
  text-decoration: underline;
  transition: color .2s;
}

.Header-module__DxdwwG__phoneNumber:hover {
  color: var(--color-accent);
}

.Header-module__DxdwwG__mobileControls {
  flex: none;
  align-items: center;
  gap: .75rem;
  margin-left: auto;
  display: none;
}

.Header-module__DxdwwG__mobileRightSide {
  flex: none;
  align-items: center;
  gap: .5rem;
  display: none;
}

.Header-module__DxdwwG__mobileFavorite {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  height: 3.5rem;
  display: flex;
}

.Header-module__DxdwwG__mobilePhone {
  flex-shrink: 0;
  align-items: center;
  height: 3.5rem;
  display: flex;
}

.Header-module__DxdwwG__mobilePhoneLink {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-snug);
  color: var(--color-brand-cyan);
  text-underline-offset: .25rem;
  white-space: nowrap;
  align-items: center;
  height: 100%;
  text-decoration: underline;
  transition: color .2s;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__mobilePhoneText {
  display: inline;
}

.Header-module__DxdwwG__mobilePhoneIcon {
  -o-object-fit: contain;
  object-fit: contain;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  display: none;
}

.Header-module__DxdwwG__mobilePhoneLink:hover {
  color: var(--color-accent);
}

.Header-module__DxdwwG__burgerButton {
  cursor: pointer;
  z-index: 1001;
  background: none;
  border: none;
  flex-direction: column;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  gap: .25rem;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  display: none;
  position: relative;
}

.Header-module__DxdwwG__burgerLine {
  background: var(--color-brand-cyan);
  transform-origin: center;
  border-radius: .125rem;
  width: 1.5rem;
  height: .1875rem;
  transition: all .3s;
  display: block;
}

.Header-module__DxdwwG__burgerButton.Header-module__DxdwwG__burgerOpen {
  visibility: hidden;
  gap: 0;
  overflow: visible;
}

.Header-module__DxdwwG__burgerButton.Header-module__DxdwwG__burgerOpen .Header-module__DxdwwG__burgerLine {
  width: 1.5rem;
  height: .1875rem;
  position: absolute;
  top: 50%;
  left: 50%;
}

.Header-module__DxdwwG__burgerButton.Header-module__DxdwwG__burgerOpen .Header-module__DxdwwG__burgerLine:first-child {
  transform: translate(-50%, -50%)rotate(45deg);
}

.Header-module__DxdwwG__burgerButton.Header-module__DxdwwG__burgerOpen .Header-module__DxdwwG__burgerLine:nth-child(2) {
  opacity: 0;
  transform: translate(-50%, -50%)scale(0);
}

.Header-module__DxdwwG__burgerButton.Header-module__DxdwwG__burgerOpen .Header-module__DxdwwG__burgerLine:nth-child(3) {
  transform: translate(-50%, -50%)rotate(-45deg);
}

.Header-module__DxdwwG__burgerPortalWrap {
  z-index: 10052;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  top: 1.25rem;
  right: 1.5rem;
}

.Header-module__DxdwwG__burgerButtonPortal {
  cursor: pointer;
  background: none;
  border: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__burgerButtonPortal .Header-module__DxdwwG__burgerLine {
  background: var(--color-brand-cyan);
  transform-origin: center;
  border-radius: .125rem;
  width: 1.5rem;
  height: .1875rem;
  transition: all .3s;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
}

.Header-module__DxdwwG__burgerButtonPortal .Header-module__DxdwwG__burgerLine:first-child {
  transform: translate(-50%, -50%)rotate(45deg);
}

.Header-module__DxdwwG__burgerButtonPortal .Header-module__DxdwwG__burgerLine:nth-child(2) {
  opacity: 0;
  transform: translate(-50%, -50%)scale(0);
}

.Header-module__DxdwwG__burgerButtonPortal .Header-module__DxdwwG__burgerLine:nth-child(3) {
  transform: translate(-50%, -50%)rotate(-45deg);
}

.Header-module__DxdwwG__mobileOverlay {
  z-index: 10050;
  opacity: 0;
  visibility: hidden;
  background: #00000080;
  width: 100%;
  height: 100%;
  transition: opacity .3s, visibility .3s;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
}

.Header-module__DxdwwG__mobileOverlayOpen {
  opacity: 1;
  visibility: visible;
  display: block;
}

.Header-module__DxdwwG__mobileMenu {
  background: var(--color-bg-primary);
  z-index: 10051;
  visibility: hidden;
  pointer-events: none;
  width: 20rem;
  max-width: 85vw;
  height: 100vh;
  transition: right .3s;
  position: fixed;
  top: 0;
  right: -20rem;
  overflow: hidden auto;
  box-shadow: -.125rem 0 .625rem #0000001a;
}

.Header-module__DxdwwG__mobileMenuOpen {
  visibility: visible;
  pointer-events: auto;
  right: 0;
}

.Header-module__DxdwwG__mobileMenuContent {
  box-sizing: border-box;
  flex-direction: column;
  max-width: 100%;
  height: 100%;
  padding: 5rem 1.5rem 1.5rem;
  display: flex;
  overflow-x: hidden;
}

.Header-module__DxdwwG__mobileNavList {
  margin: 0;
  padding: 0;
  list-style: none;
}

.Header-module__DxdwwG__mobileNavItem {
  margin-bottom: .5rem;
}

.Header-module__DxdwwG__mobileNavLink {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-loose);
  color: var(--color-brand-cyan);
  border-bottom: .0625rem solid #adadad33;
  padding: 1rem 0;
  text-decoration: none;
  transition: color .2s;
  display: block;
}

.Header-module__DxdwwG__mobileNavLink:hover {
  color: var(--color-accent);
}

.Header-module__DxdwwG__mobileNavLinkActive {
  color: var(--color-accent);
  font-weight: var(--font-weight-semibold);
}

.Header-module__DxdwwG__mobilePhoneContainer {
  border-top: .125rem solid #adadad4d;
  padding-top: 1.5rem;
}

.Header-module__DxdwwG__mobilePhoneNumber {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-xl);
  line-height: var(--line-height-snug);
  color: var(--color-brand-cyan);
  text-underline-offset: .5rem;
  text-align: center;
  padding: 1rem 0;
  text-decoration: underline;
  transition: color .2s;
  display: block;
}

.Header-module__DxdwwG__mobilePhoneNumber:hover {
  color: var(--color-accent);
}

.Header-module__DxdwwG__filterContainer {
  background: var(--color-bg-primary);
  align-items: flex-start;
  width: 100%;
  max-width: 87rem;
  margin: 0 auto;
  padding: 0 .75rem;
  display: flex;
  position: relative;
}

.Header-module__DxdwwG__filterWrapper {
  align-items: flex-end;
  width: 100%;
  padding: 0;
  display: flex;
}

.Header-module__DxdwwG__filterCompactButton {
  background: var(--color-brand-cyan);
  width: 100%;
  min-height: 3.25rem;
  color: var(--color-bg-primary);
  cursor: pointer;
  font-family: var(--font-family-body);
  font-size: var(--font-size-base);
  line-height: var(--line-height-snug);
  text-align: center;
  border: 0;
  border-radius: .625rem;
  padding: .75rem 1rem;
}

.Header-module__DxdwwG__filterCompactButton:hover {
  background: #1a3a4d;
}

.Header-module__DxdwwG__filterSkeleton {
  border-radius: 1.875rem;
  width: 100%;
  min-height: 4.75rem;
}

@media (max-width: 75rem) {
  .Header-module__DxdwwG__navigation {
    display: none !important;
  }

  .Header-module__DxdwwG__burgerButton {
    display: flex !important;
  }

  .Header-module__DxdwwG__rightSide {
    display: none !important;
  }

  .Header-module__DxdwwG__mobileControls, .Header-module__DxdwwG__mobileRightSide {
    display: flex;
  }
}

@media (max-width: 48rem) {
  .Header-module__DxdwwG__mobilePhone {
    height: 3.5rem;
    margin-right: .75rem;
  }

  .Header-module__DxdwwG__mobilePhoneLink {
    font-size: var(--font-size-lg);
    text-underline-offset: .25rem;
    height: 100%;
    color: var(--color-brand-cyan);
    align-items: center;
    text-decoration: underline;
    transition: color .2s;
    display: flex;
  }

  .Header-module__DxdwwG__mobilePhoneLink:hover {
    color: var(--color-accent);
  }

  .Header-module__DxdwwG__mobilePhoneIcon {
    display: none;
  }

  .Header-module__DxdwwG__mobilePhoneText {
    display: inline;
  }
}

@media (max-width: 38rem) {
  .Header-module__DxdwwG__mobilePhone {
    height: 3.5rem;
    margin-right: .5rem;
  }

  .Header-module__DxdwwG__mobilePhoneLink {
    height: 3.5rem;
    color: var(--color-brand-cyan);
    justify-content: center;
    align-items: center;
    padding: 0;
    font-size: 0;
    text-decoration: none;
    transition: color .2s;
    display: flex;
  }

  .Header-module__DxdwwG__mobilePhoneLink:hover {
    color: var(--color-accent);
  }

  .Header-module__DxdwwG__mobilePhoneIcon {
    flex-shrink: 0;
    width: 1.5rem;
    height: 1.5rem;
    display: block;
  }

  .Header-module__DxdwwG__mobilePhoneText {
    display: none;
  }
}

@media (max-width: 48rem) {
  .Header-module__DxdwwG__headerTop {
    padding: 1.25rem 1rem;
  }

  .Header-module__DxdwwG__headerTopScrolled {
    padding: 1rem;
  }

  .Header-module__DxdwwG__container {
    padding: 0;
    position: relative;
  }

  .Header-module__DxdwwG__breadcrumbsContainer {
    padding: 0 1rem;
  }

  .Header-module__DxdwwG__headerRow {
    gap: .5rem;
  }

  .Header-module__DxdwwG__leftSection {
    flex: none;
    gap: .75rem;
  }

  .Header-module__DxdwwG__logoFull {
    width: clamp(14rem, 70vw, 18rem);
    height: auto;
  }

  .Header-module__DxdwwG__mobileControls {
    justify-content: flex-end;
    gap: .5rem;
    padding: 0 .5rem;
  }

  .Header-module__DxdwwG__mobileRightSide {
    justify-content: flex-end;
  }

  .Header-module__DxdwwG__mobilePhone {
    margin-right: 0;
  }

  .Header-module__DxdwwG__mobileOverlay {
    display: block;
  }
}

@media (max-width: 30rem) {
  .Header-module__DxdwwG__headerTop {
    padding: 1rem .75rem;
  }

  .Header-module__DxdwwG__headerTopScrolled {
    padding: .75rem;
  }

  .Header-module__DxdwwG__mobileMenu {
    width: 100%;
    max-width: 100vw;
  }

  .Header-module__DxdwwG__mobileMenuContent {
    padding: 4.375rem 1.25rem 1.25rem;
  }

  .Header-module__DxdwwG__mobileNavLink {
    font-size: var(--font-size-base);
    padding: .875rem 0;
  }

  .Header-module__DxdwwG__mobilePhoneNumber {
    font-size: var(--font-size-lg);
  }

  .Header-module__DxdwwG__filterContainer {
    padding: 0 .75rem;
  }

  .Header-module__DxdwwG__filterSkeleton {
    border-radius: .625rem;
    min-height: 14.75rem;
  }

  .Header-module__DxdwwG__logoFull {
    width: min(15rem, 72vw);
    height: auto;
  }

  .Header-module__DxdwwG__mobileRightSide {
    margin-left: 0;
  }
}

@media (max-width: 25.75rem) {
  .Header-module__DxdwwG__mobileRightSide {
    display: none !important;
  }
}

/*# sourceMappingURL=shared_components_layout_Header_Header_module_0goqtjb.css.map*/