.accordion {
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-grey-20);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-grey-20);
  border-radius: 0;
  margin-inline: auto;
}

.accordion__title {
  background-color: var(--cnv-color-white);
  border: none;
  color: var(--cnv-color-black);
  cursor: pointer;
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-8);
  font-style: normal;
  font-weight: var(--cnv-font-weight-bold);
  padding-block: 1.125rem;
  padding-inline: var(--cnv-spacing-16);
  text-align: start;
  border-block-end: none;
  justify-content: space-between;
  align-items: center;
  line-height: 1.5;
  display: flex;
  position: relative;

  &:before, &:after {
    aspect-ratio: 1;
    background-color: var(--cnv-color-black);
    content: "";
    height: 1rem;
    background-image: none;
    margin-block: auto;
    position: absolute;
    inset-inline-end: var(--cnv-spacing-16);
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='16' viewBox='0 0 17 16' fill='none'%3E%3Crect x='0.416748' y='7' width='16' height='2' fill='black'/%3E%3C/svg%3E");
    mask-position: center;
    mask-repeat: no-repeat;
  }

  &:after {
    opacity: 1;
    transition: opacity .2s ease-in-out;
    rotate: 90deg;
  }

  & ::marker {
    content: "";
    visibility: hidden;
  }
}

.accordion[open] > .accordion__title {
  &:after {
    opacity: 0;
  }
}

.accordion__content {
  background-color: var(--cnv-color-white);
  font: inherit;
  padding-inline: var(--cnv-spacing-16);
  transition: all var(--accordion-animation-duration, .25s) ease-in-out;
  grid-template-rows: 0fr;
  display: grid;
}

.accordion__list {
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-8);
  font-style: normal;
  font-weight: var(--cnv-font-weight-regular);
  text-align: start;
  line-height: 1.2em;
  overflow: hidden;
}

.accordion__listElement {
  padding-block: var(--cnv-spacing-8);
  line-height: 1.6;
}

.accordion__listElement a {
  color: var(--cnv-color-grey-70);
  text-align: start;
  width: 100%;
  text-decoration: none;
  display: block;
}

.accordion__listElement a:hover, .accordion__listElement a:focus-visible {
  text-decoration: underline;
}

.accordion[open] .accordion__content {
  grid-template-rows: 1fr;
}

.accordion[open] .accordion__list > :first-child {
  padding-block-start: 0;
}

.accordion[open] .accordion__list > :last-child {
  padding-block-end: calc(var(--cnv-spacing-8) * 2);
}

.accordion__group {
  margin-block: var(--cnv-spacing-8) 0;
  margin-inline: auto;
}

.accordion__wrapper ~ .accordion__wrapper .accordion {
  margin-block-start: calc(-1 / var(--cnv-base-rem) * 1rem);
}

.bulletedList {
  font-size: var(--cnv-font-size-body-8);
  margin-inline-start: 1rem;
  list-style: outside;
}

.bulletedList--noBullets {
  margin-inline-start: 0;
  list-style: none;
}

.bulletedList__item {
  margin-block-start: var(--cnv-spacing-8);

  &::marker {
    font-size: .5rem;
  }

  &:first-child {
    margin-block-start: 0;
  }
}

:root {
  --component-button-primary-color: var(--cnv-color-black);
  --component-button-secondary-color: var(--cnv-color-white);
  --component-button-primary-gradient: linear-gradient(90deg,
        #fc4ab5 8.47%,
        #f63789 25.86%,
        #f0245d 42.08%,
        #ef2841 55.24%,
        #f35a34 70.75%,
        #f99825 91.67%);
  --component-button-secondary-gradient: linear-gradient(90deg,
        #0032f6 8.47%,
        #3837d3 25.86%,
        #633bb1 42.08%,
        #88368c 55.24%,
        #ae2358 70.75%,
        #e00a15 91.67%);
}

[data-theme="dark"] {
  --component-button-primary-color: var(--cnv-color-white);
  --component-button-secondary-color: var(--cnv-color-black);
  --component-button-primary-gradient: linear-gradient(90deg,
        #0032f6 8.47%,
        #3837d3 25.86%,
        #633bb1 42.08%,
        #88368c 55.24%,
        #ae2358 70.75%,
        #e00a15 91.67%);
  --component-button-secondary-gradient: linear-gradient(90deg,
        #fc4ab5 8.47%,
        #f63789 25.86%,
        #f0245d 42.08%,
        #ef2841 55.24%,
        #f35a34 70.75%,
        #f99825 91.67%);
}

.componentButton {
  background-color: var(--component-button-primary-color);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  box-sizing: border-box;
  color: var(--component-button-secondary-color);
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-5);
  font-weight: var(--cnv-font-weight-semibold);
  height: calc(54 / var(--cnv-base-rem) * 1rem);
  padding-inline: calc(10 / var(--cnv-base-rem) * 1rem);
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 100%;
  line-height: 1.2;
  text-decoration: none;
  transition: all .3s ease-in-out;
  display: inline-flex;

  @media (width >= 48em) {
    font-size: var(--cnv-font-size-body-6);
    height: calc(51 / var(--cnv-base-rem) * 1rem);
    max-width: calc(500 / var(--cnv-base-rem) * 1rem);
  }
}

.componentButton__content {
  align-items: center;
  gap: var(--cnv-spacing-12);
  opacity: 0;
  justify-content: center;
  width: 100%;
  animation: .3s forwards fadeInContent;
  display: flex;
}

@keyframes fadeInContent {
  0% {
    opacity: 0;
    transform: translateY(calc(2 / var(--cnv-base-rem) * 1rem));
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.componentButton__icon {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.componentButton--iconFixed .componentButton__text, .componentButton--cbyEditDesignSmall .componentButton__text {
  text-align: center;
  flex-grow: 1;
}

.componentButton--text .componentButton__text {
  line-height: 1.2;
  position: relative;
}

.componentButton--cbyContent .componentButton__text {
  background: var(--component-button-primary-gradient);
  color: #0000;
  background-clip: text;
}

.componentButton__text--sm {
  font-size: var(--cnv-font-size-body-7);
}

.componentButton--iconFixed .componentButton__icon {
  border-inline-start: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-secondary-color);
  width: calc(54 / var(--cnv-base-rem) * 1rem);
  transition: all .3s;
}

.componentButton--cbyEditDesignSmall .componentButton__icon {
  color: var(--component-button-primary-color);
  width: calc(40 / var(--cnv-base-rem) * 1rem);
  background-image: url("./cby-overlay-button.png");
  background-size: 100% 100%;
}

.componentButton--iconFixed {
  padding-block: 0;
  padding-inline-end: 0;
}

.componentButton--cbyEditDesignSmall {
  background-color: var(--component-button-secondary-color);
  color: var(--component-button-primary-color);
  height: calc(40 / var(--cnv-base-rem) * 1rem);
  max-width: calc(145 / var(--cnv-base-rem) * 1rem);
  border: 0;
  padding-block: 0;
  padding-inline-end: 0;
}

.componentButton--iconFixed .componentButton__content, .componentButton--cbyEditDesignSmall .componentButton__content {
  height: 100%;
}

.componentButton:hover, .componentButton:focus-visible {
  background-color: var(--component-button-secondary-color);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  color: var(--component-button-primary-color);
  cursor: pointer;
}

.componentButton:disabled {
  background-color: var(--cnv-color-grey-10);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-grey-10);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-grey-10);
  color: var(--cnv-color-grey-70);
  cursor: not-allowed;
}

.componentButton--primaryDark {
  background-color: var(--cnv-color-black);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
  color: var(--cnv-color-white);
}

.componentButton--primaryDark:hover, .componentButton--primaryDark:focus-visible {
  background-color: var(--cnv-color-white);
  border-block-color: var(--cnv-color-black);
  border-inline-color: var(--cnv-color-black);
  color: var(--cnv-color-black);
}

.componentButton--primaryLight {
  background-color: var(--cnv-color-white);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
  color: var(--cnv-color-black);
}

.componentButton--primaryLight:hover, .componentButton--primaryLight:focus-visible {
  background-color: var(--cnv-color-black);
  border-block-color: var(--cnv-color-white);
  border-inline-color: var(--cnv-color-white);
  color: var(--cnv-color-white);
}

.componentButton--secondaryDark {
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
  color: var(--cnv-color-black);
  background-color: #0000;
}

.componentButton--secondaryDark:hover, .componentButton--secondaryDark:focus-visible {
  background-color: var(--cnv-color-black);
  border-block-color: var(--cnv-color-black);
  border-inline-color: var(--cnv-color-black);
  color: var(--cnv-color-white);
}

.componentButton--secondaryLight {
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
  color: var(--cnv-color-white);
  background-color: #0000;
}

.componentButton--secondaryLight:hover, .componentButton--secondaryLight:focus-visible {
  background-color: var(--cnv-color-white);
  border-block-color: var(--cnv-color-white);
  border-inline-color: var(--cnv-color-white);
  color: var(--cnv-color-black);
}

.componentButton--customLightGradient {
  background-color: var(--cnv-color-white);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
}

.componentButton--customLightGradient .componentButton__text {
  background: var(--cnv-color-custom-light);
  color: #0000;
  background-clip: text;
}

.componentButton--customLightGradient:hover, .componentButton--customLightGradient:focus-visible {
  border-block-color: var(--cnv-color-white);
  border-inline-color: var(--cnv-color-white);
  background-color: #0000;
}

.componentButton--customLightGradient:hover .componentButton__text, .componentButton--customLightGradient:focus-visible .componentButton__text {
  background: var(--cnv-color-custom-dark);
  color: #0000;
  background-clip: text;
}

.componentButton--customDarkGradient {
  background-color: var(--cnv-color-black);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
}

.componentButton--customDarkGradient .componentButton__text {
  background: var(--cnv-color-custom-dark);
  color: #0000;
  background-clip: text;
}

.componentButton--customDarkGradient:hover, .componentButton--customDarkGradient:focus-visible {
  border-block-color: var(--cnv-color-black);
  border-inline-color: var(--cnv-color-black);
  background-color: #0000;
}

.componentButton--customDarkGradient:hover .componentButton__text, .componentButton--customDarkGradient:focus-visible .componentButton__text {
  background: var(--cnv-color-custom-light);
  color: #0000;
  background-clip: text;
}

.componentButton--customLightGradientInverted {
  background-color: var(--cnv-color-white);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-white);
}

.componentButton--customLightGradientInverted .componentButton__text {
  background: var(--cnv-color-custom-light);
  color: #0000;
  background-clip: text;
}

.componentButton--customLightGradientInverted:hover, .componentButton--customLightGradientInverted:focus-visible {
  background-color: var(--cnv-color-black);
  border-block-color: var(--cnv-color-white);
  border-inline-color: var(--cnv-color-white);
}

.componentButton--customLightGradientInverted:hover .componentButton__text, .componentButton--customLightGradientInverted:focus-visible .componentButton__text {
  background: var(--cnv-color-custom-dark);
  color: #0000;
  background-clip: text;
}

.componentButton--customDarkGradientInverted {
  background-color: var(--cnv-color-black);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-black);
}

.componentButton--customDarkGradientInverted .componentButton__text {
  background: var(--cnv-color-custom-dark);
  color: #0000;
  background-clip: text;
}

.componentButton--customDarkGradientInverted:hover, .componentButton--customDarkGradientInverted:focus-visible {
  background-color: var(--cnv-color-white);
  border-block-color: var(--cnv-color-black);
  border-inline-color: var(--cnv-color-black);
}

.componentButton--customDarkGradientInverted:hover .componentButton__text, .componentButton--customDarkGradientInverted:focus-visible .componentButton__text {
  background: var(--cnv-color-custom-light);
  color: #0000;
  background-clip: text;
}

.componentButton--primaryDark:disabled, .componentButton--customDarkGradient:disabled, .componentButton--customDarkGradientInverted:disabled {
  background-color: var(--cnv-color-grey-10);
  border-block-color: var(--cnv-color-grey-50);
  border-inline-color: var(--cnv-color-grey-50);
  color: var(--cnv-color-grey-70);
}

.componentButton--primaryLight:disabled, .componentButton--customLightGradient:disabled, .componentButton--customLightGradientInverted:disabled {
  background-color: var(--cnv-color-grey-10);
  border-block-color: var(--cnv-color-grey-10);
  border-inline-color: var(--cnv-color-grey-10);
  color: var(--cnv-color-grey-70);
}

.componentButton--secondaryDark:disabled, .componentButton--secondaryLight:disabled {
  border-block-color: var(--cnv-color-grey-50);
  border-inline-color: var(--cnv-color-grey-50);
  color: var(--cnv-color-grey-70);
  background-color: #0000;
}

.componentButton--customLightGradient:disabled .componentButton__text, .componentButton--customDarkGradient:disabled .componentButton__text, .componentButton--customLightGradientInverted:disabled .componentButton__text, .componentButton--customDarkGradientInverted:disabled .componentButton__text {
  color: var(--cnv-color-grey-70);
  background: none;
}

.componentButton--iconCby {
  color: var(--component-button-primary-color);
  font-weight: var(--cnv-font-weight-semibold);
  user-select: none;
  background-image: url("./cby-overlay-button.png");
  background-size: 100% 100%;
  border: 0;
  width: 100%;
  position: relative;
}

.componentButton--iconCby:after {
  background-color: var(--component-button-secondary-color);
  content: "";
  inset: calc(2 / var(--cnv-base-rem) * 1rem);
  transition: all .3s ease-in-out;
  display: block;
  position: absolute;
}

.componentButton--iconCby .componentButton__content {
  z-index: 1;
  position: relative;
}

.componentButton--iconCby:hover, .componentButton--iconCby:focus-visible {
  background-color: var(--component-button-primary-color);
  color: var(--component-button-secondary-color);
  border: 0;
}

.componentButton--iconCby:hover:after, .componentButton--iconCby:focus-visible:after {
  background-color: var(--component-button-primary-color);
}

.componentButton--cbyEditDesign {
  color: var(--component-button-primary-color);
  background-image: url("./cby-overlay-button.png");
  background-size: 100% 100%;
  border: 0;
}

.componentButton--cbyEditDesign:hover, .componentButton--cbyEditDesign:focus-visible {
  background-color: var(--component-button-primary-color);
  color: var(--component-button-secondary-color);
  background-image: none;
}

.componentButton--cbyContent:hover .componentButton__text, .componentButton--cbyContent:focus-visible .componentButton__text {
  background: var(--component-button-secondary-gradient);
  color: #0000;
  background-clip: text;
}

.componentButton--text .componentButton__content {
  gap: var(--cnv-spacing-8);
}

.componentButton--text .componentButton__text:after {
  background-color: var(--component-button-primary-color);
  content: "";
  height: calc(1 / var(--cnv-base-rem) * 1rem);
  z-index: 1;
  width: 0;
  transition: all .3s ease-in-out;
  display: block;
  position: absolute;
  inset-block-end: calc(-2 / var(--cnv-base-rem) * 1rem);
  inset-inline-start: 0;
}

.componentButton--text:hover .componentButton__text:after, .componentButton--text:focus-visible .componentButton__text:after {
  width: 100%;
}

.componentButton--textMedium {
  font-size: var(--cnv-font-size-body-7);

  @media (width >= 48em) {
    font-size: var(--cnv-font-size-body-8);
  }
}

.componentButton--textSmall {
  font-size: var(--cnv-font-size-body-9);
  text-transform: uppercase;
}

.componentButton--link {
  color: var(--cnv-color-black);
  font-size: calc(18 / var(--cnv-base-rem) * 1rem);
  background-color: #0000;
  border: 0;
  width: auto;
  max-width: none;
  height: auto;
  padding: 0;
  line-height: 1.2;
}

.componentButton--link .componentButton__content {
  gap: var(--cnv-spacing-8);
  opacity: 1;
  width: auto;
}

.componentButton--link .componentButton__content:before {
  content: "";
  flex: 0 0 calc(24 / var(--cnv-base-rem) * 1rem);
  height: calc(24 / var(--cnv-base-rem) * 1rem);
  background-color: currentColor;
  display: block;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14.7 5.3 13.3 6.7 17.6 11H4v2h13.6l-4.3 4.3 1.4 1.4L21.4 12z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M14.7 5.3 13.3 6.7 17.6 11H4v2h13.6l-4.3 4.3 1.4 1.4L21.4 12z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.componentButton--linkLight, .componentButton--linkLight:hover, .componentButton--linkLight:focus-visible {
  color: var(--cnv-color-black);
}

.componentButton--linkDark, .componentButton--linkDark:hover, .componentButton--linkDark:focus-visible {
  color: var(--cnv-color-white);
}

.componentButton--link:hover, .componentButton--link:focus-visible {
  background-color: #0000;
  border: 0;
}

@media (width >= 48em) {
  .componentButton--link {
    font-size: calc(16 / var(--cnv-base-rem) * 1rem);
  }

  .componentButton--link:hover .componentButton__text, .componentButton--link:focus-visible .componentButton__text {
    text-underline-offset: calc(2 / var(--cnv-base-rem) * 1rem);
    text-decoration: underline;
  }
}

.componentButton--klarna, .componentButton--klarna:hover, .componentButton--klarna:focus-visible {
  color: var(--component-button-primary-color);
  background-color: #f8b7c7;
  border: 0;
}

.componentButton--paypal, .componentButton--paypal:hover, .componentButton--paypal:focus-visible {
  color: var(--component-button-secondary-color);
  background-color: #009cde;
  border: 0;
}

.contentCard {
  font-family: var(--cnv-font-family-primary);
  gap: var(--cnv-spacing-16);
  text-transform: capitalize;
  flex-direction: column;
  display: flex;
}

.contentCard__title {
  font-size: var(--cnv-font-size-body-4);
  font-weight: var(--cnv-font-weight-extrabold);
  letter-spacing: .0325em;
  text-transform: capitalize;
  line-height: 1.1;
}

.contentCard__imageWrapper {
  position: relative;
}

.contentCard__date {
  z-index: 1;
  position: absolute;
}

.contentCard__dateCard {
  background-color: var(--cnv-color-black);
  box-sizing: border-box;
  color: var(--cnv-color-white);
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-8);
  font-weight: var(--cnv-font-weight-bold);
  height: calc(54 / var(--cnv-base-rem) * 1rem);
  padding-block: var(--cnv-spacing-8);
  padding-inline: var(--cnv-spacing-8);
  text-align: center;
  text-transform: uppercase;
  width: calc(53 / var(--cnv-base-rem) * 1rem);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  line-height: 1.08;
  display: flex;
}

.contentCard__description {
  font-size: var(--cnv-font-size-body-6);
  margin-block-start: var(--cnv-spacing-4);
  line-height: 1.2;
}

.contentCard__button {
  width: 100%;
  max-width: none;
  margin-block-start: var(--cnv-spacing-24);

  @media (width >= 48em) {
    margin-block-start: var(--cnv-spacing-48);
  }
}

.contentCard--wayfinding {
  position: relative;
  overflow: hidden;
}

.contentCard--wayfinding .contentCard__content {
  color: var(--cnv-color-white);
  height: calc(128 / var(--cnv-base-rem) * 1rem);
  padding-block-end: var(--cnv-spacing-16);
  padding-inline: var(--cnv-spacing-16);
  background: linear-gradient(0deg, #000000cf 0%, #00000017 67.84%, #0000 83.5%);
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  transition: color .2s ease-in-out;
  display: flex;
  position: absolute;
  inset-block-end: 0;
}

.contentCard--wayfinding .contentCard__title {
  font-size: var(--cnv-font-size-body-5);
  line-height: 1.22;

  @media (width >= 48em) {
    font-size: var(--cnv-font-size-body-6);
    line-height: 1.375;
  }
}

.contentCard--wayfinding:hover .contentCard__content, .contentCard--wayfinding:focus-within .contentCard__content {
  text-underline-offset: .2ch;
  text-decoration: underline;
}

.globalPromoBanner {
  --component-banner-bg: var(--cnv-color-black);
  --component-banner-color: var(--cnv-color-white);
  --component-placeholder-color: var(--cnv-color-white);
  background-color: var(--component-banner-bg);
  color: var(--component-banner-color);
  font-size: var(--cnv-font-size-body-8);
  font-weight: var(--cnv-font-weight-bold);
  max-width: 100%;
}

.globalPromoBanner .globalPromoBanner__container {
  --globalPromoBanner-padding: var(--cnv-spacing-16);
  max-width: var(--cnv-max-width);
  padding-inline: var(--globalPromoBanner-padding);
  justify-content: space-between;
  margin-inline: auto;
  display: flex;
  position: relative;

  @media (width >= 48em) {
    --globalPromoBanner-padding: var(--cnv-spacing-24);
  }
}

.globalPromoBanner .globalPromoBanner__carousel {
  --carousel-icons-spacing: 2.5rem;
  max-width: 100%;

  @media (width >= 48em) {
    --carousel-icons-spacing: 4.5rem;
    max-width: calc(100% / 3 + var(--carousel-icons-spacing));
  }
}

.globalPromoBanner .globalPromoBanner__placeholder {
  color: var(--component-placeholder-color);
  font-size: var(--cnv-font-size-body-6);
  font-weight: var(--cnv-font-weight-regular);
  padding-block: var(--cnv-spacing-8);
}

.globalPromoBanner .globalPromoBanner__languageSelector, .globalPromoBanner .globalPromoBanner__userUtility {
  visibility: hidden;
  display: none;
}

@media (width >= 48em) {
  .globalPromoBanner .globalPromoBanner__languageSelector, .globalPromoBanner .globalPromoBanner__userUtility {
    visibility: visible;
    margin-inline-end: calc(-1 * var(--cnv-spacing-16));
    display: flex;
  }
}

.image {
  --image-transition: opacity .5s ease-in-out;
  isolation: isolate;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
  width: 100%;
  height: 100%;
  max-height: fit-content;
  display: grid;
  position: relative;

  & > picture {
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    display: block;
    overflow: hidden;
  }

  & > img, & > picture > img {
    object-fit: cover;
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
  }

  & .image__main {
    opacity: var(--image-opacity, 0);
    transition: var(--image-transition);
    z-index: 2;
    position: relative;
  }

  & > .image__blurry {
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    opacity: var(--image-opacity, initial);
    pointer-events: none;
    transition: var(--image-transition),
            visibility 0s var(--visibility-delay, 0s);
    visibility: var(--blurry-visibility, visible);
    z-index: 1;
    width: 100%;
    position: absolute;
    inset: 0;
  }

  &.image--loading {
    animation: 1s ease-in forwards animateImageBackground;
  }

  &.image--error {
    border-color: var(--cnv-color-grey-50);
    color: var(--cnv-color-grey-70);
    border-style: dashed;
    border-width: .0625rem;
    font-size: 1rem;
    animation: 1s ease-in forwards animateImageBackground;
  }
}

@keyframes animateImageBackground {
  0% {
    background: none;
  }

  100% {
    background: var(--cnv-color-grey-10);
  }
}

.languageSelector {
  align-items: center;
  gap: .625rem;
  display: inline-flex;
}

.languageSelector:hover {
  cursor: pointer;
}

.languageSelector__flag {
  height: calc(10 / var(--cnv-base-rem) * 1rem);
  width: calc(14 / var(--cnv-base-rem) * 1rem);
}

.languageSelector:hover .languageSelector__label {
  text-underline-offset: .1ch;
  text-decoration: underline;
}

.mediaOverlay {
  --_mo-z-index: 2;
  --_mo-video-controls-height: 2.75rem;
  --_mo-height-desktop: 42.1875rem;
  --_mo-height-mobile: 34.9375rem;
  min-height: 25rem;
  max-height: var(--_mo-height-desktop);
  max-width: var(--cnv-max-width);
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.mediaOverlay--video {
  margin-block-end: var(--_mo-video-controls-height);
  padding-bottom: 0;
  overflow: visible;
}

.mediaOverlay__background {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.mediaOverlay--video .mediaOverlay__background {
  height: 100%;
  bottom: 0;
}

.mediaOverlay__background > * {
  width: 100%;
  height: 100%;
}

.mediaOverlay__videoWrapper {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

.mediaOverlay__video {
  object-fit: cover;
  width: 100%;
  height: 100%;
  z-index: var(--_mo-z-index);
  display: block;
  position: relative;
}

.mediaOverlay__videoControls {
  left: 50%;
  bottom: calc(var(--_mo-video-controls-height) * -1);
  z-index: calc(var(--_mo-z-index) + 1);
  height: var(--_mo-video-controls-height);
  color: var(--cnv-color-black, #000);
  justify-content: center;
  align-items: center;
  gap: .25rem;
  padding-right: 1.25rem;
  display: flex;
  position: absolute;
  transform: translateX(-50%);
}

.mediaOverlay__videoToggle {
  width: var(--_mo-video-controls-height);
  height: var(--_mo-video-controls-height);
  color: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: opacity .2s ease-in-out;
  display: flex;

  &:hover, &:focus-visible {
    opacity: .4;
  }
}

.mediaOverlay__videoToggleIcon {
  display: block;
}

.mediaOverlay__videoToggle .mediaOverlay__videoToggleIcon--pause, .mediaOverlay__videoToggle .mediaOverlay__videoToggleText--pause, .mediaOverlay__videoToggle--playing .mediaOverlay__videoToggleText--play, .mediaOverlay__videoToggle--playing .mediaOverlay__videoToggleIcon--play {
  display: none;
}

.mediaOverlay__videoToggle--playing .mediaOverlay__videoToggleIcon--pause, .mediaOverlay__videoToggle--playing .mediaOverlay__videoToggleText--pause {
  display: block;
}

.mediaOverlay__videoProgressWrapper {
  width: 4rem;
  height: var(--_mo-video-controls-height);
  align-items: center;
  display: flex;
}

.mediaOverlay__videoProgress {
  appearance: none;
  width: 4rem;
  height: .25rem;
  color: var(--cnv-color-black, #000);
  background: var(--cnv-color-grey-20, #e5e5e5);
  border: 0;
  overflow: hidden;
}

.mediaOverlay__videoProgress::-webkit-progress-bar {
  background: var(--cnv-color-grey-20, #e5e5e5);
}

.mediaOverlay__videoProgress::-webkit-progress-value {
  background: var(--cnv-color-black, #000);
  transition: width .25s linear;
}

.mediaOverlay__videoProgress::-moz-progress-bar {
  background: var(--cnv-color-black, #000);
  transition: width .25s linear;
}

.mediaOverlay__videoPosterBlurry {
  object-fit: cover;
  pointer-events: none;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0;
}

.mediaOverlay__overlay {
  --mo-align: center;
  width: 100%;
  z-index: var(--_mo-z-index);
  align-items: var(--mo-align);
  flex-direction: column;
  display: flex;
  position: relative;
}

.mediaOverlay__overlay--v-top {
  justify-content: flex-start;
}

.mediaOverlay__overlay--v-center {
  justify-content: center;
}

.mediaOverlay__overlay--v-bottom {
  justify-content: flex-end;
}

.mediaOverlay__overlay--h-left {
  --mo-align: start;
}

.mediaOverlay__overlay--h-center {
  --mo-align: center;
}

.mediaOverlay__overlay--h-right {
  --mo-align: end;
}

.mediaOverlay__content {
  gap: var(--cnv-spacing-16);
  max-width: 27.5rem;
  text-align: var(--mo-align);
  flex-direction: column;
  display: flex;
}

.mediaOverlay__content--distribution-split {
  justify-content: space-between;
  height: 100%;
}

.mediaOverlay__contentGroup {
  gap: var(--cnv-spacing-16);
  flex-direction: column;
  display: flex;
}

.mediaOverlay__eyebrow {
  color: var(--cnv-color-text-primary, #fff);
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-6);
  font-weight: var(--cnv-font-weight-semibold);
  line-height: 1;
}

.mediaOverlay__headline {
  color: var(--cnv-color-text-primary, #fff);
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-h1);
  line-height: 1;
}

.mediaOverlay__description {
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-6);
  color: var(--cnv-color-white);
  line-height: 1.2;
}

.mediaOverlay__ctas {
  gap: var(--cnv-spacing-20);
  justify-content: var(--mo-align);
  flex-flow: wrap;
  align-items: center;
  width: 100%;
  display: flex;
}

.mediaOverlay__ctas .mediaOverlay__cta {
  width: 11.25rem;
}

@media (width >= 48em) {
  .mediaOverlay__overlay {
    padding-block: var(--cnv-spacing-40);
    padding-inline: var(--cnv-spacing-20);
  }

  .mediaOverlay:not(.mediaOverlay--color) {
    height: var(--_mo-height-desktop);
  }
}

@media (width < 48em) {
  .mediaOverlay {
    min-height: 18.75rem;
    max-height: 29.5rem;
    padding: var(--cnv-spacing-16);
  }

  .mediaOverlay:not(.mediaOverlay--color) {
    height: var(--_mo-height-mobile);
    max-height: none;
  }

  .mediaOverlay--video {
    padding-bottom: var(--cnv-spacing-16);
  }

  .mediaOverlay__overlay {
    flex: 1;
  }

  .mediaOverlay__content {
    width: 100%;
    max-width: 100%;
  }

  .mediaOverlay__contentGroup--top, .mediaOverlay__description {
    align-self: var(--mo-align);
    max-width: 27.5rem;
  }

  .mediaOverlay__contentGroup--bottom {
    width: 100%;
  }

  .mediaOverlay__contentGroup, .mediaOverlay__content {
    gap: var(--cnv-spacing-10);
  }

  .mediaOverlay__headline {
    font-size: var(--cnv-font-size-h3);
  }

  .mediaOverlay__description {
    font-size: var(--cnv-font-size-body-5);
  }

  .mediaOverlay__ctas {
    align-items: var(--mo-align);
    gap: var(--cnv-spacing-16);
    flex-direction: column;
  }

  .mediaOverlay__ctas .mediaOverlay__cta {
    width: 100%;
  }

  .mediaOverlay__ctas .mediaOverlay__cta.componentButton--link {
    width: auto;
  }
}

.mediaOverlay--color {
  height: auto;
  min-height: 0;
  max-height: none;
  overflow: visible;
}

.mediaOverlay--color-white {
  background-color: var(--cnv-color-white);
}

.mediaOverlay--color-black {
  background-color: var(--cnv-color-black);
}

.mediaOverlay--color .mediaOverlay__background {
  display: none;
}

.mediaOverlay--color .mediaOverlay__overlay {
  padding-block-start: var(--cnv-spacing-64);
  padding-block-end: var(--cnv-spacing-24);
  padding-inline: var(--cnv-spacing-24);
}

.mediaOverlay--color .mediaOverlay__content {
  width: 100%;
  max-width: 100%;
}

.mediaOverlay--color .mediaOverlay__content--distribution-split {
  justify-content: flex-start;
  height: auto;
}

.mediaOverlay--color .mediaOverlay__content, .mediaOverlay--color .mediaOverlay__contentGroup {
  gap: var(--cnv-spacing-16);
}

.mediaOverlay--color .mediaOverlay__headline {
  font-size: calc(30 / var(--cnv-base-rem) * 1rem);
  line-height: 1;
}

.mediaOverlay--color .mediaOverlay__description {
  font-size: calc(16 / var(--cnv-base-rem) * 1rem);
  line-height: 1.2;
}

.mediaOverlay--color-white .mediaOverlay__eyebrow, .mediaOverlay--color-white .mediaOverlay__headline, .mediaOverlay--color-white .mediaOverlay__description {
  color: var(--cnv-color-black);
}

.mediaOverlay--color-black .mediaOverlay__eyebrow, .mediaOverlay--color-black .mediaOverlay__headline, .mediaOverlay--color-black .mediaOverlay__description {
  color: var(--cnv-color-white);
}

.mediaOverlay--color .mediaOverlay__ctas {
  gap: var(--cnv-spacing-16);
}

.mediaOverlay--color .mediaOverlay__ctas .componentButton--link {
  width: auto;
}

.privacyBanner {
  --mobile-padding-v: var(--cnv-spacing-24);
  --mobile-padding-h: var(--cnv-spacing-16);
  --desktop-padding: var(--cnv-spacing-24);
  --desktop-gap: var(--cnv-spacing-32);
  --link-gap-v: var(--cnv-spacing-12);
  --link-gap-h: var(--cnv-spacing-24);
  color: var(--cnv-color-white);
  font-size: var(--cnv-font-size-body-8);
  flex-wrap: wrap;
  place-content: center;
  display: flex;
}

@media (width >= 48em) {
  .privacyBanner {
    background-color: var(--cnv-color-black);
    padding-block: var(--desktop-padding);
    padding-inline: var(--desktop-padding);
  }
}

.privacyBanner__wrapper {
  max-width: var(--cnv-max-width);
  flex-wrap: wrap;
  width: 100%;
  display: flex;
}

@media (width >= 48em) {
  .privacyBanner__wrapper {
    gap: var(--desktop-gap);
    padding-inline: var(--cnv-spacing-24);
    flex-wrap: nowrap;
  }
}

.privacyBanner__languageSelector {
  background-color: var(--cnv-color-black);
  font-weight: var(--cnv-font-weight-semibold);
  padding-block: var(--mobile-padding-v);
  padding-inline: var(--mobile-padding-h) 0;
  white-space: nowrap;
  order: 1;
  width: 50%;
  margin-inline-end: auto;
  display: flex;
}

@media (width >= 48em) {
  .privacyBanner__languageSelector {
    font-weight: var(--cnv-font-weight-bold);
    order: initial;
    background-color: #0000;
    width: auto;
    padding-block: 0;
    padding-inline: 0;
  }
}

.privacyBanner__linkList {
  gap: var(--link-gap-v) var(--link-gap-h);
  padding-block: var(--mobile-padding-v);
  padding-inline: var(--mobile-padding-h);
  flex-wrap: wrap;
  order: 0;
  justify-content: center;
  width: 100%;
  line-height: 1.2;
  display: flex;
}

@media (width >= 48em) {
  .privacyBanner__linkList {
    flex: 1;
    order: initial;
    width: auto;
    padding-block: 0;
    padding-inline: 0;
  }
}

.privacyBanner__link {
  color: var(--cnv-color-grey-70);
  text-decoration: none;
}

.privacyBanner__link:hover {
  text-underline-offset: .1ch;
  text-decoration: underline;
}

.privacyBanner__link:focus-visible {
  outline: calc(2 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-autofocus);
  outline-offset: calc(2 / var(--cnv-base-rem) * 1rem);
}

@media (width >= 48em) {
  .privacyBanner__link {
    color: var(--cnv-color-white);
  }
}

.privacyBanner__copyright {
  background-color: var(--cnv-color-black);
  padding-block: var(--mobile-padding-v);
  padding-inline: var(--mobile-padding-h);
  text-align: end;
  white-space: nowrap;
  order: 2;
  justify-content: flex-end;
  align-items: center;
  width: 50%;
  margin-inline-start: auto;
  line-height: 1.2;
  display: inline-flex;
}

@media (width >= 48em) {
  .privacyBanner__copyright {
    order: initial;
    width: auto;
    padding-block: 0;
    padding-inline: 0;
  }
}

@media (forced-colors: active) {
  .privacyBanner, .privacyBanner__languageSelector, .privacyBanner__copyright {
    color: canvastext;
    background-color: canvas;
  }

  .privacyBanner__link {
    color: linktext;
    outline: calc(1 / var(--cnv-base-rem) * 1rem) solid transparent;
  }

  .privacyBanner__link:hover, .privacyBanner__link:focus-visible {
    color: highlighttext;
    outline: calc(2 / var(--cnv-base-rem) * 1rem) solid Highlight;
    background-color: highlight;
    text-decoration: underline;
  }
}

.responsiveHeader__wrapper {
  min-height: 3.5625rem;
  padding-block: calc(12 / var(--cnv-base-rem) * 1rem);
  padding-inline: calc(8 / var(--cnv-base-rem) * 1rem);
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  display: grid;
}

.responsiveHeader__desktopNavClip {
  min-width: 0;
}

.responsiveHeader__logo {
  place-items: center;
  display: grid;
}

.responsiveHeader__logoSvg {
  width: 7.12rem;
  height: .84rem;
}

.responsiveHeader__actions {
  gap: calc(8 / var(--cnv-base-rem) * 1rem);
  justify-self: end;
  display: flex;
}

.responsiveHeader__action {
  color: var(--ds-color-black);
  cursor: pointer;
  padding-block: var(--cnv-spacing-4);
  padding-inline: var(--cnv-spacing-4);
  background-color: #0000;
  border: 0;
  justify-content: center;
  place-items: center;
  transition: color .2s;
  display: grid;
}

.responsiveHeader__actionItem {
  place-items: center;
  transition: opacity .2s;
  display: grid;
}

.responsiveHeader__actions:focus-within .responsiveHeader__action:not(:focus-within):not(.minicart__link), .responsiveHeader__actions:hover .responsiveHeader__action:not(:hover):not(.minicart__link) {
  opacity: .5;
}

.responsiveHeader__wrapper .header-search__toggle {
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 0;
}

.responsiveHeader__wrapper .responsiveHeader__searchClose--mobile {
  width: .875rem;
  height: .875rem;
}

.responsiveHeader__wrapper .minicart {
  border-top: none;
  padding-top: 0;
  padding-bottom: 0;
}

.amplienceSiteHeader .minicart__link:not(.empty):after {
  top: -.15rem;
  right: -.5rem;
}

@media (width > 48em) {
  .responsiveHeader__wrapper {
    --responsiveHeader-height: 3.75rem;
    height: var(--responsiveHeader-height);
    max-width: var(--cnv-max-width);
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-inline: auto;
    padding-block: 0;
    padding-inline-start: var(--cnv-spacing-24);
    padding-inline-end: 0;
    display: flex;
  }

  .responsiveHeader__logoSvg {
    width: 7.5rem;
    height: .9375rem;
  }

  .responsiveHeader__desktopNavClip {
    flex: auto;
    justify-content: center;
    min-width: 0;
    display: flex;
  }

  .responsiveHeader__actions {
    padding-right: .75rem;
  }

  @media (width > 64em) {
    .responsiveHeader__actions {
      padding-right: 0;
    }
  }

  .responsiveHeader__action {
    padding-block: var(--cnv-spacing-12);
    padding-inline: var(--cnv-spacing-6);
  }

  .responsiveHeader__actionItem.minicart .minicart__link {
    padding-inline: var(--cnv-spacing-6);
  }

  .responsiveHeader__action:hover, .responsiveHeader__action:focus-visible {
    z-index: 1;
  }

  .responsiveHeader__wrapper .responsiveHeader__searchClose--desktop {
    width: 1.125rem;
    height: 1.125rem;
  }
}

@media screen and (width >= 768px) {
  .amplienceSiteHeader {
    position: relative;
  }

  .amplienceSiteHeader .responsiveHeader__wrapper {
    anchor-name: --amplience-site-header;
    position: relative;
  }

  .amplienceSiteHeader:has(nav.header-flyout) .responsiveHeader__wrapper, .amplienceSiteHeader .responsiveHeader__actionItem.minicart {
    position: static;
  }

  .amplienceSiteHeader .desktopNavigation:has(.desktopNavigation__menu--visible) {
    z-index: 20;
  }

  .amplienceSiteHeader .buy-minicart__dropdown {
    position-anchor: --amplience-site-header;
    top: anchor(bottom);
    z-index: 11;
    box-sizing: border-box;
    background-color: var(--white);
    flex-direction: column;
    width: 28.4375rem;
    height: auto;
    min-height: 0;
    max-height: none;
    margin-top: 0;
    transition: transform .426s cubic-bezier(.4, .9, .3, 1);
    display: flex;
    position: fixed;
    bottom: 0;
    left: auto;
    right: 0;
    overflow: hidden;
  }

  @supports not (top: anchor(bottom)) {
    .globalPromoBanner:has( + .amplienceSiteHeader) {
      --globalPromoBanner-height: calc(40 / var(--cnv-base-rem, 16) * 1rem);
    }

    .amplienceSiteHeader .buy-minicart__dropdown {
      top: var(--responsiveHeader-height, 3.75rem);
    }

    .globalPromoBanner + .amplienceSiteHeader:not(.fixit--active) .buy-minicart__dropdown {
      top: calc(var(--globalPromoBanner-height) +
                    var(--responsiveHeader-height, 3.75rem));
    }
  }

  .amplienceSiteHeader .buy-minicart__dropdown:not(.toggle--active) {
    transform: translateX(100%);
  }

  .amplienceSiteHeader .buy-minicart__dropdown.toggle--active {
    justify-content: flex-start;
    align-items: stretch;
    transform: translateX(0);
  }

  .amplienceSiteHeader .buy-minicart__dropdown > .buy-minicart {
    flex-direction: column;
    flex: auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    display: flex;
    overflow: hidden;
  }

  .amplienceSiteHeader .buy-minicart__wrapper, .amplienceSiteHeader .buy-minicart__wrapper--amplienceHeader {
    flex-direction: column;
    flex: auto;
    width: 100%;
    animation: 1s ease-in-out slide-out;
    overflow: hidden;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    display: flex !important;
    position: relative !important;
    top: 0 !important;
  }

  .amplienceSiteHeader .buy-minicart__wrapper > .buy-banner-message, .amplienceSiteHeader .buy-minicart__wrapper > .buy-cart-header {
    flex-shrink: 0;
  }

  .amplienceSiteHeader .buy-minicart__wrapper .buy-cart-header--minicart, .amplienceSiteHeader .buy-minicart__wrapper .buy-cart-header--minicart.is-active {
    position: relative !important;
    top: auto !important;
  }

  .amplienceSiteHeader .buy-minicart__wrapper > .buy-minicart__content {
    -webkit-overflow-scrolling: touch;
    flex: auto;
    min-width: 28.4375rem;
    min-height: 0;
    padding: 0 2.5rem 1.5rem;
    overflow-x: hidden;
    overflow-y: auto !important;
  }

  .amplienceSiteHeader .buy-minicart__wrapper > .buy-mathbox {
    background-color: var(--white);
    padding-bottom: max(2rem, env(safe-area-inset-bottom, 0));
    flex-shrink: 0;
    margin-top: 0;
  }
}

.simpleDropdown {
  background-color: var(--cnv-color-white);
  opacity: 0;
  min-width: 13.75rem;
  max-width: 17.5rem;
  padding-block: var(--cnv-spacing-16);
  padding-inline: var(--cnv-spacing-24);
  visibility: hidden;
  z-index: 9999;
  width: max-content;
  transition: all .2s ease-in-out;
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;
  translate: 0;
  box-shadow: 0 .0625rem .375rem #00000026;
}

.simpleDropdown--open {
  opacity: 1;
  visibility: visible;
  translate: 0 100%;
}

.simpleDropdown__link {
  color: var(--cnv-color-black);
  font-size: var(--cnv-font-size-body-6);
  font-weight: var(--cnv-font-weight-regular);
  padding-block: var(--cnv-spacing-8);
  align-items: center;
  gap: .75rem;
  width: 100%;
  text-decoration: none;
  display: inline-flex;

  & > * {
    transition: color .2s ease-in-out;
  }
}

.simpleDropdown__itemIcon {
  align-items: center;
  display: inline-flex;

  & img, & svg {
    object-fit: contain;
    block-size: 1.25rem;
    inline-size: 1.25rem;
  }
}

.simpleDropdown__divider {
  background-color: var(--cnv-color-grey-10);
  content: "";
  height: .0625rem;
  margin-block: 1rem;
  display: block;
}

.simpleDropdown:has(.simpleDropdown__link:is(:hover, :focus-within)) .simpleDropdown__link:not(:is(:hover, :focus-within)) .simpleDropdown__itemLabel {
  color: var(--cnv-color-grey-50);
}

.socialIconList {
  width: 100%;
  display: inline-flex;
}

@media (width >= 48em) {
  .socialIconList__item {
    aspect-ratio: 1;
    border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
            var(--cnv-color-grey-20);
    max-height: calc(50 / var(--cnv-base-rem) * 1rem);
    max-width: calc(50 / var(--cnv-base-rem) * 1rem);
    flex: 1;
  }

  .socialIconList__item:first-child {
    border-inline-start: calc(1 / var(--cnv-base-rem) * 1rem) solid
            var(--cnv-color-grey-20);
  }
}

.socialIconList__link {
  border-inline-end: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--cnv-color-grey-20);
  color: var(--cnv-color-black);
  justify-content: center;
  align-items: center;
  height: 100%;
  text-decoration: none;
  transition: transform .2s, background-color .2s;
  display: flex;

  & svg {
    transition: all .2s ease-in-out;
  }

  &:hover, &:focus-visible {
    & svg {
      scale: 1.25;
    }
  }
}

@media (width < 48em) {
  .socialIconList {
    gap: var(--cnv-spacing-48);
    border: 0;
    justify-content: center;
  }

  .socialIconList__link {
    background-color: #0000;
    border: none;
    width: auto;
    height: auto;
  }
}

.userUtilityLinks {
  background: var(--cnv-color-black);
  font-family: var(--cnv-font-family-primary);
}

.userUtilityLinks__list {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.userUtilityLinks__listItem {
  place-content: center;
  height: 100%;
  display: grid;
  position: relative;
}

.userUtilityLinks__button {
  background-color: inherit;
  color: var(--cnv-color-white);
  font-size: var(--cnv-font-size-body-8);
  font-weight: var(--cnv-font-weight-bold);
  padding-block: var(--cnv-spacing-4);
  padding-inline: var(--cnv-spacing-4);
  border: none;
  border-radius: .25rem;
  align-items: center;
  transition: color .2s;
  display: flex;
  position: relative;

  &:disabled {
    cursor: not-allowed;
  }

  &:not(:disabled) {
    cursor: pointer;

    .userUtilityLinks__list:has(.userUtilityLinks__button:hover) &:not(:hover), .userUtilityLinks__list:has(.userUtilityLinks__button:focus-visible) &:not(:focus-visible) {
      color: var(--cnv-color-grey-50);
    }
  }
}

.userUtilityLinks__signinText {
  color: inherit;
  font-weight: var(--cnv-font-weight-bold);
  letter-spacing: .01em;
  margin-inline-end: var(--cnv-spacing-4);
}

.userUtilityLinks__greeting {
  color: inherit;
  font-weight: var(--cnv-font-weight-bold);
  text-align: start;
}

.userUtilityLinks__name {
  color: inherit;
  font-weight: var(--cnv-font-weight-bold);
}

.userUtilityLinks__icon {
  color: inherit;
  align-items: center;
  margin-inline-start: 0;
  font-size: 1em;
  display: inline-flex;
  position: relative;
}

.userUtilityLinks__notification {
  --icon-size: .65em;
  background: var(--cnv-color-converse-blue);
  border-color: var(--cnv-color-white);
  box-shadow: 0 0 0 .0625rem var(--cnv-color-white);
  height: var(--icon-size);
  width: var(--icon-size);
  border-style: solid;
  border-width: .0625rem;
  border-radius: 50%;
  display: block;
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: -.2em;
}

@media (width > 48em) {
  .userUtilityLinks__button, .userUtilityLinks__greeting {
    padding-inline: var(--cnv-spacing-8);
  }
}

.utilityList__title {
  font-size: var(--cnv-font-size-body-7);
  font-weight: var(--cnv-font-weight-bold);
  margin-block-end: var(--cnv-spacing-8);
}

.utilityList__link {
  color: var(--cnv-color-grey-70);
  text-decoration: none;

  &:hover {
    cursor: pointer;
    text-underline-offset: .1ch;
    text-decoration: underline .1em;
  }
}

.utilityList--invisible {
  visibility: hidden;
}

.footerDesktop {
  border-top: 1px solid var(--cnv-color-grey-20);
  flex-direction: column;
  justify-content: center;
  width: 100%;
  display: flex;
}

.footerDesktop__columns {
  max-width: var(--cnv-max-width, 90rem);
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  margin-block-end: 2rem;
  margin-inline: auto;
  display: flex;
}

@media (width >= 64em) {
  .footerDesktop__columns {
    padding-inline: 2.5rem;
  }
}

.footerDesktop__col {
  flex: 1 1 0;
  min-width: 0;
  padding-block: 1.375rem;
  padding-inline: 2.5rem;
}

.footerDesktop__col:first-child {
  padding-inline: 2rem;
}

.footerDesktop__col + .footerDesktop__col {
  border-inline-start: 1px solid var(--cnv-color-grey-20);
}

.footerDesktop__heading {
  font-size: var(--cnv-font-size-body-7);
  font-weight: var(--cnv-font-weight-semibold);
  margin-block-end: .375rem;
}

.footerDesktop__body {
  color: var(--cnv-color-grey-70);
  font-size: var(--cnv-font-size-body-8);
  margin-block-end: 2rem;
  line-height: 1.625;

  & a {
    text-underline-offset: .125rem;
    text-decoration: underline;
    transition: opacity .3s ease-in-out;

    &:hover, &:focus-visible {
      opacity: .8;
    }
  }
}

.footerDesktop__mdLink {
  color: var(--cnv-color-grey-50);
  text-decoration: underline;
}

.footerDesktop__mdBold {
  font-weight: var(--cnv-font-weight-bold);
}

.footerDesktop__mdItalic {
  font-style: italic;
}

.footerDesktop__quickLinks {
  margin: 0;
  margin-block-end: 1.5rem;
  padding: 0;
  list-style: none;
}

.footerDesktop__quickLinkItem + .footerDesktop__quickLinkItem {
  margin-block-start: .75rem;
}

.footerDesktop__quickLink {
  font-size: var(--cnv-font-size-body-7);
  font-weight: var(--cnv-font-weight-semibold);
  color: inherit;
  text-decoration: none;
}

.footerDesktop__quickLink:hover {
  text-decoration: underline;
}

.footerDesktop__socialHeading {
  font-size: var(--cnv-font-size-body-7);
  font-weight: var(--cnv-font-weight-semibold);
  margin-block-end: 1.25rem;
}

.footerMobile__quickLinks {
  flex-wrap: wrap;
  width: 100%;
  display: flex;
}

.footerMobile__quickLinkHalf {
  width: 50%;
}

.footerMobile__quickLinkHalf + .footerMobile__quickLinkHalf {
  border-inline-start: 1px solid var(--cnv-color-grey-90, #111);
}

.footerMobile__quickLinkFull {
  border-block-start: 1px solid var(--cnv-color-grey-90, #111);
  width: 100%;
}

.footerMobile__button {
  max-width: 100%;
}

.footerMobile__subscriptionForm {
  max-width: 100%;
  margin: 0;
}

.footerMobile__subscriptionInputWrapper input {
  font-size: var(--cnv-font-size-body-7);
}

.footerMobile__newsletter {
  flex-direction: column;
  align-items: center;
  display: flex;
}

.footerMobile__newsletterInner {
  text-align: center;
  max-width: 38rem;
  padding-block: 2rem;
  padding-inline: 3rem;
}

.footerMobile__newsletterHeading {
  font-size: 1.5rem;
  font-weight: var(--cnv-font-weight-semibold);
  margin-block-end: .5rem;
}

.footerMobile__newsletterBody {
  color: var(--cnv-color-grey-70);
  font-size: var(--cnv-font-size-body-7);
  margin-block-end: 2rem;

  & a {
    text-underline-offset: .125rem;
    text-decoration: underline;
    transition: opacity .3s ease-in-out;

    &:hover, &:focus-visible {
      opacity: .8;
    }
  }
}

.footerMobile__socialWrapper {
  align-items: center;
  height: 3rem;
  display: flex;
}

@property --indicator-left {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --indicator-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

.desktopNavigation {
  --desktopNavigation-animation-duration: .5s;
  --desktopNavigation-animation-timing-function: cubic-bezier(.4, 0, .2, 1);
  block-size: var(--desktopHeader-height, 3.75rem);
  text-align: left;
  position: relative;
}

.desktopNavigation__skipNavigation {
  background-color: var(--cnv-color-black);
  color: var(--cnv-color-white);
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-6);
  font-weight: var(--cnv-font-weight-semibold);
  opacity: 0;
  padding-block: var(--cnv-spacing-12);
  padding-inline: var(--cnv-spacing-24);
  z-index: 1000;
  text-decoration: none;
  position: absolute;
  inset-block-end: -3rem;
  inset-inline-start: 0;
  overflow: hidden;
  translate: -999rem -999rem;
}

.desktopNavigation__skipNavigation:focus {
  opacity: 1;
  outline: .125rem solid var(--cnv-color-white);
  outline-offset: -.25rem;
  translate: 0;
}

.desktopNavigation__list {
  height: 100%;
  display: flex;
  position: relative;
}

.desktopNavigation__listItem {
  place-content: center;
  display: grid;
}

.desktopNavigation__indicator {
  background: var(--cnv-color-black);
  block-size: .1875rem;
  inline-size: var(--indicator-width);
  pointer-events: none;
  transform-origin: center;
  transition: display .3s allow-discrete,
        scale .3s cubic-bezier(.4, 0, .2, 1);
  scale: 0 1;
  translate: var(--indicator-left) 0;
  z-index: 101;
  border-radius: .125rem;
  display: none;
  position: absolute;
  inset-block-end: .5rem;
  inset-inline-start: 0;
}

.desktopNavigation__indicator--visible {
  transition: display .3s allow-discrete,
        scale .3s cubic-bezier(.4, 0, .2, 1),
        translate .3s cubic-bezier(.4, 0, .2, 1),
        inline-size .3s cubic-bezier(.4, 0, .2, 1);
  display: block;
  scale: 1;

  @starting-style {
    scale: 0 1;
  }
}

.desktopNavigation__menu {
  background-color: var(--cnv-color-white);
  box-shadow: 0 0 0 100dvw var(--cnv-color-white);
  clip-path: inset(0 -100dvw);
  opacity: 0;
  max-width: 100dvw;
  padding-block: var(--cnv-spacing-48);
  pointer-events: none;
  visibility: hidden;
  width: var(--cnv-max-width);
  z-index: 10;
  position: absolute;
  inset-block-start: 100%;
  inset-inline-start: 49%;
  translate: -50%;
}

.desktopNavigation:after {
  backdrop-filter: blur(.1875rem);
  background-color: var(--cnv-color-overlay);
  width: var(--cnv-max-width);
  block-size: 100dvh;
  box-shadow: 0 0 0 100dvw var(--cnv-color-overlay);
  clip-path: inset(0 -100dvw);
  content: "";
  opacity: 0;
  pointer-events: none;
  max-width: 100dvw;
  transition: opacity var(--desktopNavigation-animation-duration)
            var(--desktopNavigation-animation-timing-function),
        visibility var(--desktopNavigation-animation-duration)
            var(--desktopNavigation-animation-timing-function);
  visibility: hidden;
  z-index: 9;
  position: absolute;
  inset-block-start: 100%;
  inset-inline-start: 49%;
  translate: -50%;
}

.desktopNavigation:has(.desktopNavigation__menu--visible):after {
  opacity: 1;
  visibility: visible;
}

.desktopNavigation__menu:not(.desktopNavigation__menu--animated) {
  transition: opacity var(--desktopNavigation-animation-duration)
        var(--desktopNavigation-animation-timing-function);
  visibility: visible;
}

.desktopNavigation__menu--visible {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.desktopNavigation__menu--animated {
  animation: slideIn var(--desktopNavigation-animation-duration)
        var(--desktopNavigation-animation-timing-function) forwards;
}

.desktopNavigation__menu--closing {
  animation: slideIn var(--desktopNavigation-animation-duration)
        var(--desktopNavigation-animation-timing-function) reverse;
}

.desktopNavigation__menuContent {
  align-items: stretch;
  gap: var(--cnv-spacing-32);
  max-width: var(--cnv-max-width);
  padding-inline: var(--cnv-spacing-24);
  justify-content: center;
  margin-inline: auto;
  display: flex;
}

.desktopNavigation__menuSection--links {
  width: 100%;
  min-width: 0;
  max-width: 12.5rem;
}

.desktopNavigation__menuSection--cards {
  max-width: 20rem;

  @media (width < 64em) {
    &:has(.desktopNavigation__wayfindingCard) {
      visibility: hidden;
      display: none;
    }
  }
}

.desktopNavigation__menuContentSection {
  align-items: stretch;
  gap: var(--cnv-spacing-24);
  flex-direction: column;
  display: flex;
}

.desktopNavigation__menuContentSection--cards {
  gap: var(--cnv-spacing-4);
}

.desktopNavigation__menuContentSection--twoCols {
  grid-template-columns: repeat(2, 1fr);
  display: grid;
}

.desktopNavigation__wayfindingCard, .desktopNavigation__wayfindingCard > .contentCard__imageWrapper, .desktopNavigation__wayfindingCard .contentCard__imageWrapper > .image {
  height: 100%;
}

.desktopNavigation__wayfindingCard .image {
  max-height: 100%;
}

.desktopNavigation__wayfindingCard .image__main {
  object-fit: cover;
}

.desktopNavigation__item {
  padding-block: var(--cnv-spacing-16);
  padding-inline: var(--cnv-spacing-16);
  transition: opacity var(--desktopNavigation-animation-duration)
        var(--desktopNavigation-animation-timing-function);
  z-index: 100;
  color: var(--cnv-color-black);
  font-family: var(--cnv-font-family-primary);
  font-size: 2rem;
  font-weight: var(--cnv-font-weight-extrabold);
  align-items: center;
  gap: var(--cnv-spacing-8);
  letter-spacing: .031em;
  background: none;
  border: 0;
  justify-content: center;
  width: 100%;
  text-decoration: none;
  display: flex;
  position: relative;

  &:focus-visible {
    outline: .125rem solid var(--cnv-color-autofocus);
  }

  @media (width < 64em) {
    padding-inline: var(--cnv-spacing-8);
  }

  @media (width >= 48em) {
    gap: var(--cnv-spacing-4);
    font-size: .9375rem;
  }
}

.desktopNavigation__list:has(.desktopNavigation__menu--visible) .desktopNavigation__item {
  opacity: .5;
}

.desktopNavigation__listItem:has(.desktopNavigation__menu--visible) .desktopNavigation__item {
  opacity: 1;
}

.desktopNavigation__menuSectionTitle {
  font-size: var(--cnv-font-size-h5);
  font-weight: var(--cnv-font-weight-extrabold);
  letter-spacing: .0313rem;
  margin-block-end: var(--cnv-spacing-8);
}

@keyframes slideIn {
  0% {
    opacity: 0;
    max-height: 0;
    translate: -50% -3rem;
  }

  100% {
    opacity: 1;
    max-height: 999rem;
    translate: -50%;
  }
}

.desktopNavList {
  background: var(--cnv-color-white);
  flex-direction: column;
  align-items: flex-start;
  list-style: none;
  display: flex;
}

.desktopNavList__section {
  color: var(--cnv-color-black);
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-4);
  font-weight: var(--cnv-font-weight-extrabold);
  align-items: center;
  margin-block-end: 1rem;
  display: flex;
}

.desktopNavList__section a {
  color: inherit;
  height: 100%;
  text-decoration: none;
  display: block;
}

.desktopNavList__item {
  color: var(--cnv-color-black);
  cursor: pointer;
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-6);
  align-items: center;
  padding-block-end: .5rem;
  line-height: 1.2;
  transition: all .2s ease-in-out;
  display: flex;
}

.desktopNavList__item a {
  color: inherit;
  align-items: center;
  min-height: 1.4rem;
  text-decoration: none;
  display: flex;
}

.desktopNavList__iconWrapper {
  flex-shrink: 0;
  align-items: center;
  block-size: 1.5em;
  margin-inline-end: .3rem;
  display: inline-flex;
}

.desktopNavList__iconWrapper img, .desktopNavList__iconWrapper svg, .desktopNavList__iconWrapper > * {
  block-size: 100%;
  inline-size: auto;
}

.desktopNavList__iconWrapper--right {
  margin-inline: .3rem 0;
}

.desktopNavList__list:has(.desktopNavList__item:hover) .desktopNavList__item:not(:hover), .desktopNavList__list:has(.desktopNavList__item:focus-within) .desktopNavList__item:not(:has(a:focus-within)) {
  opacity: .5;
}

body:has(.mobileNavigation__modal[open]) {
  overflow: hidden;
}

.mobileNavigation__modal {
  --modal-animation-duration: .5s;
  --modal-animation-timing-function: ease-in-out;
  --modal-transition-duration: .2s;
  --modalBtnsWrapper--margin: .75rem;
  --mobileHeaderButton-font-size: var(--cnv-font-size-body-6);
  --modalBackButton-size: var(--mobileHeaderButton-font-size);
  --modalCloseButton-padding: .5rem;
  --modalCloseButton-size: .75rem;
  --modalCloseButton-height: calc(var(--modalCloseButton-size) + (2 * var(--modalCloseButton-padding)));
  --item-padding-block: calc(var(--cnv-font-size-h4-mobile) * .4167);
  animation: slides-in-from-the-left var(--modal-animation-duration)
        var(--modal-animation-timing-function) forwards;
  background-color: var(--cnv-color-white);
  border: none;
  width: 100%;
  max-width: 100vw;
  height: 100%;
  max-height: 100dvh;
  margin: 0;
  padding: 0;
  position: fixed;
  overflow: hidden;
  translate: -100%;

  &::backdrop {
    animation: show-backdrop var(--modal-animation-duration)
            var(--modal-animation-timing-function) forwards;
    background-color: var(--cnv-color-overlay);
  }
}

.mobileNavigation__modal--closing {
  animation: slides-out-from-the-left var(--modal-animation-duration)
        var(--modal-animation-timing-function) forwards;

  &::backdrop {
    animation: hide-backdrop var(--modal-animation-duration)
            var(--modal-animation-timing-function) forwards;
  }
}

.mobileNavigation__menuButton {
  --menuButton-padding: .5rem;
  --menuButton-size: calc(1rem + (2 * var(--menuButton-padding)));
  height: var(--menuButton-size);
  padding-block: var(--menuButton-padding);
  padding-inline: var(--menuButton-padding);
  transition: all var(--modal-transition-duration)
        var(--modal-animation-timing-function);
  width: var(--menuButton-size);
  background-color: #0000;
  border: none;

  &:not(:disabled) {
    cursor: pointer;

    &:focus-visible {
      opacity: .75;
    }

    @media (hover: hover) {
      &:hover {
        opacity: .75;
      }
    }
  }
}

.mobileNavigation__modalBtnsWrapper {
  background-color: var(--cnv-color-white);
  margin-block: var(--modalBtnsWrapper--margin);
  margin-inline: var(--modalBtnsWrapper--margin);
  width: calc(100% - (var(--modalBtnsWrapper--margin) * 2));
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: fixed;
}

.mobileNavigation__headerButton {
  font-size: var(--mobileHeaderButton-font-size);
  text-transform: capitalize;
  transition: all var(--modal-transition-duration)
        var(--modal-animation-timing-function);
  background-color: #0000;
  border: none;
  padding: 0;
  line-height: 1.5;

  &:not(:disabled) {
    cursor: pointer;

    &:focus-visible {
      opacity: .5;
    }

    @media (hover: hover) {
      &:hover {
        opacity: .5;
      }
    }
  }
}

.mobileNavigation__modalBackButton {
  padding-inline: calc(var(--modalBackButton-size) + .5rem) 1rem;
  position: relative;

  &:before {
    background-color: var(--cnv-color-black);
    content: "";
    width: var(--modalBackButton-size);
    justify-content: center;
    position: absolute;
    inset: 0;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M10.5419 14.5L4.2998 8L10.5419 1.5L11.6848 2.69396L6.5893 8L11.6848 13.306L10.5419 14.5Z' fill='black'/%3E%3C/svg%3E");
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
  }
}

.mobileNavigation__headerButton--hidden.mobileNavigation__modalBackButton {
  user-select: none;
  visibility: hidden;
}

.mobileNavigation__modalCloseButton {
  height: var(--modalCloseButton-height);
  padding-block: var(--modalCloseButton-padding);
  padding-inline: var(--modalCloseButton-padding);
  width: var(--modalCloseButton-height);
  margin-inline-start: auto;
  position: relative;

  &:before {
    background-color: var(--cnv-color-black);
    content: "";
    height: var(--modalCloseButton-size);
    width: var(--modalCloseButton-size);
    background-repeat: no-repeat;
    position: absolute;
    inset: 0;
    translate: 65% 70%;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M12 1.16058L10.8394 0L6 4.83942L1.16058 0L0 1.16058L4.83942 6L0 10.8394L1.16058 12L6 7.16058L10.8394 12L12 10.8394L7.16058 6L12 1.16058Z' fill='currentColor'/%3E%3C/svg%3E");
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
  }
}

.mobileNavigation__navigation {
  --modalHeader-height: calc(var(--modalCloseButton-height) + (2 * var(--modalBtnsWrapper--margin)));
  --mobileNavigation-margin-block: 2rem;
  --navigationMarginTop: calc(var(--mobileNavigation-margin-block) + var(--modalHeader-height));
  background-color: var(--cnv-color-white);
  height: calc(100% - var(--mobileNavigation-margin-block) - var(--modalHeader-height));
  margin-block: var(--navigationMarginTop) 3rem;
  text-align: start;
  position: relative;
  overflow: hidden;
}

.mobileNavigation__navigationWrapper {
  width: 100%;
  height: 100%;
  position: relative;
}

.mobileNavigation__list {
  background-color: var(--cnv-color-white);
  height: 100dvh;
  max-height: 100%;
  padding-inline: var(--cnv-spacing-16);
  pointer-events: none;
  transition: translate var(--modal-animation-duration)
        var(--modal-animation-timing-function);
  z-index: 1;
  position: absolute;
  inset-block-start: 0;
  inset-inline: 0;
  overflow: hidden;
  translate: 100%;
}

.mobileNavigation__list--main {
  translate: 0;
}

.mobileNavigation__list--custom {
  pointer-events: auto;
  max-height: fit-content;
  padding-inline: 0;
  position: static;
  overflow-y: visible;
  translate: 0;
}

.mobileNavigation__listItem {
  transition: visibility var(--modal-animation-duration);
}

.mobileNavigation__list:not(.mobileNavigation__list--custom, .mobileNavigation__list--main) > .mobileNavigation__listItem:last-child:not(:has(.mobileNavigation__list:not(.mobileNavigation__list--custom))), .mobileNavigation__list:not(.mobileNavigation__list--custom, .mobileNavigation__list--main) > :where(*):not(.mobileNavigation__list) > .mobileNavigation__listItem:last-child:not(:has(.mobileNavigation__list:not(.mobileNavigation__list--custom))) {
  padding-block-end: var(--cnv-spacing-32);
}

.mobileNavigation__heading {
  color: var(--cnv-color-black);
  font-size: 2rem;
  font-weight: var(--cnv-font-weight-extrabold);
  letter-spacing: .0313rem;
  text-transform: capitalize;
  line-height: 1.0313;
}

.mobileNavigation__headingGroup {
  background-color: var(--cnv-color-white);
  padding-block-end: calc(var(--cnv-spacing-32) - var(--item-padding-block));
}

.mobileNavigation__subHeading {
  background-color: var(--cnv-color-white);
  font-size: var(--cnv-font-size-body-5);
  padding-block-start: .75rem;
}

.mobileNavigation__heading:not(:has( + .mobileNavigation__subHeading)) {
  background-color: var(--cnv-color-white);
  margin-block-end: calc(var(--cnv-spacing-32) - var(--item-padding-block));
}

.mobileNavigation__heading:not(:has( + .mobileNavigation__subHeading)):has( + .mobileNavigation__list) {
  margin-block-end: calc(var(--cnv-spacing-16) - var(--item-padding-block));
}

.mobileNavigation__listItem--hidden, .mobileNavigation__listItem--hidden .mobileNavigation__list--submenuInCustom {
  user-select: none;
  visibility: hidden;
}

.mobileNavigation__list--active:not(.mobileNavigation__list--main) {
  z-index: 999;
  translate: 0;
}

.mobileNavigation__list--onPath {
  translate: 0;
}

.mobileNavigation__list--restoredOpen {
  transition: none;
}

.mobileNavigation__list--closing {
  animation: slideOutRight var(--modal-animation-duration)
        var(--modal-animation-timing-function) forwards;
  z-index: 1000;
}

.mobileNavigation__list--custom:has(.mobileNavigation__list--active) {
  translate: 0;
}

.mobileNavigation__list--active {
  pointer-events: auto;
  overflow-y: auto;
}

.mobileNavigation__list[aria-hidden="true"] .mobileNavigation__heading, .mobileNavigation__list[aria-hidden="true"] .mobileNavigation__subHeading, .mobileNavigation__list[aria-hidden="true"] .mobileNavigation__headingGroup {
  transition: visibility var(--modal-animation-duration);
  user-select: none;
  visibility: hidden;
}

@scope (.mobileNavigation__list) to (.mobileNavigation__list) {
  :scope > :where(*, .mobileNavigation__listItem):not(:first-child) .mobileNavigation__heading:not(:has( + .mobileNavigation__subHeading)), :scope > :where(*) > .mobileNavigation__listItem:not(:first-child) .mobileNavigation__heading:not(:has( + .mobileNavigation__subHeading)) {
    margin-block-start: var(--cnv-spacing-32);
  }
}

.mobileNavigation__navigationButton {
  background-color: inherit;
  text-align: inherit;
  border: none;
  width: 100%;
  padding: 0;
  position: relative;

  &:after {
    aspect-ratio: 11.08 / 19.5;
    background-color: var(--cnv-color-black);
    content: "";
    background-repeat: no-repeat;
    height: .59lh;
    position: absolute;
    inset-block: 50%;
    inset-inline-end: 0;
    translate: 0 -50%;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='20' viewBox='0 0 12 20' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.58627 0.5L11.9511 10.25L2.58628 20L0.871587 18.2091L8.51625 10.25L0.871582 2.29093L2.58627 0.5Z' fill='black'/%3E%3C/svg%3E");
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
  }

  &.mobileNavigation__navigationButton--hideChevron:after {
    display: none;
  }
}

.mobileNavigation__listItemLink, .mobileNavigation__navigationButton {
  background-color: var(--cnv-color-white);
  color: inherit;
  font-size: var(--cnv-font-size-h4-mobile);
  outline-offset: 0;
  padding-block: var(--item-padding-block);
  text-wrap: balance;
  transition: opacity .2s var(--modal-animation-timing-function);
  width: 100%;
  padding-inline-end: 1.5rem;
  text-decoration: none;
  display: inline-block;

  &.mobileNavigation__navigationButton--hideChevron {
    padding-inline-end: 0;
  }

  &:not(:disabled) {
    cursor: pointer;

    &:focus-visible {
      opacity: .5;
      text-underline-offset: .25em;
      text-decoration: underline;
    }

    @media (hover: hover) {
      &:hover {
        opacity: .5;
        text-underline-offset: .25em;
        text-decoration: underline;
      }
    }
  }
}

.mobileNavigation__listItem--l1 {
  font-size: 2rem;
  font-weight: var(--cnv-font-weight-bold);
}

.mobileNavigation__listItemLink[aria-current="page"] {
  cursor: default;

  &:focus-visible {
    opacity: revert;
    text-decoration: none;
  }

  @media (hover: hover) {
    &:hover {
      opacity: revert;
      text-decoration: none;
    }
  }
}

.mobileNavigation__listItem:first-child > .mobileNavigation__navigationButton {
  padding-block-start: 0;
}

.mobileNavigation__childrenWrapper {
  margin-block-start: 4rem;
}

@keyframes slides-in-from-the-left {
  from {
    translate: -100%;
  }

  to {
    translate: 0;
  }
}

@keyframes slides-out-from-the-left {
  from {
    translate: 0;
  }

  to {
    translate: -100%;
  }
}

@keyframes show-backdrop {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes hide-backdrop {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes slideOutRight {
  from {
    translate: 0;
  }

  to {
    translate: 100%;
  }
}

.scrollCarousel.mobileNavigation__wayfindingCarousel {
  --one-item-width: 40cqi;
  scrollbar-gutter: auto;
  gap: .25rem;
  margin-inline: -.125rem;
  padding-inline: 0;
}

.mobileWayfindingSection {
  & .mobileWayfindingSection__heading {
    font-size: var(--cnv-font-size-h4-mobile);
    font-weight: var(--cnv-font-weight-extrabold);
    letter-spacing: .0325em;
    text-align: start;
    text-transform: capitalize;
    margin-block: 1.875rem 1rem;
    line-height: 1.375;
  }

  & .mobileWayfindingSection__container {
    gap: .25rem;
    display: grid;
  }

  & .mobileWayfindingSection__container--count1, & .mobileWayfindingSection__container--count2 {
    grid-template-columns: 1fr;
  }

  & .mobileWayfindingSection__container--count3 {
    grid-template-columns: repeat(2, 1fr);
  }

  & .mobileWayfindingSection__container--count3 > .mobileWayfindingSection__card:nth-of-type(3) {
    grid-column: 1 / -1;
  }

  & .mobileWayfindingSection__container--count4 {
    grid-template-columns: repeat(2, 1fr);
  }

  & .mobileWayfindingSection__container--count5 {
    grid-template-columns: repeat(3, 1fr);
    grid-template-areas: "card1 card2 card3"
                         "card4 card4 card5";
  }

  & .mobileWayfindingSection__container--count5 > .mobileWayfindingSection__card:first-of-type {
    grid-area: card1;
  }

  & .mobileWayfindingSection__container--count5 > .mobileWayfindingSection__card:nth-of-type(2) {
    grid-area: card2;
  }

  & .mobileWayfindingSection__container--count5 > .mobileWayfindingSection__card:nth-of-type(3) {
    grid-area: card3;
  }

  & .mobileWayfindingSection__container--count5 > .mobileWayfindingSection__card:nth-of-type(4) {
    grid-area: card4;
  }

  & .mobileWayfindingSection__container--count5 > .mobileWayfindingSection__card:nth-of-type(5) {
    grid-area: card5;
  }

  & .mobileWayfindingSection__container--count6 {
    grid-template-columns: repeat(3, 1fr);
  }

  & .mobileWayfindingSection__container > * > :first-child, & .mobileWayfindingSection__card, & .mobileWayfindingSection__card > :first-child, & .mobileWayfindingSection__imageRoot {
    height: 100%;
  }

  & .mobileWayfindingSection__card .image__main {
    object-fit: cover;
  }
}

.scrollCarousel.mobileNavigation__shoeCarousel {
  --one-item-width: auto;
  scrollbar-gutter: auto;
  gap: .75rem;
  margin-block-end: 1.5rem;
  padding-inline: 0;

  & .mobileNavigation__shoeCarousel__card {
    text-align: center;
    text-wrap: balance;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: .5rem;
    max-width: 4.5rem;
    display: inline-flex;
  }
}

.mobileNavText {
  align-items: center;
  gap: .5rem;
  display: inline-flex;
}

.mobileNavText__iconWrapper {
  flex-shrink: 0;
  align-items: center;
  block-size: 1em;
  display: inline-flex;
}

.mobileNavText__iconWrapper img, .mobileNavText__iconWrapper svg, .mobileNavText__iconWrapper > * {
  block-size: 100%;
  inline-size: auto;
}

.mobileNavTextPrecomposed {
  font-size: 1.25rem;
  font-weight: bold;
}

.mobileNavTextPrecomposed svg {
  width: 1rem;
  height: 1rem;
}

.mobileHelpSection {
  flex-direction: column;
  gap: .5rem;
  margin-block: 3rem;
  margin-inline: .5rem;
  display: flex;
}

.mobileHelpSection img, .mobileHelpSection svg {
  block-size: 1rem;
  inline-size: auto;
}

.mobileHelpSection__actions {
  flex-direction: column;
  gap: .5rem;
  display: flex;
}

.mobileHelpSection__action {
  box-sizing: border-box;
  font-family: var(--cnv-font-family-primary);
  font-size: var(--cnv-font-size-body-5);
  font-weight: var(--cnv-font-weight-semibold);
  align-items: center;
  gap: var(--cnv-spacing-12);
  height: calc(54 / var(--cnv-base-rem) * 1rem);
  padding-inline: calc(10 / var(--cnv-base-rem) * 1rem);
  text-align: center;
  justify-content: center;
  width: 100%;
  line-height: 1.2;
  text-decoration: none;
  transition: all .3s ease-in-out;
  display: inline-flex;

  & img {
    transition: filter .3s ease-in-out;
  }
}

.mobileHelpSection__action--primary {
  background-color: var(--component-button-primary-color);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  color: var(--component-button-secondary-color);
}

.mobileHelpSection__action--primary:hover {
  background-color: var(--component-button-secondary-color);
  border-color: var(--component-button-primary-color);
  cursor: pointer;

  & .mobileHelpSection__buttonText, & img {
    filter: invert();
  }
}

.mobileHelpSection__action--secondary {
  background-color: var(--component-button-secondary-color);
  border-block: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  border-inline: calc(1 / var(--cnv-base-rem) * 1rem) solid
        var(--component-button-primary-color);
  color: var(--component-button-primary-color);
}

.mobileHelpSection__action--secondary:hover {
  background-color: var(--component-button-primary-color);
  cursor: pointer;

  & .mobileHelpSection__buttonText, & img {
    filter: invert();
  }
}

.mobileHelpSection__actionIcon {
  justify-content: center;
  align-items: center;
  display: flex;
}

.mobileHelpSection__buttonText {
  font-size: .75rem;
  transition: filter .3s ease-in-out;
}

.mobileHelpSection__availability {
  text-align: center;
  margin-block-start: 1.5rem;
  font-size: .75rem;
}

.mobileNavFooter {
  background-color: var(--cnv-color-black);
  color: var(--cnv-color-white);
  margin-block-start: 3.25rem;
  margin-inline: calc(-1 * var(--cnv-spacing-16));
  padding: 2.5rem var(--cnv-spacing-16) 7rem;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.mobileNavFooter__languageSelector {
  color: inherit;
  font-size: 1rem;
  font-weight: var(--cnv-font-weight-semibold);
  text-decoration: none;
}

.mobileNavFooter__copyright {
  font-size: .75rem;
}

.mobileNavigation__listItemLink:has(.mobileNavigation__ordersBadge) > * {
  align-items: center;
  display: inline-flex;
}

.mobileNavigation__ordersBadge {
  aspect-ratio: 1;
  background-color: var(--cnv-color-highlight-blue);
  block-size: 1.5lh;
  color: var(--cnv-color-black);
  vertical-align: middle;
  border-radius: 50%;
  place-content: center;
  margin-inline-start: .5rem;
  font-size: .75rem;
  font-weight: bold;
  display: inline-grid;

  &[hidden] {
    display: none;
  }
}

.mobileNavSignUpSection {
  place-content: center;
  margin-block: 4rem;
  display: grid;
}

.mobileNavSignUpSection__heading {
  font-size: 2.25rem;
  font-weight: var(--cnv-font-weight-bold);
  text-align: center;
  line-height: 1;
}

.mobileNavSignUpSection__benefitsList {
  flex-direction: column;
  gap: .625rem;
  width: 100%;
  margin-block: .75rem 1.5rem;
  padding-inline-start: 0;
  list-style: none;
  display: flex;
}

.mobileNavSignUpSection__benefitItem {
  font-size: var(--cnv-font-size-body-5);
  align-items: center;
  gap: .75rem;
  display: flex;
}

.autoRotateCarousel {
  --promo-text-max-width: 80ch;
  color: var(--cnv-color-white);
  font-size: var(--cnv-font-size-body-7);
  padding-block: .75rem;
  position: relative;

  @media (width < 48em) {
    height: 3.9375rem;
  }

  @media (width >= 48em) {
    --carousel-pause-icon-spacing: 3em;
    translate: var(--carousel-pause-icon-spacing) 0;
    padding-block: 1.125rem;
    padding-inline-start: var(--carousel-pause-icon-spacing);
  }
}

.autoRotateCarousel__slick {
  padding-inline: 1.25em;
}

.autoRotateCarousel__text {
  color: inherit;
  font-weight: var(--cnv-font-weight-bold);
  text-align: center;
  text-transform: uppercase;
  text-wrap: balance;
  flex-wrap: wrap;

  @media (width < 48em) {
    line-clamp: 2;
    -webkit-line-clamp: 2;
    max-width: var(--promo-text-max-width);
    text-overflow: ellipsis;
    text-wrap: unset;
    -webkit-box-orient: vertical;
    padding-inline: 1rem;
    display: -webkit-box;
    overflow: hidden;
  }
}

#global-promo-banner__klarna *::part(osm-container) {
  padding-block: 0 !important;
}

.amp-slick-carousel.slick-initialized .autoRotateCarousel__text.slick-slide {
  justify-content: center;
  align-items: center;
  display: flex;
}

.autoRotateCarousel__link {
  color: inherit;
  font-size: var(--cnv-font-size-body-8);
  font-weight: var(--cnv-font-weight-regular);
  text-transform: capitalize;
  text-underline-offset: .2em;
  margin-inline-start: .5rem;
  text-decoration: underline;
  transition: all .2s ease-in-out;

  &:hover, &:focus-visible {
    opacity: .8;
  }

  @media (width >= 48em) {
    font-size: var(--cnv-font-size-body-7);
    font-weight: var(--cnv-font-weight-semibold);
  }
}

.autoRotateCarousel__btnWrapper {
  --btnWrapper-width: 3em;
  z-index: 1;
  place-content: center;
  height: 100%;
  display: grid;
  position: absolute;
  inset-block-end: 0;
  inset-inline-end: 0;

  @media (width >= 48em) {
    translate: calc((var(--btnWrapper-width) / 2) * -1) 0;
    width: var(--btnWrapper-width);
    inset-block-start: 0;
    inset-inline-start: 0;
  }
}

.autoRotateCarousel__playPauseBtn {
  background-color: inherit;
  color: inherit;
  cursor: pointer;
  font-size: var(--cnv-font-size-body-6);
  z-index: 1;
  border: none;
  padding: 0;
  line-height: 1;
  transition: color .2s ease-in-out, opacity .2s ease-in-out;

  &:focus-visible {
    outline-offset: .25rem;
  }
}

.autoRotateCarousel__navigationButton {
  background-color: inherit;
  z-index: 1;
  transition: color .2s ease-in-out, opacity .2s ease-in-out;
  color: #fff !important;

  &:before {
    display: none;
  }

  &:focus-visible {
    outline-offset: .125rem;
    outline: revert !important;
  }
}

@media (width >= 48em) {
  .autoRotateCarousel__playPauseBtn, .autoRotateCarousel__navigationButton {
    opacity: 0;
  }
}

.autoRotateCarousel__playPauseBtn--hovered, .autoRotateCarousel__navigationButton--hovered {
  opacity: 1;
}

.autoRotateCarousel__navigationButton--prev {
  inset-inline-start: 1em;
}

.autoRotateCarousel__navigationButton--next {
  inset-inline-end: 1em;
}

@media (width < 48em) {
  .autoRotateCarousel__navigationButton {
    visibility: hidden;
    display: none !important;
  }
}

.autoRotateCarousel:has(.autoRotateCarousel__playPauseBtn:hover, .autoRotateCarousel__playPauseBtn:focus-visible, .autoRotateCarousel__navigationButton:hover, .autoRotateCarousel__navigationButton:focus-visible) :is(.autoRotateCarousel__playPauseBtn, .autoRotateCarousel__navigationButton):not(:hover, :focus-visible) {
  color: var(--cnv-color-grey-50) !important;
}

@media (width < 48em) {
  .slick-slider.autoRotateCarousel__slick, .slick-slider.autoRotateCarousel__slick .slick-list, .slick-slider.autoRotateCarousel__slick .slick-track, .slick-slider.autoRotateCarousel__slick .slick-slide {
    height: 100% !important;
  }
}

.slick-slider.autoRotateCarousel__slick .slick-track {
  display: flex !important;
}

.slick-slider.autoRotateCarousel__slick .slick-slide {
  align-self: stretch;
}

@media (width >= 48em) {
  .slick-slider.autoRotateCarousel__slick .slick-slide {
    height: auto !important;
  }
}

.slick-slider.autoRotateCarousel__slick .slick-slide > div {
  height: 100%;
}

.slick-slider.autoRotateCarousel__slick .slick-slide > div > p, .slick-slider.autoRotateCarousel__slick .slick-slide > div > div {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex !important;
}

.mediaOverlayCarousel {
  width: 100%;
  min-width: 0;
}

.mediaOverlayCarousel__frame {
  width: 100%;
  max-width: var(--cnv-max-width);
  flex-direction: column;
  margin-inline: auto;
  display: flex;
  position: relative;
}

.mediaOverlayCarousel__slick {
  order: 1;
}

.mediaOverlayCarousel__slick:not(.slick-initialized) {
  overflow: hidden;
}

.mediaOverlayCarousel__slick:not(.slick-initialized) > .mediaOverlayCarousel__slide:not(:first-child) {
  display: none;
}

.mediaOverlayCarousel__controls {
  order: 2;
  justify-content: center;
  align-items: center;
  min-height: 2.75rem;
  display: flex;
}

.mediaOverlayCarousel__pagination {
  align-items: center;
  min-height: 2.75rem;
  display: flex;
}

.mediaOverlayCarousel .mediaOverlay {
  max-width: none;
}

@media (width >= 48em) {
  .mediaOverlayCarousel .mediaOverlay {
    height: var(--_mo-height-desktop);
  }

  .mediaOverlayCarousel .mediaOverlay--video {
    margin-block-end: 0;
    padding-bottom: 0;
    overflow: hidden;
  }

  .mediaOverlayCarousel .mediaOverlay--video .mediaOverlay__background {
    height: 100%;
    bottom: 0;
  }
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick.slick-dotted.slick-slider {
  margin-block-end: 0;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-track {
  display: flex;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-slide {
  align-self: stretch;
  height: auto;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-slide > div, .mediaOverlayCarousel .mediaOverlayCarousel__slide, .mediaOverlayCarousel .mediaOverlay--color {
  height: 100%;
}

.mediaOverlayCarousel .mediaOverlay--color .mediaOverlay__content--distribution-split {
  justify-content: space-between;
  height: 100%;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next {
  top: auto;
  bottom: 1.625rem;
  border: .046875rem solid var(--cnv-color-white);
  z-index: 3;
  background: var(--cnv-color-black);
  justify-content: center;
  align-items: center;
  width: 2.375rem;
  height: 2.375rem;
  padding: 0;
  line-height: 1;
  transition: background-color .25s ease-in-out, border-color .25s ease-in-out, color .25s ease-in-out, opacity .25s ease-in-out;
  inset-block: auto 1.625rem;
  transform: none;
  color: var(--cnv-color-white) !important;
  display: flex !important;
}

.mediaOverlayCarousel .mediaOverlayCarousel__navigationButton:before {
  display: none;
}

.mediaOverlayCarousel .mediaOverlayCarousel__navigationButton svg {
  width: .75rem;
  height: .75rem;
  display: block;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev {
  inset-inline-start: auto;
  inset-inline-end: calc(var(--cnv-spacing-20) + 2.375rem + var(--cnv-spacing-8));
  left: auto;
  right: calc(var(--cnv-spacing-20) + 2.375rem + var(--cnv-spacing-8));
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next {
  inset-inline-start: auto;
  inset-inline-end: var(--cnv-spacing-20);
  right: var(--cnv-spacing-20);
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev:hover, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev:focus-visible, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next:hover, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next:focus-visible {
  background: var(--cnv-color-black);
  border-color: var(--cnv-color-white);
  opacity: .8;
  color: var(--cnv-color-white) !important;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev:focus-visible, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next:focus-visible {
  outline-color: revert;
  outline-offset: .125rem;
  outline-style: solid;
}

.mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev.slick-disabled, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next.slick-disabled, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev.slick-disabled:hover, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next.slick-disabled:hover, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev.slick-disabled:focus-visible, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next.slick-disabled:focus-visible {
  border-color: var(--cnv-color-white);
  opacity: 1;
  cursor: not-allowed;
  background: #1a1a1a;
  color: var(--cnv-color-white) !important;
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots {
  --moc-video-pagination-width: 4.9375rem;
  justify-content: center;
  align-items: center;
  gap: var(--cnv-spacing-4);
  width: auto;
  height: 2.75rem;
  margin: 0;
  padding: 0;
  display: flex;
  position: static;
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots > li {
  flex: 0 0 .25rem;
  justify-content: center;
  align-items: center;
  width: .25rem;
  min-width: .25rem;
  max-width: .25rem;
  height: .25rem;
  margin: 0;
  margin-inline: 0;
  padding: 0;
  transition: flex-basis .25s ease-in-out, max-width .25s ease-in-out, min-width .25s ease-in-out, opacity .25s ease-in-out, transform .25s ease-in-out, width .25s ease-in-out;
  display: flex;
  position: relative;
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots > li > button {
  padding: 0;
  color: #0000;
  cursor: pointer;
  background: none;
  border: 0;
  flex: 0 0 .25rem;
  width: .25rem;
  height: .25rem;
  margin: 0;
  padding-block: 0;
  padding-inline: 0;
  font-size: 0;
  line-height: 0;
  transition: flex-basis .25s ease-in-out, opacity .25s ease-in-out, transform .25s ease-in-out, width .25s ease-in-out;
  display: block;
  position: relative;
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots > li > button:before {
  content: "";
  background-color: var(--cnv-color-grey-50, #9b9b9b);
  color: #0000;
  opacity: 1;
  width: .25rem;
  height: .25rem;
  font-size: 0;
  line-height: 0;
  transition: background-color .25s ease-in-out, opacity .25s ease-in-out, transform .25s ease-in-out;
  display: block;
  position: absolute;
  inset: 0;
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots li.slick-active > button:before {
  background-color: var(--cnv-color-black);
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots > li.mediaOverlayCarousel__dot--videoActive {
  width: var(--moc-video-pagination-width);
  height: 2.75rem;
  max-width: var(--moc-video-pagination-width);
  min-width: var(--moc-video-pagination-width);
  flex-basis: var(--moc-video-pagination-width);
  display: flex;
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots > li.mediaOverlayCarousel__dot--videoActive > button {
  opacity: 0;
  pointer-events: none;
  flex-basis: 0;
  width: 0;
  height: 0;
  padding-block: 0;
  padding-inline: 0;
  overflow: hidden;
  transform: scale(0);
}

.mediaOverlayCarousel .mediaOverlayCarousel__dots > li.mediaOverlayCarousel__dot--videoActive > button:before {
  opacity: 0;
  width: 0;
  height: 0;
  transform: scale(0);
}

.mediaOverlayCarousel .mediaOverlayCarousel__dot--videoActive .mediaOverlay__videoControls {
  padding-right: 0;
  gap: var(--cnv-spacing-4);
  opacity: 1;
  height: 2.75rem;
  color: var(--cnv-color-black);
  padding-inline-end: 0;
  transition: opacity .25s ease-in-out, transform .25s ease-in-out;
  animation: .25s ease-in-out mediaOverlayCarouselVideoControlsIn;
  position: static;
  bottom: auto;
  left: auto;
  transform: translateY(0) scale(1);
}

.mediaOverlayCarousel .mediaOverlayCarousel__dot--videoActive .mediaOverlay__videoToggle {
  width: .4375rem;
  height: 2.75rem;
  min-width: 0;
  margin-inline-start: var(--cnv-spacing-4);
}

.mediaOverlayCarousel .mediaOverlay__videoControls {
  opacity: 0;
  transform: translateY(.25rem) scale(.96);
}

@keyframes mediaOverlayCarouselVideoControlsIn {
  from {
    opacity: 0;
    transform: translateY(.25rem) scale(.96);
  }

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

@media (width < 48em) {
  .mediaOverlayCarousel .mediaOverlay {
    height: var(--_mo-height-mobile);
    max-height: none;
  }

  .mediaOverlayCarousel .mediaOverlay--video {
    margin-block-end: 0;
    overflow: hidden;
  }

  .mediaOverlayCarousel .mediaOverlay--video .mediaOverlay__background {
    height: 100%;
    bottom: 0;
  }

  .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-prev, .mediaOverlayCarousel .mediaOverlayCarousel__slick .slick-next {
    visibility: hidden;
    display: none !important;
  }

  .mediaOverlayCarousel__controls, .mediaOverlayCarousel__pagination {
    min-height: 2.25rem;
  }

  .mediaOverlayCarousel .mediaOverlayCarousel__dots {
    height: 2.25rem;
  }

  .mediaOverlayCarousel .mediaOverlayCarousel__dots:has( > li.mediaOverlayCarousel__dot--videoActive) {
    height: 2.75rem;
  }

  .mediaOverlay--color {
    padding: 0;
  }

  .mediaOverlay--color-mobile-white {
    background-color: var(--cnv-color-white);
  }

  .mediaOverlay--color-mobile-black {
    background-color: var(--cnv-color-black);
  }

  .mediaOverlay--color .mediaOverlay__overlay {
    padding-inline: var(--cnv-spacing-16);
  }

  .mediaOverlay--color-mobile-white .mediaOverlay__eyebrow, .mediaOverlay--color-mobile-white .mediaOverlay__headline, .mediaOverlay--color-mobile-white .mediaOverlay__description {
    color: var(--cnv-color-black);
  }

  .mediaOverlay--color-mobile-black .mediaOverlay__eyebrow, .mediaOverlay--color-mobile-black .mediaOverlay__headline, .mediaOverlay--color-mobile-black .mediaOverlay__description {
    color: var(--cnv-color-white);
  }
}

.scrollCarousel {
  --padding-inline-values: .5rem 2.5rem;
  --one-item-width: 50cqi;
  padding-inline: var(--padding-inline-values);
  scroll-padding-inline: var(--padding-inline-values);
  scrollbar-gutter: stable;
  display: flex;
  overflow-x: auto;
  container-type: inline-size;

  & > .scrollCarousel__listItem {
    width: var(--one-item-width);
    flex-shrink: 0;

    & > * {
      width: var(--one-item-width);
    }
  }

  & img {
    width: 100% !important;
    height: auto !important;
  }

  @media (pointer: coarse) {
    padding-block-end: .33rem;
  }
}

.scrollCarousel--snap {
  scroll-snap-type: x mandatory;

  & > .scrollCarousel__listItem {
    scroll-snap-align: start;
  }
}

.amp-slick-carousel:not(.slick-initialized) {
  overflow: hidden;
}

.amp-slick-carousel:not(.slick-initialized) > :not(:first-child) {
  display: none;
}

.amp-slick-carousel.slick-slider {
  box-sizing: border-box;
  user-select: none;
  -webkit-touch-callout: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
  display: block;
  position: relative;
}

.amp-slick-carousel .slick-list {
  margin: 0;
  padding: 0;
  display: block;
  position: relative;
  overflow: hidden;
}

.amp-slick-carousel .slick-list:focus-visible {
  outline: none;
}

.amp-slick-carousel .slick-list.dragging {
  cursor: pointer;
}

.amp-slick-carousel .slick-track {
  margin-inline: auto;
  display: block;
  position: relative;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.amp-slick-carousel.slick-slider .slick-track, .amp-slick-carousel.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.amp-slick-carousel .slick-track:before, .amp-slick-carousel .slick-track:after {
  content: "";
  display: table;
}

.amp-slick-carousel .slick-track:after {
  clear: both;
}

.amp-slick-carousel.slick-loading .slick-track {
  visibility: hidden;
}

.amp-slick-carousel .slick-slide {
  float: left;
  height: 100%;
  min-height: .0625rem;
  display: none;
}

[dir="rtl"] .amp-slick-carousel .slick-slide {
  float: right;
}

.amp-slick-carousel .slick-slide img {
  display: block;
}

.amp-slick-carousel .slick-slide.slick-loading img {
  display: none;
}

.amp-slick-carousel .slick-slide.dragging img {
  pointer-events: none;
}

.amp-slick-carousel.slick-initialized .slick-slide {
  display: block;
}

.amp-slick-carousel.slick-loading .slick-slide {
  visibility: hidden;
}

.amp-slick-carousel.slick-vertical .slick-slide {
  border: .0625rem solid #0000;
  height: auto;
  display: block;
}

.amp-slick-carousel .slick-arrow.slick-hidden {
  display: none;
}

.amp-slick-carousel.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center no-repeat;
}

@font-face {
  font-family: slick;
  font-style: normal;
  font-weight: normal;
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
}

.amp-slick-carousel .slick-prev, .amp-slick-carousel .slick-next {
  color: #0000;
  cursor: pointer;
  background: none;
  border: none;
  outline: none;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  font-size: 0;
  line-height: 0;
  display: block;
  position: absolute;
  inset-block-start: 50%;
  transform: translate(0, -50%);
}

.amp-slick-carousel .slick-prev:before, .amp-slick-carousel .slick-next:before {
  color: #fff;
  opacity: .75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.25rem;
  line-height: 1;
}

.amp-slick-carousel .slick-prev {
  inset-inline-start: -1.5625rem;
}

[dir="rtl"] .amp-slick-carousel .slick-prev {
  inset-inline: auto -1.5625rem;
}

.amp-slick-carousel .slick-prev:before {
  content: "←";
}

[dir="rtl"] .amp-slick-carousel .slick-prev:before {
  content: "→";
}

.amp-slick-carousel .slick-next {
  inset-inline-end: -1.5625rem;
}

[dir="rtl"] .amp-slick-carousel .slick-next {
  inset-inline: auto -1.5625rem;
}

.amp-slick-carousel .slick-next:before {
  content: "→";
}

[dir="rtl"] .amp-slick-carousel .slick-next:before {
  content: "←";
}

.amp-slick-carousel .slick-prev:hover, .amp-slick-carousel .slick-prev:focus-visible, .amp-slick-carousel .slick-next:hover, .amp-slick-carousel .slick-next:focus-visible {
  color: #0000;
  background: none;
  outline: none;
}

.amp-slick-carousel .slick-prev:hover:before, .amp-slick-carousel .slick-prev:focus-visible:before, .amp-slick-carousel .slick-next:hover:before, .amp-slick-carousel .slick-next:focus-visible:before {
  opacity: 1;
}

.amp-slick-carousel .slick-prev.slick-disabled:before, .amp-slick-carousel .slick-next.slick-disabled:before {
  opacity: .25;
}

.amp-slick-carousel.slick-dotted.slick-slider {
  margin-block-end: 1.875rem;
}

.amp-slick-carousel .slick-dots {
  text-align: center;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  display: block;
  position: absolute;
  inset-block-end: -1.5625rem;
}

.amp-slick-carousel .slick-dots li {
  cursor: pointer;
  width: 1.25rem;
  height: 1.25rem;
  margin-inline: .3125rem;
  padding: 0;
  display: inline-block;
  position: relative;
}

.amp-slick-carousel .slick-dots li button {
  color: #0000;
  cursor: pointer;
  background: none;
  border: 0;
  outline: none;
  width: 1.25rem;
  height: 1.25rem;
  padding-block: .3125rem;
  padding-inline: .3125rem;
  font-size: 0;
  line-height: 0;
  display: block;
}

.amp-slick-carousel .slick-dots li button:hover, .amp-slick-carousel .slick-dots li button:focus-visible {
  outline: none;
}

.amp-slick-carousel .slick-dots li button:before {
  color: #000;
  content: "•";
  opacity: .25;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 1.25rem;
  height: 1.25rem;
  font-family: slick, sans-serif;
  font-size: .375rem;
  line-height: 1.25rem;
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.amp-slick-carousel .slick-dots li button:hover:before, .amp-slick-carousel .slick-dots li button:focus-visible:before {
  opacity: 1;
}

.amp-slick-carousel .slick-dots li.slick-active button:before {
  color: #000;
  opacity: .75;
}

.pagination--dots {
  translate: 0 -2.25rem;

  & li {
    margin: 0;
  }

  & .pagination__button:disabled:before {
    opacity: 1;
    font-size: .625rem;
    translate: 0 .0625rem;
  }
}

.pagination__button:disabled {
  cursor: not-allowed;
}

.pagination:not(.pagination--dots) {
  justify-content: center;
  margin-block-start: var(--pagination-gap, 2.75rem);
  display: flex;

  & > .pagination__item {
    color: #0000;
    height: var(--pagination-height, 1rem);
    width: 1.1875rem;
    position: relative;
    overflow: hidden;

    &:before {
      background-color: var(--cnv-color-grey-10);
      content: "";
      z-index: -1;
      width: 100%;
      height: .25rem;
      transition: all .25s ease-in-out;
      position: absolute;
      inset: 0;
      inset-block-start: 50%;
      translate: 0 -50%;
    }

    &:first-child:before {
      border-top-left-radius: 999em;
      border-bottom-left-radius: 999em;
    }

    &:last-child:before {
      border-top-right-radius: 999em;
      border-bottom-right-radius: 999em;
    }
  }

  & .pagination__button {
    cursor: pointer;
    background-color: #0000;
    border: none;
    width: 100%;
    height: 100%;

    &:disabled {
      cursor: not-allowed;
    }
  }

  & > .pagination__item:has(.pagination__button:disabled):before {
    background-color: var(--cnv-color-grey-50);
    border-radius: 999em;
  }
}

.carousel__navigationButton {
  height: 1.875rem;
  translate: 0
        calc((var(--pagination-gap, 2.75rem) - var(--pagination-height, 1rem)) *
                -1);
  width: 1.0625rem;
  transition: color .25s ease-in-out;
  color: var(--cnv-color-black) !important;

  &:before {
    display: none;
  }

  &:hover {
    color: var(--cnv-color-grey-50) !important;
  }

  &:focus-visible {
    outline-color: revert;
    outline-style: solid;
  }

  &:disabled {
    cursor: not-allowed;
    color: var(--cnv-color-grey-70) !important;
  }
}

.carousel__navigationButton--prev {
  left: calc(var(--button-placement, 2.75rem) * -1);
}

.carousel__navigationButton--next {
  right: calc(var(--button-placement, 2.75rem) * -1);
}

:not(:has(.pagination:not(.pagination--dots))) .carousel__navigationButton--prev, :not(:has(.pagination:not(.pagination--dots))) .carousel__navigationButton--next {
  translate: 0;
}




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