.l-container--hero {
  /* stylelint-disable-next-line property-no-unknown */
  container-name: hero;
}

.dsa-hero {
  --dsa-hero--min-height: 18rem;
  --dsa-hero--min-height_small: 12rem;
  --dsa-hero__textbox--background-color: var(--ks-background-color-default);
}
@container hero (min-width: 640px) {
  .dsa-hero {
    --dsa-hero--min-height: 24rem;
    --dsa-hero--min-height_small: 14rem;
    --dsa-hero__textbox--max-width: 50vw;
    --dsa-hero__textbox--background-color: var(--dsa-overlay-box_transparent--background-color);
  }
}
@container hero (min-width: 960px) {
  .dsa-hero {
    --dsa-hero--min-height: 32rem;
    --dsa-hero--min-height_small: 16rem;
  }
}
@container hero (min-width: 1024px) {
  .dsa-hero {
    --dsa-hero--min-height: 36rem;
    --dsa-hero--min-height_small: 20rem;
    --dsa-hero__textbox--max-width: var(--dsa-content--width_narrow);
  }
}
.dsa-hero {
  --dsa-hero__headline--color: var(--dsa-headline--color);
  --dsa-hero__subheadline--color: var(--dsa-headline__subheadline--color);
  --dsa-hero_color-neutral__headline--color: var(--ks-text-color-default);
  --dsa-hero_color-neutral__subheadline--color: var(--ks-text-color-default);
  --dsa-hero__copy--color: var(--ks-text-color-default);
  --dsa-hero__copy--font: var(--ks-font-copy-m);
  --dsa-hero_highlight-text__copy--font: var(--ks-font-copy-l);
  --dsa-hero_color-neutral__copy--color: var(--ks-text-color-default);
  --dsa-hero__textbox--backdrop-filter: var(--dsa-overlay-box_transparent--backdrop-filter);
  --dsa-hero__textbox--box-shadow: var(--dsa-overlay-box_transparent--box-shadow);
  --dsa-hero__textbox--border-radius: var(--ks-border-radius-card);
  --dsa-hero__textbox--max-width: var(--dsa-content--width_narrow);
  --dsa-hero__textbox--padding: var(--ks-spacing-inset-l);
  --dsa-hero_below__textbox--padding: var(--dsa-content--vertical-spacing);
  --dsa-hero_offset__textbox--padding: var(--dsa-content--vertical-spacing);
  --dsa-hero__skip-button--shadow: var(--dsa-overlay-text--shadow);
  --dsa-hero__skip-button--color: var(--dsa-overlay-text--text-color);
  --dsa-hero__skip-button--transform_hover: translateY(10%);
  --dsa-hero__overlay--background: radial-gradient(
    50% 125% at 100% 0%,
    var(--ks-color-primary-alpha-5) 0%,
    var(--ks-color-bg-alpha-4) 100%
  );
  --dsa-hero_corner__overlay--background: linear-gradient(
    40deg,
    var(--ks-background-color-default) 15%,
    transparent 50%
  );
  --dsa-hero_left__overlay--background: linear-gradient(
    90deg,
    var(--ks-color-bg-alpha-1) var(--dsa-hero__textbox--max-width),
    transparent
  );
  --dsa-hero_right__overlay--background: linear-gradient(
    270deg,
    var(--ks-color-bg-alpha-1) var(--dsa-hero__textbox--max-width),
    transparent
  );
  --dsa-hero_offset__textbox--max-width: var(--dsa-content--width_default);
  --dsa-hero_offset__textbox--offset: -10%;
  --dsa-hero_offset__overlay--background: linear-gradient(
    0deg,
    var(--ks-background-color-default) 15%,
    transparent 50%
  );
  --dsa-hero_below__textbox--max-width: var(--dsa-content--width_default);
}

.l-container--hero {
  /* stylelint-disable-next-line property-no-unknown */
  container-name: hero;
}

.c-visual.dsa-hero {
  --c-visual_overlay--background-size: 100%;
  --c-visual--min-height: var(--dsa-hero--min-height);
  --c-visual_overlay--background: transparent;
  min-height: var(--dsa-hero--min-height);
}
.c-visual.dsa-hero .c-visual__box {
  --c-visual_box--background: var(
    --dsa-hero__textbox--background-color,
    var(--dsa-overlay-box_transparent--background-color)
  );
  --c-visual_box--color: var(--dsa-hero__copy--color, var(--ks-text-color-default));
  --c-visual_box--border-radius: var(--dsa-hero__textbox--border-radius, var(--ks-border-radius-card));
  --c-visual_box--padding: var(--dsa-hero__textbox--padding, var(--ks-spacing-inset-squish-xl));
  --c-visual_text--font: var(--dsa-hero__copy--font, var(--ks-font-copy-m));
}
.c-visual.dsa-hero--highlight-text.c-visual {
  --dsa-hero__copy--font: var(--dsa-hero_highlight-text__copy--font, var(--ks-font-copy-l));
}
.c-visual.dsa-hero--color-neutral.c-visual {
  --dsa-hero__copy--color: var(--dsa-hero_color-neutral__copy--color, var(--ks-text-color-default));
  --dsa-hero__headline--color: var(--dsa-hero_color-neutral__copy--color, var(--ks-text-color-default));
  --dsa-hero__subheadline--color: var(--dsa-hero_color-neutral__copy--color, var(--ks-text-color-default));
}
.c-visual.dsa-hero.c-visual--small {
  --dsa-hero--min-height: var(--dsa-hero--min-height_small);
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay {
  --dsa-hero__textbox--background-color: var(--dsa-overlay-box_transparent--background-color);
  --c-visual_overlay--background: var(
    --dsa-hero__overlay--background,
    radial-gradient(50% 125% at 100% 0%, var(--ks-color-primary-alpha-5) 0%, var(--ks-color-bg-alpha-4) 100%)
  );
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay.dsa-hero--content-corner {
  --c-visual_overlay--background: var(
    --dsa-hero_corner__overlay--background,
    linear-gradient(40deg, var(--ks-background-color-default) 15%, transparent 50%)
  );
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay.dsa-hero--content-offset {
  --c-visual_overlay--background: var(
    --dsa-hero--offset__overlay--background,
    linear-gradient(0deg, var(--ks-background-color-default) 15%, transparent 50%)
  );
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay.dsa-hero--content-left {
  --c-visual_overlay--background: var(
    --dsa-hero_left__overlay--background,
    linear-gradient(90deg, var(--ks-color-bg-alpha-1) var(--dsa-hero__textbox--max-width), transparent)
  );
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay.dsa-hero--content-right {
  --c-visual_overlay--background: var(
    --dsa-hero_right__overlay--background,
    linear-gradient(270deg, var(--ks-color-bg-alpha-1) var(--dsa-hero__textbox--max-width), transparent)
  );
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay .c-visual__box {
  backdrop-filter: var(--dsa-hero__textbox--backdrop-filter, var(--dsa-overlay-box_transparent--backdrop-filter));
  box-shadow: var(--dsa-hero__textbox--box-shadow, var(--dsa-overlay-box_transparent--box-shadow));
}
.c-visual.dsa-hero.dsa-hero--mobile-text-overlay .c-visual__box.c-visual__box--transparent {
  padding: 0;
}
@container hero (min-width: 640px) {
  .c-visual.dsa-hero {
    --c-visual_overlay--background: var(
      --dsa-hero__overlay--background,
      radial-gradient(50% 125% at 100% 0%, var(--ks-color-primary-alpha-5) 0%, var(--ks-color-bg-alpha-4) 100%)
    );
  }
  .c-visual.dsa-hero.dsa-hero--content-corner {
    --c-visual_overlay--background: var(
      --dsa-hero_corner__overlay--background,
      linear-gradient(40deg, var(--ks-background-color-default) 15%, transparent 50%)
    );
  }
  .c-visual.dsa-hero.dsa-hero--content-offset {
    --c-visual_overlay--background: var(
      --dsa-hero--offset__overlay--background,
      linear-gradient(0deg, var(--ks-background-color-default) 15%, transparent 50%)
    );
  }
  .c-visual.dsa-hero.dsa-hero--content-left {
    --c-visual_overlay--background: var(
      --dsa-hero_left__overlay--background,
      linear-gradient(90deg, var(--ks-color-bg-alpha-1) var(--dsa-hero__textbox--max-width), transparent)
    );
  }
  .c-visual.dsa-hero.dsa-hero--content-right {
    --c-visual_overlay--background: var(
      --dsa-hero_right__overlay--background,
      linear-gradient(270deg, var(--ks-color-bg-alpha-1) var(--dsa-hero__textbox--max-width), transparent)
    );
  }
  .c-visual.dsa-hero .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero__textbox--max-width, var(--dsa-content--width_narrow));
  }
  .c-visual.dsa-hero .c-visual__box:not(.c-visual__box--transparent) {
    backdrop-filter: var(--dsa-hero__textbox--backdrop-filter, var(--dsa-overlay-box_transparent--backdrop-filter));
    box-shadow: var(--dsa-hero__textbox--box-shadow, var(--dsa-overlay-box_transparent--box-shadow));
  }
}
.c-visual.dsa-hero .dsa-headline .dsa-headline__headline {
  color: var(--dsa-hero__headline--color, var(--dsa-headline--color, var(--ks-text-color-display)));
}
.c-visual.dsa-hero .dsa-headline .dsa-headline__subheadline {
  color: var(--dsa-hero__subheadline--color, var(--dsa-headline__subheadline--color, var(--ks-text-color-primary)));
}
.c-visual.dsa-hero .c-button-group {
  --c-button-group--vertical-gutter: var(--ks-spacing-stack-m);
  --c-button-group--horizontal-gutter: var(--ks-spacing-inline-m);
}
.c-visual.dsa-hero.c-visual--full {
  height: 100vh;
}
.c-visual.dsa-hero .c-visual__box {
  max-width: var(--c-visual_box--max-width);
  padding: var(--c-visual_box--padding);
}
.c-visual.dsa-hero .c-visual__content--indent {
  max-width: var(--dsa-content--width_wide);
}
.c-visual.dsa-hero .c-visual__continue-btn {
  transform: translate(0);
  color: var(--dsa-hero__skip-button--color, var(--dsa-overlay-text--text-color));
  filter: drop-shadow(var(--dsa-hero__skip-button--shadow, var(--dsa-overlay-text--shadow)));
}
.c-visual.dsa-hero .c-visual__continue-btn:hover {
  transform: var(--dsa-hero__skip-button--transform_hover, translateY(10%));
}
@container hero (min-width: 640px) {
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__media, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__media {
    position: relative;
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__media .c-visual__image, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__media .c-visual__image {
    height: var(--dsa-hero--min-height);
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content {
    position: relative;
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content .c-visual__box, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero_below__textbox--max-width, var(--dsa-content--width_default));
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content {
    padding: var(--dsa-hero_below__textbox--padding, var(--dsa-content--vertical-spacing));
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero_below__textbox--max-width, var(--dsa-content--width_default));
  }
  .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content {
    padding: var(--dsa-hero_offset__textbox--padding, var(--dsa-content--vertical-spacing));
    margin-top: var(--dsa-hero_offset__textbox--offset, -10%);
  }
  .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero_offset__textbox--max-width, var(--dsa-content--width_default));
  }
  .c-visual.dsa-hero.c-visual--no-crop {
    --dsa-hero--min-height: 0;
  }
  @container hero (min-width: 640px) {
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--no-crop .c-visual__media .c-visual__image, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--no-crop .c-visual__media .c-visual__image {
      height: fit-content;
    }
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--no-crop .c-visual__media .c-visual__image img, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--no-crop .c-visual__media .c-visual__image img {
      object-fit: contain;
      height: auto;
    }
  }
  .c-visual.dsa-hero.dsa-hero--content-below.c-visual--full, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--full {
    --dsa-hero--min-height: 0 !important;
    height: 100vh;
  }
  @container hero (min-width: 640px) {
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--full .c-visual__media .c-visual__image, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--full .c-visual__media .c-visual__image {
      height: 100%;
    }
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--full .c-visual__media .c-visual__image img, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--full .c-visual__media .c-visual__image img {
      object-fit: cover;
      height: 100%;
    }
  }
}

.dsa-header:not(.dsa-header--floating) + .dsa-section .dsa-hero.c-visual--full {
  height: calc(100vh - var(--dsa-header--height));
}

.c-visual.dsa-hero .dsa-headline .dsa-headline__headline {
  color: var(--dsa-hero__headline--color, var(--dsa-headline--color, var(--ks-text-color-display)));
}
.c-visual.dsa-hero .dsa-headline .dsa-headline__subheadline {
  color: var(--dsa-hero__subheadline--color, var(--dsa-headline__subheadline--color, var(--ks-text-color-primary)));
}
.c-visual.dsa-hero .c-button-group {
  --c-button-group--vertical-gutter: var(--ks-spacing-stack-m);
  --c-button-group--horizontal-gutter: var(--ks-spacing-inline-m);
}
.c-visual.dsa-hero.c-visual--full {
  height: 100vh;
}
.c-visual.dsa-hero .c-visual__box {
  max-width: var(--c-visual_box--max-width);
  padding: var(--c-visual_box--padding);
}
.c-visual.dsa-hero .c-visual__content--indent {
  max-width: var(--dsa-content--width_wide);
}
.c-visual.dsa-hero .c-visual__continue-btn {
  transform: translate(0);
  color: var(--dsa-hero__skip-button--color, var(--dsa-overlay-text--text-color));
  filter: drop-shadow(var(--dsa-hero__skip-button--shadow, var(--dsa-overlay-text--shadow)));
}
.c-visual.dsa-hero .c-visual__continue-btn:hover {
  transform: var(--dsa-hero__skip-button--transform_hover, translateY(10%));
}
@container hero (min-width: 640px) {
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__media, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__media {
    position: relative;
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__media .c-visual__image, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__media .c-visual__image {
    height: var(--dsa-hero--min-height);
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content {
    position: relative;
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content .c-visual__box, .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero_below__textbox--max-width, var(--dsa-content--width_default));
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content {
    padding: var(--dsa-hero_below__textbox--padding, var(--dsa-content--vertical-spacing));
  }
  .c-visual.dsa-hero.dsa-hero--content-below .c-visual__content .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero_below__textbox--max-width, var(--dsa-content--width_default));
  }
  .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content {
    padding: var(--dsa-hero_offset__textbox--padding, var(--dsa-content--vertical-spacing));
    margin-top: var(--dsa-hero_offset__textbox--offset, -10%);
  }
  .c-visual.dsa-hero.dsa-hero--content-offset .c-visual__content .c-visual__box {
    --c-visual_box--max-width: var(--dsa-hero_offset__textbox--max-width, var(--dsa-content--width_default));
  }
  .c-visual.dsa-hero.c-visual--no-crop {
    --dsa-hero--min-height: 0;
  }
  @container hero (min-width: 640px) {
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--no-crop .c-visual__media .c-visual__image, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--no-crop .c-visual__media .c-visual__image {
      height: fit-content;
    }
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--no-crop .c-visual__media .c-visual__image img, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--no-crop .c-visual__media .c-visual__image img {
      object-fit: contain;
      height: auto;
    }
  }
  .c-visual.dsa-hero.dsa-hero--content-below.c-visual--full, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--full {
    --dsa-hero--min-height: 0 !important;
    height: 100vh;
  }
  @container hero (min-width: 640px) {
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--full .c-visual__media .c-visual__image, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--full .c-visual__media .c-visual__image {
      height: 100%;
    }
    .c-visual.dsa-hero.dsa-hero--content-below.c-visual--full .c-visual__media .c-visual__image img, .c-visual.dsa-hero.dsa-hero--content-offset.c-visual--full .c-visual__media .c-visual__image img {
      object-fit: cover;
      height: 100%;
    }
  }
}

.dsa-header:not(.dsa-header--floating) + .dsa-section .dsa-hero.c-visual--full {
  height: calc(100vh - var(--dsa-header--height));
}