.logo {
  --logo-max-width: 200px;
  position: relative;
}
.logo__image {
  display: flex;
  align-items: center;
  max-height: 64px;
  max-width: var(--logo-max-width);
  width: auto;
}
.logo__image-holder {
  display: flex;
  align-items: center;
  height: 100%;
}
.logo__image-holder--floated {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.logo__text {
  font-size: 24px;
  line-height: var(--line-height-md);
  font-weight: var(--font-weight-semibold);
  margin: 0;
  color: currentcolor;
}

.header {
  --header-left: auto;
  --header-logo-opacity: 1;
  --header-position: relative;
  --header-right: auto;
  --header-top: 0;
  position: var(--header-position);
  top: var(--header-top);
  left: var(--header-left);
  right: var(--header-right);
  z-index: 1001;
  margin-top: var(--preview-height, 0px) !important;
  transition: top var(--animation-duration) var(--transition-function-ease-out);
}
.header__logo-wrapper {
  display: flex;
  align-items: center;
  grid-area: column-1;
  position: relative;
  z-index: 1;
  height: 100%;
}
.header__logo-image-holder {
  opacity: var(--header-logo-opacity);
}
body:has(#search-opener:checked) .header-transparent .header__logo-image-holder:not(.header__logo-image-holder--floated), body:has(#mobile-menu-opener:checked) .header-transparent .header__logo-image-holder:not(.header__logo-image-holder--floated), .page-scrolled .header-transparent .header__logo-image-holder:not(.header__logo-image-holder--floated) {
  --header-logo-opacity: 1;
}
body:has(#search-opener:checked) .header-transparent .header__logo-image-holder--floated, body:has(#mobile-menu-opener:checked) .header-transparent .header__logo-image-holder--floated, .page-scrolled .header-transparent .header__logo-image-holder--floated {
  --header-logo-opacity: 0;
}
@media (min-width: 320px) {
  .header .logo__image {
    --logo-max-width: 162px;
  }
}
@media (min-width: 428px) {
  .header .logo__image {
    --logo-max-width: 210px;
  }
}
@media (min-width: 480px) {
  .header .logo__image {
    --logo-max-width: 250px;
  }
}
@media (min-width: 567px) {
  .header .logo__image {
    --logo-max-width: 300px;
  }
}
@media (min-width: 992px) {
  .header .logo__image {
    --logo-max-width: 100%;
  }
}
.header-menu-opened, .header-sticky {
  --header-position: fixed;
  --header-top: var(--header-transform, 0px);
  --header-left: 0;
  --header-right: 0;
}
.header__inner {
  --header-buttons-direction: row-reverse;
  --header-content-inner-grid-columns: max-content 1fr max-content;
  --header-date-picker-margin: 0;
  --header-date-picker-max-width: none;
  --header-date-picker-padding: 0;
  --header-date-picker-position: absolute;
  --header-date-picker-transform: translate(-50%, 0);
  --header-date-picker-width: calc(100vw - var(--horizontal-padding-mobile, 16px) * 2);
  --header-date-picker-z-index: -1;
  --header-inner-bg-visibility: hidden;
  --header-inner-position: absolute;
  --header-inner-width: 100%;
  --header-padding-top: var(--padding-top-mobile);
  --header-padding-bottom: var(--padding-bottom-mobile);
  --header-search-inner-padding-bottom: 18px;
  --header-search-inner-padding-top: calc(18px + var(--header-height, 39px));
  --header-search-inner-padding-x: 18px;
  --header-search-opener-color: var(--background-primary);
  --header-search-reset-color: var(--color-primary);
  width: var(--header-inner-width);
  position: var(--header-inner-position);
}
@media (min-width: 992px) {
  .header__inner {
    --header-buttons-direction: row;
    --header-content-inner-grid-columns: 230px 1fr 230px;
    --header-date-picker-position: static;
    --header-date-picker-transform: translate(0, 0);
    --header-date-picker-z-index: 0;
    --header-date-picker-width: auto;
    --header-date-picker-max-width: 470px;
    --header-date-picker-padding: 0 10px;
    --header-date-picker-margin: calc(-1 * var(--padding-top)) auto calc(-1 * var(--padding-bottom));
  }
}
@media (min-width: 1100px) {
  .header__inner {
    --header-date-picker-max-width: none;
    --header-padding-top: var(--padding-top);
    --header-padding-bottom: var(--padding-bottom);
  }
}
.header-sticky .header__inner {
  --header-inner-width: 100%;
  --header-inner-position: absolute;
}
.header__inner .header__inner-background {
  --header-inner-position: static;
}
.header-sticky .header__inner .header__inner-background {
  --header-inner-position: static;
}
.header__inner:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: var(--body-height, 100vh);
  z-index: -2;
  background: var(--color-primary-67);
  visibility: var(--header-inner-bg-visibility);
}
.header__inner:has(#search-opener:checked):after, .header__inner:has(#mobile-menu-opener:checked):after {
  --header-inner-bg-visibility: visible;
}
.header__content--padding-top {
  padding-top: var(--header-padding-top);
}
.header__content--padding-bottom {
  padding-bottom: var(--header-padding-bottom);
}
.header__content-inner {
  display: grid;
  grid-template-columns: var(--header-content-inner-grid-columns);
  grid-template-areas: "column-1 column-2 column-3";
  gap: 0px 12px;
  align-items: center;
}
.page-scrolled .header-transparent .header__inner .header__content, .header__inner-background .header__content, .header__inner:has(#search-opener:checked) .header__content, .header__inner:has(#mobile-menu-opener:checked) .header__content {
  color: var(--color-primary);
  background: var(--background-primary);
  border-bottom: 1px solid color-mix(in srgb, var(--color-primary) 15%, transparent);
}
.header:has(~ #main section:first-child > .container) .header__content {
  border-color: transparent;
}
body:has(#search-opener:checked) .header:has(~ #main section:first-child > .container) .header__content, body:has(#mobile-menu-opener:checked) .header:has(~ #main section:first-child > .container) .header__content, .page-scrolled .header:has(~ #main section:first-child > .container) .header__content {
  border-color: color-mix(in srgb, var(--color-primary) 15%, transparent);
}
.header__date-picker-wrapper {
  grid-area: column-2;
  position: var(--header-date-picker-position);
  top: calc(100% + 8px);
  left: 50%;
  width: var(--header-date-picker-width);
  max-width: var(--header-date-picker-max-width);
  transform: var(--header-date-picker-transform);
  z-index: var(--header-date-picker-z-index);
  padding: var(--header-date-picker-padding);
  margin: var(--header-date-picker-margin);
}
.iphone.notch.safari[data-orientation=landscape] .header__date-picker-wrapper {
  --header-date-picker-width: calc(100vw - var(--horizontal-padding-mobile, 16px) * 2 - 44px * 2);
}
.header:has(~ #main section:first-child > .container) .header__date-picker-wrapper {
  --header-date-picker-width: calc(100vw - var(--horizontal-padding-mobile, 16px) * 2 - 16px);
}
@media (min-width: 992px) {
  .header:has(~ #main section:first-child > .container) .header__date-picker-wrapper {
    --header-date-picker-width: auto;
  }
}
.header__nav-wrapper {
  margin-left: 10px;
}
@media (min-width: 992px) {
  .header__nav-wrapper {
    margin: 0;
  }
}
.header__buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: var(--header-buttons-direction);
  grid-area: column-3;
}
.header__links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
}
.header__search-opener {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--header-icon-height);
  width: var(--header-icon-width);
  margin: 0;
  padding: 8px;
  border: 1px solid var(--background-accent);
  border-radius: var(--border-radius);
  color: inherit;
  cursor: pointer;
}
.header__search-opener svg {
  pointer-events: none;
}
.header__search-opener g {
  stroke: var(--header-search-opener-color);
  transition: all var(--animation-duration) var(--transition-function-ease-in-out);
}
.header__inner-background .header__search-opener g, .page-scrolled .header-transparent .header__search-opener g, .header__inner:has(#search-opener:checked) .header__search-opener g, .header__inner:has(#mobile-menu-opener:checked) .header__search-opener g {
  --header-search-opener-color: var(--color-primary);
}
.header__search-opener:hover g, .page-scrolled .header-transparent .header__search-opener:hover g, .header__inner:has(#mobile-menu-opener:checked) .header__search-opener:hover g {
  --header-search-opener-color: var(--color-outline-hover);
}
.header__search-closer {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  cursor: default;
}
.header__search-wrapper {
  pointer-events: none;
  margin: 0;
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  transform: translate(-50%, 0);
  display: block !important;
  height: calc(var(--body-height) - var(--header-height, 39px));
  max-height: 0;
  z-index: -1;
  transition: max-height var(--animation-duration) var(--transition-function-ease-in-out);
}
.header__search-wrapper form {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  position: relative;
  max-width: 780px;
}
.header-transparent .header__search-wrapper form {
  opacity: 0;
}
.header__search-inner {
  display: flex;
  justify-content: center;
  padding: var(--header-search-inner-padding-top) var(--header-search-inner-padding-x) var(--header-search-inner-padding-bottom);
  transform: translate(0, -100%);
  transition: transform var(--animation-duration) var(--transition-function-ease-in-out);
  background: var(--background-primary);
  position: relative;
  z-index: 1;
}
.header-transparent .header__search-inner {
  --header-search-inner-padding-top: calc(var(--header-height, 39px) - var(--top-bar-height, 0px) + 18px);
}
.iphone.notch.safari[data-orientation=landscape] .header__search-inner {
  --header-search-inner-padding-x: 62px;
}
.preview-bar__container ~ .header-sticky .header__inner-background .header__search-inner {
  --header-search-inner-padding-top: calc(18px + var(--header-height, 39px) - var(--preview-height, 72px));
}
.preview-bar__container ~ .header-sticky .header__search-inner {
  --header-search-inner-padding-top: calc(18px + var(--header-height, 39px) - var(--preview-height, 72px) - var(--top-bar-height, 0px));
}
.loaded .header__search-inner {
  display: flex !important;
}
.header__search-reset {
  display: flex;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translate(0, -50%);
  height: 42px;
  width: 42px;
  background: none;
  cursor: pointer;
}
.header__search-reset::after, .header__search-reset::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 2px;
  width: 18px;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: background var(--animation-duration) var(--transition-function-ease-in-out);
  background: var(--header-search-reset-color);
}
.header__search-reset::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.header__search-reset:hover::after, .header__search-reset:hover::before {
  --header-search-reset-color: var(--color-outline-hover);
}
.header__search-input {
  min-width: 230px;
  width: 100%;
  padding: 18px 67px;
  font-size: var(--font-size-regular);
  line-height: var(--line-height-sm);
  border: 1px solid color-mix(in srgb, var(--color-primary) 15%, transparent);
  border-radius: var(--border-radius);
  background: transparent;
  color: var(--color-primary);
}
.header__search-input-wrapper {
  position: relative;
  flex: 1 1 auto;
}
.header__search-input-wrapper .header__search-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  left: 20px;
  width: 42px;
  height: 42px;
  transform: translateY(-50%);
  z-index: 1;
  cursor: pointer;
  background: none;
  border: none;
}
.header__search-input-wrapper .header__search-submit g {
  transition: all var(--animation-duration) var(--transition-function-ease-in-out);
}
.header__search-input-wrapper .header__search-submit:hover g {
  stroke: var(--color-outline-hover);
}
.header__search-input::placeholder {
  color: var(--color-placeholder);
}
.header__search-input:-webkit-autofill, .header__search-input:autofill {
  box-shadow: inset 0 0 0 150px var(--background-primary) !important;
}
.header__search-input:focus {
  outline: none;
}
.header__search-input::-webkit-search-cancel-button {
  display: none !important;
}
.header__search-input::-webkit-search-decoration {
  display: none;
}
.header__search-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  transform: translate(-15%, -15%);
}
.header__search-icon g {
  stroke: var(--color-primary);
}
.header__search #search-opener:checked ~ .header__search-wrapper {
  pointer-events: all;
  max-height: var(--body-height);
}
.header__search #search-opener:checked ~ .header__search-wrapper .header__search-inner {
  transform: translate(0, 0);
}
.header-transparent .header__search #search-opener:checked ~ .header__search-wrapper form {
  opacity: 1;
}
.header__search #search-opener:checked ~ .header__search-opener g {
  stroke: var(--color-outline);
}
.header__buttons:has(.header__nav-wrapper) .header__search {
  margin: 0 0 0 10px;
}
.header__cart {
  height: var(--header-icon-height);
  width: var(--header-icon-width);
}
.header__cart .fa-spinner-third {
  color: var(--background-primary);
}
.header__inner-background .header__cart .fa-spinner-third {
  color: var(--color-primary);
}
.header__buttons:has(.header__nav-wrapper) .header__cart {
  margin: 0 0 0 10px;
}