@charset "UTF-8";
@font-face {
  font-family: DINProbolt;
  src: url("content/font/DINPro-Bold.otf"); }

@font-face {
  font-family: DINProbolt;
  src: url("content/font/DINPro-Bold.otf"); }

body {
  font-family: "DINPro", Helvetica, "Helvetica Neue", Arial, sans-serif;
  overflow-x: hidden; }

#cookieNotice {
  z-index: 9999 !important; }
  #cookieNotice a {
    padding: 5px 20px !important;
    border-radius: 5px;
    -webkit-animation: fade 1s linear;
    animation: fade 1s linear; }
    #cookieNotice a:hover {
      background-color: #fff !important;
      color: #009ee3 !important; }

a.link_underline {
  text-decoration: underline !important; }
  a.link_underline:hover {
    color: #009ee3 !important;
    text-decoration: underline !important; }

.container {
  max-width: 85% !important; }
  @media (max-width: 991px) {
    .container {
      max-width: 100% !important; } }

p {
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none; }

.bgblue {
  background-color: #009ee3; }

.bgblack {
  background-color: #000;
  overflow: hidden; }

h1 {
  color: #ffffff;
  font-size: 115px;
  font-weight: 700;
  line-height: 150px; }
  @media (max-width: 991px) {
    h1 {
      font-size: 70px;
      line-height: 90px; } }
  @media (max-width: 767px) {
    h1 {
      font-size: 36px;
      line-height: 46px; } }

h2 {
  color: #009ee3;
  font-size: 45px;
  font-weight: 700;
  margin-bottom: 0; }
  @media (max-width: 991px) {
    h2 {
      font-size: 32px; } }
  @media (max-width: 767px) {
    h2 {
      font-size: 16px; } }

h3 {
  color: #000000;
  font-size: 30px;
  font-weight: 500; }
  @media (max-width: 991px) {
    h3 {
      font-size: 24px; } }
  @media (max-width: 767px) {
    h3 {
      font-size: 12px;
      font-weight: 500; } }

h5 {
  color: #eaeaea;
  font-size: 24px;
  font-weight: 400; }
  @media (max-width: 991px) {
    h5 {
      margin-top: 15px;
      font-size: 20px; } }
  @media (max-width: 767px) {
    h5 {
      font-size: 12px;
      font-weight: 500; } }

.headerspacing {
  padding-top: 110px;
  padding-bottom: 110px; }
  @media (max-width: 991px) {
    .headerspacing {
      padding-top: 60px;
      padding-bottom: 60px; } }
  @media (max-width: 767px) {
    .headerspacing {
      padding-top: 40px;
      padding-bottom: 40px;
      padding-left: 5px;
      padding-right: 5px; } }

.spacingsection {
  padding-top: 80px; }
  @media (max-width: 991px) {
    .spacingsection {
      padding-top: 30px; } }
  @media (max-width: 767px) {
    .spacingsection {
      padding-top: 20px; } }

.x1 {
  margin-bottom: 20px; }

.x1top {
  margin-top: 30px; }
  @media (max-width: 767px) {
    .x1top {
      margin-top: 15px; } }

.x2 {
  padding-top: 40px;
  padding-bottom: 40px; }
  @media (max-width: 767px) {
    .x2 {
      padding-top: 20px;
      padding-bottom: 20px; } }

.x2bottom {
  padding-bottom: 40px; }
  @media (max-width: 767px) {
    .x2bottom {
      padding-bottom: 20px; } }

.x3 {
  margin-top: 80px; }
  @media (max-width: 991px) {
    .x3 {
      margin-top: 50px; } }
  @media (max-width: 767px) {
    .x3 {
      margin-top: 20px; } }

.x3bottom {
  margin-bottom: 80px; }
  @media (max-width: 991px) {
    .x3bottom {
      margin-bottom: 30px; } }
  @media (max-width: 767px) {
    .x3bottom {
      margin-bottom: 20px; } }

.topandbottom {
  margin-top: 80px;
  margin-bottom: 80px; }
  @media (max-width: 991px) {
    .topandbottom {
      margin-top: 45px;
      margin-bottom: 0px; } }
  @media (max-width: 767px) {
    .topandbottom {
      margin-top: 20px;
      margin-bottom: 0px; } }

.btnspace {
  margin-top: 46px; }
  @media (max-width: 991px) {
    .btnspace {
      margin-top: 35px;
      margin-bottom: 35px; } }
  @media (max-width: 767px) {
    .btnspace {
      margin-top: 20px;
      margin-bottom: 24px; } }

.x4 {
  margin-bottom: 80px;
  margin-top: 20px; }
  @media (max-width: 991px) {
    .x4 {
      margin-bottom: 50px; } }
  @media (max-width: 767px) {
    .x4 {
      margin-bottom: 20px;
      margin-top: 10px; } }

.x5 {
  margin-bottom: 35px; }
  @media (max-width: 767px) {
    .x5 {
      margin-bottom: 15px; } }

.modal {
  border: 0; }
  .modal .modal-content {
    border: 0; }
    .modal .modal-content .modal-header {
      border-radius: 0;
      background-color: #009ee3;
      color: #fff; }
      .modal .modal-content .modal-header h5.modal-title {
        font-size: 1.4rem; }
    .modal .modal-content .modal-body {
      border-radius: 0; }
      .modal .modal-content .modal-body .form-button {
        background-color: #009ee3;
        border: 2px solid #009ee3;
        padding: 8px 15px;
        cursor: pointer; }
        .modal .modal-content .modal-body .form-button:hover {
          background-color: transparent;
          border: 2px solid #009ee3; }

.fließtext p {
  font-size: 24px;
  font-weight: 400; }
  @media (max-width: 991px) {
    .fließtext p {
      font-size: 20px; } }
  @media (max-width: 767px) {
    .fließtext p {
      font-size: 12px;
      margin-bottom: 0; } }

.blacktext p {
  color: #000000;
  font-size: 25px;
  font-weight: 500;
  margin-bottom: 0; }
  @media (max-width: 991px) {
    .blacktext p {
      font-size: 25px; } }
  @media (max-width: 767px) {
    .blacktext p {
      font-size: 20px; } }
  @media (max-width: 544px) {
    .blacktext p {
      font-size: 15px; } }

.kontakttext p {
  font-size: 30px;
  font-weight: 500;
  margin-bottom: 0; }
  @media (max-width: 991px) {
    .kontakttext p {
      margin-top: 15px;
      font-size: 20px; } }
  @media (max-width: 767px) {
    .kontakttext p {
      font-size: 12px;
      font-weight: 700;
      margin-bottom: 0; } }

.footertext {
  color: #eaeaea;
  font-size: 24px;
  font-weight: 400; }
  @media (max-width: 991px) {
    .footertext {
      margin-top: 15px;
      font-size: 20px; } }
  @media (max-width: 767px) {
    .footertext {
      font-size: 12px;
      font-weight: 500; } }

figure {
  margin: 0; }

.overlaywrapper {
  position: relative;
  overflow: hidden; }
  .overlaywrapper figcaption {
    position: absolute;
    width: 100%;
    padding: 15px 40px;
    bottom: 0;
    left: 0;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.75);
    -webkit-transform: translate(0, 100%);
    -ms-transform: translate(0, 100%);
    transform: translate(0, 100%);
    -webkit-transition: -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
    transition: -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
    -o-transition: transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
    transition: transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
    transition: transform 300ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
    /* easeOutQuint */ }
    .overlaywrapper figcaption h4 {
      margin-bottom: 0;
      font-size: 1.1rem;
      line-height: 1.8rem; }
  .overlaywrapper:hover figcaption {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0); }

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

.bigimage img {
  width: 100%;
  height: auto; }

img.footerimage {
  max-width: 100%;
  height: auto;
  position: absolute;
  bottom: 0;
  right: -10%; }
  @media (max-width: 991px) {
    img.footerimage {
      max-width: 50%;
      height: auto;
      right: 0; } }
  @media (max-width: 767px) {
    img.footerimage {
      max-width: 45%;
      height: auto;
      right: -5%; } }
  @media (max-width: 544px) {
    img.footerimage {
      max-width: 60%;
      height: auto;
      right: -20%;
      bottom: 18px; } }

.buttonposition {
  position: absolute;
  bottom: 0; }

a.greybutton {
  background-color: #eaeaea;
  width: auto;
  height: auto;
  color: #000;
  display: inline-block;
  font-size: 24px;
  font-weight: 500;
  cursor: pointer;
  padding: 18px;
  text-decoration: none; }
  @media (max-width: 991px) {
    a.greybutton {
      font-size: 20px;
      font-weight: 500;
      width: 100%;
      text-align: center;
      font-weight: 600; } }
  @media (max-width: 767px) {
    a.greybutton {
      font-size: 14px;
      font-weight: 500;
      width: 100%;
      text-align: center;
      font-weight: 600; } }
  a.greybutton.marginbutton {
    margin-right: 20px; }
  a.greybutton span {
    text-transform: lowercase; }

a.greybutton:hover {
  background-color: #009ee3;
  color: #fff; }

a.greybutton:visited {
  background-color: #eaeaea;
  color: #000; }

a.whitebutton1, a.whitebutton2, a.whitebutton3 {
  background-color: transparent;
  width: 374px;
  height: auto;
  color: #fff;
  display: inline-block;
  font-size: 24px;
  font-weight: 500;
  text-transform: uppercase;
  cursor: pointer;
  padding: 18px;
  text-decoration: none;
  margin-right: 58px;
  border: 3px solid #ffffff;
  text-align: center; }
  @media (max-width: 991px) {
    a.whitebutton1, a.whitebutton2, a.whitebutton3 {
      font-size: 20px;
      font-weight: 500;
      width: 100%;
      text-align: center;
      margin-right: 0;
      margin-bottom: 20px; } }
  @media (max-width: 767px) {
    a.whitebutton1, a.whitebutton2, a.whitebutton3 {
      font-size: 14px;
      font-weight: 500;
      width: 100%;
      text-align: center;
      margin-right: 0;
      margin-bottom: 20px; } }
  @media (max-width: 767px) {
    a.whitebutton1.black, a.whitebutton2.black, a.whitebutton3.black {
      font-size: 14px;
      font-weight: 500;
      width: auto;
      height: auto; } }

a.whitebutton1:hover, a.whitebutton2:hover, a.whitebutton3:hover {
  background-color: #fff;
  color: #009ee3; }
  a.whitebutton1:hover.black, a.whitebutton2:hover.black, a.whitebutton3:hover.black {
    color: #000; }

a.greybutton:visited {
  background-color: transparent;
  color: #fff; }
  a.greybutton:visited.black {
    color: #fff; }

.greyborder {
  border-bottom: 3px solid #eaeaea; }

.linkshead a {
  color: #000;
  text-decoration: underline; }
  .linkshead a:hover {
    color: #009ee3; }

.footertext a {
  color: #eaeaea;
  text-decoration: underline; }
  .footertext a:hover {
    color: #009ee3; }

a {
  cursor: pointer; }

.links a {
  color: #000;
  text-decoration: underline; }
  .links a:hover {
    color: #009ee3; }

.offset-lg-1.col-lg-3.topandbottom {
  text-align: left; }
  @media (max-width: 991px) {
    .offset-lg-1.col-lg-3.topandbottom {
      text-align: center; } }

.col-lg-1.col-md-4.col-6.referenzen, .col-lg-2.col-md-4.col-6.referenzen {
  padding-right: 7px;
  padding-bottom: 8px;
  padding-top: 8px; }

img.swaborder {
  border: solid 1px #eaeaea; }

.offset-lg-1.col-lg-5.links {
  margin-left: 3%; }
  @media (max-width: 991px) {
    .offset-lg-1.col-lg-5.links {
      margin-left: 0; } }

div#17 {
  overflow: hidden; }

.col-lg-10.col-md-10.col-sm-8.col-8 {
  z-index: 99; }

@media (max-width: 767px) {
  .mobileicon {
    padding-right: 0; } }

@media only screen and (max-width: 1570px) {
  h1 {
    font-size: 100px;
    line-height: 115px; } }

@media only screen and (max-width: 1533px) {
  .fließtext p {
    font-size: 20px; }
  a.greybutton {
    font-size: 20px; }
  .kontakttext p {
    font-size: 20px; } }

@media only screen and (max-width: 1375px) {
  h1 {
    font-size: 90px;
    line-height: 100px; } }

@media only screen and (max-width: 1348px) {
  a.whitebutton1, a.whitebutton2, a.whitebutton3 {
    background-color: transparent;
    width: 300px; } }

@media only screen and (max-width: 1320px) {
  .fließtext p {
    font-size: 17px; }
  .footertext {
    font-size: 17px; }
  h5 {
    font-size: 17px; }
  a.greybutton {
    font-size: 17px; }
  .kontakttext p {
    font-size: 17px; } }

@media only screen and (max-width: 1375px) {
  h1 {
    font-size: 80px;
    line-height: 90px; } }

@media only screen and (max-width: 1271px) {
  h2 {
    font-size: 35px; } }

@media only screen and (max-width: 1133px) {
  .fließtext p {
    font-size: 14px; }
  .footertext {
    font-size: 14px; }
  h5 {
    font-size: 14px; }
  a.greybutton {
    font-size: 14px; }
  .kontakttext p {
    font-size: 14px; } }

@media only screen and (max-width: 1126px) {
  a.whitebutton1, a.whitebutton2, a.whitebutton3 {
    width: 300px;
    margin-right: 30px; } }

@media only screen and (max-width: 1047px) {
  a.whitebutton1, a.whitebutton2, a.whitebutton3 {
    margin-right: 15px; } }

@media only screen and (max-width: 1012px) {
  a.whitebutton1, a.whitebutton2, a.whitebutton3n {
    font-size: 20px;
    margin-right: 10px; } }

@media only screen and (max-width: 991px) {
  .footertext {
    margin-top: 15px;
    font-size: 20px; }
  h5 {
    margin-top: 15px;
    font-size: 20px; }
  .hideonmobile {
    display: none; }
  .fließtext p {
    font-size: 20px; }
  h1 {
    font-size: 70px;
    line-height: 90px; }
  h2 {
    font-size: 32px; }
  .kontakttext p {
    font-size: 20px; }
  a.whitebutton1, a.whitebutton2, a.whitebutton3 {
    font-weight: 500;
    width: 100%;
    text-align: center;
    margin-right: 0;
    margin-bottom: 20px; }
  .linkshead {
    padding-bottom: 20px; } }

@media only screen and (max-width: 767px) {
  .footertext {
    font-size: 12px;
    font-weight: 500; }
  h5 {
    font-size: 12px;
    font-weight: 500; }
  .fließtext p {
    font-size: 12px;
    margin-bottom: 0; }
  h1 {
    font-size: 36px;
    line-height: 46px; }
  h2 {
    font-size: 16px; }
  .kontakttext p {
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 0; }
  a.whitebutton1, a.whitebutton2, a.whitebutton3 {
    font-size: 14px;
    font-weight: 500;
    width: 100%;
    text-align: center;
    margin-right: 0;
    margin-bottom: 20px; } }

@media only screen and (max-width: 544px) {
  .hideme {
    display: block; } }

@media only screen and (min-width: 991px) {
  .hideondesktop {
    display: none; }
  .hideme {
    display: none; } }
