
body {
  font-family: "Roobert-Medium";
  font-style: normal;
  color: #000000;
}

.sofiaRegular {
  font-family: "Roobert-Medium";
  font-style: normal;
  font-weight: 200;
}

.utopiaBold {
  font-family: "Roobert-Bold";
  font-style: normal;
  font-weight: 400;
}

.sofiaBold {
  font-family: "Roobert-Bold";
  font-style: normal;
  font-weight: 400;
}

b, strong {
  font-family: "Roobert-Bold";
  font-style: normal;
  font-weight: 400;
}

.sub_titles {
  font-family: "Roobert-Light";
  font-style: normal;
}

.cs-skin-underline > span::after,
div.cs-skin-underline {
  font-family: "Roobert-Medium";
  font-style: normal;
}

.inhalt-nutshell__wrapper {
  font-family: "Roobert-Bold";
  font-style: normal;
  font-weight: 400;
}

.inhalt-nutshell__title {
  font-family: "Roobert-Bold" !important;
  font-style: normal !important;
  font-weight: 400 !important;
}

.inhalt-nutshell__content p {
  font-family: "Roobert-Medium";
  font-style: normal;
}


.header {
background-color: #000;
color: #FFFFFF;
}

.introduction {
  background-color: #000000;
  padding: 50px 0;
}

.introduction__content {
  color: #FFFFFF;
}


.it_branders {
  font-family: "Roobert-MediumItalic";
  font-style: normal;
  font-size: 95px;
  line-height: 0.95em;
}
.introduction__content h1 {
  font-family: "Roobert-Bold";
  font-style: normal;
  font-size: 95px;
  line-height: 0.95em;
  padding-left: 120px;
  padding-top: 15px;
}

.introduction__content p {
  font-family: "Roobert-Light";
  font-style: normal;
  font-size: 21px;
  line-height: 1.2em;
  padding-left: 120px;
  max-width: 590px;
  padding-top: 20px;
}

.blackbox .inhalt-lead {
  color: #000000 !important;
}

.introduction__content p a {
  color: #ffffff;
}

.introduction__content p a:hover {
  color: #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
}

@media (max-width: 767px) {  
  .it_branders {
    font-family: "Roobert-MediumItalic";
    font-style: normal;
    font-size: 65px;
    line-height: 0.95em;
  }
  
  .introduction__content h1 {
    font-family: "Roobert-Bold";
    font-style: normal;
    font-size: 65px;
    line-height: 0.95em;
    padding-left: 100px;
    padding-top: 15px;
  }
  
  .introduction__content p {
    font-family: "Roobert-Medium";
    padding-left: 0;
    font-size: 14px;
    line-height: 1.1em;
  }
}

.inhalt-lead {
  padding-left: 120px;
  text-align: left;
  font-family: "Roobert-Bold";
  font-style: normal;
  font-size: 47px;
  line-height: 49px;
  margin-bottom: 80px;
  margin-top: 75px;
  letter-spacing: -0.2px;
  max-width: 560px;
  color: #000000 !important;
}

.inhalt-txt {
  padding-left: 0;
  padding-top: 40px;
  text-align: left;
  font-family: "Roobert-Light";
  font-style: normal;
  font-size: 21px;
  line-height: 1.2em;
}


@media (max-width: 767px) { 
  .inhalt-lead {
    padding-left: 0;
    font-size: 31px;
    line-height: 31px;
    margin-bottom: 45px;
    margin-top: 40px;
  }
  
  .inhalt-txt {
    padding-left: 0;
    padding-top: 25px;
    text-align: left;
    font-family: "Roobert-Medium";
    font-style: normal;
    font-size: 14px;
    line-height: 17px;
  }

}


.breadcrump p {
  color: #FFFFFF;
  padding-left: 120px;
}

.breadcrump a:hover {
  color: #999999;
  border-bottom: 1px solid #999999 !important;
}

#search-form-v2 input {
  border-right: 1px solid #FFFFFF;
}

.pushy-right {
  background-color: #000000;
}


.button, button, input[type="submit"], input[type="reset"], input[type="button"] {
  font-family: "Roobert-Light";
  font-weight: 400;
}

.button:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, .button:focus, button:focus, input[type="submit"]:focus, input[type="reset"]:focus, input[type="button"]:focus {
  color: #FFFFFF;
  border-color: #000000;
  outline: 0;
  background-color: #000000;
}

.footer_wrap {
  background-color: #000000;
  color: #FFFFFF;
  padding: 50px 0;
}

.footer_ctc {
  
}

.footer_ctc h2,
.nl_titl {
  font-family: "Roobert-Bold";
  font-size: 47px;
  line-height: 1.1em;
}

.footer_ctc p {
  color: #FFFFFF;
  font-size: 25px;
  line-height: 1.2em;
}

.footer_ctc p a {
  color: #FFFFFF;
  font-family: "Roobert-Light";
  font-weight: 400;
}

.footer_ctc p a:hover {
  color: #FFFFFF;
  border-bottom: 1px solid #FFFFFF;
}

.footer_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 15px;
}

@media (max-width: 767px) {
  .footer_grid {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 35px;
  }
  
  .nl_titl {
    padding-top: 16px;
  }
  
  .footer_ctc h2,
  .nl_titl {
    font-family: "Roobert-Bold";
    font-size: 31px;
    line-height: 31px;
  }
  
  .footer_ctc p {
    color: #FFFFFF;
    font-size: 21px;
    line-height: 1.2em;
  }
  
  .inhalt-fliesstext {
    letter-spacing: 0.2px;
    font-size: 18px;
    line-height: 24px;
    color: #000000;
  }
  
  .wk-txtFull h3 {
    font-size: 31px;
    line-height: 31px;
    margin-bottom: 12px;
    color: #000000 !important;
  }
  
  .pn_teaser__more {
    font-size: 17px;
    line-height: 1.35em;
    text-align: left !important;
  }
 
  .inhalt-titel {
      font-size: 42px;
      line-height: 0.95em;
      font-weight: bold;
      letter-spacing: -0.2px;
      margin: 0 0 14px;
      padding-right: 40px;
    }
}

.footer_grid_last {
  align-self: end;
}

.footer_grid p {
  font-size: 16px;
  line-height: 1.2em;
}

.footer_grid h3 {
  font-family: "Roobert-Bold";
  font-size: 16px;
  line-height: 1.2em;
  padding-bottom: 5px;
  margin: 0;
}

.social_grid {
  display: grid;
  grid-template-columns: 28px 28px;
  column-gap: 20px;
  padding: 80px 0 40px 0;
}

.social_grid a:hover {
  text-decoration: none;
  border: none;
}

.newsletter_input-wrap {
  padding-top: 25px;
  margin-bottom: 2.5rem;
}

.newsletter_input {
  border: 1px solid #FFFFFF !important;
  background-color: #000000 !important;
  color: #FFFFFF !important;
  margin: 0;
  height: 38px;
  padding-top: 2px;
  font-family: 'Roobert-Medium';
}

.newsletter_submit {
  border: 1px solid #FFFFFF !important;
  color: #FFFFFF !important;
  margin: 0;
  height: 38px;
  width: 70px !important;
  padding: 0 !important;
}
.newsletter_submit:hover {
  color: #000000 !important;
  background-color: #FFFFFF !important;
}

.award-footer {
  padding-top: 20px;
}

#suche-input input[type="text"],
input[type="text"],
input[type="email"] {
  font-family: 'Roobert-Medium';
}

.dc_news_bg {
  width: 100%;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: 50% !important;
  aspect-ratio: 55 / 20;
}

.dc_news_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 15px;
  height: 100%;
}

.dc_news_content {
  align-self: center;
  display: flex;
  align-items: center;
  padding-top: 0;
}

.dc_news_flex {
  max-width: 480px;
  margin: 0 auto;
  display: block;
}

.dc_news_pre {
  color: #FFFFFF;
  text-align: center;
  font-size: 21px;
  line-height: 1.1em;
  font-family: 'Roobert-Medium';
}

.dc_news_title {
  font-family: 'Roobert-Bold';
  color: #FFFFFF;
  text-align: center;
  font-size: 65px;
  line-height: 0.95em;
}

.dc_news_btn {
  text-align: center;
  margin-top: 50px;
}
@media (max-width: 767px) {
  .dc_news_btn {
    text-align: center;
    margin-top:25px;
  }
  
  .social_grid {
    padding: 20px 0 20px 0;
  }
  
  .footer_grid p {
    font-size: 14px;
    line-height: 17px;
  }
  
  .footer_grid h3 {
    font-family: "Roobert-Bold";
    font-size: 14px;
    line-height: 17px;
    padding-bottom: 5px;
    margin: 0;
  }
  
}

.dc_news_flex button {
  border: 1px solid #FFFFFF;
  font-family: 'Roobert-Light';
  font-weight: 400 !important;
  color: #FFFFFF;
  background-color: transparent;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    height: 48px;
    letter-spacing: 0.2rem;
    line-height: 33px;
    padding: 0 30px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    margin-right: 0;
    margin-bottom: 0;
    width: 180px;
    text-decoration: none;
    letter-spacing: 1px;
}

.dc_news_flex button:hover {
  border: 1px solid #000000;
  font-family: 'Roobert-Light';
  color: #FFFFFF;
  background-color: #000000;
}


@media (max-width: 767px) {
  
  .dc_news_flex button {
    font-size: 12px;
     height: 38px;
     width: 130px;
     padding: 0 20px;
     margin-left: 0;
  }
  
   .dc_news_bg {
     width: 100%;
     background-size: cover !important;
     background-repeat: no-repeat !important;
     background-position: 50% !important;
     aspect-ratio: 2 /3;
   }
   .dc_news_grid {
     display: grid;
     grid-template-columns: 1fr;
     column-gap: 15px;
     height: 100%;
   }
   
   .dc_news_space {
     height:  260px;
     display: none;
   }
   
   .dc_news_content {
     align-self: start;
     display: flex;
     align-items: start;
     padding-top: 60px;
   }
   
   .dc_news_flex {
     width: 85%;
     margin: 0 auto;
     display: block;
   }
   
   .dc_news_pre {
     color: #FFFFFF;
     text-align: center;
     font-size: 14px;
     line-height: 1.1em;
     font-family: 'Roobert-Medium';
     margin-bottom: 1rem;
   }
   
   .dc_news_title {
     font-family: 'Roobert-Bold';
     color: #FFFFFF;
     text-align: center;
     font-size: 35px;
     line-height: 0.95em;
     margin-bottom: 1.25rem;
   }
 }
 
 .img-fluid {
   width: 100%;
   height: auto;
   max-width: 100%;
   padding: 0;
   margin: 0;
   line-height: 0;
 }
 
 .teaser_agobay {
   background-color: #F6F6F6;
   margin: 0;
   padding: 0;
   width: 100%;
 }
 
 .teaser_thb {
   background-color: #FFFFFF;
   padding: 45px 0;
 }
 
 .ta_grid {
   display: grid;
   grid-template-columns: 1fr 1fr;
   column-gap: 0px;
   height: 100%;
 }
 
 .thb_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "left right";
    column-gap: 0px;
    height: 100%;
  }
  
  .right-grid-item {
    grid-area: right;
  }
  
  .left-grid-item {
    grid-area: left;
  }
 
 .ta_img {
   line-height: 0;
 }
 
 .thb_img {
   margin: 0 45px 0 0;
 }
 
 .ta_txt {
   font-family: 'Roobert-Light';
   font-size: 21px;
    line-height: 1.2em;
    color: #000000;
    margin-top: 25px;
 }
 
 .ta_btn {
   text-align: left;
   margin-top: 50px;
 }

 
 .ta_btn button {
   border: 1px solid #000000;
   font-family: 'Roobert-Light';
   color: #000000;
   background-color: transparent;
     box-sizing: border-box;
     cursor: pointer;
     display: inline-block;
     font-size: 16px;
     height: 48px;
     letter-spacing: 0.2rem;
     line-height: 33px;
     padding: 0 30px;
     text-align: center;
     text-decoration: none;
     text-transform: uppercase;
     white-space: nowrap;
     margin-right: 0;
     margin-bottom: 0;
     width: auto;
     text-decoration: none;
 }
 
 .ta_btn button:hover {
   border: 1px solid #000000;
   font-family: 'Roobert-Light';
   color: #FFFFFF;
   background-color: #000000;
 }
 
 .ta_logo {
    max-width: 295px;
  }
  
  .ta_img_desk {
    display: block;
  }
  
  .ta_img_mob {
    display: none;
  }
 
 @media (max-width: 767px) {
   
   .teaser_thb {
      background-color: #FFFFFF;
      padding: 0;
    }
    
    .ta_grid {
       display: grid;
       grid-template-columns: 1fr;
       column-gap: 0px;
       height: 100%;
     }
     
     .thb_grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-areas: 
        "right"
        "left";
        column-gap: 0px;
        height: 100%;
      }
     
     .ta_logo {
       margin-top: 30px;
       max-width: 141px;
     }
     
     .ta_txt {
        font-family: 'Roobert-Medium';
        font-size: 14px;
         line-height: 17px;
         color: #000000;
         margin-top: 10px;
      }
     
    .ta_btn {
      text-align: left;
      margin-top:25px;
    }
    
    .thb_img {
       margin: 0;
     }
    
    .ta_btn button {
      font-size: 12px;
       height: 38px;
       width: auto;
       padding: 0 20px;
       margin-left: 0;
    }
    
    .ta_img_desk {
      display: none;
    }
    
    .ta_img_mob {
      display: block;
      max-width: 85%;
      margin: 0 auto;
      margin-top: 3rem;
    }
  }
  
  .teambox h3 {
    font-weight: 400;
    font-family: "Roobert-Bold";
    font-style: normal;
  }

.blog p {
  font-weight: 400;
  font-family: "Roobert-Rgular";
  font-style: normal;
}

.noAbstand {
  padding-bottom: 0px !important; 
  line-height: 0;
}