:root, [ks-inverted], [ks-theme] {
  --dsa-headline--color: var(--ks-text-color-display);
  --dsa-headline--font-weight: var(
    --ks-font-weight-semi-bold,
    var(--ks-font-weight-bold)
  );
  --dsa-headline--text-transform: none;
  --dsa-headline--gap: 0.35em;
  --dsa-headline--space-after_large: var(--ks-spacing-stack-l);
  --dsa-headline--space-after_small: var(--ks-spacing-stack-m);
  --dsa-headline--space-after_minimum: var(--ks-spacing-stack-s);
  --dsa-headline--higlight-background: var(--dsa-typo--highlight);
  --dsa-headline__subheadline--color: var(--ks-color-fg-alpha-4);
  --dsa-headline__subheadline--font-weight: var(--ks-font-weight-bold);
  --dsa-headline__subheadline--text-transform: none;
  --dsa-headline__subheadline--letter-spacing: 0;
  --dsa-headline__subheadline--font-family: var(--ks-font-family-copy);
  --dsa-headline_h1--font: var(--ks-font-display-xxl);
  --dsa-headline_h1__subheadline--font-size: 55%;
  --dsa-headline_h1--space-after_large: var(--ks-spacing-stack-l);
  --dsa-headline_h1--space-after_small: var(--ks-spacing-stack-m);
  --dsa-headline_h1--space-after_minimum: var(--ks-spacing-stack-s);
  --dsa-headline_h2--font: var(--ks-font-display-xl);
  --dsa-headline_h2__subheadline--font-size: 60%;
  --dsa-headline_h2--space-after_large: var(--ks-spacing-stack-l);
  --dsa-headline_h2--space-after_small: var(--ks-spacing-stack-m);
  --dsa-headline_h2--space-after_minimum: 0;
  --dsa-headline_h3--font: var(--ks-font-display-l);
  --dsa-headline_h3__subheadline--font-size: 65%;
  --dsa-headline_h3--space-after_large: var(--ks-spacing-stack-m);
  --dsa-headline_h3--space-after_small: var(--ks-spacing-stack-s);
  --dsa-headline_h3--space-after_minimum: 0;
  --dsa-headline_h4--font: var(--ks-font-display-m);
  --dsa-headline_h4__subheadline--font-size: 70%;
  --dsa-headline_h4--space-after_large: var(--ks-spacing-stack-m);
  --dsa-headline_h4--space-after_small: var(--ks-spacing-stack-s);
  --dsa-headline_h4--space-after_minimum: 0;
  --dsa-headline_p--font: var(--ks-font-copy-m);
  --dsa-headline_p__subheadline--font-size: 75%;
  --dsa-headline_p--space-after_large: var(--ks-spacing-stack-xs);
  --dsa-headline_p--space-after_small: var(--ks-spacing-xxs);
  --dsa-headline_p--space-after_minimum: 0;
  --dsa-headline__anchor--size: 0.875em;
  --dsa-headline__anchor--margin-left: 0.25em;
  --dsa-headline__anchor--transform: 0;
}

.dsa-headline {
  max-width: unset;
  display: flex;
  flex-direction: column;
  gap: var(--dsa-headline--gap, 0.25em);
}
.dsa-headline__inner {
  position: relative;
}
.dsa-headline__anchor {
  --g-link--text-decoration: none;
  visibility: hidden;
  position: absolute;
  margin-left: var(--dsa-headline__anchor--margin-left, var(--ks-spacing-inline-s));
  transform: var(--dsa-headline__anchor--transform);
}
.dsa-headline__anchor .icon {
  width: var(--dsa-headline__anchor--size, 1em);
  height: var(--dsa-headline__anchor--size, 1em);
}
.dsa-headline:hover .dsa-headline__anchor {
  visibility: visible;
}
.dsa-headline--h1 {
  --subheadline--font-size: var(--dsa-headline_h1__subheadline--font-size, 50%);
  --headline--space-after_minimum: var(--dsa-headline_h1--space-after_minimum);
  --headline--space-after_small: var(--dsa-headline_h1--space-after_small);
  --headline--space-after_large: var(--dsa-headline_h1--space-after_large);
  font: var(--dsa-headline_h1--font, var(--ks-font-display-xxl));
}
.dsa-headline--h2 {
  --subheadline--font-size: var(--dsa-headline_h2__subheadline--font-size, 50%);
  --headline--space-after_minimum: var(--dsa-headline_h2--space-after_minimum);
  --headline--space-after_small: var(--dsa-headline_h2--space-after_small);
  --headline--space-after_large: var(--dsa-headline_h2--space-after_large);
  font: var(--dsa-headline_h2--font, var(--ks-font-display-xl));
}
.dsa-headline--h3 {
  --subheadline--font-size: var(--dsa-headline_h3__subheadline--font-size, 50%);
  --headline--space-after_minimum: var(--dsa-headline_h3--space-after_minimum);
  --headline--space-after_small: var(--dsa-headline_h3--space-after_small);
  --headline--space-after_large: var(--dsa-headline_h3--space-after_large);
  font: var(--dsa-headline_h3--font, var(--ks-font-display-l));
}
.dsa-headline--h4 {
  --subheadline--font-size: var(--dsa-headline_h4__subheadline--font-size, 75%);
  --headline--space-after_minimum: var(--dsa-headline_h4--space-after_minimum);
  --headline--space-after_small: var(--dsa-headline_h4--space-after_small);
  --headline--space-after_large: var(--dsa-headline_h4--space-after_large);
  font: var(--dsa-headline_h4--font, var(--ks-font-display-m));
}
.dsa-headline--p {
  --subheadline--font-size: var(--dsa-headline_p__subheadline--font-size, 75%);
  --headline--space-after_minimum: var(--dsa-headline_p--space-after_minimum);
  --headline--space-after_small: var(--dsa-headline_p--space-after_small);
  --headline--space-after_large: var(--dsa-headline_p--space-after_large);
  font: var(--dsa-headline_p--font, var(--ks-font-copy-m));
}
.dsa-headline .dsa-headline__headline {
  color: var(--dsa-headline--color, var(--ks-text-color-display));
  font: inherit;
  font-weight: var(--dsa-headline--font-weight);
  text-transform: var(--dsa-headline--text-transform);
  margin: 0;
}
.dsa-headline .dsa-headline__subheadline {
  font-family: var(--dsa-headline__subheadline--font-family);
  font-size: var(--subheadline--font-size, 50%);
  margin: 0;
  max-width: var(--dsa-content--width_default);
  color: var(--dsa-headline__subheadline--color, var(--ks-text-color-primary));
  font-weight: var(--dsa-headline__subheadline--font-weight, var(--ks-font-weight-bold));
  text-transform: var(--dsa-headline__subheadline--text-transform, none);
  letter-spacing: var(--dsa-headline__subheadline--letter-spacing, 0);
}
.dsa-headline--space-after-minimum {
  margin-bottom: var(--headline--space-after_minimum);
}
.dsa-headline--space-after-small {
  margin-bottom: var(--headline--space-after_small);
}
.dsa-headline--space-after-large {
  margin-bottom: var(--headline--space-after_large);
}
.dsa-headline--align-center .dsa-headline__headline {
  text-align: center;
}
.dsa-headline--align-center .dsa-headline__subheadline {
  text-align: center;
  margin: auto;
}
.dsa-headline--align-right .dsa-headline__headline {
  text-align: right;
}
.dsa-headline--align-right .dsa-headline__subheadline {
  text-align: right;
  margin-left: auto;
}
.dsa-headline--align-right .dsa-headline__anchor {
  top: 0;
  right: 100%;
}

.dsa-headline strong,
h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong {
  font-weight: inherit;
  background: var(--dsa-headline--higlight-background);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}