.buttonBasics {
  display: inline-block;
  font-size: clamp(1rem, 0.22547914vw + 0.94461669rem, 1.125rem);
  line-height: clamp(1.1875rem, 0.33821871vw + 1.10442503rem, 1.375rem);
  font-family: inherit;
  font-weight: 500;
  cursor: pointer;
  color: var(--btnColor);
  appearance: none;
  border-radius: 0;
  box-sizing: border-box;
  text-decoration: none;
  border: none;
  position: relative;
  transition: all 0.2s ease-in;
}
.buttonBasics:before {
  content: '';
  position: absolute;
  top: 8px;
  width: 27px;
  height: 16px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/arrow-right.svg);
  background-color: var(--btnArrowColor);
  transition: all 0.2s ease-in;
}
.buttonBasics:after {
  content: '';
  position: absolute;
  top: 0px;
  width: 31px;
  height: 31px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/circle.svg);
  background-color: var(--btnCircleColor);
  transition: all 0.2s ease-in;
}
@media (max-width: 767px) {
  .buttonBasics:before {
    top: 8px;
    width: 27px;
    height: 16px;
  }
  .buttonBasics:after {
    top: 0px;
    width: 30px;
    height: 30px;
  }
}
.button {
  display: inline-block;
  font-size: clamp(1rem, 0.22547914vw + 0.94461669rem, 1.125rem);
  line-height: clamp(1.1875rem, 0.33821871vw + 1.10442503rem, 1.375rem);
  font-family: inherit;
  font-weight: 500;
  cursor: pointer;
  color: var(--btnColor);
  appearance: none;
  border-radius: 0;
  box-sizing: border-box;
  text-decoration: none;
  border: none;
  position: relative;
  transition: all 0.2s ease-in;
  padding: 5px 61px 4px 0;
}
.button:before {
  content: '';
  position: absolute;
  top: 8px;
  width: 27px;
  height: 16px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/arrow-right.svg);
  background-color: var(--btnArrowColor);
  transition: all 0.2s ease-in;
}
.button:after {
  content: '';
  position: absolute;
  top: 0px;
  width: 31px;
  height: 31px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/circle.svg);
  background-color: var(--btnCircleColor);
  transition: all 0.2s ease-in;
}
@media (max-width: 767px) {
  .button:before {
    top: 8px;
    width: 27px;
    height: 16px;
  }
  .button:after {
    top: 0px;
    width: 30px;
    height: 30px;
  }
}
.button:before {
  right: 28px;
}
.button:after {
  right: 15px;
}
@media (min-width: 1200px) {
  .button:hover,
  .button:focus {
    padding-right: 52px;
    padding-left: 9px;
    color: var(--btnColorHover);
  }
  .button:hover:before,
  .button:focus:before {
    right: 0;
    background-color: var(--btnArrowColorHover);
  }
  .button:hover:after,
  .button:focus:after {
    transform: rotate(180deg);
    background-color: var(--btnCircleColorHover);
  }
}
@media (max-width: 767px) {
  .button {
    padding: 6px 60px 5px 0;
  }
  .button:before {
    right: 28px;
  }
  .button:after {
    right: 15px;
  }
}
@media (min-width: 1200px) {
  .buttonHover {
    padding-right: 52px;
    padding-left: 9px;
    color: var(--btnColorHover);
  }
  .buttonHover:before {
    right: 0;
    background-color: var(--btnArrowColorHover);
  }
  .buttonHover:after {
    transform: rotate(180deg);
    background-color: var(--btnCircleColorHover);
  }
}
.buttonIconBefore {
  display: inline-block;
  font-size: clamp(1rem, 0.22547914vw + 0.94461669rem, 1.125rem);
  line-height: clamp(1.1875rem, 0.33821871vw + 1.10442503rem, 1.375rem);
  font-family: inherit;
  font-weight: 500;
  cursor: pointer;
  color: var(--btnColor);
  appearance: none;
  border-radius: 0;
  box-sizing: border-box;
  text-decoration: none;
  border: none;
  position: relative;
  transition: all 0.2s ease-in;
  padding: 5px 0 4px 61px;
}
.buttonIconBefore:before {
  content: '';
  position: absolute;
  top: 8px;
  width: 27px;
  height: 16px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/arrow-right.svg);
  background-color: var(--btnArrowColor);
  transition: all 0.2s ease-in;
}
.buttonIconBefore:after {
  content: '';
  position: absolute;
  top: 0px;
  width: 31px;
  height: 31px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/circle.svg);
  background-color: var(--btnCircleColor);
  transition: all 0.2s ease-in;
}
@media (max-width: 767px) {
  .buttonIconBefore:before {
    top: 8px;
    width: 27px;
    height: 16px;
  }
  .buttonIconBefore:after {
    top: 0px;
    width: 30px;
    height: 30px;
  }
}
.buttonIconBefore:before {
  left: 28px;
  transform: rotate(180deg);
}
.buttonIconBefore:after {
  left: 15px;
  transform: rotate(180deg);
}
@media (min-width: 1200px) {
  .buttonIconBefore:hover,
  .buttonIconBefore:focus {
    padding-left: 52px;
    padding-right: 9px;
    color: var(--btnColorHover);
  }
  .buttonIconBefore:hover:before,
  .buttonIconBefore:focus:before {
    left: 0;
    background-color: var(--btnArrowColorHover);
  }
  .buttonIconBefore:hover:after,
  .buttonIconBefore:focus:after {
    transform: rotate(0);
    background-color: var(--btnCircleColorHover);
  }
}
@media (max-width: 767px) {
  .buttonIconBefore {
    padding: 6px 0 5px 60px;
  }
  .buttonIconBefore:before {
    left: 28px;
  }
  .buttonIconBefore:after {
    left: 15px;
  }
}
@media (min-width: 1200px) {
  .buttonIconBeforeHover {
    padding-left: 52px;
    padding-right: 9px;
    color: var(--btnColorHover);
  }
  .buttonIconBeforeHover:before {
    left: 0;
    background-color: var(--btnArrowColorHover);
  }
  .buttonIconBeforeHover:after {
    transform: rotate(0);
    background-color: var(--btnCircleColorHover);
  }
}
.quicklink {
  width: 100%;
  display: inline-block;
  font-size: clamp(2.125rem, 1.24013529vw + 1.82039177rem, 2.8125rem);
  line-height: clamp(2.4375rem, 1.24013529vw + 2.13289177rem, 3.125rem);
  font-family: inherit;
  font-weight: 400;
  cursor: pointer;
  color: var(--btnColor);
  padding: 23px 120px 22px 0;
  appearance: none;
  border-radius: 0;
  box-sizing: border-box;
  text-decoration: none;
  border: none;
  position: relative;
  transition: all 0.2s ease-in;
}
.quicklink:before {
  content: '';
  position: absolute;
  top: 38px;
  right: 56px;
  width: 52px;
  height: 32px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/arrow-right.svg);
  background-color: var(--btnArrowColor);
  transition: all 0.2s ease-in;
}
.quicklink:after {
  content: '';
  position: absolute;
  top: 23px;
  right: 30px;
  width: 60px;
  height: 62px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/circle.svg);
  background-color: var(--btnCircleColor);
  transition: all 0.2s ease-in;
}
@media (min-width: 1200px) {
  .quicklink:hover,
  .quicklink:focus {
    color: var(--btnColorHover);
  }
  .quicklink:hover:before,
  .quicklink:focus:before {
    right: 0;
  }
  .quicklink:hover:after,
  .quicklink:focus:after {
    transform: rotate(180deg);
  }
}
@media (max-width: 767px) {
  .quicklink {
    padding: 14px 52px 14px 0;
  }
  .quicklink:before {
    top: 36px;
    right: 13px;
    width: 25px;
    height: 15px;
  }
  .quicklink:after {
    top: 29px;
    right: 0;
    width: 30px;
    height: 30px;
  }
}
.teaserLinkIcon:before {
  content: '';
  position: absolute;
  bottom: 16px;
  left: 0px;
  width: 52px;
  height: 32px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/arrow-right.svg);
  background-color: var(--btnArrowColor);
  transition: all 0.2s ease-in;
  z-index: 3;
}
.teaserLinkIcon:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 18px;
  width: 60px;
  height: 62px;
  mask-size: 100% 100%;
  mask-position: 50% 50%;
  mask-repeat: no-repeat;
  mask-image: url(/images/circle.svg);
  background-color: var(--btnCircleColor);
  transition: all 0.2s ease-in;
  z-index: 3;
}
@media (max-width: 767px) {
  .teaserLinkIcon:before {
    bottom: 8px;
    width: 25px;
    height: 15px;
  }
  .teaserLinkIcon:after {
    left: 8px;
    width: 30px;
    height: 30px;
  }
}
@media (min-width: 1200px) {
  .teaserLinkIconHover:before {
    left: 58px;
  }
  .teaserLinkIconHover:after {
    transform: rotate(180deg);
  }
}
.clearfix {
  *zoom: 1;
}
.clearfix:before,
.clearfix:after {
  display: table;
  content: '';
}
.clearfix:after {
  clear: both;
}
.area--one {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 0 var(--gridGap);
}
.area--one .unit {
  grid-column: span 12;
}
.area--one .unitOne--1-1 .part--auto,
.area--one .unitOne--1-1-noIndent .part--auto {
  width: auto;
}
.area--one .unitOne--1-2 {
  grid-column: span 6;
}
.area--one .unitOne--1-2 .unit__body {
  display: flex;
  flex-wrap: wrap;
  gap: 0 30px;
}
.area--one .unitOne--1-2 .part--auto {
  width: auto;
}
.area--one .unitOne--1-2 .part--1-2 {
  width: calc(50% - 15px);
}
.area--one .unitOne--1-3 {
  grid-column: span 4;
}
.area--one .unitOne--1-4 {
  grid-column: span 6;
}
@media (max-width: 1199px) {
  .area--one .unitOne--1-4 + .unitOne--1-4 + .unitOne--1-4 {
    margin-top: 0;
  }
}
.area--one .unitTwo {
  grid-column: span 12;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 var(--gridGap);
}
.area--one .unitTwo .unit__background {
  grid-column: span 1;
}
.area--one .unitTwo .unit__content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  grid-column: 2 / span 1;
}
.area--one .unitTwo .unit__content .unit__body {
  max-width: 515px;
}
.area--one .unitTwo .part--auto {
  width: auto;
}
.area--one .unitTwo--variantTwo {
  padding: var(--unitTwoVerticalSpace) 0;
}
.area--one .unitTwo--variantTwo .unit__background {
  width: calc(100% + var(--fluidSize));
  --fluidSize: clamp(0rem, 26.36363636vw + -20.76136364rem, 10.875rem);
  justify-self: flex-end;
}
.area--one .unitTwo--variantTwo .unit__content {
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.area--one .unitTwo--variantTwo .unit__content:before {
  left: -109px;
  top: calc(var(--unitTwoVerticalSpace) * -1);
  width: calc(100% + var(--fluidSize));
  --fluidSize: clamp(8.6875rem, 21.36363636vw + -8.13636364rem, 17.5rem);
  height: calc(100% + (var(--unitTwoVerticalSpace) * 2));
}
.area--one .unitThree--1-2 {
  grid-column: span 6;
}
.area--one .unitThree--1-2 .unit__body {
  width: calc(100% - 110px);
  display: flex;
  flex-wrap: wrap;
  gap: 0 30px;
}
.area--one .unitThree--1-2 .part--auto {
  width: auto;
}
.area--one .unitThree--1-2 .part--1-2 {
  width: calc(50% - 15px);
}
.area--one .unitThree--1-2 .part.pict:first-child {
  width: calc(100% + 110px);
  flex-shrink: 0;
}
.area--one .unitThree--1-3 {
  grid-column: span 4;
}
.area--one .unitThree--1-2.unit--isAnchor .part.pict:first-child:before {
  width: 120px;
  height: 92px;
}
.area--one .unitThree--1-2 + .unitThree--1-2 + .unitThree--1-2 {
  margin-top: calc(var(--spacePart) * -2  );
}
.area--one .unit--quicklinks {
  grid-column: span 12;
}
.area--one .unit--gallery {
  grid-column: span 12;
}
.area--one .unit--gallery .unit__body {
  flex-direction: row;
  flex-wrap: wrap;
}
.area--one .unit--gallery .part {
  width: calc(100% / 3 - (var(--gridGap) * 2 / 3));
}
.area--one .unit--form {
  grid-column: span 8;
}
.area--one .unit--form .unit__body {
  display: flex;
  flex-wrap: wrap;
  gap: 0 var(--gridGap);
}
.area--one .unit--form .part--1-2 {
  width: calc(50% - 15px);
}
.area--three {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.area--three .unit {
  grid-column: span 1;
}
.area--timeline .unitYear .unit__body {
  align-items: center;
}
.area--timeline .unitEvent {
  width: calc(50% - 125px);
}
.area--timeline .unitEvent--left {
  margin-right: auto;
  margin-left: unset;
  text-align: right;
}
.area--timeline .unitEvent--right {
  margin-left: auto;
}
/*# sourceMappingURL=./screen-medium.css.map */