.orange {
  color: #ff7a29;
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/open-sans-v15-latin-300.eot");
  src: url("../fonts/open-sans-v15-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-300.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-300.woff") format("woff"), url("../fonts/open-sans-v15-latin-300.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-300.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/open-sans-v15-latin-regular.eot");
  src: url("../fonts/open-sans-v15-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-regular.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-regular.woff") format("woff"), url("../fonts/open-sans-v15-latin-regular.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-regular.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/open-sans-v15-latin-600.eot");
  src: url("../fonts/open-sans-v15-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-600.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-600.woff") format("woff"), url("../fonts/open-sans-v15-latin-600.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-600.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/open-sans-v15-latin-700.eot");
  src: url("../fonts/open-sans-v15-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-700.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-700.woff") format("woff"), url("../fonts/open-sans-v15-latin-700.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-700.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/open-sans-v15-latin-800.eot");
  src: url("../fonts/open-sans-v15-latin-800.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-800.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-800.woff") format("woff"), url("../fonts/open-sans-v15-latin-800.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-800.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/open-sans-v15-latin-300italic.eot");
  src: url("../fonts/open-sans-v15-latin-300italic.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-300italic.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-300italic.woff") format("woff"), url("../fonts/open-sans-v15-latin-300italic.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-300italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/open-sans-v15-latin-italic.eot");
  src: url("../fonts/open-sans-v15-latin-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-italic.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-italic.woff") format("woff"), url("../fonts/open-sans-v15-latin-italic.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/open-sans-v15-latin-600italic.eot");
  src: url("../fonts/open-sans-v15-latin-600italic.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-600italic.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-600italic.woff") format("woff"), url("../fonts/open-sans-v15-latin-600italic.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-600italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/open-sans-v15-latin-700italic.eot");
  src: url("../fonts/open-sans-v15-latin-700italic.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-700italic.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-700italic.woff") format("woff"), url("../fonts/open-sans-v15-latin-700italic.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-700italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/open-sans-v15-latin-800italic.eot");
  src: url("../fonts/open-sans-v15-latin-800italic.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans-v15-latin-800italic.woff2") format("woff2"), url("../fonts/open-sans-v15-latin-800italic.woff") format("woff"), url("../fonts/open-sans-v15-latin-800italic.ttf") format("truetype"), url("../fonts/open-sans-v15-latin-800italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/source-sans-pro-v11-latin-200.eot");
  src: url("../fonts/source-sans-pro-v11-latin-200.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-200.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-200.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-200.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-200.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/source-sans-pro-v11-latin-300.eot");
  src: url("../fonts/source-sans-pro-v11-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-300.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-300.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-300.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-300.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/source-sans-pro-v11-latin-regular.eot");
  src: url("../fonts/source-sans-pro-v11-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-regular.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-regular.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-regular.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-regular.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/source-sans-pro-v11-latin-600.eot");
  src: url("../fonts/source-sans-pro-v11-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-600.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-600.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-600.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-600.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/source-sans-pro-v11-latin-700.eot");
  src: url("../fonts/source-sans-pro-v11-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-700.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-700.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-700.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-700.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/source-sans-pro-v11-latin-900.eot");
  src: url("../fonts/source-sans-pro-v11-latin-900.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-900.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-900.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-900.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-900.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 200;
  src: url("../fonts/source-sans-pro-v11-latin-200italic.eot");
  src: url("../fonts/source-sans-pro-v11-latin-200italic.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-200italic.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-200italic.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-200italic.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-200italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/source-sans-pro-v11-latin-300italic.eot");
  src: url("../fonts/source-sans-pro-v11-latin-300italic.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-300italic.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-300italic.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-300italic.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-300italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/source-sans-pro-v11-latin-italic.eot");
  src: url("../fonts/source-sans-pro-v11-latin-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-italic.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-italic.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-italic.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/source-sans-pro-v11-latin-600italic.eot");
  src: url("../fonts/source-sans-pro-v11-latin-600italic.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-600italic.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-600italic.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-600italic.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-600italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/source-sans-pro-v11-latin-700italic.eot");
  src: url("../fonts/source-sans-pro-v11-latin-700italic.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-700italic.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-700italic.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-700italic.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-700italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 900;
  src: url("../fonts/source-sans-pro-v11-latin-900italic.eot");
  src: url("../fonts/source-sans-pro-v11-latin-900italic.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v11-latin-900italic.woff2") format("woff2"), url("../fonts/source-sans-pro-v11-latin-900italic.woff") format("woff"), url("../fonts/source-sans-pro-v11-latin-900italic.ttf") format("truetype"), url("../fonts/source-sans-pro-v11-latin-900italic.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/source-code-pro-v23-latin-300.eot");
  src: url("../fonts/source-code-pro-v23-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/source-code-pro-v23-latin-300.woff2") format("woff2"), url("../fonts/source-code-pro-v23-latin-300.woff") format("woff"), url("../fonts/source-code-pro-v23-latin-300.ttf") format("truetype"), url("../fonts/source-code-pro-v23-latin-300.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/source-code-pro-v23-latin-regular.eot");
  src: url("../fonts/source-code-pro-v23-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/source-code-pro-v23-latin-regular.woff2") format("woff2"), url("../fonts/source-code-pro-v23-latin-regular.woff") format("woff"), url("../fonts/source-code-pro-v23-latin-regular.ttf") format("truetype"), url("../fonts/source-code-pro-v23-latin-regular.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/source-code-pro-v23-latin-600.eot");
  src: url("../fonts/source-code-pro-v23-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/source-code-pro-v23-latin-600.woff2") format("woff2"), url("../fonts/source-code-pro-v23-latin-600.woff") format("woff"), url("../fonts/source-code-pro-v23-latin-600.ttf") format("truetype"), url("../fonts/source-code-pro-v23-latin-600.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/source-code-pro-v23-latin-700.eot");
  src: url("../fonts/source-code-pro-v23-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/source-code-pro-v23-latin-700.woff2") format("woff2"), url("../fonts/source-code-pro-v23-latin-700.woff") format("woff"), url("../fonts/source-code-pro-v23-latin-700.ttf") format("truetype"), url("../fonts/source-code-pro-v23-latin-700.svg#OpenSans") format("svg");
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/source-code-pro-v23-latin-800.eot");
  src: url("../fonts/source-code-pro-v23-latin-800.eot?#iefix") format("embedded-opentype"), url("../fonts/source-code-pro-v23-latin-800.woff2") format("woff2"), url("../fonts/source-code-pro-v23-latin-800.woff") format("woff"), url("../fonts/source-code-pro-v23-latin-800.ttf") format("truetype"), url("../fonts/source-code-pro-v23-latin-800.svg#OpenSans") format("svg");
}
.bold {
  font-weight: bold;
}
.semibold,
.semi {
  font-weight: 600;
}
.center {
  text-align: center;
}
.underline {
  text-decoration: underline;
}
section {
  padding: 5.6rem calc((100% - 976px)/2.0);
}
section.teaser {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
section.teaser div.image {
  margin-right: 7.2rem;
}
section.teaser h2 {
  margin-top: 0;
}
section.teaser .details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 100;
}
section.teaser .details h1,
section.teaser .details h2 {
  text-align: center;
}
section.teaser .details h1 {
  font-size: 5.4rem;
  font-weight: 400;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
}
section.teaser .details h2 {
  font-size: 2.8rem;
  font-weight: 400;
  font-family: "Open Sans", "Lucida Grande", sans-serif;
  opacity: 0.5;
}
section.teaser .details .description {
  margin-top: 1.6rem;
  color: rgba(24,24,24,0.75);
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Open Sans", "Lucida Grande", sans-serif;
  line-height: 2.4rem;
  max-width: 42rem;
  text-align: center;
}
section.teaser .details .interaction {
  margin-top: 3.2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
section.teaser .details .interaction > .button:not(:first-of-type) {
  margin-left: 1.2rem;
}
section.teaser .details .additional-links {
  margin-top: 1.6rem;
}
section.flex-column {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
section.flex-column > *:not(:first-child) {
  margin: 0;
  margin-top: 1.6rem;
}
section.tall {
  margin-top: 5.6rem;
  margin-bottom: 5.6rem;
}
section.header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3.2rem 24 0 24;
  text-align: center;
}
section.header *:first-child {
  margin-bottom: 0.7em;
}
section.header h1 {
  margin-top: calc(4.2rem * 3/4);
  font-size: 4.2rem;
  font-weight: 400;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
}
section.header h2 {
  margin-top: 1rem;
  font-size: 2.8rem;
  font-weight: 400;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
}
section.header-icon-only,
section.header-text-only {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3.2rem calc((100% - 1024px)/2.0);
}
section.header-icon-only.w80 > h1,
section.header-text-only.w80 > h1,
section.header-icon-only.w80 > p,
section.header-text-only.w80 > p {
  text-align: center;
  max-width: 100%;
}
section.header-icon-only > h1,
section.header-text-only > h1,
section.header-icon-only > p,
section.header-text-only > p {
  text-align: center;
  max-width: 60%;
}
section.header-icon-only.low + section,
section.header-text-only.low + section {
  margin-top: 0;
  padding-top: 0;
}
@media only screen and (max-width: 1072px) {
  section,
  section.header-icon-only,
  section.header-text-only {
    padding: 3.2rem;
  }
  section > h1,
  section.header-icon-only > h1,
  section.header-text-only > h1,
  section > p,
  section.header-icon-only > p,
  section.header-text-only > p {
    max-width: 100%;
  }
  section.teaser div.image {
    max-width: 30%;
    margin-right: 3.6rem;
  }
}
@media only screen and (max-width: 520px) {
  section,
  section.header-icon-only,
  section.header-text-only {
    padding: 3.2rem 24px;
  }
  section.header-icon-only {
    display: none;
  }
  section.teaser {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  section.teaser div.image {
    max-width: 50%;
    margin: 1.6rem 0;
  }
  section.teaser .details .interaction {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 28rem;
  }
  section.teaser .details .interaction .button {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  section.teaser .details .interaction .button a {
    width: 100%;
    padding: 1rem 0;
    text-align: center;
  }
  section.teaser .details .interaction .button:not(:first-of-type) {
    margin: 0;
  }
  section.teaser .details .interaction .button.download:after {
    display: none;
  }
  section.teaser .details .interaction .button:first-of-type {
    margin-bottom: 0.8rem;
  }
  section:first-of-type {
    margin-top: 0;
  }
}
input.mm-trigger {
  display: none;
}
html div.pageContent:after {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  pointer-events: none;
  -webkit-transition: background-color 500ms linear;
  -o-transition: background-color 500ms linear;
  transition: background-color 500ms linear;
  -webkit-transition-delay: 127ms;
       -o-transition-delay: 127ms;
          transition-delay: 127ms;
}
html.menu-active div.pageContent:after {
  pointer-events: auto;
  background-color: rgba(48,48,48,0.35);
}
header {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 999;
  position: relative;
  padding: 0 calc((100% - 1024px) / 2);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Open Sans", "Lucida Grande", sans-serif;
  color: #fafafa;
  background: #5c5c5c;
}
@media only screen and (max-width: 1072px) {
  header {
    padding: 0 1.6rem;
  }
}
header *[id^="Shape"] {
  fill: #fafafa;
}
header .logo.mobile {
  display: none;
}
@media only screen and (max-width: 767px) {
  header .logo.mobile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
header .shop {
  position: relative;
  z-index: 0;
  color: #fff !important;
  padding: 0 0.8rem;
}
header .shop *[id^="Shape"] {
  fill: #fff !important;
}
header .shop:hover *[id^="Shape"] {
  fill: #fff !important;
}
header .shop:hover:before {
  background-color: #ff711a;
}
header .shop:active:before {
  background-color: #ed5a00;
}
header .shop:before {
  position: absolute;
  left: 0;
  top: 0.8rem;
  width: 100%;
  height: calc(100% - 1.6rem);
  content: '';
  background-color: #ff7a29;
  -webkit-transition: background-color 75ms ease-in-out;
  -o-transition: background-color 75ms ease-in-out;
  transition: background-color 75ms ease-in-out;
  border-radius: 0.8rem;
  z-index: -1;
}
header .logo svg,
header .shop svg {
  margin-right: 0.8rem;
}
@media only screen and (max-width: 767px) {
  header .logo.logo.desktop,
  header .shop.logo.desktop {
    display: none;
  }
}
header .logo:not(.logo) svg,
header .shop:not(.logo) svg {
  position: relative;
  top: 0.2rem;
}
header .logo:hover *[id^="Shape"],
header .shop:hover *[id^="Shape"] {
  fill: rgba(250,250,250,0.75);
}
header .logo:active *[id^="Shape"],
header .shop:active *[id^="Shape"] {
  fill: rgba(250,250,250,0.6);
}
header label {
  display: none;
  cursor: pointer;
  color: transparent;
  width: 32px;
  height: 32px;
}
header label #ShapeExpanded {
  opacity: 0;
}
header a {
  line-height: 4.8rem;
  color: inherit !important;
}
header a:hover {
  text-decoration: none;
  color: inherit;
}
header a:active {
  text-decoration: none;
  color: inherit;
}
header a:focus {
  text-decoration: none;
  color: inherit;
}
header a:visited {
  text-decoration: none;
  color: inherit;
}
header a.logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
header a.logo img {
  margin-right: 0.8rem;
  max-width: 32px;
}
header a.logo:hover {
  text-decoration: none;
  color: rgba(250,250,250,0.8);
}
header nav[role="main"] {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 768px) {
  header nav[role="main"] {
    padding-right: 1.6rem;
  }
}
header nav[role="main"] a {
  position: relative;
}
header nav[role="main"] a img {
  position: absolute;
  top: calc(50% - 16px);
  left: 16px;
  display: none;
  margin-right: 0.8rem;
}
header nav[role="main"] a:not(.shop) svg {
  position: absolute;
  top: calc(50% - 11px);
  left: 20px;
  display: none;
  margin-right: 0.8rem;
}
header nav[role="main"] a:hover {
  text-decoration: none;
  opacity: 0.75;
}
header nav[role="main"] a:active {
  text-decoration: none;
  opacity: 0.6;
}
header nav[role="main"] a.more img {
  left: 21px;
  top: calc(50% - 11px);
}
header nav[role="main"] a.entry {
  margin: 0 1.6rem;
}
@media only screen and (max-width: 767px) {
  header nav[role="main"] a.entry {
    margin: 0;
  }
}
header nav[role="main"] a.entry:last-of-type {
  margin-right: 0;
}
header nav[role="main"] a.mobile {
  display: none;
}
header nav[role="main"] a.jobs {
  position: relative;
}
header nav[role="main"] a.jobs:after {
  content: "+";
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 1.6rem;
  height: 1.6rem;
  font-size: 1.6rem;
  position: absolute;
  top: 8px;
  right: -12px;
  border-radius: 100%;
  color: #fff;
  background-color: #ff7a29;
}
@media only screen and (max-width: 767px) {
  header nav[role="main"] a.jobs:after {
    right: calc(100% - 32px - 2.1rem/2.0);
    top: calc(50% - 2.1rem/2.0);
    width: 2.1rem;
    height: 2.1rem;
    font-size: 2.1rem;
    color: #fafafa;
    background-color: transparent;
    border: 1px solid #fafafa;
  }
}
@media only screen and (max-width: 767px) {
  input#mm-trigger:checked ~ header nav[role="main"] {
    max-height: 600px;
  }
  input#mm-trigger:checked ~ header label #ShapeExpanded {
    opacity: 1;
  }
  input#mm-trigger:checked ~ header label #ShapeCollapsed {
    opacity: 0;
  }
  header {
    padding: 0 16px;
    font-size: 2.1rem;
    font-weight: 400;
    font-family: "Open Sans", "Lucida Grande", sans-serif;
  }
  header nav[role="main"] {
    max-height: 0px;
    display: block;
    position: absolute;
    top: 100%;
    right: 0;
    overflow: hidden;
    width: 100%;
    z-index: 100;
    background-color: #5c5c5c;
    -webkit-transition: max-height 333ms linear;
    -o-transition: max-height 333ms linear;
    transition: max-height 333ms linear;
    -webkit-transition-delay: 0s;
         -o-transition-delay: 0s;
            transition-delay: 0s;
  }
  header nav[role="main"] a {
    display: block;
  }
  header nav[role="main"] a img,
  header nav[role="main"] a svg {
    display: inline-block;
  }
  header nav[role="main"] a.entry {
    padding: 0 6.4rem;
  }
  header nav[role="main"] a.mobile {
    display: block;
  }
  header nav[role="main"] a.mobile:not(.cart) {
    background-color: rgba(250,250,250,0.1);
  }
  header nav[role="main"] a.desktop {
    display: none;
  }
  header nav[role="main"] a:hover {
    text-decoration: none;
    color: #fafafa;
    background-color: rgba(250,250,250,0.15);
  }
  header label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media only screen and (max-width: 767px) and (max-width: 520px) {
  header {
    font-size: 1.9rem;
    font-weight: 400;
    font-family: "Open Sans", "Lucida Grande", sans-serif;
  }
}
.flex-horizontal-start-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex-horizontal-end-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.flex-horizontal-end-end {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.flex-horizontal-start-end {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex-horizontal-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex-horizontal-left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex-vertical-center-end,
html section.teaser {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex-vertical-center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex-vertical-left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex-vertical-right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}
*[class^="flex-"] > p {
  margin-left: inherit;
  margin-right: inherit;
}
@media only screen and (max-width: 520px) {
  .m-hidden {
    display: none !important;
  }
  .m-flex-vertical-center {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.wrap {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.justify-space {
  -webkit-box-pack: justify !important;
  -webkit-justify-content: space-between !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important;
}
.relative {
  position: relative;
}
@media only screen and (min-width: 521px) {
  .max-w20 {
    max-width: 20%;
  }
  .max-w30 {
    max-width: 30%;
  }
  .max-w40 {
    max-width: 40%;
  }
  .max-w50 {
    max-width: 50%;
  }
  .max-w60 {
    max-width: 60%;
  }
  .max-w70 {
    max-width: 70%;
  }
  .max-w80 {
    max-width: 80%;
  }
  .w35 {
    width: 35%;
  }
  .w40 {
    width: 40%;
  }
  .w50 {
    width: 50%;
  }
  .w70 {
    width: 70%;
  }
}
div.button {
  color: #fff;
  white-space: nowrap;
  border-radius: 0.8rem;
  cursor: pointer;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
div.button > p {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
div.button.disabled {
  pointer-events: none;
  cursor: default;
  opacity: 0.5;
}
div.button * {
  padding: 1rem 2.8rem;
  text-decoration: none !important;
  font-size: 1.8rem;
  font-weight: 400;
  font-family: "Open Sans", "Lucida Grande", sans-serif;
}
div.button.gray {
  background: #9b9b9b;
}
div.button.gray * {
  color: #fff;
}
div.button.gray:hover {
  background: #8d8d8d;
}
div.button.gray:active {
  background: #7c7c7c;
}
div.button.blue {
  background: #2fabe7;
}
div.button.blue * {
  color: #fff;
}
div.button.blue:hover {
  background: #1aa1e3;
}
div.button.blue:active {
  background: #178ec7;
}
div.button.green {
  background: #7cbd2e;
}
div.button.green * {
  color: #fff;
}
div.button.green:hover {
  background: #71ac2a;
}
div.button.green:active {
  background: #639725;
}
div.button.red {
  background: #eb4a00;
}
div.button.red * {
  color: #fff;
}
div.button.red:hover {
  background: #d64300;
}
div.button.red:active {
  background: #bc3b00;
}
div.button.orange {
  background: #ff7900;
}
div.button.orange * {
  color: #fff;
}
div.button.orange:hover {
  background: #e86e00;
}
div.button.orange:active {
  background: #cc6100;
}
div.button.download:after {
  display: block;
  position: absolute;
  left: 0;
  bottom: -2.4rem;
  content: attr(data-system-requirements);
  width: 200%;
  text-align: center;
  -webkit-transform: translateX(-25%);
      -ms-transform: translateX(-25%);
          transform: translateX(-25%);
  color: #181818;
  font-size: 1.2rem;
  opacity: 0.5;
}
div.button.small {
  font-size: 1.2rem;
  font-weight: 400;
  font-family: "Open Sans", "Lucida Grande", sans-serif;
}
div.button.small * {
  padding: 0.6rem 1.2rem;
  font-size: 1.2rem;
  font-weight: 400;
  font-family: "Open Sans", "Lucida Grande", sans-serif;
}
@media only screen and (max-width: 520px) {
  div.button.small * {
    padding: 0.8rem 1.2rem;
  }
}
div.button.small.download:after {
  bottom: -1.8rem;
  font-size: 1rem;
}
div.button.od-sales-badge:after {
  content: " ";
  width: 141px;
  height: 47px;
  display: block;
  position: absolute;
  left: -3px;
  top: -34px;
  background-image: url("../../Images/badges/badge-sale-medium.png");
  background-size: 141px 47px;
  background-repeat: no-repeat;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-resolution: 144dpi) {
  div.button.od-sales-badge:after {
    background-image: url("../../Images/badges/badge-sale-medium@2x.png");
  }
}
@media only screen and (max-width: 767px) {
  div.button.od-sales-badge:after {
    top: -22px;
    background-size: 94px 31px;
  }
}
:root {
  --animation-duration: 500ms;
  --animation-delay: 500ms;
}
input#mm-trigger:not(:checked) ~ header {
  color: #181818;
  background-color: transparent;
  position: relative;
}
input#mm-trigger:not(:checked) ~ header:before {
  position: absolute;
  content: '';
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background-color: rgba(24,24,24,0.15);
}
input#mm-trigger:not(:checked) ~ header label[for="mm-trigger"] svg * {
  fill: #181818 !important;
}
input#mm-trigger:not(:checked) ~ header .logo svg path#Shape {
  fill: #181818;
}
div.button {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.2)), to(rgba(255,255,255,0.2))) !important;
  background-image: -o-linear-gradient(left, rgba(0,0,0,0.2), rgba(255,255,255,0.2)) !important;
  background-image: linear-gradient(to right, rgba(0,0,0,0.2), rgba(255,255,255,0.2)) !important;
  background-blend-mode: overlay;
}
html .pageContent {
  overflow: visible !important;
}
html section.teaser {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 10;
  padding: 0;
  padding-top: 3.2rem;
  margin-bottom: 5.6rem;
  position: relative;
}
@media only screen and (max-width: 1072px) {
  html section.teaser {
    padding-top: 1.6rem;
  }
}
html section.teaser div.image {
  margin-right: 0;
  -webkit-filter: brightness(1.025);
          filter: brightness(1.025);
}
html section.teaser:before {
  position: absolute;
  display: block;
  content: '';
  top: calc(-5.6rem);
  left: 0;
  right: 0;
  height: calc(100% + 5.6rem);
  z-index: -1;
  background-color: #f0f0f0;
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(20,142,255,0.1)), to(rgba(231,122,255,0.1)));
  background-image: -o-linear-gradient(left, rgba(20,142,255,0.1) 0%, rgba(231,122,255,0.1) 100%);
  background-image: linear-gradient(90deg, rgba(20,142,255,0.1) 0%, rgba(231,122,255,0.1) 100%);
  background-position: center center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% calc(100% - 3.2rem));
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% calc(100% - 3.2rem));
  --animation-duration: 250ms;
  -webkit-transition: opacity var(--animation-duration) linear var(--animation-delay), -webkit-clip-path var(--animation-duration) linear var(--animation-delay);
  transition: opacity var(--animation-duration) linear var(--animation-delay), -webkit-clip-path var(--animation-duration) linear var(--animation-delay);
  -o-transition: clip-path var(--animation-duration) linear var(--animation-delay), opacity var(--animation-duration) linear var(--animation-delay);
  transition: clip-path var(--animation-duration) linear var(--animation-delay), opacity var(--animation-duration) linear var(--animation-delay);
  transition: clip-path var(--animation-duration) linear var(--animation-delay), opacity var(--animation-duration) linear var(--animation-delay), -webkit-clip-path var(--animation-duration) linear var(--animation-delay);
}
html section.teaser:after {
  position: absolute;
  display: block;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 2px);
  z-index: 1;
  background-color: #fff;
  -webkit-clip-path: polygon(0% calc(100% - 3.2rem - 4px), 100% calc(100% - 4px), 100% 100%, 0% calc(100% - 3.2rem));
          clip-path: polygon(0% calc(100% - 3.2rem - 4px), 100% calc(100% - 4px), 100% 100%, 0% calc(100% - 3.2rem));
  --animation-duration: 250ms;
  --animation-delay: 250ms;
  -webkit-transition: opacity var(--animation-duration) linear var(--animation-delay);
  -o-transition: opacity var(--animation-duration) linear var(--animation-delay);
  transition: opacity var(--animation-duration) linear var(--animation-delay);
}
html section.teaser[data-animate=prepare]:before {
  opacity: 0;
  -webkit-clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
          clip-path: polygon(0% 50%, 100% 50%, 100% 50%, 0% 50%);
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
}
html section.teaser[data-animate=prepare]:after {
  opacity: 0;
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
}
html section.teaser .icon {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 22.4rem;
  max-width: 33% !important;
  -webkit-transform: translateX(-50%) translateY(42%);
      -ms-transform: translateX(-50%) translateY(42%);
          transform: translateX(-50%) translateY(42%);
  z-index: 999;
  -webkit-filter: drop-shadow(0px -4px 4px rgba(0,0,0,0.2)) !important;
          filter: drop-shadow(0px -4px 4px rgba(0,0,0,0.2)) !important;
  -webkit-transition: -webkit-filter var(--animation-duration) ease-in-out var(--animation-delay);
  transition: -webkit-filter var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: filter var(--animation-duration) ease-in-out var(--animation-delay);
  transition: filter var(--animation-duration) ease-in-out var(--animation-delay);
  transition: filter var(--animation-duration) ease-in-out var(--animation-delay), -webkit-filter var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser .icon svg #ls-blueprint,
html section.teaser .icon svg #ls-base {
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-out var(--animation-delay);
  -o-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-out var(--animation-delay);
  transform-box: fill-box;
  -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
          transform-origin: center center;
}
html section.teaser .icon svg #ls-rotor,
html section.teaser .icon svg #rotor-mask {
  transform-box: fill-box;
  -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
          transform-origin: center center;
}
html section.teaser .icon svg #ls-rotor[data-animate=start],
html section.teaser .icon svg #rotor-mask[data-animate=start] {
  -webkit-animation: calc(var(--animation-duration) * 2) linear var(--animation-delay) 1 both animation-rotor-mask;
          animation: calc(var(--animation-duration) * 2) linear var(--animation-delay) 1 both animation-rotor-mask;
}
html section.teaser .icon svg #ls-blueprint[data-animate=prepare],
html section.teaser .icon svg #ls-base[data-animate=prepare] {
  opacity: 0;
  -webkit-transform: scale(2);
      -ms-transform: scale(2);
          transform: scale(2);
  transform-box: fill-box;
  -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
          transform-origin: center center;
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
}
html section.teaser .icon svg #rotor-mask[data-animate=prepare],
html section.teaser .icon svg #ls-rotor[data-animate=prepare] {
  opacity: 0;
  -webkit-transform: scale(2) rotate(75deg);
      -ms-transform: scale(2) rotate(75deg);
          transform: scale(2) rotate(75deg);
  transform-box: fill-box;
  -webkit-transform-origin: center center;
      -ms-transform-origin: center center;
          transform-origin: center center;
  -webkit-animation: none;
          animation: none;
}
@-webkit-keyframes animation-rotor-mask {
  0% {
    opacity: 0;
    -webkit-transform: scale(4) rotate(75deg);
            transform: scale(4) rotate(75deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  33% {
    opacity: 1;
    -webkit-transform: rotate(-60deg);
            transform: rotate(-60deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  60% {
    opacity: 1;
    -webkit-transform: rotate(30deg);
            transform: rotate(30deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  74% {
    opacity: 1;
    -webkit-transform: rotate(-20deg);
            transform: rotate(-20deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  88% {
    opacity: 1;
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
}
@keyframes animation-rotor-mask {
  0% {
    opacity: 0;
    -webkit-transform: scale(4) rotate(75deg);
            transform: scale(4) rotate(75deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  33% {
    opacity: 1;
    -webkit-transform: rotate(-60deg);
            transform: rotate(-60deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  60% {
    opacity: 1;
    -webkit-transform: rotate(30deg);
            transform: rotate(30deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  74% {
    opacity: 1;
    -webkit-transform: rotate(-20deg);
            transform: rotate(-20deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  88% {
    opacity: 1;
    -webkit-transform: rotate(10deg);
            transform: rotate(10deg);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
  100% {
    opacity: 1;
    -webkit-transform: rotate(0);
            transform: rotate(0);
    transform-box: fill-box;
    -webkit-transform-origin: center center;
            transform-origin: center center;
  }
}
html section.teaser .icon[data-animate=prepare] {
  -webkit-filter: drop-shadow(0px -4px 12px rgba(255,255,255,0));
          filter: drop-shadow(0px -4px 12px rgba(255,255,255,0));
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
}
html section.teaser .icon > a {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  z-index: 2;
}
html section.teaser .description {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  z-index: 1;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% calc(100% - 3.2rem));
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% calc(100% - 3.2rem));
  width: 100%;
  max-height: 52rem;
}
@media only screen and (max-width: 1072px) {
  html section.teaser .description {
    max-height: 38vh;
    min-height: 42rem;
  }
}
@media only screen and (max-width: 520px) {
  html section.teaser .description {
    max-height: 32vh;
    min-height: 38rem;
  }
}
html section.teaser .description .slogan {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.6rem;
}
html section.teaser .description .slogan > a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
html section.teaser .description .slogan h1 {
  font-size: 7.2rem;
  font-weight: 600;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
  margin: 0;
  margin-top: 1.6rem;
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser .description .slogan h1[data-animate=prepare] {
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
  -webkit-transform: translateY(-25%);
      -ms-transform: translateY(-25%);
          transform: translateY(-25%);
  opacity: 0;
}
html section.teaser .description .slogan p.subtitle {
  font-size: 2.4em;
  font-weight: 600;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
  line-height: 1.5em;
  padding: 0;
  margin: 0;
  margin-bottom: 0.5em;
  background-image: -webkit-gradient(linear, left top, right top, from(#148eff), to(#e77aff));
  background-image: -o-linear-gradient(left, #148eff 0%, #e77aff 100%);
  background-image: linear-gradient(90deg, #148eff 0%, #e77aff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-top: -0.8rem;
  opacity: 1;
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-filter var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-filter var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: filter var(--animation-duration) ease-in-out var(--animation-delay), opacity var(--animation-duration) ease-in-out var(--animation-delay);
  transition: filter var(--animation-duration) ease-in-out var(--animation-delay), opacity var(--animation-duration) ease-in-out var(--animation-delay);
  transition: filter var(--animation-duration) ease-in-out var(--animation-delay), opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-filter var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser .description .slogan p.subtitle[data-animate=prepare] {
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  opacity: 0;
}
@media only screen and (max-width: 520px) {
  html section.teaser .description .slogan p.subtitle {
    font-size: 2em;
  }
}
html section.teaser .description .monitor {
  margin-top: 3.2rem;
  max-width: calc(100% - 3.2rem);
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser .description .monitor[data-animate=prepare] {
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
  -webkit-transform: translateY(25%);
      -ms-transform: translateY(25%);
          transform: translateY(25%);
  opacity: 0;
}
html section.teaser div.graph {
  position: absolute;
  left: 0;
  bottom: 0;
  min-width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% calc(100% - 3.2rem));
          clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% calc(100% - 3.2rem));
}
html section.teaser div.graph svg#graph {
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(2%, rgba(255,255,255,0.4)), color-stop(98%, rgba(255,255,255,0.4)), to(transparent));
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(255,255,255,0.4) 2%, rgba(255,255,255,0.4) 98%, transparent 100%);
          mask-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(2%, rgba(255,255,255,0.4)), color-stop(98%, rgba(255,255,255,0.4)), to(transparent));
          mask-image: linear-gradient(to right, transparent 0%, rgba(255,255,255,0.4) 2%, rgba(255,255,255,0.4) 98%, transparent 100%);
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), fill-opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), fill-opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay), fill-opacity var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay), fill-opacity var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay), transform var(--animation-duration) ease-in-out var(--animation-delay), fill-opacity var(--animation-duration) ease-in-out var(--animation-delay), -webkit-transform var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser div.graph svg#graph[data-animate=prepare] {
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
  -webkit-transform: translateY(25%);
      -ms-transform: translateY(25%);
          transform: translateY(25%);
  opacity: 0;
}
html section.teaser div.lists {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser div.lists[data-animate=prepare] {
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
  opacity: 0;
}
html section.teaser div.lists div.list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: columns;
      -ms-flex-direction: columns;
          flex-direction: columns;
  justify-items: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 9999px;
  border: 0.3rem solid #fff;
  padding: 0.8rem 1.2rem;
  overflow: hidden;
  position: absolute;
  font-size: 3.2rem;
  z-index: -1;
  -webkit-transition: opacity 128ms ease-in-out, -webkit-transform 128ms ease-in-out;
  transition: opacity 128ms ease-in-out, -webkit-transform 128ms ease-in-out;
  -o-transition: transform 128ms ease-in-out, opacity 128ms ease-in-out;
  transition: transform 128ms ease-in-out, opacity 128ms ease-in-out;
  transition: transform 128ms ease-in-out, opacity 128ms ease-in-out, -webkit-transform 128ms ease-in-out;
}
@media only screen and (max-width: 520px) {
  html section.teaser div.lists div.list {
    font-size: 5vmin;
  }
}
html section.teaser div.lists div.list img {
  margin-right: 0.8rem;
  height: 4.8rem;
  width: auto;
}
@media only screen and (max-width: 520px) {
  html section.teaser div.lists div.list img {
    height: 5vmin;
  }
}
html section.teaser div.lists div.list div.wrapper {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0;
  margin: 0 0.8rem;
  min-width: 6ch;
}
html section.teaser div.lists div.list div.wrapper p {
  position: relative;
  padding: 0;
  margin: 0;
  font-weight: 700 !important;
  color: #fff;
  font-size: 1em;
  opacity: 1;
  text-align: right;
}
html section.teaser div.lists div.list div.wrapper:before {
  display: block;
  content: '';
  width: 0.3rem;
  height: 300%;
  position: absolute;
  top: 50%;
  left: -0.8rem;
  background-color: #fff;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
html section.teaser div.lists div.list:nth-of-type(1) {
  left: calc(max(2%, 50% - 1280px / 2 + 1280px * 0.02));
  top: 42%;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 0.5;
}
html section.teaser div.lists div.list:nth-of-type(2) {
  left: calc(max(12%, 50% - 1280px / 2 + 1280px * 0.12));
  top: 15%;
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
  opacity: 0.75;
}
html section.teaser div.lists div.list:nth-of-type(3) {
  left: calc(min(78%, 50% - 1280px / 2 + 1280px * 0.78));
  top: 8%;
  -webkit-transform: scale(1.25);
      -ms-transform: scale(1.25);
          transform: scale(1.25);
  opacity: 0.4;
}
html section.teaser div.lists div.list:nth-of-type(4) {
  left: calc(min(88%, 50% - 1280px / 2 + 1280px * 0.88));
  top: 48%;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 0.65;
}
html section.teaser-follow-up {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding-bottom: 7.2rem;
}
html section.teaser-follow-up[data-animate=prepare]:before {
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
  opacity: 0;
}
html section.teaser-follow-up div.features {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-bottom: 7.2rem;
  margin-top: 3.2rem;
  gap: 1.6rem;
  --animation-delay: 150ms;
  --animation-duration: 333ms;
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.features {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 0;
  }
}
html section.teaser-follow-up div.features > .separator {
  margin: 0;
  min-width: 1px;
  min-height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, #000), color-stop(95%, #000), to(transparent));
  background-image: -o-linear-gradient(top, transparent 0%, #000 5%, #000 95%, transparent 100%);
  background-image: linear-gradient(to bottom, transparent 0%, #000 5%, #000 95%, transparent 100%);
  opacity: 0.15;
  -webkit-transition: opacity var(--animation-duration) linear var(--animation-delay);
  -o-transition: opacity var(--animation-duration) linear var(--animation-delay);
  transition: opacity var(--animation-duration) linear var(--animation-delay);
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.features > .separator {
    display: none;
  }
}
html section.teaser-follow-up div.features > .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: calc((100% - (1.6rem * 2 + 1px) * 2) / 3);
  -webkit-transition: opacity var(--animation-duration) linear var(--animation-delay), -webkit-transform var(--animation-duration) linear var(--animation-delay);
  transition: opacity var(--animation-duration) linear var(--animation-delay), -webkit-transform var(--animation-duration) linear var(--animation-delay);
  -o-transition: transform var(--animation-duration) linear var(--animation-delay), opacity var(--animation-duration) linear var(--animation-delay);
  transition: transform var(--animation-duration) linear var(--animation-delay), opacity var(--animation-duration) linear var(--animation-delay);
  transition: transform var(--animation-duration) linear var(--animation-delay), opacity var(--animation-duration) linear var(--animation-delay), -webkit-transform var(--animation-duration) linear var(--animation-delay);
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.features > .item:not(:last-child) {
    width: calc(50% - 1.6rem);
  }
  html section.teaser-follow-up div.features > .item:last-child {
    width: 100%;
    margin-top: 2.4rem;
  }
}
html section.teaser-follow-up div.features > .item * {
  padding: 0;
  margin: 0;
}
html section.teaser-follow-up div.features > .item .header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.4rem;
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.features > .item .header {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.features > .item .header img {
    max-height: 3.6rem;
    width: auto;
  }
}
@media only screen and (min-width: 521px) {
  html section.teaser-follow-up div.features > .item .header img {
    max-width: 5vw;
    height: auto;
  }
}
html section.teaser-follow-up div.features > .item .header h3 {
  margin: 0;
  padding: 0;
  color: var(--color);
  font-weight: 700 !important;
  white-space: nowrap;
}
@media only screen and (min-width: 521px) {
  html section.teaser-follow-up div.features > .item .header h3 {
    margin-left: 0.8rem;
  }
}
html section.teaser-follow-up div.features > .item p {
  font-size: 1.8rem;
  line-height: 2.8rem;
}
html section.teaser-follow-up div.features > .item:nth-child(1) {
  --animation-delay: 0ms;
}
html section.teaser-follow-up div.features > .item:nth-child(3) {
  --animation-delay: 100ms;
}
html section.teaser-follow-up div.features > .item:nth-child(5) {
  --animation-delay: 200ms;
}
html section.teaser-follow-up div.features > .item:nth-child(7) {
  --animation-delay: 300ms;
}
html section.teaser-follow-up div.features[data-animate=prepare] > .separator {
  opacity: 0;
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
}
html section.teaser-follow-up div.features[data-animate=prepare] > .item {
  opacity: 0;
  -webkit-transform: translateY(25%);
      -ms-transform: translateY(25%);
          transform: translateY(25%);
  -webkit-transition: unset;
  -o-transition: unset;
  transition: unset;
}
html section.teaser-follow-up div.wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
html section.teaser-follow-up div.wrapper[data-animate=start] {
  opacity: 0;
  -webkit-animation: var(--animation-duration) ease-in-out var(--animation-delay) both fade-in;
          animation: var(--animation-duration) ease-in-out var(--animation-delay) both fade-in;
}
html section.teaser-follow-up div.wrapper[data-animate=prepare] {
  opacity: 0;
}
html section.teaser-follow-up div.wrapper div.text {
  text-align: center;
  font-size: 1.6em;
  font-weight: 700;
  max-width: 75%;
  line-height: 150%;
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.wrapper div.text {
    max-width: 100%;
  }
}
html section.teaser-follow-up div.wrapper div.links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 1.6rem;
  margin-top: 3.2rem;
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.wrapper div.links {
    width: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.8rem;
  }
}
html section.teaser-follow-up div.wrapper div.social-media {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1.6rem;
  position: relative;
  margin-top: 3.2rem;
  --social_textColor: rgba(24,24,24,0.6);
  --social_tintColor: rgba(24,24,24,0.44);
  --social_iconSize: 3.2rem;
}
html section.teaser-follow-up div.wrapper div.social-media p {
  font-size: 1.6rem;
  margin: 0;
  padding: 0;
  opacity: 1;
  color: var(--social_textColor);
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.wrapper div.social-media p {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: left;
  }
}
html section.teaser-follow-up div.wrapper div.social-media a {
  position: relative;
  isolation: isolate;
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up div.wrapper div.social-media a:last-child {
    margin-right: 0.8rem;
  }
}
html section.teaser-follow-up div.wrapper div.social-media a svg {
  display: inline-block;
  height: auto;
  width: var(--social_iconSize);
}
html section.teaser-follow-up div.wrapper div.social-media a svg path {
  fill: var(--social_tintColor);
}
html section.teaser-follow-up div.wrapper div.social-media a[title=Mastodon] svg {
  width: calc(var(--social_iconSize) * 0.85);
}
@media (hover: hover) {
  html section.teaser-follow-up div.wrapper div.social-media a svg {
    -webkit-transition: -webkit-transform 100ms ease-in-out;
    transition: -webkit-transform 100ms ease-in-out;
    -o-transition: transform 100ms ease-in-out;
    transition: transform 100ms ease-in-out;
    transition: transform 100ms ease-in-out, -webkit-transform 100ms ease-in-out;
  }
  html section.teaser-follow-up div.wrapper div.social-media a svg path {
    -webkit-transition: all 100ms ease-in-out;
    -o-transition: all 100ms ease-in-out;
    transition: all 100ms ease-in-out;
  }
  html section.teaser-follow-up div.wrapper div.social-media a:hover svg {
    -webkit-transform: translateY(-0.6rem) scale(1.15);
        -ms-transform: translateY(-0.6rem) scale(1.15);
            transform: translateY(-0.6rem) scale(1.15);
  }
  html section.teaser-follow-up div.wrapper div.social-media a:active {
    -webkit-filter: brightness(0.75);
            filter: brightness(0.75);
  }
  html section.teaser-follow-up div.wrapper div.social-media a[title=LinkedIn]:hover svg path {
    fill: var(--social_linkedinColor);
  }
  html section.teaser-follow-up div.wrapper div.social-media a[title=LinkedIn]:hover:before {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    content: attr(title);
    padding: 0.4rem 0.8rem;
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--social_linkedinColor);
    -webkit-transform: translateX(-50%) translateY(50%);
        -ms-transform: translateX(-50%) translateY(50%);
            transform: translateX(-50%) translateY(50%);
    opacity: 0;
    -webkit-animation: __fade_in 100ms ease-in-out both;
            animation: __fade_in 100ms ease-in-out both;
  }
  html section.teaser-follow-up div.wrapper div.social-media a[title=Twitter]:hover svg path {
    fill: var(--social_twitterColor);
  }
  html section.teaser-follow-up div.wrapper div.social-media a[title=Twitter]:hover:before {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    content: attr(title);
    padding: 0.4rem 0.8rem;
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--social_twitterColor);
    -webkit-transform: translateX(-50%) translateY(50%);
        -ms-transform: translateX(-50%) translateY(50%);
            transform: translateX(-50%) translateY(50%);
    opacity: 0;
    -webkit-animation: __fade_in 100ms ease-in-out both;
            animation: __fade_in 100ms ease-in-out both;
  }
  html section.teaser-follow-up div.wrapper div.social-media a[title=Mastodon]:hover svg path {
    fill: var(--social_mastodonColor);
  }
  html section.teaser-follow-up div.wrapper div.social-media a[title=Mastodon]:hover:before {
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    content: attr(title);
    padding: 0.4rem 0.8rem;
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--social_mastodonColor);
    -webkit-transform: translateX(-50%) translateY(60%);
        -ms-transform: translateX(-50%) translateY(60%);
            transform: translateX(-50%) translateY(60%);
    opacity: 0;
    -webkit-animation: __fade_in 100ms ease-in-out both;
            animation: __fade_in 100ms ease-in-out both;
  }
@-webkit-keyframes __fade_in {
    to {
      opacity: 1;
    }
}
@keyframes __fade_in {
    to {
      opacity: 1;
    }
}
}
html section.teaser-follow-up:before {
  position: absolute;
  content: '';
  display: block;
  height: 19.2rem;
  width: 100%;
  top: calc(-12.8rem);
  left: 0;
  background-image: url("../../Images/main-teaser/bg-window.svg");
  background-size: calc(min(1040px, 100% - 3.2rem)) auto;
  background-position: center bottom;
  background-repeat: no-repeat;
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
  -webkit-mask-image: linear-gradient(#000, transparent);
          mask-image: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
          mask-image: linear-gradient(#000, transparent);
  z-index: -1;
  -webkit-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay);
  -o-transition: opacity var(--animation-duration) ease-in-out var(--animation-delay);
  transition: opacity var(--animation-duration) ease-in-out var(--animation-delay);
}
html section.teaser-follow-up:after {
  position: absolute;
  content: '';
  display: block;
  height: 1px;
  width: 50%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  background-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(5%, rgba(24,24,24,0.1)), color-stop(95%, rgba(24,24,24,0.1)), to(transparent));
  background-image: -o-linear-gradient(left, transparent 0%, rgba(24,24,24,0.1) 5%, rgba(24,24,24,0.1) 95%, transparent 100%);
  background-image: linear-gradient(to right, transparent 0%, rgba(24,24,24,0.1) 5%, rgba(24,24,24,0.1) 95%, transparent 100%);
}
@media only screen and (max-width: 520px) {
  html section.teaser-follow-up:after {
    width: 75%;
  }
}
@-webkit-keyframes fade-in {
  from {
    opacity: 0;
    -webkit-transform: translateY(25%);
            transform: translateY(25%);
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
    -webkit-transform: translateY(25%);
            transform: translateY(25%);
  }
  to {
    opacity: 1;
  }
}
