@charset "UTF-8";
/* stylelint-disable */
/* stylelint-enable */
@font-face {
  font-family: "Interstate";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/Interstate/Interstate-Light.ttf") format("truetype"); }

@font-face {
  font-family: "Interstate";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Interstate/Interstate-Bold.ttf") format("truetype"); }

*,
*::before,
*::after {
  box-sizing: inherit; }

:root,
html {
  --spacing-section--small: 1.5rem;
  --spacing-section--base: 3rem;
  --spacing-section--large: 5rem;
  background: #fff;
  box-sizing: border-box;
  font-size: 62.5%;
  line-height: 1.5;
  min-height: 100%;
  -ms-overflow-style: scrollbar;
  overflow-y: scroll;
  -webkit-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none; }

body {
  font-family: Interstate, Arial, sans-serif;
  font-size: 1.8rem;
  line-height: 1.25;
  font-weight: 300;
  color: #000000;
  --target-color: #4efd54;
  margin: 0;
  margin-top: 4rem;
  overflow-x: hidden;
  padding: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  @media (max-width: 33.74em) {
    body {
      -webkit-text-size-adjust: 100%; } }
  body.subPage {
    margin-top: 14rem; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 2.5rem 0 1rem; }
  h1 a,
  h2 a,
  h3 a,
  h4 a,
  h5 a,
  h6 a {
    color: inherit; }
    h1 a:active,
    h2 a:active,
    h3 a:active,
    h4 a:active,
    h5 a:active,
    h6 a:active {
      color: inherit; }

h1 {
  font-family: Interstate, Arial, sans-serif;
  font-size: 3.2rem;
  line-height: 1.166;
  font-weight: 600; }
  @media (min-width: 46.25em) {
    h1 {
      font-size: 3.6rem; } }
  @media (min-width: 61.25em) {
    h1 {
      font-size: 4rem; } }

h2 {
  font-family: Interstate, Arial, sans-serif;
  font-size: 2.4rem;
  line-height: 1.3;
  font-weight: 700; }

h3 {
  font-family: Interstate, Arial, sans-serif;
  font-size: 2.2rem;
  line-height: 1.25;
  font-weight: 600; }
  @media (min-width: 46.25em) {
    h3 {
      font-size: 2.7rem; } }

h4 {
  font-family: Interstate, Arial, sans-serif;
  font-size: 2rem;
  line-height: 1.166;
  font-weight: 600; }
  @media (min-width: 46.25em) {
    h4 {
      font-size: 2.4rem; } }

h5 {
  font-family: Interstate, Arial, sans-serif;
  font-size: 1.8rem;
  line-height: 1.166;
  text-transform: uppercase;
  font-weight: 600; }
  @media (min-width: 46.25em) {
    h5 {
      font-size: 2rem; } }

h6 {
  font-family: Interstate, Arial, sans-serif;
  font-size: 1.8rem;
  line-height: 1.166;
  font-weight: 600; }

p,
blockquote,
address,
dl,
ul,
ol,
table,
fieldset,
figure,
pre {
  margin: 0 0 1.5em; }
  p:last-child,
  blockquote:last-child,
  address:last-child,
  dl:last-child,
  ul:last-child,
  ol:last-child,
  table:last-child,
  fieldset:last-child,
  figure:last-child,
  pre:last-child {
    margin-bottom: 0; }

abbr {
  cursor: help; }

blockquote,
q {
  quotes: "\201E" "\201D" "»" "«"; }
  blockquote:lang(en),
  q:lang(en) {
    quotes: "«" "»" "’" "’"; }

blockquote {
  font-family: Interstate, Arial, sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  margin: 4rem auto;
  padding: 1.8rem 20px;
  position: relative; }
  @media (min-width: 46.25em) {
    blockquote {
      font-size: 2.4rem; } }
  @media (min-width: 33.75em) {
    blockquote {
      padding: 3rem 17.5%; } }
  @media (min-width: 46.25em) {
    blockquote::before, blockquote::after {
      font-size: 8rem;
      line-height: 0;
      position: absolute; } }
  blockquote::before {
    content: open-quote;
    left: 0;
    top: 0; }
  blockquote::after {
    bottom: 0;
    content: close-quote;
    right: 0; }
  blockquote cite {
    font-size: 1.4rem; }

p:empty {
  display: none; }

em {
  font-style: italic; }

strong,
b {
  font-weight: 600; }

a {
  color: inherit; }
  a:visited, a[visited] {
    text-decoration: underline; }
  a:hover, a[hover], a:focus, a[focus] {
    text-decoration: underline; }
  a:active, a[active] {
    text-decoration: underline; }
  a img {
    border: 0; }
  a[href^="tel:"] {
    text-decoration: none; }
    a[href^="tel:"]:focus, a[href^="tel:"]:hover {
      text-decoration: underline; }

button,
input[type="submit"],
input[type="reset"],
input[type="button"],
input[type="search"] {
  -webkit-appearance: none; }

iframe {
  display: block; }

img {
  height: auto;
  max-width: 100%;
  vertical-align: middle; }

svg {
  height: auto;
  max-width: 100%;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

ul {
  list-style-image: url("/assets/img/list-dot.svg");
  list-style-position: inside;
  padding: 0; }
  ul li {
    margin-bottom: 1rem; }

ol {
  counter-reset: list-counter;
  list-style: none; }

ol li {
  margin-bottom: 1rem; }
  ol li::before {
    color: #ccbc94;
    content: counter(list-counter) ". ";
    counter-increment: list-counter;
    display: inline-block;
    width: 2rem; }

dt,
dd {
  display: block;
  margin-top: 0.5rem; }

dt {
  font-weight: bold;
  padding: 0; }
  dt:first-child {
    margin-top: 0; }

dd {
  margin: 0; }

hr {
  background-color: #000;
  border: 0;
  clear: both;
  display: block;
  font-size: 1px;
  height: 1px;
  line-height: 1;
  margin: 3rem 0; }

table {
  border: 0;
  border-collapse: collapse;
  margin-bottom: 1em;
  vertical-align: top;
  width: 100%; }

thead {
  font-size: 1.6rem;
  font-weight: 600; }

caption {
  text-align: left;
  margin-bottom: 0.5em; }

tr {
  border-top: thin solid #000; }
  thead tr:first-child {
    border-top: 0; }

th,
td {
  border: 0;
  padding: 0.5rem;
  text-align: left;
  vertical-align: top; }
  th:first-child,
  td:first-child {
    padding-left: 0; }
  th:last-child,
  td:last-child {
    padding-right: 0; }

th {
  font-weight: 600;
  vertical-align: middle; }

embed {
  height: auto;
  max-width: 100%; }

code {
  font-family: Monaco, Consolas, monospace;
  background-color: white;
  border: thin solid #000;
  overflow: scroll; }

pre {
  background-color: white;
  display: block; }
  pre code {
    border: 0; }

address {
  font-style: normal; }

dfn,
samp {
  font-family: Monaco, Consolas, monospace; }

.tablewrap {
  margin-bottom: 1.5rem; }

.space-before-extra-small {
  margin-top: 0 !important; }

.space-after-extra-small {
  margin-bottom: 0 !important; }
  .space-after-extra-small + .co {
    margin-top: 0; }

.space-before-small {
  margin-top: var(--grid-gutter-width) !important; }

.space-after-small {
  margin-bottom: var(--grid-gutter-width) !important; }
  .space-after-small + .co {
    margin-top: 0; }

.space-before-medium {
  margin-top: var(--spacing-section--base) !important; }

.space-after-medium {
  margin-bottom: var(--spacing-section--base) !important; }
  .space-after-medium + .co {
    margin-top: 0; }

.space-before-large {
  margin-top: var(--spacing-section--large) !important; }

.space-after-large {
  margin-bottom: var(--spacing-section--large) !important; }
  .space-after-large + .co {
    margin-top: 0; }

.space-before-extra-large {
  margin-top: 15rem !important; }

.space-after-extra-large {
  margin-bottom: 15rem !important; }
  .space-after-extra-large + .co {
    margin-top: 0; }

img.right {
  float: right; }

img.left {
  float: left; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

@media (min-width: 33.75em) {
  p.text-columns {
    -moz-column-count: 2;
         column-count: 2;
    -moz-column-gap: 30px;
         column-gap: 30px; } }

.button--primary {
  background-color: #000;
  color: #fff;
  display: table;
  font-size: 2.2rem;
  line-height: 1;
  padding: 2rem;
  text-align: center;
  text-decoration: unset;
  text-transform: uppercase;
  transition: all 500ms;
  width: 100%; }
  @media (min-width: 61.25em) {
    .button--primary {
      padding: 2rem 6rem;
      width: auto; } }

.hidden {
  display: none !important;
  visibility: hidden; }

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px !important;
  overflow: hidden;
  padding: 0 !important;
  position: absolute;
  white-space: nowrap;
  width: 1px; }

.call-to-action {
  --offsetX: 100%;
  --offsetXinverted: calc(var(--offsetX) * -1); }
  @media (min-width: 46.25em) {
    .call-to-action {
      --offsetX: 0 !important;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; } }
  .call-to-action p,
  .call-to-action strong {
    display: block;
    font-size: 2.2rem; }
  .call-to-action .circle {
    color: #000;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
    @media (min-width: 46.25em) {
      .call-to-action .circle {
        -ms-flex-order: 1;
            order: 1; } }
  .call-to-action strong {
    text-transform: uppercase; }
  .call-to-action .person {
    font-weight: 700; }
  .call-to-action .button--primary {
    border: none;
    cursor: pointer;
    font-family: "Interstate", Arial, sans-serif;
    line-height: 1.2; }
    body.inverted .call-to-action .button--primary {
      background-color: #fff;
      color: #000; }
  .call-to-action .circle {
    background-color: var(--target-color);
    border-radius: 50%;
    color: #000;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
        flex-flow: column;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    height: 130vw;
    -ms-flex-pack: center;
        justify-content: center;
    margin: 10rem 0;
    opacity: 0.1;
    padding: 5rem;
    transform: translateX(20%);
    transition: all 0.8s ease-out;
    width: 130vw; }
    @media (min-width: 46.25em) {
      .call-to-action .circle {
        height: 70rem;
        -ms-flex-order: 1;
            order: 1;
        width: 70rem; } }
    .call-to-action .circle.active {
      opacity: 1;
      transform: translateX(-5%); }
      @media (min-width: 46.25em) {
        .call-to-action .circle.active {
          transform: translateX(0); } }
    .call-to-action .circle .circle__content {
      max-width: calc(100vw - 8rem); }
    .call-to-action .circle .button--primary {
      background-color: #000 !important;
      color: #fff !important;
      margin-top: 1rem; }
    .call-to-action .circle a,
    .call-to-action .circle strong {
      font-size: 2rem; }
    .call-to-action .circle a:before {
      background: url("../img/svg-sprite-249c58fd.svg") no-repeat;
      height: 14px;
      background-position: 0px -41px;
      width: 18px;
      background-size: 95px 764px;
      content: "";
      display: inline-block;
      vertical-align: middle;
      transform: scale(1) translate(0, 0) rotate(180deg);
      margin-right: 10px; }

@media (min-width: 46.25em) {
  .cta__contact {
    margin-top: 21.6rem; } }

body {
  background: #fff;
  color: #000;
  transition: all 500ms; }
  body.inverted {
    background: #000;
    color: #fff; }
  @media (min-width: 46.25em) {
    body {
      background: #fff !important;
      color: #000 !important; } }
  @media (min-width: 46.25em) {
    body .color-theme {
      padding: 5rem 0;
      position: relative; }
      body .color-theme > * {
        position: relative;
        z-index: 1; }
      body .color-theme::before {
        content: '';
        height: 100%;
        left: 50%;
        position: absolute;
        top: 0;
        transform: translateX(-50%);
        width: 200vw; }
      body .color-theme.classic {
        color: #000; }
        body .color-theme.classic::before {
          background-color: #fff; }
      body .color-theme.inverted {
        color: #fff; }
        body .color-theme.inverted::before {
          background-color: #000; } }

.decoratedHeadline {
  text-transform: uppercase; }
  @media (min-width: 61.25em) {
    .decoratedHeadline {
      margin-left: -3rem; }
      .odd + .decoratedHeadline {
        margin-left: 3rem; } }
  .decoratedHeadline.icon--vielfalt svg {
    margin-bottom: 2px; }
  .decoratedHeadline h2 {
    font-size: 2.8rem;
    line-height: 1.3; }
  .decoratedHeadline span:first-child {
    -ms-flex-align: end;
        align-items: flex-end;
    display: -ms-flexbox;
    display: flex;
    line-height: 1; }
  .decoratedHeadline span svg {
    color: var(--target-color);
    margin-left: 1rem; }
  .decoratedHeadline .lamp {
    animation: lamp 3s infinite;
    transform-origin: bottom center; }

@keyframes lamp {
  0%, 20%, 100% {
    transform: scale(1); }
  10% {
    transform: scale(1.2); } }
  .decoratedHeadline .person {
    animation: jump 7s infinite; }

@keyframes jump {
  0%, 6%, 100% {
    transform: translateY(0); }
  3% {
    transform: translateY(-4px); } }
    .decoratedHeadline .person:nth-child(2) {
      animation-delay: 3s; }
    .decoratedHeadline .person:nth-child(3) {
      animation-delay: 6s; }
  .decoratedHeadline .bag {
    animation: wiggle 3s infinite;
    transform-origin: center center; }

@keyframes wiggle {
  0%, 20%, 100% {
    transform: rotate(0) translateY(-8px); }
  5% {
    transform: rotate(30deg) translateY(-8px); }
  15% {
    transform: rotate(-30deg) translateY(-8px); } }
  .decoratedHeadline .shine {
    animation: shine 3s infinite;
    transform-origin: center; }

@keyframes shine {
  0%, 20%, 100% {
    transform: scale(1); }
  10% {
    transform: scale(1.3); } }
  .decoratedHeadline .shield {
    animation: slam 3s infinite; }

@keyframes slam {
  0%, 20%, 100% {
    transform: translateY(0); }
  17% {
    transform: translateY(-10px); }
  19% {
    transform: translateY(5px); } }

.l-container {
  clear: both;
  margin: 0 auto;
  width: 100%; }
  .l-container::after {
    clear: both;
    content: " ";
    /* 1 */
    display: block; }
  @media (max-width: 46.24em) {
    .l-container {
      padding-bottom: 6rem;
      padding-top: 6rem; } }

.l-container--small {
  max-width: 810px; }

.l-container--large {
  max-width: 1210px; }

.l-container--huge {
  max-width: 1400px; }

.l-column {
  min-height: 1px;
  padding-left: 30px;
  padding-right: 30px;
  position: relative;
  margin-bottom: 6rem; }
  .l-column::after {
    clear: both;
    content: " ";
    /* 1 */
    display: block; }
  @media (min-width: 46.25em) {
    .l-column {
      float: left; } }
  @media (min-width: 46.25em) {
    .l-column {
      margin-bottom: 0; } }
  .l-column:last-child {
    margin-bottom: 0; }
  .l-column .c-column .l-column {
    padding: 0; }

.l-column--tiny {
  width: 100%; }
  @media (min-width: 20em) {
    .l-column--tiny {
      float: left;
      width: 50%; } }
  @media (min-width: 46.25em) {
    .l-column--tiny {
      width: 25%; } }
  @media (min-width: 20em) {
    .l-column--tiny:nth-of-type(2n + 1) {
      clear: left; } }
  @media (min-width: 46.25em) {
    .l-column--tiny:nth-of-type(2n + 1) {
      clear: none; } }
  @media (min-width: 46.25em) {
    .l-column--tiny:nth-of-type(4n + 1) {
      clear: left; } }

.l-column--small {
  width: 100%; }
  @media (min-width: 46.25em) {
    .l-column--small {
      width: 33.3333333333%; } }

.l-column--medium {
  width: 100%; }
  @media (min-width: 46.25em) {
    .l-column--medium {
      width: 50%; } }
  .l-column--medium:nth-child(1), .l-column--medium:nth-child(3) {
    clear: left; }
    @media (min-width: 46.25em) {
      .l-column--medium:nth-child(1), .l-column--medium:nth-child(3) {
        clear: none; } }

.l-column--large {
  width: 100%; }
  @media (min-width: 46.25em) {
    .l-column--large {
      width: 66.6666666667%; } }

.l-column--huge {
  width: 100%; }
  @media (min-width: 46.25em) {
    .l-column--huge {
      width: 66.6666666667%; } }
  @media (min-width: 61.25em) {
    .l-column--huge {
      width: 75%; } }

.l-column--full {
  width: 100%; }
  @media (min-width: 46.25em) {
    .l-column--full {
      float: none; } }
  .l-container--large .l-column--full {
    min-height: 1px;
    padding-left: 30px;
    padding-right: 30px;
    position: relative; }

@media print {
  [class*=l-column] {
    clear: both !important;
    float: none !important;
    width: auto !important; } }

.snapSlider {
  --gutter: 20px;
  position: relative;
  left: 50%;
  opacity: 0;
  transform: translateX(-30%);
  transition: all 400ms ease-out;
  width: 100vw; }
  @media (min-width: 46.25em) {
    .snapSlider {
      width: 100%; } }
  .snapSlider.active {
    opacity: 1;
    transform: translateX(-50%); }
  @media (min-width: 61.25em) {
    .snapSlider.odd {
      margin-left: -3rem; }
    .snapSlider.even {
      margin-left: 3rem; } }

.snapSlider__content {
  display: -ms-flexbox;
  display: flex;
  left: 50%;
  list-style: none;
  margin: 0;
  max-width: var(--content-max-width);
  overflow-x: scroll;
  padding: 0;
  position: relative;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  transform: translateX(-50%);
  width: calc(100% + var(--gutter)); }
  .snapSlider__content::-webkit-scrollbar {
    display: none; }

.snapSlider__item {
  display: inline-block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-left: unset;
  min-height: 25rem;
  padding: 0 calc(var(--gutter) / 2);
  position: relative;
  scroll-snap-align: start;
  width: calc(100% / var(--item-layout-mobile)); }
  @media (min-width: 33.75em) {
    .snapSlider__item {
      width: calc(100% / var(--item-layout-phablet)); } }
  @media (min-width: 46.25em) {
    .snapSlider__item {
      width: calc(100% / var(--item-layout-tablet)); } }
  @media (min-width: 61.25em) {
    .snapSlider__item {
      width: calc(100% / var(--item-layout-desktop)); } }
  .snap-position-start .snapSlider__item {
    scroll-snap-align: start; }
  .snap-position-center .snapSlider__item {
    scroll-snap-align: center; }
  .snap-position-end .snapSlider__item {
    scroll-snap-align: end; }
  .snapSlider__item .snapSlider__lightbox {
    display: none; }
  .odd .snapSlider__item:nth-child(odd) .snapSlider__text {
    background-color: #000;
    color: var(--target-color); }
  .even .snapSlider__item:nth-child(even) .snapSlider__text {
    background-color: #000;
    color: var(--target-color); }

.snapSlider__text {
  -ms-flex-align: center;
      align-items: center;
  background-color: var(--target-color);
  color: #000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column;
      flex-flow: column;
  height: 100%;
  -ms-flex-pack: center;
      justify-content: center;
  left: calc(var(--gutter) / 2);
  padding: 1rem;
  position: absolute;
  text-align: center;
  top: 0;
  width: calc(100% - var(--gutter)); }
  .snapSlider__text h3 {
    font-size: 2.4rem;
    font-weight: 400;
    margin: 0;
    max-width: 80%; }

.snapSlider__previewImage {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: translateX(-50%) translateY(-50%); }

.snapSlider__opener {
  background: transparent;
  border: 0;
  display: inline-block;
  font-family: inherit;
  font-size: 1em;
  margin: 0;
  padding: 0;
  bottom: 0;
  cursor: pointer;
  font-size: 0;
  height: 100%;
  line-height: 0;
  right: 0;
  position: absolute;
  width: 100%; }
  .snapSlider__opener.close {
    height: 5rem;
    width: 5rem; }
    @media (min-width: 61.25em) {
      .snapSlider__opener.close {
        bottom: 5rem;
        right: calc(50% - 44rem); } }
  .snapSlider__opener svg {
    position: absolute;
    bottom: 0.7rem;
    right: 0.7rem; }
  .odd .snapSlider__item:nth-child(odd) .snapSlider__opener svg circle,
  .even .snapSlider__item:nth-child(even) .snapSlider__opener svg circle {
    fill: var(--target-color); }
  .odd .snapSlider__item:nth-child(odd) .snapSlider__opener svg g,
  .even .snapSlider__item:nth-child(even) .snapSlider__opener svg g {
    fill: #000; }

.snapSlider__controller {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end; }
  .snapSlider__controller > * {
    margin: 0 0.3rem; }
  .snapSlider__controller .snapSlider__controller-button {
    background: transparent;
    border: 0;
    display: inline-block;
    font-family: inherit;
    font-size: 1em;
    margin: 0;
    padding: 0;
    cursor: pointer;
    height: 3rem;
    width: 3rem; }
    .snapSlider__controller .snapSlider__controller-button:disabled {
      opacity: 0.3; }
    .snapSlider__controller .snapSlider__controller-button.prev {
      position: relative; }
      .snapSlider__controller .snapSlider__controller-button.prev:before {
        background: url("../img/svg-sprite-249c58fd.svg") no-repeat;
        height: 14px;
        background-position: 0px -41px;
        width: 18px;
        background-size: 95px 764px;
        bottom: 0;
        content: "";
        display: block;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0; }
    .snapSlider__controller .snapSlider__controller-button.next {
      position: relative; }
      .snapSlider__controller .snapSlider__controller-button.next:before {
        background: url("../img/svg-sprite-249c58fd.svg") no-repeat;
        height: 14px;
        background-position: 0px -41px;
        width: 18px;
        background-size: 95px 764px;
        bottom: 0;
        content: "";
        display: block;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 0;
        transform: scale(1) rotate(180deg); }

#lightbox {
  background-color: #000000;
  color: var(--target-color);
  display: none;
  height: 0;
  left: 50%;
  position: fixed;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  transition: height 300ms;
  width: 100vw;
  z-index: 5000; }
  #lightbox.open {
    height: 100vh; }
  #lightbox img {
    position: relative;
    left: 50%;
    max-width: unset;
    transform: translateX(-50%);
    width: 100vw; }
    @media (min-width: 46.25em) {
      #lightbox img {
        width: 100%; } }
  #lightbox .snapSlider__lightbox {
    font-size: 2.2rem;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto; }
  #lightbox .l-container {
    margin: 0 auto;
    padding: 0; }
    #lightbox .l-container .l-column {
      padding: 5rem; }
      #lightbox .l-container .l-column > * {
        margin: 0 0 3rem; }

html.lightbox-open {
  overflow-y: hidden; }

.stage {
  font-size: 2.6rem;
  line-height: 1.2;
  overflow: hidden; }
  .stage .l-container {
    padding: 0; }

.stage__text {
  color: #ffffff;
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  padding-top: 3rem;
  width: 100%; }
  .stage__text h2 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
        flex-flow: column;
    font-size: 2.6rem;
    font-weight: 400;
    -ms-flex-pack: center;
        justify-content: center;
    line-height: 1.6; }
    @media (min-width: 61.25em) {
      .stage__text h2 {
        font-size: 6rem; } }
  .stage__text span {
    display: block; }
    .stage__text span.author {
      margin-top: 2.6rem;
      text-transform: lowercase; }
      @media (min-width: 61.25em) {
        .stage__text span.author {
          margin-top: 5rem; } }

.stage__motivation {
  --offsetX: 0%;
  --offsetY: 0%;
  height: 100vh; }
  .stage__motivation .stage__motivation-claim {
    bottom: 30%;
    left: calc(100% - 140px);
    padding: 3rem;
    position: fixed;
    text-decoration: unset;
    transform: translateX(var(--offsetX)) translateY(var(--offsetY));
    width: 100%; }
    @media (min-width: 61.25em) {
      .stage__motivation .stage__motivation-claim {
        left: calc(55% - 76px);
        transform: translateX(calc(var(--offsetX) / 3)) translateY(var(--offsetY)); } }
    .stage__motivation .stage__motivation-claim::before {
      background-color: var(--target-color);
      border-radius: 50%;
      content: '';
      height: 56rem;
      left: 0;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 56rem; }
      @media (min-width: 61.25em) {
        .stage__motivation .stage__motivation-claim::before {
          height: 80rem;
          left: -5%;
          top: 68%;
          width: 80rem; } }
    .absolute .stage__motivation .stage__motivation-claim {
      position: absolute; }
    .stage__motivation .stage__motivation-claim .button--primary {
      color: #ffffff;
      margin-left: 6rem;
      margin-top: 2rem;
      width: auto; }
      @media (min-width: 46.25em) {
        .stage__motivation .stage__motivation-claim .button--primary {
          font-size: 4rem;
          margin-left: 0; } }
  .stage__motivation p {
    color: #000000;
    line-height: 1.3;
    margin-bottom: 0.5rem;
    position: relative;
    z-index: 1; }
    @media (min-width: 61.25em) {
      .stage__motivation p {
        font-size: 6rem; } }
  .stage__motivation .stage__scroller {
    background: transparent;
    border: 0;
    display: inline-block;
    font-family: inherit;
    font-size: 1em;
    margin: 0;
    padding: 0;
    animation: hover 2s infinite;
    bottom: 2rem;
    position: fixed;
    right: calc((100% - var(--offsetX)) / 2);
    transform: translateX(50%) translateY(var(--offsetY)); }
    .stage__motivation .stage__scroller:before {
      background: url("../img/svg-sprite-249c58fd.svg") no-repeat;
      height: 27px;
      background-position: 0px -55px;
      width: 23px;
      background-size: 95px 764px;
      content: "";
      display: inline-block;
      vertical-align: middle;
      margin-right: 10px; }

@keyframes hover {
  0% {
    bottom: 2rem; }
  50% {
    bottom: 3rem; }
  100% {
    bottom: 2rem; } }

.teaserList {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap;
  margin-left: -20px;
  margin-right: -20px; }
  .teaserList.teaserList--gutterless {
    margin-left: 0;
    margin-right: 0; }
  .teaserList.slick-initialized {
    margin-bottom: 0; }
  .teaserList.slick-slider {
    display: block; }

.teaserList--tiny {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }

.teaserList--small {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }

.teaserList--medium {
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }

.teaserList--full {
  -ms-flex-flow: column nowrap;
      flex-flow: column nowrap; }

.teaserList--equal-height-calculation-mode .teaserList__item,
.teaserList--equal-height-calculation-mode .teaserList__item > * {
  transition: min-height 0s 0s linear !important; }

.teaserList__item {
  margin-top: 4rem;
  min-height: 1px;
  padding-left: 20px;
  padding-right: 20px; }
  .teaserList__item:first-of-type {
    margin-top: 0 !important; }
  .slick-initialized .teaserList__item {
    margin-top: 0 !important; }
  .teaserList--gutterless .teaserList__item {
    margin: 0;
    padding: 0; }
  .slick-initialized .teaserList__item {
    margin-bottom: 0; }
  .teaserList--tiny .teaserList__item {
    width: 100%; }
    @media (min-width: 33.75em) {
      .teaserList--tiny .teaserList__item {
        width: 50%; }
        .teaserList--tiny .teaserList__item:nth-of-type(-n + 2) {
          margin-top: 0 !important; } }
    @media (min-width: 61.25em) {
      .teaserList--tiny .teaserList__item {
        width: 25%; }
        .teaserList--tiny .teaserList__item:nth-of-type(-n + 4) {
          margin-top: 0 !important; } }
  .teaserList--small .teaserList__item {
    width: 100%; }
    @media (min-width: 33.75em) {
      .teaserList--small .teaserList__item {
        width: 50%; }
        .teaserList--small .teaserList__item:nth-of-type(-n + 2) {
          margin-top: 0 !important; } }
    @media (min-width: 61.25em) {
      .teaserList--small .teaserList__item {
        width: 33.3333333333%; }
        .teaserList--small .teaserList__item:nth-of-type(-n + 3) {
          margin-top: 0 !important; } }
    @media (min-width: 61.25em) {
      .l-column--small .teaserList--small .teaserList__item, .l-column--small .teaserList--small .teaserList__item:nth-child(2n + 1), .l-column--small .teaserList--small .teaserList__item:nth-child(3n + 1) {
        width: 100%; } }
  .teaserList--medium .teaserList__item {
    width: 100%; }
    @media (min-width: 33.75em) {
      .teaserList--medium .teaserList__item {
        width: 50%; }
        .teaserList--medium .teaserList__item:nth-of-type(-n + 2) {
          margin-top: 0 !important; } }
  .teaserList__item > * {
    height: 100%;
    width: 100%; }

.js .teaserList.teaserList--full.m-slider:not(.slick-initialized):not(.m-slider--mobile) .teaserList__item:not(:first-child) {
  display: none; }

.documentFooter {
  color: #000; }
  .documentFooter .l-container {
    padding: 0; }
  .documentFooter .l-column {
    padding: 1.5rem; }
  .documentFooter .socials {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    margin-top: 1.5rem; }
    .documentFooter .socials li {
      border: 1px solid #000;
      border-radius: 50%;
      height: 3.5rem;
      width: 3.5rem; }
      .documentFooter .socials li + li {
        margin-left: 1rem; }
      .documentFooter .socials li a {
        -ms-flex-align: center;
            align-items: center;
        display: -ms-flexbox;
        display: flex;
        font-size: 0;
        height: 100%;
        -ms-flex-pack: center;
            justify-content: center;
        line-height: 0;
        width: 100%; }
        .documentFooter .socials li a svg {
          height: 60%;
          width: auto; }

.documentFooter__meta {
  background-color: #ccbc94;
  border-bottom: 3px solid #ffffff;
  font-size: 1.9rem; }
  @media (min-width: 61.25em) {
    .documentFooter__meta .l-column {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
    .documentFooter__meta strong,
    .documentFooter__meta p {
      font-size: 2.8rem;
      line-height: 1;
      margin: 0; }
    .documentFooter__meta strong {
      margin-right: 0.4rem; }
    .documentFooter__meta .socials {
      margin-left: auto; } }

.documentFooter__info {
  background-color: #000;
  color: #fff; }
  .documentFooter__info ul {
    --grid: 2rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    width: calc(100% + var(--grid));
    margin-left: calc(var(--grid) / 2 * -1); }
    .documentFooter__info ul li {
      margin: 0 calc(var(--grid) / 2); }
      .documentFooter__info ul li a {
        text-decoration: none; }

.documentHeader {
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  transition: all 500ms;
  z-index: 100; }
  .documentHeader svg {
    height: 20px;
    transition: all 500ms;
    width: auto; }
  .documentHeader::before {
    background-color: #000;
    content: '';
    height: 6rem;
    left: 49%;
    position: absolute;
    top: 0;
    transform: translateX(-50%);
    transition: all 500ms;
    width: 103vw;
    z-index: -1; }
    @media (min-width: 46.25em) {
      .documentHeader::before {
        height: 10rem; } }
  @media (max-width: 46.24em) {
    body:not(.inverted) .documentHeader::before {
      background-color: #ffffff; }
    body:not(.inverted) .documentHeader .logo svg path {
      fill: #000; } }
  .documentHeader .l-container {
    padding: 0; }
  .documentHeader .l-column {
    display: -ms-flexbox;
    display: flex;
    padding: 2rem; }
    @media (min-width: 61.25em) {
      .documentHeader .l-column {
        padding: 4rem 2rem; } }
  .documentHeader .logo {
    line-height: 1;
    margin-right: auto; }
    .documentHeader .logo svg path {
      fill: #fff; }
  .documentHeader .contact {
    color: #000;
    position: relative;
    text-transform: uppercase;
    transform: translateY(-7rem);
    transition: transform 0.225s; }
    @media (min-width: 46.25em) {
      .documentHeader .contact {
        display: none; } }
    .hide-header .documentHeader .contact {
      transform: translateY(-200%); }
    .documentHeader .contact::before {
      background-color: var(--target-color);
      border-radius: 50% 0 50% 50%;
      box-shadow: 0 0 12px #00000090;
      content: '';
      height: 19rem;
      left: 50%;
      position: absolute;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 19rem;
      z-index: -1; }
      @media (min-width: 61.25em) {
        .documentHeader .contact::before {
          height: 40rem;
          width: 40rem; } }
    .documentHeader .contact p {
      font-size: 1.8rem;
      font-weight: 700;
      margin-bottom: 2.4rem; }
      @media (min-width: 61.25em) {
        .documentHeader .contact p {
          font-size: 4.6rem; } }
    .documentHeader .contact a {
      font-size: 1.4rem;
      display: table;
      position: relative;
      text-decoration: none; }
      @media (min-width: 61.25em) {
        .documentHeader .contact a {
          font-size: 2rem; } }
      .documentHeader .contact a::before {
        background-color: #000;
        bottom: -2px;
        content: '';
        height: 2px;
        left: -2px;
        position: absolute;
        width: calc(100% + 4px); }

@media print {
  @page {
    margin: 2cm; }
  .l-column:first-child {
    padding-left: 0; }
  .l-column:last-child {
    padding-right: 0; }
  .page-wrapper {
    padding-left: 0;
    padding-right: 0; }
    .page-wrapper::before, .page-wrapper::after {
      display: none !important; }
  * {
    background: transparent !important;
    border-color: #888888 !important;
    box-shadow: none !important;
    color: #000000 !important;
    text-shadow: none !important; }
  :root,
  html {
    border: 0;
    font-size: 50%; }
  a,
  a:visited {
    text-decoration: none !important; }
  a[href]::after {
    content: ''; }
  abbr[title]::after {
    content: " (" attr(title) ")"; }
  a[href^="javascript:"]::after,
  a[href^="#"]::after {
    content: "" !important; }
  pre {
    border: thin solid #888888;
    margin: 2rem 0;
    page-break-inside: avoid; }
  hr {
    border-top: thin solid #000000; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    page-break-after: avoid; }
  section {
    display: block !important; }
  .slick-dots,
  .slick-next,
  .slick-prev,
  .social-links,
  .main-nav-toggle {
    display: none !important; }
  .figure {
    page-break-inside: avoid; }
  .co__header {
    page-break-after: avoid !important; }
  .co--textmedia {
    page-break-inside: avoid; }
  .teaserList__item {
    page-break-inside: avoid !important; }
  [class*=-teaser] {
    page-break-inside: avoid !important;
    -webkit-region-break-inside: avoid; }
  .document-content__complementary {
    page-break-before: always; } }
