/* node_modules/swiper/swiper.css */
@layer vendor {
  /*@font-face {*/
  /*  font-family: "swiper-icons";*/
  /*  src: url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);*/
  /*  font-weight: 400;*/
  /*  font-style: normal;*/
  /*}*/
  :root {
    --swiper-theme-color: #007aff;
  }
  :host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1;
  }
  .swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block;
  }
  .swiper-vertical > .swiper-wrapper {
    flex-direction: column;
  }
  .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box;
  }
  .swiper-android .swiper-slide,
  .swiper-ios .swiper-slide,
  .swiper-wrapper {
    transform: translate3d(0px, 0, 0);
  }
  .swiper-horizontal {
    touch-action: pan-y;
  }
  .swiper-vertical {
    touch-action: pan-x;
  }
  .swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block;
  }
  .swiper-slide-invisible-blank {
    visibility: hidden;
  }
  .swiper-autoheight,
  .swiper-autoheight .swiper-slide {
    height: auto;
  }
  .swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
  }
  .swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
  }
  .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
  }
  .swiper-3d {
    perspective: 1200px;
  }
  .swiper-3d .swiper-slide,
  .swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
  .swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
  }
  .swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  .swiper-css-mode.swiper-horizontal > .swiper-wrapper {
    scroll-snap-type: x mandatory;
  }
  .swiper-css-mode.swiper-vertical > .swiper-wrapper {
    scroll-snap-type: y mandatory;
  }
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    scroll-snap-type: none;
  }
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: none;
  }
  .swiper-css-mode.swiper-centered > .swiper-wrapper::before {
    content: "";
    flex-shrink: 0;
    order: 9999;
  }
  .swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
  }
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before);
  }
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after);
  }
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before);
  }
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after);
  }
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom,
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-3d .swiper-slide-shadow-left {
    background-image:
      linear-gradient(
        to left,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-right {
    background-image:
      linear-gradient(
        to right,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-top {
    background-image:
      linear-gradient(
        to top,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-bottom {
    background-image:
      linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.5),
        rgba(0, 0, 0, 0));
  }
  .swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent;
  }
  .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
  .swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
  .swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
  }
  .swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
  }
  @keyframes swiper-preloader-spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
}

/* src/css/common/reset.css */
@layer reset {
  body,
  div,
  span,
  applet,
  object,
  iframe,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  blockquote,
  pre,
  a,
  abbr,
  acronym,
  address,
  big,
  cite,
  code,
  del,
  dfn,
  em,
  img,
  ins,
  kbd,
  q,
  s,
  samp,
  small,
  strike,
  strong,
  sub,
  sup,
  tt,
  var,
  b,
  u,
  i,
  center,
  dl,
  dt,
  dd,
  ol,
  ul,
  li,
  fieldset,
  form,
  label,
  legend,
  table,
  caption,
  tbody,
  tfoot,
  thead,
  tr,
  th,
  td,
  article,
  aside,
  canvas,
  details,
  embed,
  figure,
  figcaption,
  footer,
  header,
  hgroup,
  menu,
  nav,
  output,
  ruby,
  section,
  summary,
  time,
  mark,
  audio,
  video {
    margin: 0;
  }
  body {
    -webkit-font-smoothing: antialiased;
  }
  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
  caption,
  th {
    text-align: start;
  }
  th,
  td {
    padding: 0;
  }
  code {
    font-family: Courier, monospace;
    font-size: 0.875em;
  }
  button,
  input,
  select,
  textarea,
  ::file-selector-button {
    color: inherit;
    font: inherit;
    padding: 0;
  }
  button,
  input:where([type=submit], [type=button], [type=reset], [type=image]),
  ::file-selector-button {
    appearance: none;
    background: none;
    border: none;
    border-radius: none;
  }
  button:not(:disabled),
  input:where([type=submit], [type=button], [type=reset], [type=image], ::file-selector-button):not(:disabled) {
    cursor: pointer;
  }
  input:where([type=date], [type=datetime-local], [type=email], [type=month], [type=number], [type=password], [type=range], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week]),
  select,
  textarea,
  table {
    inline-size: 100%;
  }
  input:where([type=color], [type=date], [type=datetime-local], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week]),
  select,
  textarea {
    appearance: none;
    border: none;
    border-radius: 0;
  }
  summary {
    cursor: default;
    list-style: none;
  }
  summary::-webkit-details-marker {
    display: none;
  }
  blockquote:not(:has(p))::before {
    content: open-quote;
  }
  blockquote:not(:has(p))::after {
    content: close-quote;
  }
  :where(ul, ol):not(.RichText :where(ul, ol)) {
    list-style: none;
    padding-inline-start: 0;
  }
}

/* src/css/common/utils/container.css */
@layer base {
  .u-container {
    inline-size: min(100%, calc(var(--container-max-inline-size) + var(--component-spacing-inline)));
    margin-inline: auto;
    padding-inline: var(--component-spacing-inline);
  }
  .u-container--sm {
    max-inline-size: var(--container-max-inline-size--sm);
  }
  .u-breakout {
    box-shadow: 0 0 0 100vmax var(--u-breakout-background, var(--shared-color-surface-primary));
    clip-path: inset(0 -100vmax);
  }
}

/* src/css/common/utils/forms.css */
@layer base {
  .Form-fieldGroup:has([aria-invalid=true]) {
    color: var(--shared-color-text-critical);
  }
  .Form-fieldGroupError {
    display: none;
  }
  .Form-fieldGroup:has([aria-invalid=true]) .Form-fieldGroupError,
  .Form-fieldGroupError--show {
    align-items: center;
    color: var(--shared-color-text-critical);
    display: flex;
    font: var(--typo-TextM);
    gap: var(--size-4);
    margin-block-start: var(--size-8);
    svg {
      color: inherit;
      margin-block-start: -0.25rem;
    }
  }
}

/* src/css/common/utils/grid.css */
@layer base {
  html {
    --u-grid-column-inline-size: calc( ( min(100vw, var(--container-max-inline-size)) - (var(--u-grid-gap) * (var(--u-grid-template-columns-amount) - 1)) ) / var(--u-grid-template-columns-amount) );
  }
  .u-grid {
    display: grid;
    grid-auto-rows: minmax(min-content, max-content);
    grid-gap: 0 var(--u-grid-gap);
    grid-template-columns: repeat(var(--u-grid-template-columns-amount), 1fr);
  }
  .u-grid > * {
    min-inline-size: 0;
  }
  @media (80em > width) {
    html {
      --u-grid-gap: var(--size-16);
    }
  }
  @media (width >= 80em) {
    html {
      --u-grid-gap: var(--size-24);
    }
  }
  @media (48em > width) {
    html {
      --u-grid-template-columns-amount: 4;
    }
  }
  @media (width >= 48em) {
    html {
      --u-grid-template-columns-amount: 8;
    }
  }
  @media (width >= 64em) {
    html {
      --u-grid-template-columns-amount: 12;
    }
  }
}

/* src/css/common/utils/interactive-elements.css */
@layer base {
  .u-link {
    color: var(--shared-color-text-primary);
    text-decoration: none;
    transition: color var(--default-transition-duration) ease;
  }
  .u-link--critical {
    color: var(--shared-color-text-critical);
  }
  .u-link--success {
    color: var(--shared-color-text-success);
  }
  @media (hover: hover) {
    .u-link:hover,
    .u-link:focus,
    .u-link:focus-visible {
      color: var(--shared-color-text-brand-aa);
    }
    .u-link--neutral:hover,
    .u-link--neutral:focus,
    .u-link--neutral:focus-visible {
      color: var(--shared-color-text-secondary);
    }
    .u-link--critical:hover,
    .u-link--critical:focus,
    .u-link--critical:focus-visible {
      color: var(--shared-color-text-critical-hover);
    }
    .u-link--success:hover,
    .u-link--success:focus,
    .u-link--success:focus-visible {
      color: var(--shared-color-text-success-hover);
    }
  }
  .u-link:active {
    color: var(--shared-color-text-brand-pressed);
  }
  .u-link--neutral:active {
    color: var(--shared-color-text-primary);
  }
  .u-link--critical:active {
    color: var(--shared-color-text-critical-pressed);
  }
  .u-link--success:active {
    color: var(--shared-color-text-success-pressed);
  }
  .u-outline:focus-visible {
    outline: var(--focus-outline);
    outline-offset: var(--focus-outline-offset);
  }
}

/* src/css/common/utils/typography.css */
@layer base {
  .u-typo-HeadlineXXL,
  h1,
  .h1 {
    font: var(--typo-HeadlineXXL);
    letter-spacing: var(--typo-HeadlineXXL-letter-spacing);
  }
  .u-typo-HeadlineXL,
  h2,
  .h2 {
    font: var(--typo-HeadlineXL);
    letter-spacing: var(--typo-HeadlineXL-letter-spacing);
  }
  .u-typo-HeadlineL,
  h3,
  .h3 {
    font: var(--typo-HeadlineL);
    letter-spacing: var(--typo-HeadlineL-letter-spacing);
  }
  .u-typo-HeadlineM,
  h4,
  .h4 {
    font: var(--typo-HeadlineM);
    letter-spacing: var(--typo-HeadlineM-letter-spacing);
  }
  .u-typo-HeadlineS,
  h5,
  .h5 {
    font: var(--typo-HeadlineS);
    letter-spacing: var(--typo-HeadlineS-letter-spacing);
  }
  .u-typo-TextXL {
    font: var(--typo-TextXL);
    letter-spacing: var(--typo-TextXL-letter-spacing);
  }
  .u-typo-TextL {
    font: var(--typo-TextL);
    letter-spacing: var(--typo-TextL-letter-spacing);
  }
  .u-typo-TextM {
    font: var(--typo-TextM);
    letter-spacing: var(--typo-TextM-letter-spacing);
  }
  .u-typo-TextS {
    font: var(--typo-TextS);
    letter-spacing: var(--typo-TextS-letter-spacing);
  }
  .u-typo-static-HeadlineXXL {
    font: var(--typo-static-HeadlineXXL);
    letter-spacing: var(--typo-static-HeadlineXXL-letter-spacing);
  }
  .u-typo-static-HeadlineXL {
    font: var(--typo-static-HeadlineXL);
    letter-spacing: var(--typo-static-HeadlineXL-letter-spacing);
  }
  .u-typo-static-HeadlineL {
    font: var(--typo-static-HeadlineL);
    letter-spacing: var(--typo-static-HeadlineL-letter-spacing);
  }
  .u-typo-static-HeadlineM {
    font: var(--typo-static-HeadlineM);
    letter-spacing: var(--typo-static-HeadlineM-letter-spacing);
  }
  .u-typo-static-HeadlineS {
    font: var(--typo-static-HeadlineS);
    letter-spacing: var(--typo-static-HeadlineS-letter-spacing);
  }
  .u-typo-static-TextXL {
    font: var(--typo-static-TextXL);
    letter-spacing: var(--typo-static-TextXL-letter-spacing);
  }
  .u-typo-static-TextL {
    font: var(--typo-static-TextL);
    letter-spacing: var(--typo-static-TextL-letter-spacing);
  }
  .u-typo-static-TextM {
    font: var(--typo-static-TextM);
    letter-spacing: var(--typo-static-TextM-letter-spacing);
  }
  .u-typo-static-TextS {
    font: var(--typo-static-TextS);
    letter-spacing: var(--typo-static-TextS-letter-spacing);
  }
  .u-typo-static-TextXS {
    font: var(--typo-static-TextXS);
    letter-spacing: var(--typo-static-TextXS-letter-spacing);
  }
  .u-typo-static-TextXL-bold {
    font: var(--typo-static-TextXL-bold);
    letter-spacing: var(--typo-static-TextXL-bold-letter-spacing);
  }
  .u-typo-static-TextL-bold {
    font: var(--typo-static-TextL-bold);
    letter-spacing: var(--typo-static-TextL-bold-letter-spacing);
  }
  .u-typo-static-TextM-bold {
    font: var(--typo-static-TextM-bold);
    letter-spacing: var(--typo-static-TextM-bold-letter-spacing);
  }
  .u-typo-static-TextS-bold {
    font: var(--typo-static-TextS-bold);
    letter-spacing: var(--typo-static-TextS-bold-letter-spacing);
  }
  .u-typo-static-TextXS-bold {
    font: var(--typo-static-TextXS-bold);
    letter-spacing: var(--typo-static-TextXS-bold-letter-spacing);
  }
  .u-overflow-ellipsis {
    inline-size: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* src/css/common/fonts.css */
@layer common {
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/poppins-v23-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  /* poppins-600 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/poppins-v23-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
}

/* src/css/common/global.css */
@layer common {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  html {
    --container-max-inline-size: 92rem;
    --container-max-inline-size--sm: 40rem;
    --underline-offset: 0.2em;
    --underline-thickness: 0.09375em;
    --focus-outline: var(--shared-border-width-md) solid var(--shared-color-border-full);
    --focus-outline-sm: var(--shared-border-width-sm) solid var(--shared-color-border-full);
    --focus-outline-offset: calc(2 * var(--shared-border-width-md));
    --input-error-outline: 0.0625rem solid var(--shared-color-border-critical);
    --shared-border-width-sm: 0.0625rem;
    --shared-border-width-md: 0.125rem;
    --border-distinct: var(--shared-color-border-distinct) solid var(--shared-border-width-sm);
    --border-full: var(--shared-color-border-full) solid var(--shared-border-width-sm);
    --border-subtle: var(--shared-border-width-sm) solid var(--shared-color-border-subtle);
    --border-subtle-transparent: var(--shared-border-width-sm) solid var(--shared-color-border-subtle-transparent);
    --input-button-lh: 1.2;
    --input-button-padding-block: 0.75em;
    --default-transition-duration: 0;
    --slower-transition-duration: 0;
    --box-shadow-subtle: 0 0 var(--size-8) var(--shared-color-surface-subtle-darker);
    --container-breakout-margin: calc( var(--size-64) * -1 );
    --send-to-back: -1;
    --bring-to-front: 9999;
    --bottom-layer: 100;
    --middle-layer: 200;
    --top-layer: 300;
    --backdrop: 400;
    scrollbar-gutter: stable;
  }
  @media (prefers-reduced-motion: no-preference) {
    html {
      --default-transition-duration: 150ms;
      --slower-transition-duration: 300ms;
      scroll-behavior: smooth;
    }
  }
  @media (prefers-contrast: more) {
    html {
      --shared-color-text-brand: var(--prim-color-brand-primary-700);
      --shared-color-border-brand: var(--prim-color-brand-primary-700);
      --shared-color-surface-brand: var(--prim-color-brand-primary-700);
      --shared-color-surface-brand-hover: var(--prim-color-brand-primary-800);
      --shared-color-surface-brand-pressed: var(--prim-color-brand-primary-900);
      --shared-color-surface-overlay-image: var(--prim-color-black-t050);
      --shared-color-surface-schlern: var(--prim-color-design-schlern-darker-aa);
      --shared-color-surface-terracotta: var( --prim-color-design-terrakotta-darker-aa );
    }
  }
  @media (48em > width) {
    html {
      --input-min-block-size: var(--size-40);
    }
  }
  @media (width >= 48em) {
    html {
      --input-min-block-size: var(--size-48);
    }
  }
  @media (64em > width) {
    html {
      --component-spacing-inline: var(--size-24);
      --header-min-block-size: 3.5rem;
    }
  }
  @media (width >= 64em) {
    html {
      --component-spacing-inline: var(--size-48);
      --header-min-block-size: 6rem;
    }
  }
  @media (width >= 80em) {
    html {
      --component-spacing-inline: var(--size-64);
    }
  }
  @media (width >= 100em) {
    html {
      --component-spacing-inline: var(--size-128);
    }
  }
  @media (hover: hover) {
    :is(a, button, input, select, textarea):focus-visible {
      outline: var(--focus-outline);
      outline-offset: var(--focus-outline-offset);
    }
  }
  @media (hover: none) {
    button:focus-visible {
      outline: none;
    }
  }
  body {
    accent-color: var(--shared-color-text-brand);
    background: var(--shared-color-surface-primary);
    color: var(--shared-color-text-primary);
    font: var(--typo-TextL);
    letter-spacing: var(--typo-TextL-letter-spacing);
  }
  a {
    color: inherit;
  }
  a:is(:not([class]), [class=""]) {
    color: var(--shared-color-text-primary);
    text-decoration: underline;
    transition: color var(--default-transition-duration) ease;
  }
  a:is(:not([class]), [class=""]):hover {
    color: var(--shared-color-text-brand-aa);
    text-decoration: underline;
  }
  a:is(:not([class]), [class=""]):focus-visible {
    text-decoration: none;
  }
  img {
    block-size: auto;
    font-style: italic;
    max-inline-size: 100%;
    vertical-align: middle;
  }
  code {
    font-family: monospace;
  }
  abbr {
    text-underline-offset: var(--underline-offset);
  }
  input::-webkit-datetime-edit {
    display: block;
    padding: 0;
  }
  input[type=date] {
    min-block-size: 2.4rem;
  }
  @media (14.423076923em > width) {
  }
  @media (48em > width) {
  }
  @media (64em > width) {
  }
  @media (80em > width) {
  }
  @media (100em > width) {
  }
  @media (width >= 14.423076923em) {
  }
  @media (width >= 48em) {
  }
  @media (width >= 64em) {
  }
  @media (width >= 80em) {
  }
  @media (width >= 100em) {
  }
  @media (14.423076923em <= width < 48em) {
  }
  @media (48em <= width < 64em) {
  }
  @media (64em <= width < 80em) {
  }
  @media (80em <= width < 100em) {
  }
  @media (100em <= width) {
  }
}

/* src/css/common/tokens/colors-prim.css */
@layer common {
  html {
    --prim-color-black: #000;
    --prim-color-black-t000: #0000;
    --prim-color-black-t005: #0000000d;
    --prim-color-black-t010: #0000001a;
    --prim-color-black-t020: #0003;
    --prim-color-black-t025: #00000040;
    --prim-color-black-t050: #00000080;
    --prim-color-black-t060: #0009;
    --prim-color-black-t075: #000000bf;
    --prim-color-white: #fff;
    --prim-color-white-t010: #ffffff1a;
    --prim-color-white-t025: #ffffff40;
    --prim-color-white-t060: #fff9;
    --prim-color-white-t075: #ffffffbf;
    --prim-color-brand-secondary: #00559b;
    --prim-color-blue-050: #f0f3f8;
    --prim-color-blue-100: #e0e7f2;
    --prim-color-blue-200: #a4c0db;
    --prim-color-blue-300: #6c9cc5;
    --prim-color-blue-400: #3779b1;
    --prim-color-blue-500-default: #00559b;
    --prim-color-blue-600: #00447c;
    --prim-color-blue-700: #00335d;
    --prim-color-blue-800: #052642;
    --prim-color-blue-900: #031728;
    --prim-color-brand-primary-050: #ffede6;
    --prim-color-brand-primary-100: #ffd7dd;
    --prim-color-brand-primary-200: #ecb5bd;
    --prim-color-brand-primary-300: #ea95a0;
    --prim-color-brand-primary-400: #ec818f;
    --prim-color-brand-primary-500: #e75f71;
    --prim-color-brand-primary-600-default: #A3293E;
    --prim-color-brand-primary-700: #a83342;
    --prim-color-brand-primary-800: #a22a3a;
    --prim-color-brand-primary-900: #a41729;
    --prim-color-design-estrich: #c8ccce;
    --prim-color-design-estrich-light: #e8ebec;
    --prim-color-design-jakobskraut: #d7c268;
    --prim-color-design-latsche: #43695b;
    --prim-color-design-leinen: #d9d8ce;
    --prim-color-design-leinen-light: #f4f3f0;
    --prim-color-design-sandstein: #d8cabd;
    --prim-color-design-sandstein-light: #efeae5;
    --prim-color-design-schlern: #798596;
    --prim-color-design-schlern-darker-aa: #6b7788;
    --prim-color-design-schwarz-esche: #695c57;
    --prim-color-design-terrakotta: #b87c59;
    --prim-color-design-terrakotta-darker-aa: #a46845;
    --prim-color-green-050: #e6ede6;
    --prim-color-green-100: #cae9cb;
    --prim-color-green-200: #a6dfa8;
    --prim-color-green-300: #80ce82;
    --prim-color-green-400: #4eaf52;
    --prim-color-green-500-default: #008900;
    --prim-color-green-600: #006f00;
    --prim-color-green-700: #005300;
    --prim-color-green-800: #094409;
    --prim-color-green-900: #042904;
    --prim-color-neutral-050: #f6f6f6;
    --prim-color-neutral-100: #e3e3e3;
    --prim-color-neutral-200: #d0d0d0;
    --prim-color-neutral-300: #bfbfbf;
    --prim-color-neutral-400: #a2a2a2;
    --prim-color-neutral-500: #737373;
    --prim-color-neutral-600: #545454;
    --prim-color-neutral-700: #404040;
    --prim-color-neutral-700-t045: #40404073;
    --prim-color-neutral-700-t065: #404040a6;
    --prim-color-neutral-700-t075: #404040bf;
    --prim-color-neutral-700-t085: #404040d9;
    --prim-color-neutral-800: #313131;
    --prim-color-neutral-900: #1a1a1a;
    --prim-color-orange-050: #faf2e7;
    --prim-color-orange-100: #f8e1c4;
    --prim-color-orange-200: #f0bc81;
    --prim-color-orange-300: #e9974e;
    --prim-color-orange-400: #e37b2c;
    --prim-color-orange-500-default: #d56321;
    --prim-color-orange-600: #b04b1e;
    --prim-color-orange-700: #8d3d1f;
    --prim-color-orange-800: #622e1a;
    --prim-color-orange-900: #3d180d;
    --prim-color-red-050: #fff5f5;
    --prim-color-red-100: #f4d9d7;
    --prim-color-red-200: #e8b6b3;
    --prim-color-red-300: #e98f89;
    --prim-color-red-400: #d27069;
    --prim-color-red-500-default: #a6504a;
    --prim-color-red-600: #a53a33;
    --prim-color-red-700: #65211c;
    --prim-color-red-800: #4d1a16;
    --prim-color-red-900: #35110e;
  }
}

/* src/css/common/tokens/colors-surface.css */
@layer common {
  html {
    --shared-color-surface-brand: var(--prim-color-brand-primary-600-default);
    --shared-color-surface-brand-hover: var(--prim-color-brand-primary-700);
    --shared-color-surface-brand-pressed: var(--prim-color-brand-primary-800);
    --shared-color-surface-brand-secondary: var(--prim-color-brand-secondary);
    --shared-color-surface-brand-secondary-hover: var(--prim-color-blue-600);
    --shared-color-surface-brand-secondary-pressed: var(--prim-color-blue-700);
    --shared-color-surface-primary: var(--prim-color-white);
    --shared-color-surface-primary-hover: var(--prim-color-neutral-100);
    --shared-color-surface-primary-pressed: var(--prim-color-neutral-200);
    --shared-color-surface-invert: var(--prim-color-black);
    --shared-color-surface-invert-hover: var(--prim-color-neutral-800);
    --shared-color-surface-invert-pressed: var(--prim-color-neutral-700);
    --shared-color-surface-invert-subtle: var(--prim-color-neutral-700-t065);
    --shared-color-surface-invert-subtle-disabled: var( --prim-color-neutral-700-t045 );
    --shared-color-surface-invert-subtle-hover: var( --prim-color-neutral-700-t075 );
    --shared-color-surface-invert-subtle-pressed: var( --prim-color-neutral-700-t085 );
    --shared-color-surface-subtle: var(--prim-color-black-t010);
    --shared-color-surface-subtle-darker: var(--prim-color-black-t020);
    --shared-color-surface-subtle-lighter: var(--prim-color-black-t005);
    --shared-color-surface-subtle-pressed: var(--prim-color-black-t025);
    --shared-color-surface-subtle-hover: var(--prim-color-black-t020);
    --shared-color-surface-transparent: var(--prim-color-black-t000);
    --shared-color-surface-transparent-hover: var(--prim-color-black-t010);
    --shared-color-surface-transparent-pressed: var(--prim-color-black-t020);
    --shared-color-surface-disabled: var(--prim-color-neutral-300);
    --shared-color-surface-disabled-secondary: var(--prim-color-black-t005);
    --shared-color-surface-overlay-dialog: var(--prim-color-black-t050);
    --shared-color-surface-overlay-image: var(--prim-color-black-t020);
    --shared-color-surface-success-light-default: var(--prim-color-green-100);
    --shared-color-surface-success-light-hover: var(--prim-color-green-200);
    --shared-color-surface-success-light-pressed: var(--prim-color-green-300);
    --shared-color-surface-success: var(--prim-color-green-500-default);
    --shared-color-surface-success-hover: var(--prim-color-green-600);
    --shared-color-surface-success-pressed: var(--prim-color-green-700);
    --shared-color-surface-critical-light-default: var(--prim-color-red-100);
    --shared-color-surface-critical-light-hover: var(--prim-color-red-200);
    --shared-color-surface-critical-light-pressed: var(--prim-color-red-300);
    --shared-color-surface-critical: var(--prim-color-red-500-default);
    --shared-color-surface-critical-hover: var(--prim-color-red-600);
    --shared-color-surface-critical-pressed: var(--prim-color-red-700);
    --shared-color-surface-activity-light-default: var(--prim-color-blue-100);
    --shared-color-surface-activity-light-hover: var(--prim-color-blue-200);
    --shared-color-surface-activity-light-pressed: var(--prim-color-blue-300);
    --shared-color-surface-warning-light-default: var(--prim-color-orange-100);
    --shared-color-surface-warning-light-hover: var(--prim-color-orange-200);
    --shared-color-surface-warning-light-pressed: var(--prim-color-orange-300);
    --shared-color-surface-estrich: var(--prim-color-design-estrich);
    --shared-color-surface-estrich-light: var(--prim-color-design-estrich-light);
    --shared-color-surface-jakobskraut: var(--prim-color-design-jakobskraut);
    --shared-color-surface-latsche: var(--prim-color-design-latsche);
    --shared-color-surface-leinen: var(--prim-color-design-leinen);
    --shared-color-surface-leinen-light: var(--prim-color-design-leinen-light);
    --shared-color-surface-sandstein: var(--prim-color-design-sandstein);
    --shared-color-surface-sandstein-light: var( --prim-color-design-sandstein-light );
    --shared-color-surface-schlern: var(--prim-color-design-schlern);
    --shared-color-surface-schwarz-esche: var(--prim-color-design-schwarz-esche);
    --shared-color-surface-terracotta: var(--prim-color-design-terrakotta);
    --web-color-surface-action-on-media: var(--prim-color-black-t075);
    --web-color-surface-action-on-media-invert: var(--prim-color-white-t025);
    --web-color-surface-elevated: var(--shared-color-surface-sandstein-light);
  }
}

/* src/css/common/tokens/colors-text.css */
@layer common {
  html {
    --shared-color-text-primary: var(--prim-color-black);
    --shared-color-text-primary-hover: var(--prim-color-black-t060);
    --shared-color-text-secondary: var(--prim-color-black-t060);
    --shared-color-text-secondary-hover: var(--prim-color-black);
    --shared-color-text-secondary-pressed: var(--prim-color-black);
    --shared-color-text-invert: var(--prim-color-white);
    --shared-color-text-invert-secondary: var(--prim-color-white-t060);
    --shared-color-text-invert-disabled: var(--prim-color-white-t060);
    --shared-color-text-disabled: var(--prim-color-black-t060);
    --shared-color-text-brand: var(--prim-color-brand-primary-600-default);
    --shared-color-text-brand-hover: var(--prim-color-brand-primary-700);
    --shared-color-text-brand-pressed: var(--prim-color-brand-primary-800);
    --shared-color-text-brand-aa: var(--prim-color-brand-primary-700);
    --shared-color-text-brand-secondary-default: var( --prim-color-brand-secondary );
    --shared-color-text-brand-secondary-hover: var(--prim-color-blue-600);
    --shared-color-text-brand-secondary-pressed: var(--prim-color-blue-700);
    --shared-color-text-critical: var(--prim-color-red-500-default);
    --shared-color-text-critical-hover: var(--prim-color-red-600);
    --shared-color-text-critical-pressed: var(--prim-color-red-700);
    --shared-color-text-critical-dark-default: var(--prim-color-red-800);
    --shared-color-text-critical-dark-hover: var(--prim-color-red-900);
    --shared-color-text-success: var(--prim-color-green-500-default);
    --shared-color-text-success-hover: var(--prim-color-green-600);
    --shared-color-text-success-pressed: var(--prim-color-green-700);
    --shared-color-text-success-dark-default: var(--prim-color-green-800);
    --shared-color-text-success-dark-hover: var(--prim-color-green-900);
    --shared-color-text-activity-dark: var(--prim-color-blue-800);
    --shared-color-text-activity-dark-hover: var(--prim-color-blue-900);
    --shared-color-text-warning-dark: var(--prim-color-orange-800);
    --shared-color-text-warning-dark-hover: var(--prim-color-brand-primary-900);
  }
}

/* src/css/common/tokens/colors-border.css */
@layer common {
  html {
    --shared-color-border-brand: var(--prim-color-brand-primary-600-default);
    --shared-color-border-critical: var(--prim-color-red-500-default);
    --shared-color-border-disabled: var(--prim-color-neutral-500);
    --shared-color-border-distinct: var(--prim-color-neutral-300);
    --shared-color-border-full: var(--prim-color-black);
    --shared-color-border-invert: var(--prim-color-white);
    --shared-color-border-subtle: var(--prim-color-neutral-100);
    --shared-color-border-invert-subtle: var(--prim-color-white-t010);
    --shared-color-border-subtle-transparent: var(--prim-color-black-t010);
    --shared-color-border-success: var(--prim-color-green-500-default);
  }
}

/* src/css/common/tokens/sizes.css */
@layer common {
  html {
    --size-2: 0.125rem;
    --size-4: 0.25rem;
    --size-8: 0.5rem;
    --size-12: 0.75rem;
    --size-14: 0.875rem;
    --size-16: 1rem;
    --size-20: 1.25rem;
    --size-24: 1.5rem;
    --size-30: 1.875rem;
    --size-32: 2rem;
    --size-36: 2.25rem;
    --size-40: 2.5rem;
    --size-48: 3rem;
    --size-56: 3.5rem;
    --size-64: 4rem;
    --size-72: 4.5rem;
    --size-80: 5rem;
    --size-88: 5.5rem;
    --size-96: 6rem;
    --size-104: 6.5rem;
    --size-112: 7rem;
    --size-120: 7.5rem;
    --size-128: 8rem;
    --size-144: 9rem;
  }
  @media (width < 48rem) {
    html {
      --shared-spacing-sections-sm: var(--size-24);
      --shared-spacing-sections-md: var(--size-48);
      --shared-spacing-sections-lg: var(--size-64);
      --shared-spacing-sections-xl: var(--size-96);
    }
  }
  @media (width >= 48rem) {
    html {
      --shared-spacing-sections-sm: var(--size-32);
      --shared-spacing-sections-md: var(--size-64);
      --shared-spacing-sections-lg: var(--size-96);
      --shared-spacing-sections-xl: var(--size-128);
    }
  }
}

/* src/css/common/tokens/typography.css */
@layer common {
  html {
    --typo-Default-font-family: Poppins, sans-serif;
    --typo-HeadlineXXL: var(--typo-HeadlineXXL-font-weight) var(--typo-HeadlineXXL-font-size) / var(--typo-HeadlineXXL-line-height) var(--typo-Default-font-family);
    --typo-HeadlineXL: var(--typo-HeadlineXL-font-weight) var(--typo-HeadlineXL-font-size) / var(--typo-HeadlineXL-line-height) var(--typo-Default-font-family);
    --typo-HeadlineL: var(--typo-HeadlineL-font-weight) var(--typo-HeadlineL-font-size) / var(--typo-HeadlineL-line-height) var(--typo-Default-font-family);
    --typo-HeadlineM: var(--typo-HeadlineM-font-weight) var(--typo-HeadlineM-font-size) / var(--typo-HeadlineM-line-height) var(--typo-Default-font-family);
    --typo-HeadlineS: var(--typo-HeadlineS-font-weight) var(--typo-HeadlineS-font-size) / var(--typo-HeadlineS-line-height) var(--typo-Default-font-family);
    --typo-TextXL: var(--typo-TextXL-font-weight) var(--typo-TextXL-font-size) / var(--typo-TextXL-line-height) var(--typo-Default-font-family);
    --typo-TextL: var(--typo-TextL-font-weight) var(--typo-TextL-font-size) / var(--typo-TextL-line-height) var(--typo-Default-font-family);
    --typo-TextM: var(--typo-TextM-font-weight) var(--typo-TextM-font-size) / var(--typo-TextM-line-height) var(--typo-Default-font-family);
    --typo-TextS: var(--typo-TextS-font-weight) var(--typo-TextS-font-size) / var(--typo-TextS-line-height) var(--typo-Default-font-family);
    --typo-static-Default-font-family: Maax Finstral, sans-serif;
    --typo-static-HeadlineXXL: var(--typo-static-HeadlineXXL-font-weight) var(--typo-static-HeadlineXXL-font-size) / var(--typo-static-HeadlineXXL-line-height) var(--typo-static-Default-font-family);
    --typo-static-HeadlineXL: var(--typo-static-HeadlineXL-font-weight) var(--typo-static-HeadlineXL-font-size) / var(--typo-static-HeadlineXL-line-height) var(--typo-static-Default-font-family);
    --typo-static-HeadlineL: var(--typo-static-HeadlineL-font-weight) var(--typo-static-HeadlineL-font-size) / var(--typo-static-HeadlineL-line-height) var(--typo-static-Default-font-family);
    --typo-static-HeadlineM: var(--typo-static-HeadlineM-font-weight) var(--typo-static-HeadlineM-font-size) / var(--typo-static-HeadlineM-line-height) var(--typo-static-Default-font-family);
    --typo-static-HeadlineS: var(--typo-static-HeadlineS-font-weight) var(--typo-static-HeadlineS-font-size) / var(--typo-static-HeadlineS-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextXL: var(--typo-static-TextXL-font-weight) var(--typo-static-TextXL-font-size) / var(--typo-static-TextXL-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextL: var(--typo-static-TextL-font-weight) var(--typo-static-TextL-font-size) / var(--typo-static-TextL-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextM: var(--typo-static-TextM-font-weight) var(--typo-static-TextM-font-size) / var(--typo-static-TextM-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextS: var(--typo-static-TextS-font-weight) var(--typo-static-TextS-font-size) / var(--typo-static-TextS-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextXS: var(--typo-static-TextXS-font-weight) var(--typo-static-TextXS-font-size) / var(--typo-static-TextXS-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextXL-bold: var(--typo-static-TextXL-bold-font-weight) var(--typo-static-TextXL-bold-font-size) / var(--typo-static-TextXL-bold-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextL-bold: var(--typo-static-TextL-bold-font-weight) var(--typo-static-TextL-bold-font-size) / var(--typo-static-TextL-bold-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextM-bold: var(--typo-static-TextM-bold-font-weight) var(--typo-static-TextM-bold-font-size) / var(--typo-static-TextM-bold-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextS-bold: var(--typo-static-TextS-bold-font-weight) var(--typo-static-TextS-bold-font-size) / var(--typo-static-TextS-bold-line-height) var(--typo-static-Default-font-family);
    --typo-static-TextXS-bold: var(--typo-static-TextXS-bold-font-weight) var(--typo-static-TextXS-bold-font-size) / var(--typo-static-TextXS-bold-line-height) var(--typo-static-Default-font-family);
  }
  html {
    --typo-static-HeadlineXXL-font-size: 4rem;
    --typo-static-HeadlineXXL-line-height: 1.15;
    --typo-static-HeadlineXXL-font-weight: 400;
    --typo-static-HeadlineXXL-letter-spacing: -0.04em;
    --typo-static-HeadlineXL-font-size: 3rem;
    --typo-static-HeadlineXL-line-height: 1.15;
    --typo-static-HeadlineXL-font-weight: 400;
    --typo-static-HeadlineXL-letter-spacing: -0.01em;
    --typo-static-HeadlineL-font-size: 2.25rem;
    --typo-static-HeadlineL-line-height: 1.35;
    --typo-static-HeadlineL-font-weight: 400;
    --typo-static-HeadlineL-letter-spacing: -0.0225em;
    --typo-static-HeadlineM-font-size: 1.75rem;
    --typo-static-HeadlineM-line-height: 1.35;
    --typo-static-HeadlineM-font-weight: 400;
    --typo-static-HeadlineM-letter-spacing: -0.0175em;
    --typo-static-HeadlineS-font-size: 1.5rem;
    --typo-static-HeadlineS-line-height: 1.35;
    --typo-static-HeadlineS-font-weight: 400;
    --typo-static-HeadlineS-letter-spacing: -0.015em;
    --typo-static-TextXL-font-size: 1.25rem;
    --typo-static-TextXL-line-height: 1.35;
    --typo-static-TextXL-font-weight: 400;
    --typo-static-TextXL-letter-spacing: -0.01125em;
    --typo-static-TextL-font-size: 1.125rem;
    --typo-static-TextL-line-height: 1.35;
    --typo-static-TextL-font-weight: 400;
    --typo-static-TextL-letter-spacing: -0.01125em;
    --typo-static-TextM-font-size: 1rem;
    --typo-static-TextM-line-height: 1.35;
    --typo-static-TextM-font-weight: 400;
    --typo-static-TextM-letter-spacing: -0.01em;
    --typo-static-TextS-font-size: 0.875rem;
    --typo-static-TextS-line-height: 1.35;
    --typo-static-TextS-font-weight: 400;
    --typo-static-TextS-letter-spacing: -0.00875em;
    --typo-static-TextXS-font-size: 0.75rem;
    --typo-static-TextXS-line-height: 1.35;
    --typo-static-TextXS-font-weight: 400;
    --typo-static-TextXS-letter-spacing: -0.00875em;
    --typo-static-TextXL-bold-font-size: 1.25rem;
    --typo-static-TextXL-bold-line-height: 1.35;
    --typo-static-TextXL-bold-font-weight: 700;
    --typo-static-TextXL-bold-letter-spacing: -0.01125em;
    --typo-static-TextL-bold-font-size: 1.125rem;
    --typo-static-TextL-bold-line-height: 1.35;
    --typo-static-TextL-bold-font-weight: 700;
    --typo-static-TextL-bold-letter-spacing: -0.01125em;
    --typo-static-TextM-bold-font-size: 1rem;
    --typo-static-TextM-bold-line-height: 1.35;
    --typo-static-TextM-bold-font-weight: 700;
    --typo-static-TextM-bold-letter-spacing: -0.01em;
    --typo-static-TextS-bold-font-size: 0.875rem;
    --typo-static-TextS-bold-line-height: 1.35;
    --typo-static-TextS-bold-font-weight: 700;
    --typo-static-TextS-bold-letter-spacing: -0.00875em;
    --typo-static-TextXS-bold-font-size: 0.75rem;
    --typo-static-TextXS-bold-line-height: 1.35;
    --typo-static-TextXS-bold-font-weight: 700;
    --typo-static-TextXS-bold-letter-spacing: -0.00875em;
  }
  @media (width < 64em) {
    html {
      --typo-HeadlineXXL-font-size: 2.25rem;
      --typo-HeadlineXXL-line-height: 1.15;
      --typo-HeadlineXXL-font-weight: 400;
      --typo-HeadlineXXL-letter-spacing: -0.0225em;
      --typo-HeadlineXL-font-size: 1.75rem;
      --typo-HeadlineXL-line-height: 1.15;
      --typo-HeadlineXL-font-weight: 400;
      --typo-HeadlineXL-letter-spacing: -0.0175em;
      --typo-HeadlineL-font-size: 1.625rem;
      --typo-HeadlineL-line-height: 1.35;
      --typo-HeadlineL-font-weight: 400;
      --typo-HeadlineL-letter-spacing: -0.01625em;
      --typo-HeadlineM-font-size: 1.5rem;
      --typo-HeadlineM-line-height: 1.35;
      --typo-HeadlineM-font-weight: 400;
      --typo-HeadlineM-letter-spacing: -0.015em;
      --typo-HeadlineS-font-size: 1.25rem;
      --typo-HeadlineS-line-height: 1.35;
      --typo-HeadlineS-font-weight: 400;
      --typo-HeadlineS-letter-spacing: -0.0125em;
      --typo-TextXL-font-size: 1.125rem;
      --typo-TextXL-line-height: 1.35;
      --typo-TextXL-font-weight: 400;
      --typo-TextXL-letter-spacing: -0.01em;
      --typo-TextL-font-size: 1rem;
      --typo-TextL-line-height: 1.35;
      --typo-TextL-font-weight: 400;
      --typo-TextL-letter-spacing: -0.01em;
      --typo-TextM-font-size: 0.875rem;
      --typo-TextM-line-height: 1.35;
      --typo-TextM-font-weight: 400;
      --typo-TextM-letter-spacing: -0.00875em;
      --typo-TextS-font-size: 0.75rem;
      --typo-TextS-line-height: 1.35;
      --typo-TextS-font-weight: 400;
      --typo-TextS-letter-spacing: -0.0075em;
    }
  }
  @media (width >= 64em) {
    html {
      --typo-HeadlineXXL-font-size: 4rem;
      --typo-HeadlineXXL-line-height: 1.15;
      --typo-HeadlineXXL-font-weight: 400;
      --typo-HeadlineXXL-letter-spacing: -0.04em;
      --typo-HeadlineXL-font-size: 3rem;
      --typo-HeadlineXL-line-height: 1.15;
      --typo-HeadlineXL-font-weight: 400;
      --typo-HeadlineXL-letter-spacing: -0.01em;
      --typo-HeadlineL-font-size: 2.25rem;
      --typo-HeadlineL-line-height: 1.35;
      --typo-HeadlineL-font-weight: 400;
      --typo-HeadlineL-letter-spacing: -0.0225em;
      --typo-HeadlineM-font-size: 1.75rem;
      --typo-HeadlineM-line-height: 1.35;
      --typo-HeadlineM-font-weight: 400;
      --typo-HeadlineM-letter-spacing: -0.0175em;
      --typo-HeadlineS-font-size: 1.5rem;
      --typo-HeadlineS-line-height: 1.35;
      --typo-HeadlineS-font-weight: 400;
      --typo-HeadlineS-letter-spacing: -0.015em;
      --typo-TextXL-font-size: 1.25rem;
      --typo-TextXL-line-height: 1.35;
      --typo-TextXL-font-weight: 400;
      --typo-TextXL-letter-spacing: -0.01125em;
      --typo-TextL-font-size: 1.125rem;
      --typo-TextL-line-height: 1.35;
      --typo-TextL-font-weight: 400;
      --typo-TextL-letter-spacing: -0.01125em;
      --typo-TextM-font-size: 1rem;
      --typo-TextM-line-height: 1.35;
      --typo-TextM-font-weight: 400;
      --typo-TextM-letter-spacing: -0.01em;
      --typo-TextS-font-size: 0.875rem;
      --typo-TextS-line-height: 1.35;
      --typo-TextS-font-weight: 400;
      --typo-TextS-letter-spacing: -0.00875em;
    }
  }
}

/* src/css/common/theme.css */
@layer common {
  [data-theme=white],
  [data-theme=jakobskraut],
  [data-theme=estrich],
  [data-theme=estrichlight],
  [data-theme=leinen],
  [data-theme=sandstein],
  [data-theme=sandsteinlight] {
    --theme-foreground-color: var(--shared-color-text-primary);
  }
  [data-theme=terrakotta],
  [data-theme=schwarzesche],
  [data-theme=latsche],
  [data-theme=schlern],
  [data-theme=brand] {
    --theme-foreground-color: var(--shared-color-text-invert);
  }
  [data-theme=white] {
    --theme-background-color: var(--shared-color-surface-primary);
  }
  [data-theme=jakobskraut] {
    --theme-background-color: var(--shared-color-surface-jakobskraut);
  }
  [data-theme=terrakotta] {
    --theme-background-color: var(--shared-color-surface-terracotta);
  }
  [data-theme=schwarzesche] {
    --theme-background-color: var(--shared-color-surface-schwarz-esche);
  }
  [data-theme=latsche] {
    --theme-background-color: var(--shared-color-surface-latsche);
  }
  [data-theme=schlern] {
    --theme-background-color: var(--shared-color-surface-schlern);
  }
  [data-theme=estrich] {
    --theme-background-color: var(--shared-color-surface-estrich);
  }
  [data-theme=estrichlight] {
    --theme-background-color: var(--shared-color-surface-estrich-light);
  }
  [data-theme=leinen] {
    --theme-background-color: var(--shared-color-surface-leinen);
  }
  [data-theme=sandstein] {
    --theme-background-color: var(--shared-color-surface-sandstein);
  }
  [data-theme=sandsteinlight] {
    --theme-background-color: var(--shared-color-surface-sandstein-light);
  }
  [data-theme=brand] {
    --theme-background-color: var(--shared-color-surface-brand);
  }
  @media (prefers-contrast: more) {
    [data-theme=terrakotta] {
      --theme-background-color: var(--shared-color-surface-terracotta-dark);
    }
    [data-theme=schlern] {
      --theme-background-color: var(--shared-color-surface-schlern);
    }
  }
}

/* src/components/elements/accordion/accordion-item/accordion-item.css */
@layer components {
  .AccordionItem-title {
    align-items: center;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding-block: var(--AccordionItem-title-padding-block, var(--size-32));
    text-wrap: balance;
  }
  .AccordionItem-title::-webkit-details-marker {
    display: none;
  }
  .AccordionItem-titleIcon {
    flex-shrink: 0;
  }
  .AccordionItem[open] .AccordionItem-titleIcon {
    rotate: 180deg;
  }
  .AccordionItem-content {
    margin-block: var(--AccordionItem-content-padding-block);
  }
  @media (48em > width) {
    .AccordionItem {
      --AccordionItem-title-padding-block: var(--size-24);
      --AccordionItem-content-padding-block: var(--size-12) var(--size-48);
    }
  }
  @media (width >= 48em) {
    .AccordionItem {
      --AccordionItem-content-padding-block: 0 var(--size-64);
    }
  }
}

/* src/components/elements/accordion/accordion.css */
@layer components {
  .Accordion-item {
    border-block-start: 1px solid var(--Accordion-item-border-color, var(--shared-color-border-distinct));
  }
  .Accordion-item:last-child {
    border-block-end: 1px solid var(--Accordion-item-border-color, var(--shared-color-border-distinct));
  }
}

/* src/components/elements/badge/badge.css */
@layer components {
  .Badge--color1A,
  .Badge--color1B,
  .Badge--color1C,
  .Badge--color7A,
  .Badge--color7B,
  .Badge--color7C {
    --Badge-background-color: var(--shared-color-surface-subtle);
    --Badge-color: var(--shared-color-text-primary);
  }
  .Badge--color6A,
  .Badge--color6B,
  .Badge--color6C {
    --Badge-background-color: var(--shared-color-surface-success-light-default);
    --Badge-color: var(--shared-color-text-success-dark-default);
  }
  .Badge--color5A,
  .Badge--color5B,
  .Badge--color5C {
    --Badge-background-color: var(--shared-color-surface-warning-light-default);
    --Badge-color: var(--shared-color-text-warning-dark);
  }
  .Badge--color4A,
  .Badge--color4B,
  .Badge--color4C {
    --Badge-background-color: var(--shared-color-surface-critical-light-default);
    --Badge-color: var(--shared-color-text-critical-dark-default);
  }
  .Badge--color2A,
  .Badge--color2B,
  .Badge--color2C,
  .Badge--color3A,
  .Badge--color3B,
  .Badge--color3C {
    --Badge-background-color: var(--shared-color-surface-activity-light-default);
    --Badge-color: var(--shared-color-text-activity-dark);
  }
  .Badge--xs {
    --Badge-min-block-size: var(--size-20);
  }
  .Badge--md {
    --Badge-padding-inline: var(--size-8);
    --Badge-min-block-size: var(--size-32);
  }
  .Badge {
    align-items: center;
    background-color: var( --Badge-background-color, var(--shared-color-surface-subtle) );
    color: var(--Badge-color, var(--shared-color-text-primary));
    display: flex;
    min-block-size: var(--Badge-min-block-size, var(--size-24));
    padding-block: var(--size-2);
    padding-inline: var(--Badge-padding-inline, var(--size-4));
  }
}

/* src/components/elements/badge-list/badge-list.css */
@layer components {
  .BadgeList {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--size-4);
  }
}

/* src/components/elements/button/button.css */
@layer components {
  .Button {
    align-items: center;
    appearance: none;
    background-color: var(--Button-background-color);
    border: solid var(--shared-border-width-sm);
    border-color: var(--Button-border-color);
    color: var(--Button-color)!important;
    display: inline-flex;
    gap: var(--size-4);
    justify-content: center;
    padding: var(--Button-padding-block) var(--Button-padding-inline);
    text-decoration: none;
    transition:
      background-color var(--default-transition-duration),
      box-shadow var(--default-transition-duration),
      color var(--default-transition-duration),
      border-color var(--default-transition-duration);
    border-radius: 0.5rem;
  }
  .Button:active {
    outline: var(--focus-outline);
    outline-offset: var(--focus-outline-offset);
  }
  .Button--primary {
    --Button-background-color: var(--shared-color-surface-brand);
    --Button-border-color: transparent;
    --Button-color: var(--shared-color-text-invert);
  }
  .Button--primary:hover,
  .Button--primary:focus-visible {
    --Button-background-color: var(--shared-color-surface-brand-hover);
  }
  .Button--primary:active {
    --Button-background-color: var(--shared-color-surface-brand-pressed);
  }
  .Button--primary:disabled {
    --Button-background-color: var(--shared-color-surface-disabled);
  }
  .Button--primary:disabled,
  .Button--secondary:disabled,
  .Button--tertiary:disabled {
    --Button-color: var(--shared-color-text-disabled);
  }
  .Button--secondary {
    --Button-background-color: transparent;
    --Button-border-color: var(--shared-color-border-full);
    --Button-color: var(--shared-color-text-primary);
  }
  .Button--secondary:not(:disabled):hover {
    --Button-background-color: var(--shared-color-surface-invert);
    --Button-color: var(--shared-color-text-invert);
  }
  .Button--secondary:disabled {
    --Button-border-color: var(--shared-color-border-disabled);
  }
  .Button--secondary:active {
    --Button-background-color: var(--shared-color-surface-invert-pressed);
    --Button-color: var(--shared-color-text-invert);
  }
  .Button--tertiary {
    --Button-background-color: transparent;
    --Button-border-color: transparent;
    --Button-color: var(--shared-color-text-primary);
  }
  .Button--tertiary:not(:disabled):hover {
    --Button-background-color: var(--shared-color-surface-transparent-hover);
  }
  .Button--tertiary:active {
    --Button-background-color: var(--shared-color-surface-transparent-pressed);
  }
  .Button--primary.Button--neutral {
    --Button-background-color: var(--shared-color-surface-invert);
  }
  .Button--primary.Button--neutral:hover,
  .Button--primary.Button--neutral:focus-visible {
    --Button-background-color: var(--shared-color-surface-invert-hover);
  }
  .Button--primary.Button--neutral:active {
    --Button-background-color: var(--shared-color-surface-invert-pressed);
  }
  .Button--sm {
    --Button-padding-block: var(--size-4);
    --Button-padding-inline: var(--size-12);
    font: var(--typo-static-TextM-bold);
  }
  .Button--md {
    --Button-padding-block: var(--size-8);
    --Button-padding-inline: var(--size-24);
    font: var(--typo-static-TextM-bold);
  }
  .Button--lg {
    --Button-padding-block: var(--size-12);
    --Button-padding-inline: var(--size-24);
    font: var(--typo-static-TextL-bold);
  }
  .Button--sm.Button--iconOnly {
    --Button-padding-block: var(--size-2);
    --Button-padding-inline: var(--size-2);
  }
  .Button--md.Button--iconOnly {
    --Button-padding-block: var(--size-4);
    --Button-padding-inline: var(--size-4);
  }
  .Button--lg.Button--iconOnly {
    --Button-padding-block: var(--size-8);
    --Button-padding-inline: var(--size-8);
  }
  .Button--iconEnd {
    flex-direction: row-reverse;
  }
  .Button-icon {
    flex-shrink: 0;
  }
  .Button--primary .Badge {
    background-color: var(--shared-color-surface-invert-subtle);
    color: var(--shared-color-text-invert);
    margin-inline-start: var(--size-4);
  }
  .Button-loader {
    display: none;
  }
  .Button--loading .Button-loader {
    animation: rotation 1s linear infinite;
    block-size: var(--size-16);
    border: 2px solid var(--shared-color-text-disabled);
    border-bottom-color: transparent;
    border-radius: 50%;
    display: inline-block;
    inline-size: var(--size-16);
    margin-inline-end: var(--size-4);
  }
  @keyframes rotation {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  @media (width < 80rem) {
    .Button--responsive {
      --Button-padding-block: var(--size-8);
      --Button-padding-inline: var(--size-24);
      font: var(--typo-static-TextM-bold);
    }
    .Button--responsive.Button--iconOnly {
      --Button-padding-block: var(--size-4);
      --Button-padding-inline: var(--size-4);
    }
  }
  @media (width >= 80rem) {
    .Button--responsive {
      --Button-padding-block: var(--size-12);
      --Button-padding-inline: var(--size-24);
      font: var(--typo-static-TextL-bold);
    }
    .Button--responsive.Button--iconOnly {
      --Button-padding-block: var(--size-8);
      --Button-padding-inline: var(--size-8);
    }
  }
}

/* src/components/elements/card/card.css */
@layer components {
  .Card {
    background: var(--shared-color-surface-primary);
    block-size: 100%;
    color: var(--shared-color-text-secondary);
    display: flex;
    flex-direction: column;
    min-block-size: 18.5rem;
    position: relative;
    transform: var(--Card-transform, none);
    transition: transform var(--default-transition-duration);
  }
  .Card:has(.Card-headingLink:hover, .Card-headingLink:focus-visible) {
    --Card-headingLink-color: var(--shared-color-text-primary);
    --Card-locationArrow-color: var(--shared-color-text-brand);
  }
  @media (prefers-reduced-motion: no-preference) {
    .Card:has(.Card-headingLink:hover, .Card-headingLink:focus-visible) {
      --Card-transform: scale( calc(368 / 360) );
    }
  }
  .Card-image {
    aspect-ratio: 16 / 9;
    margin-block-end: calc(-1 * var(--size-8));
  }
  .Card-image img {
    inline-size: 100%;
  }
  .Card-content {
    display: grid;
    grid-template-rows: auto 2fr auto;
    min-block-size: inherit;
    padding: var(--size-32) var(--size-24);
  }
  .Card-content:has(.Card-partnerImage) {
    grid-template-rows: auto 2fr 2fr auto;
    min-block-size: 100%;
  }
  .Card-additionalInfo {
    margin-block-end: var(--size-8);
  }
  .Card-additionalInfoItem {
    display: inline;
  }
  .Card-additionalInfoItem:not(:last-child)::after {
    content: "|";
    margin-inline-end: var(--size-4);
  }
  .Card-heading {
    hyphens: auto;
    margin-block-end: var(--Card-heading-margin-block-end, var(--size-40));
    text-wrap: balance;
  }
  .Card-headingLink {
    -webkit-box-orient: vertical;
    color: var(--Card-headingLink-color, var(--shared-color-text-primary));
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow: hidden;
    text-decoration: none;
    transition: color var(--default-transition-duration);
  }
  .Card-headingLink:focus-visible {
    outline: none;
  }
  .Card-headingLink::after {
    content: "";
    cursor: pointer;
    inset: 0;
    position: absolute;
    transition:
      outline-color var(--default-transition-duration),
      outline-offset var(--default-transition-duration),
      outline-width var(--default-transition-duration);
  }
  .Card-headingLink:focus-visible::after {
    outline: var(--focus-outline);
    outline-offset: var(--focus-outline-offset);
  }
  .Card-location {
    align-items: flex-end;
    display: flex;
    gap: var(--size-4);
    margin-block-start: auto;
  }
  .Card-locationPin {
    flex-shrink: 0;
  }
  .Card-locationName {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .Card-locationArrow {
    color: var(--Card-locationArrow-color, var(--shared-color-text-primary));
    flex-shrink: 0;
    margin-inline-start: auto;
    transition: color var(--default-transition-duration);
  }
  .Card-partnerImage {
    align-self: end;
    block-size: var(--Card-partnerImage-block-size, var(--size-48));
    margin-block-end: var(--size-8);
  }
  @media (48em > width) {
    .Card {
      --Card-heading-margin-block-end: var(--size-24);
      --Card-partnerImage-block-size: var(--size-32);
    }
  }
}

/* src/components/elements/contact-block/contact-block.css */
@layer components {
  .ContactBlock {
    border-block: var(--border-distinct);
    display: flex;
    gap: var(--ContactBlock-gap, var(--size-24));
    min-inline-size: 21.875rem;
    padding-block: var(--ContactBlock-padding-block, var(--size-40));
  }
  .ContactBlock-kicker {
    color: var(--shared-color-text-secondary);
    margin-block-end: var(--size-8);
  }
  .ContactBlock-position {
    margin-block-start: var(--size-16);
  }
  .ContactBlock-image {
    flex-shrink: 0;
    inline-size: var(--ContactBlock-image-size, var(--size-128));
  }
  .ContactBlock-data {
    display: flex;
    flex-direction: column;
  }
  .ContactBlock-partnerLogo {
    block-size: var(--ContactBlock-partnerLogo-block-size, var(--size-48));
    inline-size: auto;
    margin-block-start: var(--size-16);
  }
  .ContactBlock-address {
    font-style: normal;
    margin-block-start: var(--size-24);
  }
  .ContactBlock-partnerDetails {
    margin-block-start: var(--size-24);
  }
  @media (48em > width) {
    .ContactBlock {
      --ContactBlock-gap: var(--size-16);
      --ContactBlock-image-size: var(--size-96);
      --ContactBlock-padding-block: var(--size-24);
      --ContactBlock-partnerLogo-block-size: var(--size-32);
    }
  }
}

/* src/components/elements/card-user-profile/card-user-profile.css */
@layer components {
  .CardUserProfile {
    background-color: inherit;
  }
  .CardUserProfile-header {
    align-items: center;
    display: flex;
    gap: var(--size-12);
  }
  .CardUserProfile-header--stacked {
    align-items: initial;
    flex-flow: column;
  }
  .CardUserProfile-avatar,
  .CardUserProfile-avatar img {
    block-size: var(--CardUserProfile-avatar-size);
    border-radius: 50%;
    display: inline-block;
    inline-size: var(--CardUserProfile-avatar-size);
    object-fit: cover;
  }
  .CardUserProfile-organisation {
    color: var(--shared-color-text-secondary);
  }
  .CardUserProfile-contactDetails {
    display: flex;
    flex-flow: column;
    gap: var(--size-12);
    margin-block-start: var(--size-24);
  }
  .CardUserProfile-contactDetailsItem {
    align-items: center;
    display: flex;
    gap: var(--size-12);
  }
  .CardUserProfile-name--bold {
    font-weight: 700;
  }
  @media (width < 48rem) {
    .CardUserProfile-avatar,
    .CardUserProfile-avatar img {
      --CardUserProfile-avatar-size: var(--size-64);
    }
  }
  @media (width >= 48rem) {
    .CardUserProfile-avatar,
    .CardUserProfile-avatar img {
      --CardUserProfile-avatar-size: var(--size-80);
    }
  }
}

/* src/components/elements/datetime/form/form.css */
@layer components {
  .DateTimeForm {
    display: grid;
    gap: var(--size-12);
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12em), 1fr));
  }
}

/* src/components/elements/datetime/datetime.css */
@layer components {
  .DateTime-title + .DateTime-content {
    margin-block-start: var(--size-12);
  }
  .DateTime-errors {
    margin-block-start: var(--size-12);
  }
}

/* src/components/elements/dialog/dialog.css */
@layer components {
  .Dialog {
    border: none;
    inline-size: 100%;
    margin: auto;
    max-block-size: var(--Dialog-max-block-size);
    max-inline-size: var(--Dialog-max-inline-size);
    overflow: hidden;
    padding: 0;
  }
  .Dialog[open] {
    display: flex;
    flex-direction: column;
  }
  .Dialog--withIframe {
    --Dialog-padding: 0;
    container-type: inline-size;
  }
  .Dialog::backdrop {
    background: rgb(0 0 0 / 0.5);
  }
  .Dialog-header {
    align-items: center;
    background: var(--shared-color-surface-sandstein-light);
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    padding: var(--size-24);
    padding-block-end: var(--size-12);
  }
  .Dialog-close {
    background: var(--shared-color-surface-sandstein-light);
  }
  .Dialog-heading {
    inline-size: calc(100% - 1rem - var(--size-8));
  }
  .Dialog-content {
    block-size: 100%;
    overflow: auto;
    padding: var(--Dialog-padding, var(--size-32));
  }
  .Dialog-iframe {
    block-size: 100%;
    border: none;
    display: block;
    inline-size: 100%;
  }
  body:has(.Dialog[open]) {
    overflow: hidden;
  }
  @media (48em > width) {
    .Dialog {
      --Dialog-max-block-size: 100dvh;
      --Dialog-max-inline-size: 100vw;
    }
  }
  @media (width >= 48em) {
    .Dialog {
      --Dialog-max-block-size: calc(100dvh - var(--size-128) * 2);
      --Dialog-max-inline-size: min(70rem, calc(100vw - var(--size-32)));
    }
  }
}

/* src/components/elements/error/error.css */
@layer components {
  .Error {
    color: var(--shared-color-text-critical);
    font-size: var(--typo-TextS);
  }
  .Error > * + * {
    margin-block-start: 1em;
  }
}

/* src/components/elements/file-uploader/file-uploader.css */
@layer components {
  .FileUploader-fallback {
    align-items: center;
    background-color: var(--shared-color-surface-subtle-lighter);
    border: var(--border-distinct);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-block-start: var(--FileUploader-margin-block-start, var(--size-24));
    padding: var(--size-32) var(--size-24);
    position: relative;
    transition: all var(--default-transition-duration);
  }
  .FileUploader-fallback:hover,
  .FileUploader-fallback.is-dragover {
    border-color: var(--shared-color-border-full);
  }
  .FileUploader-fallback.is-dragover {
    border-style: dashed;
  }
  .FileUploader-description {
    margin-block-start: var( --FileUploader-description-margin-block-start, var(--size-24) );
  }
  .FileUploader-sizeWarning {
    margin-block-start: var(--size-8);
  }
  .FileUploader-fallbackInput {
    cursor: pointer;
    inset: 0;
    opacity: 0;
    position: absolute;
  }
  .FileUploader-files:not([hidden]),
  .FileUploader-errors:not([hidden]) {
    display: flex;
    flex-direction: column;
    gap: var(--size-16);
    margin-block-start: var(--size-16);
  }
  .FileUploader-file:not([hidden]) {
    align-items: center;
    display: flex;
    gap: var(--size-4);
  }
  .FileUploader-fileDescription {
    flex: 1;
  }
  .FileUploader-success,
  .FileUploader-failed {
    transform: translateY(-10%);
  }
  .FileUploader-success {
    color: var(--shared-color-surface-success);
  }
  .FileUploader-error,
  .FileUploader-failed {
    color: var(--shared-color-text-critical);
  }
  .FileUploader-loadingIndicator,
  .FileUploader-icon {
    flex-shrink: 0;
  }
  .FileUploader-loadingIndicator[hidden],
  .FileUploader-icon[hidden],
  .FileUploader-loadingBar[hidden] {
    display: none;
  }
  .FileUploader-loadingIndicator {
    background-color: var(--shared-color-surface-subtle);
    block-size: var(--size-16);
    border-radius: 50%;
    display: block;
    inline-size: var(--size-16);
  }
  .FileUploader-contents {
    align-items: center;
    display: flex;
    inline-size: calc(100% - var(--size-40));
  }
  .FileUploader-loadingBar,
  .FileUploader-name {
    flex: 1;
  }
  .FileUploader-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .FileUploader-loadingBar {
    background-image:
      linear-gradient(
        to right,
        var(--shared-color-surface-invert) 0% var(--FileUploader-progress, 0),
        var(--shared-color-surface-subtle) var(--FileUploader-progress, 0) 100%);
    block-size: var(--size-2);
    inline-size: 100%;
    padding: 0 var(--size-4);
  }
  .FileUploader-removeButton[disabled] .FileUploader-fileRemoveIcon {
    color: var(--shared-color-surface-subtle);
    cursor: not-allowed;
  }
  @media (48em > width) {
    .FileUploader {
      --FileUploader-description-margin-block-start: var(--size-32);
      --FileUploader-margin-block-start: var(--size-32);
    }
  }
}

/* src/components/elements/form-element/option/checkbox.css */
@layer components {
  .Checkbox {
    --bg-image--checked: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.7949219,7.095703 6.1816406,9.601563 12.205078,3.2753906 13.689453,4.8359375 6.1816406,12.724609 2.3105469,8.65625 Z' fill='white'/%3E%3C/svg%3E");
    --bg-image--checkedDisabled: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.7949219,7.095703 6.1816406,9.601563 12.205078,3.2753906 13.689453,4.8359375 6.1816406,12.724609 2.3105469,8.65625 Z' fill='white'/%3E%3C/svg%3E");
    --bg-color--checked: var(--shared-color-surface-brand);
    --bg-color--checkedDisabled: var(--shared-color-surface-disabled);
    --Option-border-color--checked: var(--shared-color-border-brand);
  }
  .Checkbox :disabled:checked + .FormElementLabel::before {
    --Option-border-color: transparent;
  }
}

/* src/components/elements/form-element/option/radio.css */
@layer components {
  .Radio {
    --Option-border-radius: 50%;
    --bg-image--checked: radial-gradient( var(--shared-color-surface-brand) 50%, transparent 50% );
    --bg-image--checkedDisabled: radial-gradient( var(--shared-color-text-disabled) 50%, var(--shared-color-surface-disabled-secondary) 50% );
  }
}

/* src/components/elements/form-element/option/option.css */
@layer components {
  .Option input,
  .Option-next input {
    inset-block-start: 0;
    inset-inline-start: 0;
    opacity: 0.01;
    position: absolute;
  }
  .Option .FormElementLabel {
    align-items: center;
    display: flex;
  }
  .Option .FormElementLabel::before,
  .Option-next::before {
    --Option-background-color: var(--shared-color-surface-primary);
    background: var(--background-image, none) 100% / 100% no-repeat;
    background-color: var(--Option-background-color);
    block-size: var(--size-16);
    border: 0.0625rem solid var(--Option-border-color, var(--shared-color-border-distinct));
    border-radius: var(--Option-border-radius, 0);
    content: "";
    flex-shrink: 0;
    inline-size: var(--size-16);
    margin-inline-end: var(--FormElementLabel-gap, var(--size-8));
  }
  .Option :checked + .FormElementLabel::before,
  .Option-next:has(:checked)::before {
    --Option-background-color: var(--bg-color--checked);
    --background-image: var(--bg-image--checked);
    --Option-border-color: var(--Option-border-color--checked);
  }
  .Option :focus-visible + .FormElementLabel::before,
  .Option-next:has(:focus-visible)::before {
    --Option-border-color: transparent;
    outline: var(--focus-outline);
  }
  .Option :not(:disabled)[aria-invalid=true] + .FormElementLabel::before,
  .Option-next:has(:not(:disabled)[aria-invalid=true])::before {
    --Option-border-color: var(--shared-color-border-critical);
  }
  .Option :not(:checked):disabled + .FormElementLabel::before,
  .Option-next:has(:not(:checked):disabled)::before {
    --Option-background-color: var(--shared-color-surface-disabled-secondary);
  }
  .Option :disabled:checked + .FormElementLabel::before,
  .Option-next:has(:disabled:checked)::before {
    --Option-background-color: var(--bg-color--checkedDisabled);
    --background-image: var(--bg-image--checkedDisabled);
  }
  .Option :disabled + .FormElementLabel,
  .Option-next:has(:disabled)::before {
    color: var(--shared-color-text-secondary);
  }
  @media (width >= 64em) {
    .Option,
    .Option-next {
      --FormElementLabel-gap: var(--size-12);
    }
  }
}

/* src/components/elements/form-element/form-element.css */
@layer components {
  .FormElement {
    grid-column: var(--FormElement-grid-column);
    position: relative;
  }
  .FormElement--smallGap {
    padding-top: var(--FormElement-smallGap-padding-top);
  }
  .FormElement--mediumGap {
    padding-top: var(--FormElement-mediumGap-padding-top);
  }
  .FormElement--largeGap {
    padding-top: var(--FormElement-largeGap-padding-top);
  }
  .FormElement--centered {
    justify-self: center;
  }
  .FormElement-description,
  .FormElement-error {
    margin-block-start: var(--size-8);
  }
  .FormElement-error {
    color: var(--shared-color-text-critical);
  }
  .FormElement.is-invalid .FormElementLabel {
    color: var(--shared-color-text-critical);
  }
  .FormElement.is-invalid .Input--select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M12 15.038 6.345 9.384 7.4 8.331l4.6 4.6 4.6-4.6 1.053 1.053z' fill='%23a6504a'/%3E%3C/svg%3E");
  }
  .FormElement-error.is-hidden {
    display: none;
  }
  @media (48em > width) {
    .FormElement {
      --FormElement-grid-column: 1 / -1;
      --FormElement-largeGap-padding-top: var(--size-64);
      --FormElement-mediumGap-padding-top: var(--size-48);
      --FormElement-smallGap-padding-top: var(--size-24);
    }
  }
  @media (width >= 48em) {
    .FormElement {
      --FormElement-grid-column: var(--start, auto) / span var(--span, 12);
      --FormElement-largeGap-padding-top: var(--size-128);
      --FormElement-mediumGap-padding-top: var(--size-56);
      --FormElement-smallGap-padding-top: var(--size-32);
    }
  }
}

/* src/components/elements/form/fieldset/fieldset.css */
@layer components {
  .Fieldset {
    border: none;
    grid-column: var(--Fieldset-grid-column);
    min-inline-size: 0;
    padding: 0;
  }
  .Fieldset-legend {
    display: contents;
    float: inline-start;
    inline-size: 100%;
  }
  .Fieldset-label {
    display: block;
    margin-block-end: var(--size-8);
  }
  .Fieldset-label.has-error {
    color: var(--shared-color-text-critical);
  }
  .Fieldset-description {
    margin-block-start: var(--size-8);
  }
  .Fieldset-wrapper {
    display: flex;
    flex-direction: var(--Fieldset-wrapper-flex-direction);
    flex-wrap: var(--Fieldset-wrapper-flex-wrap);
    gap: var(--Fieldset-wrapper-gap, var(--size-24));
  }
  .Fieldset-wrapper--col {
    --Fieldset-wrapper-flex-direction: column;
    --Fieldset-wrapper-flex-wrap: none;
  }
  .Fieldset-wrapper--row {
    --Fieldset-wrapper-flex-direction: row;
    --Fieldset-wrapper-flex-wrap: wrap;
    --Fieldset-wrapper-gap: var(--size-48);
  }
  @media (48em > width) {
    .Fieldset {
      --Fieldset-grid-column: 1 / -1;
    }
  }
  @media (width >= 48em) {
    .Fieldset {
      --Fieldset-grid-column: var(--start, auto) / span var(--span, 12);
    }
    .Fieldset-wrapper--col {
      --Fieldset-wrapper-gap: var(--size-32);
    }
  }
  .Fieldset.is-invalid .FormElementLabel {
    color: var(--shared-color-text-critical);
  }
}

/* src/components/elements/form/form.css */
@layer components {
  .Form {
    background-color: var(--Form-background, transparent);
    padding: var(--Form-padding, 0);
  }
  .Form--withPadding {
    --Form-padding: var(--size-24);
  }
}

/* src/components/elements/icon/icon.css */
@layer components {
  .Icon {
    aspect-ratio: 1;
    display: block;
    fill: currentColor;
    inline-size: var(--Icon-size);
  }
  .Icon--small {
    --Icon-size: var(--size-16);
  }
  .Icon--medium {
    --Icon-size: var(--size-24);
  }
  .Icon--large {
    --Icon-size: var(--size-32);
  }
  .Icon--xlarge {
    --Icon-size: var(--size-48);
  }
  .Icon--xxlarge {
    --Icon-size: var(--size-64);
  }
}

/* src/components/elements/form-element/input/input.css */
@layer components {
  .Input {
    --Input-border-color: var(--shared-color-border-distinct);
    appearance: none;
    background-color: var(--shared-color-surface-primary);
    border: var(--shared-border-width-sm) solid var(--Input-border-color);
    color: var(--Input-color, inherit);
    display: block;
    font: inherit;
    inline-size: 100%;
    line-height: var(--input-button-lh);
    min-block-size: var(--input-min-block-size);
    padding: var(--size-8);
    padding-inline-start: var(--size-16);
  }
  .Input:disabled {
    background-color: var(--shared-color-surface-disabled-secondary);
    color: var(--shared-color-text-disabled);
    pointer-events: none;
  }
  .Input::placeholder {
    color: var(--shared-color-text-secondary);
  }
  .Input:not(:disabled, :focus-visible)[aria-invalid=true] {
    --Input-border-color: var(--shared-color-border-critical);
    --Input-color: var(--shared-color-text-critical);
  }
  .Input:focus-visible {
    --Input-border-color: transparent;
    outline-offset: 0;
  }
}

/* src/components/elements/form-element/label/label.css */
@layer components {
  .FormElementLabel--icon {
    align-items: center;
    display: flex;
    gap: var(--size-8);
  }
  @media (width >= 48em) {
    .FormElementLabel {
      align-self: flex-end;
    }
  }
}

/* src/components/elements/link/link.css */
@layer components {
  .Link {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: var(--size-2);
  }
  .Link-icon {
    flex-shrink: 0;
  }
  .Link--iconStart {
    flex-direction: row-reverse;
    gap: var(--size-8);
  }
}

/* src/components/elements/link-card/link-card.css */
@layer components {
  .LinkCard {
    display: block;
    overflow: hidden;
  }
  .LinkCard picture {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    overflow: clip;
  }
  .LinkCard img {
    background-color: var(--shared-color-surface-sandstein-light);
    inline-size: 100%;
    transition: transform 0.2s ease-in-out;
  }
  .LinkCard:hover img,
  .LinkCard:focus img {
    transform: scale(103%);
  }
  .LinkCard-label {
    display: block;
    margin-block-start: var(--size-12);
    text-decoration: none;
  }
  @media (width < 48rem) {
    .LinkCard {
      display: block;
    }
    .LinkCard-label {
      word-break: break-word;
    }
  }
}

/* src/components/elements/notecard/notecard.css */
@layer components {
  .Notecard:not([hidden]) {
    align-items: start;
    background-color: var( --Notecard-background-color, var(--shared-color-surface-primary) );
    display: flex;
    gap: var(--size-16);
    padding: var(--size-16);
  }
  .Notecard-icon {
    flex: 0 0 var(--size-24);
  }
  .Notecard-error,
  .Notecard-info,
  .Notecard-note,
  .Notecard-success {
    color: var(--shared-color-text-invert);
  }
  .Notecard-info {
    --Notecard-background-color: var(--shared-color-surface-schlern);
  }
  .Notecard-note {
    --Notecard-background-color: var(--shared-color-surface-latsche);
  }
  .Notecard-success {
    --Notecard-background-color: var(--shared-color-surface-success);
  }
  .Notecard-warning {
    --Notecard-background-color: var(--shared-color-surface-jakobskraut);
  }
  .Notecard-error {
    --Notecard-background-color: var(--shared-color-surface-critical);
  }
}

/* src/components/elements/page-title/page-title.css */
@layer components {
  .PageTitle {
    display: grid;
    gap: var(--size-8);
  }
  @media (width < 48rem) {
    .PageTitle {
      grid-template-columns: 1fr;
      grid-template-rows: repeat(3, auto);
    }
  }
  @media (width >= 48rem) {
    .PageTitle {
      grid-template-columns: auto 1fr;
      grid-template-rows: repeat(2, auto);
    }
  }
  .PageTitle-title {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .PageTitle-subText {
    grid-row: 2/3;
  }
  @media (width < 48rem) {
    .PageTitle-subText {
      grid-column: 1/2;
    }
  }
  @media (width >= 48rem) {
    .PageTitle-subText {
      grid-column: 1/3;
    }
  }
  @media (width < 48rem) {
    .PageTitle-helpText {
      grid-column: 1/2;
      grid-row: 3/4;
      margin-block-start: var(--size-32);
    }
  }
  @media (width >= 48rem) {
    .PageTitle-helpText {
      grid-column: 2/3;
      grid-row: 1/2;
      justify-self: end;
      margin-block-start: initial;
    }
  }
}

/* src/components/elements/partner-logo/partner-logo.css */
@layer components {
  .PartnerLogo {
    block-size: auto;
    display: block;
    inline-size: auto;
    max-block-size: 100%;
    max-inline-size: 100%;
  }
}

/* src/components/elements/option-card/option-card.css */
@layer components {
  .OptionCard {
    align-items: center;
    background-color: var(--shared-color-surface-primary);
    border: var(--border-distinct);
    display: flex;
    gap: var(--OptionCard-gap);
    justify-content: var(--OptionCard-justify-content, space-between);
    padding: var(--OptionCard-padding);
    &:has(:checked) {
      border: var(--border-full);
      outline: var(--focus-outline-sm);
    }
  }
  .OptionCard-label {
    align-items: center;
    display: flex;
    gap: var(--size-12);
    line-height: 0;
    position: relative;
  }
  .OptionCard-helpText {
    color: var(--shared-color-text-secondary);
    margin-block-start: var(--size-8);
  }
  .OptionCard-media {
    flex-shrink: 0;
  }
  @media (width < 48rem) {
    .OptionCard {
      --OptionCard-gap: var(--size-16);
      --OptionCard-padding: var(--size-16);
    }
  }
  @media (width >= 48rem) {
    .OptionCard {
      --OptionCard-gap: var(--size-20);
      --OptionCard-padding: var(--size-32) var(--size-24);
    }
    .OptionCard--rich,
    .OptionCard--basic {
      flex-direction: column-reverse;
      --OptionCard-justify-content: center;
      .OptionCard-main {
        display: grid;
        place-items: center;
      }
      .OptionCard-helpText {
        text-align: center;
      }
    }
  }
}

/* src/components/elements/range/range.css */
@layer components {
  .Range {
    inline-size: 100%;
    margin: 0;
  }
}

/* src/components/elements/rich-text/rich-text.css */
@layer components {
  .RichText {
    container: rich-text / inline-size;
  }
  .RichText th,
  .RichText td {
    border: 1px solid var(--shared-color-border-disabled);
    padding: var(--size-4) var(--size-8);
    vertical-align: top;
  }
  @media (width < 48em) {
    .RichText th,
    .RichText td {
      hyphens: auto;
      word-wrap: break-word;
    }
  }
  .RichText :is(h1, h2, h3, h4, h5, h6) {
    text-wrap: balance;
  }
  .RichText h1 + h2,
  .RichText h2 + h3,
  .RichText h3 + h4 {
    margin-block-start: var(--size-16);
  }
  .RichText h2 + h5 {
    margin-block-start: var(--size-16);
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
    margin-block-start: var(--size-16);
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + .Picture {
    margin-block-start: var(--size-16);
  }
  .RichText h1 + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
    margin-block-start: var(--size-24);
  }
  .RichText h2 + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
    margin-block-start: var(--size-24);
  }
  .RichText h3 + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
    margin-block-start: var(--size-24);
  }
  .RichText h4 + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
    margin-block-start: var(--size-24);
  }
  .RichText h5 + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
    margin-block-start: var(--size-24);
  }
  @media (48em > width) {
    .RichText h5 + :is(p, ul, ol, pre, table, blockquote, img, iframe) {
      margin-block-start: var(--size-16);
    }
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + h1 {
    margin-block-start: var(--size-40);
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + h2 {
    margin-block-start: var(--size-40);
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + h3 {
    margin-block-start: var(--size-40);
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + h4 {
    margin-block-start: var(--size-40);
  }
  .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + h5 {
    margin-block-start: var(--size-40);
  }
  @media (48em > width) {
    .RichText :is(p, ul, ol, pre, table, blockquote, img, iframe) + h5 {
      margin-block-start: var(--size-32);
    }
  }
  .RichText li + li,
  .RichText :is(ul, ol) :is(ul, ol) li:first-child {
    margin-block-start: var(--size-16);
  }
  .RichText :is(p, ol, li) + :is(p, ol, li) {
    margin-block-start: var(--size-16);
  }
  @container (inline-size < 48em) {
    .RichText h1,
    .RichText h2,
    .RichText h3 {
      hyphens: auto;
      word-break: break-word;
    }
  }
  .RichText :is(pre, pre code, iframe, img, table) {
    inline-size: 100%;
  }
  .RichText pre {
    align-items: center;
    display: flex;
    margin: 0;
    white-space: pre-wrap;
    word-wrap: break-word;
  }
  .RichText pre code {
    display: block;
  }
  .RichText pre,
  .RichText code:not(:is(pre > code)) {
    background-color: var(--shared-color-surface-subtle-lighter);
    display: inline-flex;
  }
  .RichText pre {
    padding-block: var(--size-8);
    padding-inline: var(--size-12);
  }
  .RichText code:not(:is(pre > code)) {
    padding-inline: var(--size-8);
  }
  .RichText :is(ol, ul) {
    list-style: revert;
    padding-inline-start: 1.2em;
  }
  .RichText ul > li {
    list-style-type: square;
    padding-inline-start: 0.35em;
  }
  .RichText li + li {
    margin-block-start: var(--size-16);
  }
  .RichText :is(strong, b) {
    font-weight: 500;
  }
  .RichText :is(em, i) {
    font-style: italic;
  }
  .RichText :is(sub, sup) {
    all: revert;
    line-height: 1;
  }
  .RichText blockquote {
    border-inline-start: 0.4rem solid var(--shared-color-border-brand);
    padding-inline-start: 1em;
  }
}

/* src/components/elements/select/select.css */
@layer components {
  .Input--select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M12 15.038 6.345 9.384 7.4 8.331l4.6 4.6 4.6-4.6 1.053 1.053z'/%3E%3C/svg%3E");
    background-position: right var(--size-8) center;
    background-repeat: no-repeat;
    background-size: var(--size-24);
    padding-inline-end: var(--size-40);
  }
  [dir=rtl] .Input--select {
    background-position-x: var(--size-8);
  }
  .Input--select:not(.is-touched):required:invalid {
    color: var(--shared-color-text-secondary);
  }
}

/* src/components/elements/status-messages/status-messages.css */
@layer components {
  .StatusMessages {
    margin-block-end: var(--size-32);
  }
  .StatusMessages-container {
    padding: var(--size-24);
  }
  .StatusMessages-heading {
    font-weight: 500;
  }
  .StatusMessages-container + .StatusMessages-container {
    margin-block-start: 1rem;
  }
  .StatusMessages-container--error {
    background: var(--c-decoration-error);
    color: var(--c-typo-on-error);
  }
  .StatusMessages-container--success {
    background: var(--c-decoration-success);
    color: var(--c-typo-on-success);
  }
  .StatusMessages-container--info,
  .StatusMessages-container--status {
    background: var(--c-decoration-bg-light);
  }
  :is(.StatusMessages-container--error, .StatusMessages-container--success) .StatusMessages-messages li::marker {
    color: currentColor !important;
  }
}

/* src/components/elements/table/table.css */
@layer components {
  .Table {
    display: block;
    overflow-x: auto;
    th,
    td {
      border-block-end: var(--border-subtle);
      padding-inline: var(--size-8);
    }
    :is(th, td):first-child {
      padding-inline-start: 0;
    }
    :is(th, td):last-child {
      padding-inline-end: 0;
    }
    th {
      color: var(--shared-color-text-secondary);
      padding-block-end: var(--size-12);
      padding-block-start: var(--size-8);
    }
    td {
      padding-block: var(--size-16);
    }
  }
}

/* src/components/elements/form-element/textarea/textarea.css */
@layer components {
  .Textarea {
    block-size: 10em;
    line-height: inherit;
    padding-block: calc(var(--input-button-padding-block) - (1lh - var(--input-button-lh) * 1em) / 2);
    resize: none;
  }
}

/* src/components/elements/video/video.css */
@layer components {
  .Video-wrapper {
    block-size: 100%;
    display: grid;
    grid-template-areas: "cover";
  }
  .Video-asset {
    background: var(--shared-color-surface-subtle-darker);
    block-size: auto;
    grid-area: cover;
    inline-size: 100%;
    object-fit: cover;
  }
  .Video-fallback {
    align-items: center;
    background-color: var(--shared-color-surface-estrich);
    display: flex;
    flex-direction: column;
    gap: var(--size-24);
    grid-area: cover;
    inset: 0;
    justify-content: center;
    padding: 1rem;
    z-index: 1;
  }
  .Video-fallbackButton {
    --size: 5rem;
    align-items: center;
    background: var(--shared-color-surface-brand);
    block-size: var(--size);
    border-radius: 50%;
    color: var(--shared-color-text-invert);
    display: flex;
    inline-size: var(--size);
    justify-content: center;
    padding-inline-start: 0.5em;
  }
  .Video-fallbackButton::before {
    border-block-end: calc(var(--size) / 4) solid transparent;
    border-block-start: calc(var(--size) / 4) solid transparent;
    border-inline-start: calc(var(--size) / 2.5) solid var(--shared-color-surface-primary);
    content: "";
  }
  @media (48em > width) {
    .Video-asset--mobile + .Video-asset {
      display: none;
    }
  }
  @media (width >= 48em) {
    .Video-asset--mobile {
      display: none;
    }
  }
}

/* src/components/elements/video-embed/video-embed.css */
@layer components {
  .VideoEmbed {
    background: var(--shared-color-surface-subtle);
    display: grid;
    grid-template-areas: "cover";
    inline-size: 100%;
    place-items: center;
  }
  .VideoEmbed-embed,
  .VideoEmbed-fallback {
    grid-area: cover;
  }
  .VideoEmbed-embed {
    aspect-ratio: 16 / 9;
    border: 0;
    inline-size: 100%;
  }
  .VideoEmbed-fallback {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: var(--size-m);
    padding: var(--size-16);
  }
  .VideoEmbed-fallbackButton {
    align-items: center;
    background: var(--shared-color-surface-brand-secondary);
    block-size: var(--size-80);
    border-radius: 50%;
    color: var(--shared-color-surface-primary);
    display: flex;
    font-size: var(--typo-HeadlineXL-font-size);
    inline-size: var(--size-80);
    justify-content: center;
    padding-inline-start: var(--size-2);
  }
  .VideoEmbed-fallbackText {
    text-align: center;
  }
}

/* src/components/elements/elements.css */
@layer components;

/* src/components/template-components/auth/auth.css */
@layer components {
  .Auth {
    padding-block: var(--component-spacing-block);
  }
}

/* src/components/template-components/breadcrumb/breadcrumb.css */
@layer components {
  .Breadcrumb-list,
  .Breadcrumb-item {
    align-items: center;
    display: flex;
    gap: var(--size-8);
  }
  .Breadcrumb-list {
    flex-wrap: wrap;
  }
  .Breadcrumb-item:last-child .Breadcrumb-label {
    color: var(--shared-color-text-secondary);
  }
  @media (width < 48rem) {
    .Breadcrumb-item:not(:last-child, :nth-last-child(2)) {
      display: none;
    }
    .Breadcrumb-item:nth-last-child(2):not(:first-child)::before {
      content: "...";
    }
  }
}

/* src/components/template-components/content/aside/aside.css */
@layer components {
  .Aside {
    container-type: inline-size;
  }
  .Aside-item + .Aside-item {
    margin-block-start: 2.5rem;
  }
}

/* src/components/template-components/content/main/main.css */
@layer components;

/* src/components/template-components/content/content.css */
@layer components {
  .Content-container--aside {
    container: content / inline-size;
    display: flex;
    flex-wrap: wrap;
    gap: 0 var(--size-64);
  }
  .Content-container--aside .Content-main {
    flex: 3;
    min-inline-size: min(28rem, 100%);
  }
  .Content-container--aside .Content-aside {
    flex: 1;
    min-inline-size: min(16rem, 100%);
    padding-block: var(--component-spacing-block);
  }
  @media (width < 56em) {
    .Content-container--aside {
      gap: 0 var(--size-32);
    }
  }
  @container content (width < 48em) {
    .Content-aside {
      display: none;
    }
  }
}

/* src/components/template-components/footer/contact/contact.css */
@layer components {
  .FooterContact {
    display: flex;
    flex-direction: column;
    gap: var(--size-8);
  }
  .FooterContact p {
    line-height: 1.8;
  }
}

/* src/components/template-components/footer/details/details.css */
@layer components {
  .FooterDetails-title {
    align-items: center;
    border-block-start: var(--border-distinct);
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding-block: var(--size-24);
    text-wrap: balance;
  }
  .FooterDetails-title::-webkit-details-marker {
    display: none;
  }
  .FooterDetails-titleIcon {
    flex-shrink: 0;
  }
  .FooterDetails[open] .FooterDetails-titleIcon {
    rotate: 180deg;
  }
  .FooterDetails-content {
    margin-block: var(--size-12) var(--size-48);
  }
}

/* src/components/template-components/footer/menu/menu.css */
@layer components {
  .FooterMenu-list {
    display: flex;
    flex-direction: column;
    gap: var(--size-8);
  }
}

/* src/components/template-components/footer/social-nav/social-nav.css */
@layer components {
  .FooterSocialNav-list {
    display: flex;
    gap: var(--size-16);
  }
  .FooterSocialNav-link {
    display: block;
  }
}

/* src/components/template-components/footer/footer.css */
@layer components {
  .Footer {
    --u-breakout-background: var(--shared-color-surface-sandstein);
    background-color: var(--u-breakout-background);
    padding-block: var(--Footer-padding-block);
    row-gap: var(--Footer-content-spacing);
  }
  .Footer-copy,
  .Footer-legal {
    border-block-start: var(--border-subtle-transparent);
    grid-column: 1/ -1;
    padding-block-start: var(--Footer-content-spacing);
  }
  .Footer-accordion {
    border-block-end: var(--border-distinct);
    grid-column: 1/ -1;
  }
  .Footer-copy {
    align-items: baseline;
    display: flex;
    flex-direction: var(--Footer-copy-flex-direction, column);
    flex-wrap: wrap;
    gap: var(--Footer-copy-gap);
    min-block-size: var(--typo-TextM-line-height);
  }
  .Footer-logoImage {
    filter: brightness(0);
  }
  @media (48em > width) {
    .Footer {
      --Footer-content-spacing: var(--size-32);
      --Footer-copy-gap: var(--size-24);
      --Footer-padding-block: var(--size-48) var(--size-64);
    }
    .Footer-hidden--mobile {
      display: none;
    }
    .Footer-social,
    .Footer-logoImage {
      grid-column: 1 / -1;
    }
  }
  @media (48em <= width < 64em) {
    .Footer-logoImage {
      padding-block-end: var(--size-16);
    }
    .Footer-contact,
    .Footer-menu {
      grid-row: 2 / 3;
    }
    .Footer-contact {
      grid-column: 1 / 5;
    }
    .Footer-menu {
      grid-column: 5 / -1;
    }
    .Footer-social {
      grid-column: 6 / -1;
    }
  }
  @media (width >= 48em) {
    .Footer {
      --Footer-padding-block: var(--size-48) var(--size-32);
      --Footer-content-spacing: var(--size-32);
      --Footer-copy-gap: var(--size-16);
    }
    .Footer-hidden--desktop {
      display: none;
    }
    .Footer-logoImage {
      grid-column: 1 / 3;
    }
    .Footer-social {
      justify-self: end;
    }
  }
  @media (width >= 64em) {
    .Footer {
      --Footer-content-spacing: var(--size-48);
      --Footer-copy-flex-direction: row;
      --Footer-copy-gap: var(--size-8);
      --Footer-padding-block: var(--size-64) var(--size-32);
    }
    .Footer-contact {
      grid-column: 4 / 7;
    }
    .Footer-menu {
      grid-column: 8 / 10;
    }
    .Footer-social {
      grid-column: 10 / -1;
    }
  }
}

/* src/components/template-components/header/header.css */
@layer components {
  .Header {
    align-items: center;
    background: var(--Header-background, var(--shared-color-surface-primary));
    border-block-end: var(--Header-border-block-end-width, 0) solid var(--shared-color-border-subtle-transparent);
    display: flex;
    flex-direction: var(--Header-flex-direction, row);
    gap: var(--Header-gap, var(--size-24));
    inset: 0 0 auto;
    justify-content: var(--Header-justify-content, start);
    min-block-size: var(--header-min-block-size);
    padding: var(--Header-padding-block, var(--size-24)) var(--Header-padding-inline, var(--component-spacing-inline));
    position: var(--Header-position);
    transition: background-color var(--default-transition-duration), padding var(--default-transition-duration);
    z-index: var(--top-layer);
  }
  .Header--transparent {
    --Header-background:
      linear-gradient(

        180deg,
        rgba(0, 0, 0, 0.2) 0%,
        rgba(0, 0, 0, 0) 84.37% );
    --Header-logoImage-filter: brightness(0) invert(1);
    --Header-menuIcon-color: var(--shared-color-text-invert);
    --Header-position: fixed;
  }
  .Header:not(.Header--transparent) {
    --Header-logoImage-filter: none;
    --Header-menuIcon-color: var(--shared-color-text-primary);
    --Header-position: sticky;
  }
  .Header--disableSticky {
    --Header-position: absolute;
  }
  .Header.is-sticky {
    --Header-background: var(--shared-color-surface-primary);
    --Header-border-block-end-width: 0.0625rem;
    --Header-logoImage-filter: none;
    --Header-menuIcon-color: var(--shared-color-text-primary);
    --Header-padding-block: var(--size-16);
  }
  .Header:has(.SideNav.is-open) {
    --Header-logoImage-filter: none;
    --Header-menuIcon-color: var(--shared-color-text-primary);
  }
  .Header-logoImage {
    block-size: var(--Header-logoImage-block-size, auto);
    filter: var(--Header-logoImage-filter, none);
    inline-size: auto;
    transition: filter var(--default-transition-duration);
  }
  .Header-menuIcon {
    color: var(--Header-menuIcon-color, var(--shared-color-text-invert));
    transition: color var(--default-transition-duration);
  }
  .Header-sideNavButton,
  .Header-logoLink {
    z-index: var(--Header-entries-z-index);
  }
  .Header-logoLink {
    flex-shrink: 0;
    margin-right: auto;
  }
  @media (width < 48rem) {
    .Header-sideNavButton,
    .Header-logoLink {
      --Header-entries-z-index: var(--middle-layer);
    }
  }
  @media (width >= 48rem) {
    .Header-sideNavButton,
    .Header-logoLink {
      --Header-entries-z-index: var(--top-layer);
    }
  }
  .Header-sideNavButton[aria-expanded=true] .Header-menuIconOpen,
  .Header-sideNavButton[aria-expanded=false] .Header-menuIconClose {
    display: none;
  }
  .Header-sideNavButton[aria-expanded=false] .Header-menuIconOpen,
  .Header-sideNavButton[aria-expanded=true] .Header-menuIconClose {
    display: block;
  }
  .Header-button {
    min-block-size: var(--size-48);
  }
  @media (width >= 48rem) {
    .Header-cardUserProfileCta {
      align-items: center;
      display: flex;
      gap: var(--size-48);
    }
  }
  @media (width <= 20rem) {
    .Header {
      --Header-padding-inline: var(--size-12);
      --Header-gap: var(--size-12);
    }
  }
  @media (64em > width) {
    .Header {
      --Header-flex-direction: row-reverse;
      --Header-justify-content: space-between;
      --Header-logoImage-block-size: var(--size-24);
      --Header-padding-block: var(--size-16);
    }
    .Header--disableSticky {
      --Header-flex-direction: initial;
    }
    .Header-button {
      inset: auto 0 0;
      position: fixed;
    }
    .Header-logoLink {
      order: 3;
    }
    .Header-cardUserProfileCta {
      margin-block: -0.25rem;
    }
    .Header-button:not(.Header-button--visibleOnMobile) {
      display: none;
    }
  }
  @media (width >= 64em) {
    .Header {
      --Header-padding-inline: var(--size-64);
    }
    .Header.is-sticky {
      --Header-padding-inline: var(--size-16);
    }
    .Header-button {
      margin-inline-start: auto;
    }
    .Header-menuIcon {
      --Icon-size: var(--size-32);
    }
  }
}

/* src/components/template-components/side-nav/menu/menu.css */
@layer components {
  .SideNavMenu-item {
    padding-block: var(--SideNavMenu-item-padding-block, var(--size-32));
    text-wrap: balance;
  }
  .SideNavMenu-item,
  .SideNavMenu-list,
  .SideNavMenu-list--lv1 {
    transition: all var(--default-transition-duration) ease-in-out;
  }
  .SideNavMenu-list--lv1 {
    --SideNavMenu-item-padding-block: var(--size-32);
  }
  .SideNavMenu-list--lv1 > .SideNavMenu-item {
    border-block-start: var(--border-distinct);
  }
  .SideNavMenu-list--lv1.is-visible > .SideNavMenu-item:last-child {
    border-block-end: var(--border-distinct);
  }
  .SideNavMenu-toggle {
    align-items: center;
    display: flex;
    justify-content: space-between;
    transition: all var(--default-transition-duration) ease-in-out;
  }
  .SideNavMenu-toggle[aria-expanded] {
    inline-size: 100%;
  }
  .SideNavMenu-toggle[aria-expanded=true] {
    color: var(--shared-color-text-secondary);
    flex-direction: row-reverse;
    font: var(--typo-TextM);
    gap: var(--SideNavMenu--toggle-gap);
    inset: 0 auto auto 0;
    justify-content: flex-end;
    position: absolute;
  }
  .SideNavMenu-list--lv2 {
    --SideNavMenu-item-padding-block: var(--size-12);
    --SideNavMenu-nestedMenu-margin-block-start: var(--size-40);
    inline-size: 100%;
    inset: 0 auto auto 100%;
    margin-block-start: var(--SideNavMenu-nestedMenu-margin-block-start);
    padding-inline-start: var(--SideNavMenu-item-padding-inline-start);
    position: absolute;
  }
  .SideNavMenu-toggleIcon {
    flex-shrink: 0;
  }
  .SideNavMenu-toggle[aria-expanded=true] .SideNavMenu-toggleIcon {
    color: var(--shared-color-text-primary);
    transform: rotate(180deg);
  }
  .SideNavMenu-item:has(.SideNavMenu-toggle[aria-expanded=true]) {
    border-block-start: none;
  }
  .SideNavMenu-list--lv1:not(.is-visible) {
    transform: translateX(-100%);
  }
  .SideNavMenu-list--lv1:not(.is-visible) > .SideNavMenu-item:not(.is-visible),
  .SideNavMenu-list--lv1.is-visible .SideNavMenu-list--lv2 {
    opacity: 0;
    visibility: hidden;
  }
  .SideNavMenu-list--lv1:not(.is-visible) .SideNavMenu-item.is-visible .SideNavMenu-toggle {
    inset-inline-start: 100%;
    transform: translateX(var(--SideNavMenu--toggle-translate));
  }
  @media (64em > width) {
    .SideNavMenu {
      --SideNavMenu--toggle-gap: var(--size-24);
      --SideNavMenu--toggle-translate: 0;
      --SideNavMenu-item-padding-inline-start: var(--size-56);
    }
  }
  @media (width >= 64em) {
    .SideNavMenu {
      --SideNavMenu--toggle-gap: var(--size-32);
      --SideNavMenu--toggle-translate: calc(-1 * var(--size-64));
      --SideNavMenu-item-padding-inline-start: 0;
    }
  }
}

/* src/components/template-components/side-nav/_nav/_nav.css */
@layer components {
  .HeaderNav-item {
    position: relative;
  }
  .HeaderNav-entry {
    align-items: center;
    display: flex;
    font-weight: 700;
    text-decoration: none;
  }
  .HeaderNav-entry[aria-expanded=true] .HeaderNav-toggleIcon {
    transform: rotate(-180deg);
  }
  .HeaderNav-list--lvl2 {
    background: var(--shared-color-surface-primary);
    box-shadow: var(--box-shadow-subtle);
    display: none;
    flex-direction: column;
    gap: var(--size-8);
    inline-size: max-content;
    inset: auto auto calc(100% + var(--size-8)) 50%;
    min-inline-size: calc(100% + 2 * var(--size-8));
    padding: var(--size-8);
    position: absolute;
    transform: translateX(-50%);
  }
  .HeaderNav-entry[aria-expanded=true] + .HeaderNav-list {
    display: flex;
  }
}

/* src/components/template-components/side-nav/side-nav.css */
@layer components {
  .SideNav {
    --SideNav-offset-top: var(--header-offset-top, 0px);
    background: var(--shared-color-surface-primary);
    block-size: 100dvh;
    display: flex;
    flex-direction: column;
    inline-size: 100%;
    inset-block-start: 0;
    inset-inline-start: 0;
    max-inline-size: var(--SideNav-max-inline-size);
    min-inline-size: var(--SideNav-min-inline-size, 0);
    overflow-x: hidden;
    overflow-y: auto;
    padding-block: calc(var(--SideNav-offset-top) + var(--SideNav-padding-block-start)) var(--size-24);
    padding-inline: var(--SideNav-padding-inline-start) var(--SideNav-padding-inline-end);
    position: fixed;
    transition: transform var(--slower-transition-duration) ease-out;
    z-index: var(--Sidenav-z-index);
  }
  @media (width < 48rem) {
    .SideNav {
      --Sidenav-z-index: var(--bottom-layer);
    }
  }
  @media (width >= 48rem) {
    .SideNav {
      --Sidenav-z-index: var(--middle-layer);
    }
  }
  .SideNav:not(.is-open) {
    transform: translateX(-100%);
  }
  body:has(.SideNav.is-open) {
    overflow: hidden;
  }
  .SideNav-overlay {
    background: var(--shared-color-surface-invert);
    display: var(--SideNav-overlay-display, none);
    inset: 0;
    opacity: var(--SideNav-overlay-opacity, 0);
    position: fixed;
    transition: opacity var(--default-transition-duration);
  }
  .SideNav-menu {
    block-size: 100%;
    flex: 1;
    margin-inline: calc(var(--SideNav-padding-inline-start) * -1) calc(var(--SideNav-padding-inline-end) * -1);
    overflow: auto;
    padding-inline: var(--SideNav-padding-inline-start) var(--SideNav-padding-inline-end);
  }
  .SideNav-footer {
    align-items: center;
    display: flex;
    gap: var(--size-24);
    justify-content: space-between;
    padding-block-start: var(--SideNav-footer-padding-block-start);
  }
  @media (64em > width) {
    .SideNav {
      --SideNav-footer-padding-block-start: var(--size-16);
      --SideNav-max-inline-size: 100%;
      --SideNav-padding-block-end: var(--size-24);
      --SideNav-padding-block-start: var(--size-104);
      --SideNav-padding-inline-end: var(--size-24);
      --SideNav-padding-inline-start: var(--size-24);
    }
  }
  @media (width >= 64em) {
    .SideNav {
      --SideNav-footer-padding-block-start: var(--size-24);
      --SideNav-max-inline-size: max-content;
      --SideNav-min-inline-size: 34.375rem;
      --SideNav-padding-block-end: var(--size-24);
      --SideNav-padding-block-start: var(--size-144);
      --SideNav-padding-inline-end: var(--size-112);
      --SideNav-padding-inline-start: var(--size-128);
    }
    .Header.is-sticky .SideNav {
      --SideNav-padding-block-end: var(--size-24);
      --SideNav-padding-block-start: var(--size-112);
      --SideNav-padding-inline-end: var(--size-112);
      --SideNav-padding-inline-start: var(--size-80);
    }
    .SideNav.is-open + .SideNav-overlay {
      --SideNav-overlay-display: block;
      --SideNav-overlay-opacity: 0.5;
      z-index: var(--bottom-layer);
    }
  }
}

/* src/components/template-components/pagination/pagination.css */
@layer components {
  .Pagination {
    font-size: var(--typo-DefaultSmall-font-size);
    margin-block: 1rem;
  }
  .Pagination-items {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
  }
  .Pagination-item {
    margin-inline: var(--size-xxs);
    vertical-align: top;
  }
  .Pagination-item--ellipsis {
    margin-inline: var(--size-xxs);
  }
  .Pagination-link {
    border: var(--shared-border-width-md) solid var(--shared-border-width-md);
    color: inherit;
    display: block;
    line-height: 1;
    padding-block: 0.75em;
    padding-inline: 0.9em;
    text-decoration: none;
  }
  .Pagination-link:is(:hover, [aria-current=page]) {
    background: var(--c-a);
    border-color: transparent;
    color: var(--c-typo-on-a);
  }
}

/* src/components/elements/slider/slider.css */
@layer components {
  .Slider {
    container-name: slider;
    container-type: inline-size;
    display: block;
    min-inline-size: 0;
    position: relative;
  }
  .Slider-navigation {
    display: flex;
    gap: var(--size-4);
    inset-block: var(--slider-navigation-inset-block);
    inset-inline: var(--slider-navigation-inset-inline);
    position: absolute;
  }
  @media (hover: none) and (width < 48em) {
    .Slider-navigation {
      display: none;
    }
  }
  .Slider-navigationButton {
    background: var(--shared-color-surface-subtle);
    border: var(--shared-border-width-md) solid var(--shared-color-border-invert);
    color: var(--shared-color-text-invert);
    padding: var(--size-12);
    transition-duration: var(--default-transition-duration);
    transition-property: background-color, opacity;
  }
  .Slider-navigationButton:not(:disabled):hover {
    background: var(--prim-color-neutral-500);
  }
  .Slider-navigationButton:disabled {
    opacity: 0.6;
  }
  .Slider-navigationButton[hidden] {
    opacity: 0;
    visibility: hidden;
  }
  .Slider-track {
    display: flex;
    gap: var(--slider-track-gap);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding-inline: var(--slider-track-padding-inline);
    scroll-snap-type: x mandatory;
  }
  .Slider-track:focus-visible {
    outline-offset: -0.125rem;
  }
  @media not (prefers-reduced-motion) {
    .Slider-track {
      scroll-behavior: smooth;
    }
  }
  @media (hover: hover) {
    .Slider-track {
      scrollbar-width: none;
    }
  }
  .Slider-slide {
    scroll-snap-align: center;
  }
  .Slider-slide > :only-child {
    inline-size: var(--slider-slide-inline-size);
    max-inline-size: 100cqi;
  }
}

/* src/components/templates/_skip-link/_skip-link.css */
@layer components {
  .SkipLink {
    inset-block-start: 0;
    inset-inline-start: 50%;
    position: fixed;
    translate: -50%;
    z-index: var(--bring-to-front);
  }
}

/* src/components/templates/template.css */
@layer components {
  .Template {
    display: flex;
    flex-direction: column;
    margin-block-start: var(--gin-toolbar-height);
    min-block-size: 100dvb;
  }
  @media (64em > width) {
    .Template:has(.Header-button--visibleOnMobile) {
      padding-block-end: var(--size-40);
    }
  }
  .Template-main {
    flex: 1;
  }
  .Template-main--cloud {
    background: var(--shared-color-surface-leinen-light);
    display: flex;
    flex-direction: column;
    gap: var(--shared-spacing-sections-sm);
    padding-block-end: var(--Template-main-cloud-padding-block-end);
    padding-block-start: var(--Template-main-cloud-padding-block-start);
  }
  @media (width < 64em) {
    .Template-main--cloud {
      --Template-main-cloud-padding-block-start: var(--size-24);
      --Template-main-cloud-padding-block-end: var(--size-40);
    }
  }
  @media (width >= 64em) {
    .Template-main--cloud {
      --Template-main-cloud-padding-block-start: var(--size-64);
      --Template-main-cloud-padding-block-end: var(--size-96);
    }
  }
}

/* src/css/common/utils/hidden-visually.css */
@layer utils {
  .u-hiddenVisually:not(.u-hiddenVisually--focusVisible),
  .u-hiddenVisually--focusVisible:not(:focus),
  .visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
  .u-hidden {
    display: none;
  }
  .u-modal-open {
    display: var(--display-mode, block);
  }
  @media (width < 48em) {
    html:has(.u-modal-open) {
      overflow: clip;
    }
  }
}

/* src/css/common/utils/misc.css */
@layer utils {
  .u-spacing--editMode {
    margin-block-start: var(--component-spacing-block);
  }
  .u-padding--block {
    padding-block: var(--size-32);
  }
  .u-padding-block--cookiebot {
    padding-block: var(--size-96);
  }
  @media (width < 48em) {
    .u-padding-block--cookiebot {
      padding-block: var(--size-64);
    }
  }
}

/* src/css/common.css */
/*# sourceMappingURL=common.css.map */
