body, html {
  font-family: 'Lato', sans-serif !important;
  outline: none !important;
}
body p, html p {
  font-family: 'Lato', sans-serif !important;
  margin-bottom: 30px;
  font-size: 20px;
  line-height: 24px;
}
h1, h2, h3, h4, h5 {
  font-family: 'Lato', sans-serif !important;
}
div {
  font-family: 'Lato', sans-serif;
}
a:hover {
  text-decoration: underline;
  text-decoration-style: solid !important;
}
.headerimage {
  max-width: 100% !important;
}
.fixheader {
  position: fixed;
  width: 100%;
  z-index: 5000;
  background: #fff;
  height: 142px;
  top: 0px;
}
.site-content {
  margin-top: 142px;
}
.site-main {
  padding-top: 0px;
}
.site-header {
  padding-top: 0px;
  position: relative;
  max-width: none;
  padding-bottom: 0px;
  height: 142px;
  background: #fff;
}
.site-header .site-logo {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-left: 77px;
}
.primary-navigation {
  margin-right: 140px;
}
section {
  max-width: 1024px;
  position: relative;
}
.entry-header {
  display: none;
}
.container {
  padding-left: 0px;
  padding-right: 0px;
}
div[class*=col-] {
  /*padding-right: 0px;
   padding-left: 0px; */
}
.post-thumbnail, .entry-content .wp-audio-shortcode, .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.woocommerce), *[class*=inner-container] > *:not(.entry-content):not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator):not(.woocommerce), .default-max-width {
  max-width: unset !important;
}
@media (min-width: 1200px) {
  .container {
    width: 1024px;
    position: relative;
  }
}
.sidemenu-toggler-icon {
  background: url('../images/toggle.svg');
  width: 3em;
  height: 3em;
  display: block;
}
.sidemenu-toggler {
  position: absolute;
  right: 0px;
  top: 20px;
  cursor: pointer;
  display: none;
  /* float: left; */
}
.primary-navigation a {
  font-size: 20px;
  line-height: 24px;
  font-weight: bold;
  color: #777;
}
.primary-navigation a:link {
  color: #777;
}
.primary-navigation .sub-menu {
  padding-bottom: 20px;
  background: #fff;
  padding-top: 10px !important;
  border: 0px;
  background: rgba(27, 167, 222, 0.7);
}
.primary-navigation .sub-menu:after, .primary-navigation .sub-menu:before {
  border: 0 !important;
}
.primary-navigation .sub-menu:before {
  content: '';
  background: url('../images/submenupfeil.png');
  width: 30px !important;
  height: 13px !important;
  top: -13px !important;
}
.primary-navigation .sub-menu .menu-item {
  background: none !important;
}
.primary-navigation .sub-menu .menu-item > a {
  font-size: 18px;
  line-height: 22px;
  font-weight: bold;
  color: #fff;
  padding-bottom: 5px;
  padding-top: 5px;
}
.primary-navigation .sub-menu .menu-item > a:link {
  color: #fff;
}
.primary-navigation .sub-menu .menu-item > a:hover {
  background: transparent;
}
.sitemapmenu {
  display: block;
  top: -900px;
  position: fixed;
  left: 0;
  width: 100%;
  background: #dbf3f8;
  z-index: 5005;
  transition: top 0.5s linear;
  padding: 30px;
}
.sitemapmenu a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
  color: #6a252d !important;
  font-weight: 700;
}
.sitemapmenu.active {
  display: block;
  position: fixed;
  top: 0;
  left: 0px;
  width: 100%;
  background: #dbf3f8;
  z-index: 5005;
  transition: top 0.5s linear;
  overflow-y: auto;
  overflow-x: hidden;
}
.sitemapmenu .wrapper {
  max-width: 1024px;
  width: 100%;
  margin: auto;
  padding-top: 15px;
  position: relative;
}
.sitemapmenu .sub-menu-toggle {
  display: none;
}
.sitemapmenu .menu-wrapper-sitemap {
  padding-left: 0px;
  list-style: none;
  margin-top: 90px;
}
.sitemapmenu .menu-wrapper-sitemap > li {
  margin-bottom: 47px;
  max-width: 70%;
  position: relative;
}
.sitemapmenu .menu-wrapper-sitemap > li a {
  font-size: 40px;
  font-family: 'Libre Franklin', sans-serif !important;
  font-weight: 600;
  color: #000;
  text-transform: uppercase;
}
.sitemapmenu .menu-wrapper-sitemap > li a:hover {
  text-decoration: none;
  color: #4ac3da;
}
.sitemapmenu .menu-wrapper-sitemap > li .sub-menu {
  position: absolute;
  left: 98%;
  top: 10px;
  list-style: none;
  display: none;
  height: 100vh;
  width: 100%;
  padding-left: 0px;
}
.sitemapmenu .menu-wrapper-sitemap > li .sub-menu li {
  margin-bottom: 40px;
}
.sitemapmenu .menu-wrapper-sitemap > li .sub-menu li a {
  font-size: 20px;
  font-family: 'Libre Franklin', sans-serif !important;
  font-weight: 600;
}
.sitemapmenu .menu-wrapper-sitemap > li:hover .sub-menu {
  display: block;
}
.sitemapmenu .kontaktmenu {
  position: absolute;
  top: 30px;
  left: 50%;
}
.sitemapmenu .kontaktmenu a {
  color: #000;
  text-transform: uppercase;
  font-weight: 700;
}
.site-footer {
  max-width: 1024px;
  margin-bottom: 0;
  padding-bottom: 0;
  font-family: 'Lato', sans-serif !important;
}
.site-footer .site-info {
  border-top: 0px;
  margin-top: 0px;
  padding-top: 0px;
  padding-bottom: 0;
  margin-bottom: 0;
}
.site-footer .site-info .container {
  display: flex;
}
.site-footer .site-info .footermenu {
  margin: auto;
}
.site-footer .site-info .footermenu .footer-navigation {
  margin: auto;
  margin-top: 15px;
}
.site-footer .site-info .footermenu a {
  font-size: 18px;
  line-height: 22px;
  font-weight: 900;
  color: #777;
  padding-left: 0px;
  margin-bottom: 30px;
  display: block;
  padding: 0;
  letter-spacing: 1.8px;
  font-family: 'Lato', sans-serif !important;
}
.site-footer .site-info .footermenu .sub-menu {
  padding-left: 0;
}
.site-footer .site-info .footermenu .sub-menu a {
  font-size: 16px;
  line-height: 25px;
  font-weight: 400;
  color: #777;
  padding-left: 0px;
  margin-bottom: 15px;
  letter-spacing: 0.32px;
  font-family: 'Lato', sans-serif !important;
}
.col-one, .col-two, .col-three {
  padding-left: 0px;
  padding-bottom: 110px;
  padding-top: 117px;
}
.footer-navigation-wrapper {
  display: block;
}
.footer-navigation-wrapper li {
  display: block;
}
/*
 .site-footer {
 .site-info {
 .footermenu > a {
 font-size: 18px;
 line-height: 22px;
 font-weight: 900;
 .sub-menu {
 a {
 font-size: 16px;
 line-height: 25px;
 font-weight: 400;
 }
 }
 }
 }
 }
 */
.primary-navigation > div > .menu-wrapper .sub-menu-toggle {
  height: 50px;
}
.has-background-white .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
  background: transparent;
  color: #777;
}
.primary-navigation a:hover, .primary-navigation a:link, .primary-navigation a:visited {
  color: #777;
}
.no-widgets .site-footer {
  margin-top: 0px;
}
.col-four {
  background: rgba(27, 167, 222, 0.7);
  padding-left: 0px;
  padding-right: 0px;
}
.col-four .logos {
  background: #fff;
  position: absolute;
  width: 100%;
  bottom: 0;
  height: 110px;
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.col-four .logos img {
  width: 75px;
}
.col-four .adresse {
  display: flex;
  justify-content: center;
  color: #fff;
  padding-right: 15px;
  padding-left: 15px;
  flex-direction: column;
  height: calc(100% - 110px);
}
.col-four .adresse p {
  font-size: 18px;
  line-height: 22px;
}
.col-four .adresse p a {
  color: #fff !important;
}
.col-four .footermetamenu {
  width: 100%;
}
.col-four .footermetamenu .footer-navigation-wrapper {
  display: inline-flex;
  width: 100%;
  /* text-align: right; */
  float: right;
  justify-content: flex-end;
}
.col-four .footermetamenu .footer-navigation-wrapper li {
  display: block;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
}
.col-four .footermetamenu .footer-navigation-wrapper li a {
  color: #fff;
  padding: 0px;
  font-size: 16px;
  line-height: 25px;
  font-weight: 400;
}
.col-four .footermetamenu .footer-navigation-wrapper li a:hover {
  background: transparent;
}
/******************** headerslider ****************/
.headerslider {
  max-height: 700px;
  margin-bottom: 0px;
}
.headerslider .slick-dotted.slick-slider {
  margin-bottom: 0px;
}
.headerslider .slick-slider .image {
  position: relative;
}
.headerslider .slick-slider .image .overlay {
  background: url('../images/overlay_v2.png');
  background-repeat: no-repeat;
  position: absolute;
  top: 0px;
  width: 100%;
  height: 700px;
  min-height: 100%;
}
.headerslider .slick-slider .text {
  position: absolute;
  bottom: 30px;
  left: 0px;
  width: 100%;
}
.headerslider .slick-slider .text h2 {
  font-size: 60px;
  color: #fff;
  margin-bottom: 50px;
  width: 300px;
  font-weight: 900;
}
.headerslider .slick-slider .text h3 {
  font-size: 25px;
  color: #fff;
}
.headerslider .slick-slider .slick-slide {
  max-height: 700px;
  position: relative;
}
.headerslider .slick-slider .slick-next {
  background: url('../images/ivt_pfeil_next.svg');
  background-repeat: no-repeat;
  width: 31px;
  height: 47px;
  right: 25px;
  background-color: transparent !important;
}
.headerslider .slick-slider .slick-next:before {
  display: none;
}
.headerslider .slick-slider .slick-prev {
  background: url('../images/ivt_pfeil_prev.svg');
  background-repeat: no-repeat;
  width: 31px;
  height: 47px;
  left: 25px;
  background-color: transparent !important;
  z-index: 5;
}
.headerslider .slick-slider .slick-prev:before {
  display: none;
}
.headerslider .slick-slider .slick-dots {
  bottom: 20px;
}
.headerslider .slick-slider .slick-dots button {
  background-color: transparent !important;
  font-family: 'Lato', sans-serif;
}
.headerslider .slick-slider .slick-dots button:before {
  content: '//';
  font-size: 36px;
  font-family: 'Lato', sans-serif;
  color: #fff;
  opacity: 1;
}
.headerslider .slick-slider .slick-dots .slick-active button {
  color: #095396;
  opacity: 1;
}
.headerslider .slick-slider .slick-dots .slick-active button:before {
  color: #095396;
  opacity: 1;
}
/******************* hero *************/
.hero {
  margin-bottom: 0px;
}
.hero .image {
  position: relative;
  max-height: 589px;
}
.hero .image img {
  max-height: 589px;
  width: 100%;
  object-fit: cover;
}
.hero .image .overlay {
  background: url('../images/overlay_v2.png');
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  width: 100%;
  max-height: 589px;
  height: 100%;
}
.hero .text {
  position: absolute;
  bottom: 30px;
  left: 0px;
  width: 100%;
}
.hero .text h2 {
  font-size: 60px;
  color: #fff;
  margin-bottom: 50px;
  width: 500px;
  font-weight: 900;
}
.hero .text h3 {
  font-size: 25px;
  color: #fff;
}
@media (min-width: 1921px) {
  .headerslider .slick-slide img {
    width: 100%;
    object-fit: cover;
  }
  .counter .backimage img {
    height: 100%;
    object-fit: cover;
    width: 100%;
  }
}
@media (min-width: 1440px) {
  .container {
    width: 1360px;
  }
}
.entry-content > *:last-child, .entry-content > *.alignfull.has-background {
  margin-bottom: initial;
}
/************************ Einleitung **********************/
.einleitung {
  background: #e4e4e4;
  margin-top: 0px;
  padding-top: 90px;
  margin-bottom: 180px !important;
}
.einleitung h2 {
  font-size: 60px;
  font-weight: 900;
  line-height: 72px;
  color: #1ba7de;
  width: 75%;
}
.einleitung .contentwrapper {
  background: #1ba7de;
  padding: 50px 100px;
  margin-bottom: -90px;
  padding-right: 50px;
}
.einleitung .contentwrapper .subline {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  margin-bottom: 30px;
  color: #fff;
}
.einleitung .contentwrapper .subline h3 {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  margin-bottom: 30px;
  color: #fff;
  position: relative;
  padding-left: 50px;
}
.einleitung .contentwrapper .subline h3:before {
  content: '//';
  position: absolute;
  left: 0px;
}
.einleitung .contentwrapper .content {
  color: #fff;
  font-size: 24px;
  font-weight: normal;
  line-height: 29px;
}
.einleitung .contentwrapper .content p {
  color: #fff;
  font-size: 24px;
  font-weight: normal;
  line-height: 29px;
}
.einleitung .contentwrapper .content p a {
  color: #fff;
  font-size: 24px;
  font-weight: normal;
  line-height: 29px;
  text-decoration: underline;
}
/************************ Geschäftsfelde **********************/
.geschaftsfelder {
  padding-top: 80px;
}
.geschaftsfelder .backimage {
  max-height: 716px;
  position: absolute;
  top: 0;
}
.geschaftsfelder .subline h3 {
  font-size: 40px;
  line-height: 48px;
  color: #fff;
  font-weight: 900;
  position: relative;
  padding-left: 50px;
}
.geschaftsfelder .subline h3:before {
  content: '//';
  position: absolute;
  left: 0px;
}
.geschaftsfelder .head {
  display: flex;
  margin-bottom: 80px;
}
.geschaftsfelder .firsttext {
  display: flex;
  align-items: flex-end;
}
.geschaftsfelder .headline h2 {
  font-size: 60px;
  line-height: 72px;
  color: #fff;
  font-weight: 900;
}
.geschaftsfelder .content {
  color: #fff;
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}
.geschaftsfelder .content p {
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}
.geschaftsfelder .felder {
  height: 425px;
  margin-bottom: 30px;
  position: relative;
}
.geschaftsfelder .felder:hover .overlay {
  background: url('../images/kleines_blau_v2.png');
  width: calc(100% - 30px);
  height: 100%;
  opacity: 1;
  background-position: left;
  background-repeat: no-repeat;
  background-size: cover;
}
.geschaftsfelder .felder:hover .text {
  color: #fff;
}
.geschaftsfelder .felder img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.geschaftsfelder .felder .text {
  font-size: 30px;
  font-weight: normal;
  line-height: 36px;
  color: #1ba7de;
  position: absolute;
  bottom: 55px;
  text-align: center;
  width: calc(100% - 30px);
  padding-right: 30px;
  padding-left: 30px;
}
.geschaftsfelder .felder .overlay {
  background: #fff;
  opacity: 0.65;
  position: absolute;
  height: 100%;
  width: calc(100% - 30px);
  top: 0;
}
/********************* tochterunternehmen ******************/
.tochterunternehmen .container {
  display: flex;
}
/************************ Referenzen **********************/
.referenzen .slick-slide {
  max-height: 76px;
}
.referenzen .slick-slide .image {
  height: 76px;
}
.referenzen .slick-slide .image img {
  height: 100%;
  margin: auto;
}
.referenzen .slick-next {
  background: url('../images/ivt_pfeil_next_grau.svg');
  background-repeat: no-repeat;
  width: 31px;
  height: 47px;
  right: -75px;
  background-color: transparent !important;
}
.referenzen .slick-next:before {
  display: none;
}
.referenzen .slick-prev {
  background: url('../images/ivt_pfeil_prev_grau.svg');
  background-repeat: no-repeat;
  width: 31px;
  height: 47px;
  left: -75px;
  background-color: transparent !important;
  z-index: 5;
}
.referenzen .slick-prev:before {
  display: none;
}
.referenzen .lefttop {
  width: 42%;
  height: 200px;
  background: #e4e4e4;
  padding-left: 280px;
  padding-right: 170px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: 5;
}
.referenzen h3 {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  color: #777;
  position: relative;
  padding-left: 50px;
}
.referenzen h3:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.referenzen h2 {
  font-size: 60px;
  line-height: 72px;
  font-weight: 900;
  color: #777;
}
.referenzen .backimage {
  margin-top: -100px;
  max-height: 500px;
}
.referenzen .backimage > img {
  max-height: 500px;
  width: 100%;
  object-fit: cover;
}
.referenzen .backimage .overlay {
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
}
.referenzen .backimage .refblue {
  background: url('../images/ref_blue_2.svg');
  position: absolute;
  top: 100px;
  width: 100%;
  height: 100%;
  background-position: -400px;
  background-repeat: no-repeat;
  background-size: cover;
  max-height: 500px;
}
.referenzen .backimage .container {
  position: absolute;
  left: 0;
  right: 0;
  top: 57%;
}
.referenzen .backimage .container img {
  outline: none;
}
/************************ Counter **********************/
.counter {
  margin-top: 100px;
  position: relative;
}
.counter .lefttop {
  width: 42%;
  height: 200px;
  background: #e4e4e4;
  padding-left: 280px;
  /*padding-right: 170px;*/
  display: flex;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: 5;
}
.counter .lefttop .headline {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  color: #777;
  position: relative;
  padding-left: 50px;
}
.counter .lefttop .headline:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.counter .container {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 45%;
}
.counter .count {
  text-align: center;
}
.counter .counterzahl {
  font-size: 100px;
  color: #fff;
  font-weight: 900;
  font-family: 'Lato', sans-serif;
  /*.headline {
   font-size: 60px;
   color: #fff;
   font-weight: 900;
   font-family: 'Lato', sans-serif;
   text-align: center;
   margin-bottom: 50px;
   }*/
}
.counter .desc {
  font-size: 18px;
  color: #fff;
  font-weight: 700;
}
.counter .backimage {
  margin-top: -100px;
}
.counter .backimage img {
  height: 100%;
  object-fit: cover;
}
/************************ Formwrapper **********************/
.formwrapper .lefttop {
  width: 52%;
  height: 450px;
  background: #e4e4e4;
  padding-left: 280px;
  padding-right: 170px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  position: relative;
  z-index: 5;
  padding-bottom: 200px;
  padding-top: 50px;
}
.formwrapper h3 {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  color: #777;
  position: relative;
  padding-left: 50px;
}
.formwrapper h3:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.formwrapper h2 {
  font-size: 60px;
  line-height: 72px;
  font-weight: 900;
  color: #777;
}
.formwrapper .form {
  width: 86%;
  margin-left: 14.5%;
  background: rgba(27, 167, 222, 0.7);
  padding: 75px 115px;
  margin-top: -130px;
  z-index: 5;
  position: relative;
}
.formwrapper .form .inhalt {
  width: 40%;
  color: #fff;
  font-size: 20px;
  line-height: 24px;
  font-weight: normal;
}
.formwrapper .form .inhalt p {
  font-size: 20px;
  line-height: 24px;
  font-weight: normal;
}
.formwrapper .form .caldera-grid .col-sm-6.first_col {
  padding-right: 117px;
}
.formwrapper .form .caldera-grid .col-sm-6.last_col {
  padding-left: 117px;
}
.formwrapper .form .caldera-grid .col-sm-3.first_col {
  width: 200px;
  padding-right: 0px;
}
.formwrapper .form .caldera-grid .col-sm-3 {
  padding-right: 117px;
  width: 510px;
}
.formwrapper .form .caldera-grid .last_row .col-sm-3 {
  padding-right: initial;
  width: 25%;
}
.formwrapper .form .caldera-grid .form-control {
  background: none;
  border: 0px;
  border-radius: 0px;
  box-shadow: none;
  color: #fff;
  border-bottom: 1px solid #fff;
  font-size: 18px;
  line-height: 25px;
  text-transform: uppercase;
  padding-left: 0px;
  margin-bottom: 30px;
}
.formwrapper .form .caldera-grid .form-control::placeholder {
  color: #fff;
}
.formwrapper .form .caldera-grid .last_row {
  margin-top: 20px;
}
.formwrapper .form .caldera-grid .last_row .first_col .form-control {
  border-bottom: 0px;
}
.formwrapper .form .caldera-grid .last_row .first_col .btn {
  background: #fff;
  background-color: #fff !important;
  width: 230px;
  height: 44px;
  font-size: 20px;
  line-height: 24px;
  color: #777 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 0;
  border-radius: 0px;
}
.formwrapper .form .checkbox label {
  font-size: 19px;
  color: #fff;
  font-weight: 300;
  padding-left: 40px;
}
.formwrapper .form .checkbox label input {
  background: none;
  margin-left: -40px;
  border: 1px solid #fff;
}
.formwrapper .form .checkbox label input:checked {
  background: #fff;
}
.formwrapper .form .pflicht {
  font-size: 19px;
  color: #fff;
  font-weight: 300;
}
.formwrapper .form input[type=checkbox] {
  -webkit-appearance: none;
}
.formwrapper .form input[type=checkbox]:after {
  display: none;
}
.formwrapper .form .formbutton {
  float: right;
  background: #fff;
  background-color: #fff !important;
  width: 230px;
  height: 44px;
  font-size: 20px;
  line-height: 24px;
  color: #777 !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.formwrapper a {
  color: #fff;
}
.formwrapper a:hover {
  color: #fff !important;
  text-decoration: underline !important;
}
.entry-footer {
  display: none;
}
footer {
  background: #e4e4e4;
}
footer.site-footer {
  max-width: none;
}
.spacer {
  margin-bottom: 50px;
}
.flaggenmenu {
  position: absolute;
  right: 140px;
  top: 20px;
}
.flaggenmenu .flag-navigation .flag-navigation-wrapper li {
  display: inline;
}
/***************************+ text ******************/
.text {
  color: #777;
}
.text .headline {
  font-size: 20px;
  line-height: 24px;
  font-weight: bold;
  margin-bottom: 30px;
}
.text ul li {
  font-size: 20px;
  line-height: 24px;
  font-family: 'Lato', sans-serif;
}
.text ul li p {
  font-size: 20px;
  line-height: 24px;
  font-family: 'Lato', sans-serif;
}
.text ul li p a {
  font-size: 20px;
  line-height: 24px;
  font-family: 'Lato', sans-serif;
  text-decoration: underline;
}
.text p {
  font-size: 20px;
  line-height: 24px;
  font-family: 'Lato', sans-serif;
}
.text p a {
  font-size: 20px;
  line-height: 24px;
  font-family: 'Lato', sans-serif;
  text-decoration: underline;
  color: #777;
}
/***************************+ zweispalter ******************/
.zweispalter {
  color: #777;
}
.zweispalter .headline {
  font-size: 20px;
  line-height: 24px;
  font-weight: bold;
  margin-bottom: 30px;
}
/***************************+ Aufzählung ******************/
.aufzahlung {
  color: #777;
}
.aufzahlung .lefttop {
  width: 52%;
  height: auto;
  background: #e4e4e4;
  padding-left: 280px;
  min-height: 230px;
  padding-top: 20px;
  padding-bottom: 150px;
  z-index: 5;
  position: relative;
}
.aufzahlung .container {
  margin-top: -130px;
  position: relative;
  z-index: 5;
}
.aufzahlung h3 {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  color: #777;
  margin-top: 0;
  position: relative;
  padding-left: 50px;
}
.aufzahlung h3:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.aufzahlung h2 {
  font-size: 60px;
  line-height: 72px;
  font-weight: 900;
  color: #777;
}
.aufzahlung .blue {
  background: #1ba7de;
  opacity: 0.7;
  color: #fff;
  padding: 70px 110px;
}
.aufzahlung .blue li {
  font-size: 26px;
  line-height: 50px;
  font-weight: bold;
}
/***************************+ ansprechpartner ******************/
.ansprechpartner .lefttop {
  width: 52%;
  height: 350px;
  background: #e4e4e4;
  padding-left: 280px;
  padding-top: 20px;
  z-index: 5;
  position: absolute;
}
.ansprechpartner h2 {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  color: #777;
  margin-top: 0;
  position: relative;
  padding-left: 50px;
}
.ansprechpartner h2:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.ansprechpartner .row.flex {
  display: flex;
  justify-content: space-around;
}
.ansprechpartner .row .blue {
  position: absolute;
  background: #1ba7de;
  opacity: 0.7;
  bottom: 0;
  width: 100%;
  height: 334px;
}
.ansprechpartner .ap {
  position: relative;
  z-index: 5;
}
.ansprechpartner .daten {
  padding-top: 30px;
}
.ansprechpartner .name {
  font-size: 26px;
  line-height: 24px;
  font-weight: bold;
}
.ansprechpartner .position, .ansprechpartner .telefon {
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}
.ansprechpartner .email {
  margin-bottom: 50px;
  margin-top: 40px;
}
.ansprechpartner .email .mailbutton {
  height: 44px;
  background: #fff;
  font-size: 20px;
  line-height: 24px;
  color: #777;
  font-weight: 900;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 140px;
}
.ansprechpartner .mailspacer {
  height: 44px;
  margin-top: 40px;
  margin-bottom: 50px;
}
.ansprechpartner .container {
  padding-top: 100px;
  color: #fff;
  position: relative;
  z-index: 5;
}
/***************************+ Team ******************/
.team {
  margin-top: 0px;
}
.team h3 {
  font-size: 40px;
  line-height: 48px;
  font-weight: 900;
  color: #777;
  margin-top: 0;
  margin-bottom: 50px;
  position: relative;
  padding-left: 50px;
}
.team h3:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.team .grey {
  position: absolute;
  top: 0;
  width: 100%;
  height: 450px;
  background: #e4e4e4;
}
.team .row {
  position: relative;
  padding-top: 50px;
}
.team .row.flex {
  display: flex;
  justify-content: space-around;
}
.team .row .blue {
  position: absolute;
  background: #1ba7de;
  opacity: 0.7;
  bottom: 0;
  width: 100%;
  height: 334px;
}
.team .row .ap:first-of-type {
  margin-left: 180px;
}
.team .row .ap:first-child {
  margin-left: 180px;
}
.team .ap {
  position: relative;
  z-index: 5;
  color: #fff;
}
.team .daten {
  padding-top: 30px;
}
.team .name {
  font-size: 26px;
  line-height: 24px;
  font-weight: bold;
}
.team .position, .team .telefon {
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}
.team .email {
  margin-bottom: 50px;
  margin-top: 40px;
}
.team .email .mailbutton {
  height: 44px;
  background: #fff;
  font-size: 20px;
  line-height: 24px;
  color: #777;
  font-weight: 900;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 140px;
}
/***************************+ unternehmensdaten ******************/
.unternehmensdaten {
  padding-top: 150px;
  padding-bottom: 150px;
}
.unternehmensdaten ul {
  height: 350px;
}
.unternehmensdaten .sliderwrapper .arrowButton {
  position: absolute;
  top: 37%;
  width: 100%;
}
.unternehmensdaten .sliderwrapper .arrowButton .nextArrow {
  position: absolute;
  background: url('../images/ivt_pfeil_next_grau.svg');
  background-repeat: no-repeat;
  width: 31px;
  height: 47px;
  right: 130px;
  top: 0px;
  background-color: transparent !important;
}
.unternehmensdaten .sliderwrapper .arrowButton .nextArrow:before {
  display: none;
}
.unternehmensdaten .sliderwrapper .arrowButton .prevArrow {
  background: url('../images/ivt_pfeil_prev_grau.svg');
  background-repeat: no-repeat;
  width: 31px;
  height: 47px;
  left: 130px;
  background-color: transparent !important;
  z-index: 5;
  top: 0px;
  position: absolute;
}
.unternehmensdaten .sliderwrapper .arrowButton .prevArrow:before {
  display: none;
}
.unternehmensdaten .slide {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  line-height: 40px;
  font-weight: 400;
  color: #fff;
  width: 500px;
  height: 330px;
  transition: all 0.6s linear;
}
.unternehmensdaten .slide .front {
  padding-left: 50px;
  padding-right: 50px;
  text-align: center;
}
.unternehmensdaten .slide .front .jahr {
  font-weight: bold;
}
.unternehmensdaten .slide .front .text p {
  color: #fff;
}
.unternehmensdaten .slide.focus {
  background: #1ba7de;
  transition: all 0.6s linear;
}
.unternehmensdaten .slide.darkgrey {
  background: #777;
  height: 200px !important;
  top: 65px !important;
  transition: all 0.6s linear;
}
.unternehmensdaten .slide.grey {
  background: #e4e4e4;
  height: 150px !important;
  top: 90px !important;
  transition: all 0.6s linear;
}
/***************************+ downloads ******************/
.downloads {
  margin-top: 0px;
}
.downloads .grey {
  position: absolute;
  top: 0;
  width: 100%;
  height: 450px;
  background: #e4e4e4;
}
.downloads .grey h3 {
  font-size: 40px;
  line-height: 48px;
  color: #777;
  margin-top: 100px;
  font-weight: 900;
  position: relative;
  padding-left: 50px;
}
.downloads .grey h3:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.downloads .row {
  position: relative;
  padding-top: 250px;
}
.downloads .blue {
  background: #1ba7de;
  height: 450px;
  margin-bottom: 30px;
  padding: 40px 30px;
}
.downloads .blue .headline {
  font-size: 26px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 20px;
  font-weight: bold;
}
.downloads .blue .eintrag {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0.36px;
  color: #fff;
  font-weight: 400;
  margin-bottom: 15px;
}
.downloads .blue .eintrag a {
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0.36px;
  color: #fff;
}
/***************************+ stellenangebote ******************/
.stellenangebote {
  margin-top: 0px;
}
.stellenangebote .grey {
  position: absolute;
  top: 0;
  width: 100%;
  height: 450px;
  background: #e4e4e4;
}
.stellenangebote .grey h3 {
  font-size: 40px;
  line-height: 48px;
  color: #777;
  margin-top: 100px;
  font-weight: 900;
  position: relative;
  padding-left: 50px;
}
.stellenangebote .grey h3:before {
  content: '//';
  position: absolute;
  left: 0px;
  color: #1ba7de;
}
.stellenangebote .row {
  position: relative;
  padding-top: 250px;
}
.stellenangebote .blue {
  background: #1ba7de;
  height: 450px;
  margin-bottom: 30px;
  padding: 40px 30px;
}
.stellenangebote .blue .headline {
  font-size: 26px;
  line-height: 30px;
  color: #fff;
  margin-bottom: 20px;
  font-weight: bold;
}
.stellenangebote .blue .subline {
  font-size: 20px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 30px;
  font-weight: 400;
}
.stellenangebote .blue .inhalt {
  font-size: 20px;
  line-height: 24px;
  color: #fff;
  margin-bottom: 30px;
  font-weight: 400;
}
.stellenangebote .blue .stellenlink {
  width: 180px;
  height: 44px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  line-height: 24px;
  font-weight: 900;
  color: #777;
}
#primary-mobile-menu {
  outline: none;
}
@media (max-width: 1600px) {
  .formwrapper .form .caldera-grid .col-sm-3 {
    padding-right: 117px;
    width: 425px;
  }
  .formwrapper .lefttop {
    padding-left: 120px;
    padding-right: 50px;
  }
  .referenzen .lefttop {
    padding-left: 120px;
    padding-right: 50px;
  }
  .counter .lefttop {
    padding-left: 120px;
    padding-right: 50px;
  }
  .formwrapper .form {
    width: 92.5%;
    margin-left: 7.5%;
  }
  .aufzahlung .lefttop {
    padding-left: 120px;
  }
  .ansprechpartner .lefttop {
    padding-left: 120px;
  }
  .hero .image .overlay {
    max-height: 490px;
    height: 100%;
  }
  .hero .image {
    max-height: 490px;
  }
}
@media (max-width: 1440px) {
  .formwrapper .form .caldera-grid .col-sm-3 {
    padding-right: 117px;
    width: 350px;
  }
  .hero .image .overlay {
    max-height: 440px;
    height: 100%;
  }
  .hero .image {
    max-height: 440px;
  }
  .geschaftsfelder .felder {
    height: 320px;
  }
  .geschaftsfelder .backimage {
    height: 100%;
  }
  .geschaftsfelder .backimage img {
    height: 100%;
    object-fit: cover;
  }
  .downloads .kacheln {
    width: 50%;
  }
  .stellenangebote .blue {
    height: 350px;
    /*
     .menu-button-container {
     display: block;
     }
     .primary-navigation {
     position: absolute;
     top: 40px;
     right: 140px;
     margin-right: 0px;
     .primary-menu-container {
     display: none;
     }
     }
     .menu-button-container #primary-mobile-menu {
     padding-right: 0px;
     }
     .menu-button-container #primary-mobile-menu .dropdown-icon.open .svg-icon {
     width: 50px;
     height: 50px;
     background: #1ba7de;
     }
     .primary-navigation-open {
     .primary-navigation {
     width: 100%;
     height: 100vh;
     background: #fff;
     right: 0px;
     .primary-menu-container {
     display: block;
     margin-top: 70px;
     }
     }
     .primary-navigation > div > .menu-wrapper {
     display: block;
     width: 50%;
     left: 50%;
     }
     .primary-navigation .primary-menu-container > ul > .menu-item > a {
     font-size: 50px;
     margin-bottom: 30px;
     }
     }
     */
  }
}
@media (max-width: 1366px) {
  .primary-navigation > div > .menu-wrapper > li > .sub-menu {
    position: relative;
  }
  .primary-navigation .primary-menu-container > ul > .menu-item {
    display: block;
  }
  .primary-navigation .primary-menu-container > ul > .menu-item > a + .sub-menu-toggle {
    display: none;
  }
  .primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul {
    display: block;
    position: relative;
  }
  .primary-navigation-open .primary-navigation > div > .menu-wrapper {
    left: 13px;
    width: 100%;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container > ul > .menu-item > a {
    font-size: 30px;
    margin-bottom: 10px;
  }
  .primary-navigation > div > .menu-wrapper li {
    display: block;
    position: relative;
    width: 100%;
  }
  .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right::before, .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right::after {
    left: 10px;
    right: var(--global--spacing-horizontal);
  }
  .formwrapper .form .caldera-grid .col-sm-6.last_col {
    padding-left: 80px;
  }
  .formwrapper .form .caldera-grid .col-sm-6.first_col {
    padding-right: 80px;
  }
  .formwrapper .form .caldera-grid .col-sm-3 {
    padding-right: 80px;
    width: 316px;
  }
  .menu-button-container {
    display: block;
  }
  .primary-navigation {
    position: absolute;
    top: 40px;
    right: 140px;
    margin-right: 0px;
  }
  .primary-navigation .primary-menu-container {
    display: none;
  }
  .menu-button-container #primary-mobile-menu {
    padding-right: 0px;
  }
  .menu-button-container #primary-mobile-menu .dropdown-icon.open .svg-icon {
    width: 50px;
    height: 50px;
    background: #1ba7de;
  }
  .primary-navigation-open .primary-navigation {
    width: 100%;
    height: 100vh;
    background: #fff;
    right: 0px;
    top: 90px;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container {
    display: block;
    margin-top: 70px;
  }
  .primary-navigation-open .primary-navigation > div > .menu-wrapper {
    display: block;
    width: 100%;
    left: 13px;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container > ul > .menu-item > a {
    font-size: 30px;
    margin-bottom: 10px;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .prevArrow {
    left: 50px;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .nextArrow {
    right: 50px;
  }
}
@media (max-width: 1315px) {
  .formwrapper .form .caldera-grid .col-sm-3 {
    padding-right: 80px;
    width: 292px;
  }
}
@media (max-width: 1280px) {
  /*
   .primary-navigation .primary-menu-container > ul > .menu-item {
   display: block;
   }
   .primary-navigation .primary-menu-container > ul > .menu-item > a + .sub-menu-toggle {
   display: none;
   }
   .primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul {
   display: block;
   position: relative;
   }
   .primary-navigation-open .primary-navigation > div > .menu-wrapper {
   left: 13px;
   width: 100%;
   }
   .primary-navigation-open .primary-navigation .primary-menu-container > ul > .menu-item > a {
   font-size: 30px;
   margin-bottom: 10px;
   }
   .primary-navigation > div > .menu-wrapper li {
   display: block;
   position: relative;
   width: 100%;
   }
   */
  .headerslider .slick-slider .text h2 {
    line-height: 38px;
    font-size: 45px;
  }
  .headerslider .slick-slider .text {
    left: 50px;
    bottom: 50px;
  }
  .menu-button-container {
    display: block;
    /*
     .primary-navigation {
     position: absolute;
     top: 40px;
     right: 140px;
     margin-right: 0px;
     .primary-menu-container {
     display: none;
     }
     }
     .menu-button-container #primary-mobile-menu {
     padding-right: 0px;
     }
     .menu-button-container #primary-mobile-menu .dropdown-icon.open .svg-icon {
     width: 50px;
     height: 50px;
     background: #1ba7de;
     }
     .primary-navigation-open {
     .primary-navigation {
     width: 100%;
     height: 100vh;
     background: #fff;
     right: 0px;
     top: 90px;
     .primary-menu-container {
     display: block;
     margin-top: 70px;
     }
     }
     .primary-navigation > div > .menu-wrapper {
     display: block;
     width: 50%;
     left: 50%;
     }
     .primary-navigation .primary-menu-container > ul > .menu-item > a {
     font-size: 30px;
     margin-bottom: 10px;
     }
     }
     .primary-navigation > div > .menu-wrapper > li > .sub-menu {
     position: relative;
     }
     .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right::before, .primary-navigation > div > .menu-wrapper > li > .sub-menu.submenu-reposition-right::after {
     left: 10px;
     }
     */
  }
  .unternehmensdaten .sliderwrapper .arrowButton .prevArrow {
    left: 50px;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .nextArrow {
    right: 50px;
  }
  .hero .image .overlay {
    height: 390px;
    max-height: 390px;
  }
  .hero .image {
    max-height: 390px;
    height: 390px;
  }
  .hero .image img {
    max-height: 390px;
    height: 100%;
  }
}
@media (max-width: 1199px) {
  .counter {
    height: 580px;
  }
  .counter .backimage {
    position: absolute;
    height: 480px;
  }
  .counter .backimage img {
    height: 100%;
    object-fit: cover;
  }
  .counter .container {
    position: relative;
    top: 30px;
  }
}
@media (min-width: 1025px) and (max-width: 1279px) {
  .formwrapper .form .caldera-grid .col-sm-3.first_col {
    width: 70px;
  }
  .formwrapper .form .caldera-grid .col-sm-3 {
    width: 289px;
  }
}
@media (max-width: 1024px) {
  .tochterunternehmen .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .tochterunternehmen .tochtericons {
    width: 200px;
    margin-bottom: 20px;
  }
  .headerslider .slick-slider .text h2 {
    line-height: 38px;
  }
  .referenzen .slick-next {
    right: 0px;
  }
  .referenzen .slick-prev {
    left: 0px;
  }
  .referenzen .backimage .container {
    top: 66%;
  }
  .site {
    overflow: hidden;
  }
  .primary-navigation {
    position: absolute;
    top: 20px;
    right: 40px;
    margin-right: 0px;
  }
  .flaggenmenu {
    position: absolute;
    right: 40px;
    top: 10px;
  }
  .site-header {
    padding-top: 0px;
    position: relative;
    max-width: none;
    padding-bottom: 0px;
    height: 110px;
    background: #fff;
  }
  .site-content {
    margin-top: 110px;
  }
  .fixheader {
    height: 110px;
  }
  .site-footer .site-info .container {
    display: block;
  }
  .col-four {
    background: rgba(27, 167, 222, 0.7);
    padding-left: 0px;
    padding-right: 0px;
    height: 470px;
  }
  .col-one, .col-two, .col-three {
    padding-left: 15px;
    padding-bottom: 60px;
    padding-top: 40px;
  }
  .primary-navigation-open .primary-navigation > div > .menu-wrapper {
    left: 13px;
    width: 100%;
  }
  .geschaftsfelder .backimage {
    height: 100%;
  }
  .geschaftsfelder .backimage img {
    height: 100%;
    object-fit: cover;
  }
  .geschaftsfelder .head {
    display: block;
  }
  .counter .lefttop {
    width: 100%;
  }
  .referenzen .lefttop {
    width: 100%;
  }
  .referenzen .backimage .refblue {
    top: 16px;
  }
  .formwrapper .lefttop {
    width: 100%;
  }
  .counter .container {
    top: 30px;
  }
  .formwrapper .form {
    padding-right: 70px;
    padding-left: 70px;
  }
  .formwrapper .form .caldera-grid .col-sm-6.first_col {
    padding-right: 50px;
  }
  .formwrapper .form .caldera-grid .col-sm-6.last_col {
    padding-left: 50px;
  }
  .formwrapper .form .caldera-grid .col-sm-3.first_col {
    width: 150px;
  }
  .formwrapper .form .caldera-grid .col-sm-3 {
    padding-right: 50px;
    width: 250px;
  }
  .hero .image img {
    max-height: 390px;
    object-fit: cover;
    height: 100%;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .prevArrow {
    left: 20px;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .nextArrow {
    right: 20px;
  }
  .aufzahlung .lefttop {
    width: 100%;
  }
  .ansprechpartner .lefttop {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .headerslider .slick-slide img {
    display: block;
    height: 300px;
    object-fit: cover;
  }
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
  .site-header .site-logo {
    margin-left: 15px;
  }
  .headerslider .slick-slider .text {
    bottom: 40px;
  }
  .counter {
    height: auto;
  }
  .counter .backimage {
    height: 1100px;
    position: relative;
  }
  .counter .container {
    position: absolute;
    top: 50px;
  }
  .counter .count {
    margin-bottom: 50px;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .prevArrow {
    left: 20px;
    z-index: 50000;
  }
  .unternehmensdaten .sliderwrapper .arrowButton .nextArrow {
    right: 20px;
    z-index: 50000;
  }
  .primary-navigation .primary-menu-container > ul > .menu-item {
    display: block;
  }
  .primary-navigation .primary-menu-container > ul > .menu-item > a + .sub-menu-toggle {
    display: none;
  }
  .primary-navigation > .primary-menu-container ul > li .sub-menu-toggle[aria-expanded=false] ~ ul {
    display: block;
    position: relative;
  }
  .primary-navigation-open .primary-navigation > div > .menu-wrapper {
    left: 13px;
    width: 100%;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container > ul > .menu-item > a {
    font-size: 30px;
    margin-bottom: 10px;
  }
  .primary-navigation > div > .menu-wrapper li {
    display: block;
    position: relative;
    width: 100%;
  }
  .site-content {
    margin-top: 110px;
  }
  .fixheader {
    height: 110px;
  }
  .headerslider .slick-slider .text h2 {
    font-size: 40px;
    line-height: 46px;
  }
  .headerslider .slick-slider .text {
    left: 70px;
  }
  .einleitung h2 {
    font-size: 40px;
    line-height: 46px;
  }
  .einleitung .contentwrapper .subline h3 {
    font-size: 30px;
    line-height: 36px;
  }
  .einleitung .contentwrapper {
    background: #1ba7de;
    padding: 50px 50px;
    margin-bottom: -90px;
  }
  .geschaftsfelder .subline h3 {
    line-height: 36px;
    font-size: 30px;
  }
  .geschaftsfelder .headline h2 {
    font-size: 40px;
    line-height: 48px;
  }
  .geschaftsfelder .felder .text {
    font-size: 30px;
    font-weight: normal;
    line-height: 36px;
    color: #1ba7de;
    position: absolute;
    bottom: 55px;
    text-align: center;
    width: calc(100% - 30px);
    padding-left: 20px;
    padding-right: 20px;
  }
  .referenzen h3 {
    font-size: 30px;
    line-height: 36px;
  }
  .referenzen h2 {
    font-size: 40px;
    line-height: 48px;
  }
  .referenzen .lefttop {
    height: 230px;
  }
  .referenzen .backimage .container {
    top: 70%;
  }
  .formwrapper .form .inhalt {
    width: 100%;
  }
  .formwrapper h3 {
    font-size: 30px;
    line-height: 36px;
  }
  .formwrapper h2 {
    font-size: 40px;
    line-height: 48px;
  }
  .formwrapper .form .caldera-grid .col-sm-6.last_col {
    padding-left: 5px;
  }
  .formwrapper .form .caldera-grid .col-sm-6.first_col {
    padding-right: 5px;
  }
  .formwrapper .form .caldera-grid .col-sm-3.first_col {
    width: 90px;
  }
  .formwrapper .form .caldera-grid .col-sm-3 {
    padding-right: 5px;
    width: 195px;
  }
  #CF60b0b0c927104_1-row-5 .col-sm-6 {
    width: 100%;
  }
  .site-footer .site-info .container {
    display: block;
  }
  .col-one, .col-two, .col-three {
    padding-left: 15px;
    padding-bottom: 60px;
    padding-top: 40px;
  }
  .col-four {
    background: rgba(27, 167, 222, 0.7);
    padding-left: 0px;
    padding-right: 0px;
    height: 470px;
  }
  .hero .text h2 {
    font-size: 40px;
    line-height: 48px;
  }
  .ansprechpartner .name {
    font-size: 20px;
    line-height: 24px;
    font-weight: bold;
  }
  .team .container .row .headline {
    margin-left: 20px;
  }
  .team .name {
    font-size: 22px;
    line-height: 24px;
    font-weight: bold;
  }
  .aufzahlung h3 {
    font-size: 30px;
    line-height: 36px;
  }
  .aufzahlung .blue {
    background: #1ba7de;
    opacity: 0.7;
    color: #fff;
    padding: 50px 30px;
  }
  .team h3 {
    font-size: 30px;
    line-height: 36px;
  }
  .team .row .ap:first-child {
    margin-left: 80px;
  }
  .downloads .blue {
    height: auto;
  }
  .downloads .kacheln {
    width: 100%;
  }
}
@media (max-width: 480px) {
  .headerslider .slick-slider .text h2 {
    line-height: 34px;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container {
    padding-top: 90px;
  }
  .unternehmensdaten .text {
    padding-left: 50px;
    padding-right: 50px;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container {
    margin-top: 0px;
  }
  .primary-navigation-open .site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo {
    display: block;
  }
  .primary-navigation > div > .menu-wrapper ul {
    margin-left: 0px;
  }
  .site-header .site-logo {
    margin-left: 20px;
  }
  .site-logo .custom-logo {
    max-width: none;
    max-height: none;
  }
  .site-header.has-logo:not(.has-title-and-tagline).has-menu .site-logo img {
    max-height: none;
    max-width: none;
  }
  .primary-navigation-open .primary-navigation > div > .menu-wrapper {
    left: 0px;
  }
  .primary-navigation-open .primary-navigation .primary-menu-container > ul > .menu-item > a {
    font-size: 24px;
    margin-bottom: 15px;
  }
  .primary-navigation-open .menu-button-container {
    top: 50px;
    width: 40%;
  }
  .site-content {
    margin-top: 120px;
  }
  .fixheader {
    height: 120px;
  }
  .headerslider .slick-slide img {
    display: block;
    height: 300px;
    object-fit: cover;
  }
  .headerslider .slick-slider .text h2 {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .headerslider .slick-slider .text {
    position: absolute;
    top: 10px;
    bottom: auto;
    left: 50px;
    width: 100%;
  }
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
  .einleitung h2 {
    font-size: 30px;
    font-weight: 900;
    line-height: 36px;
    color: #1ba7de;
    width: 60%;
  }
  .einleitung .contentwrapper {
    background: #1ba7de;
    padding: 15px;
    margin-bottom: -90px;
  }
  .geschaftsfelder .head {
    display: block;
  }
  .geschaftsfelder .firsttext {
    margin-top: 65px;
  }
  .geschaftsfelder .firsttext .content {
    color: #fff;
    margin-bottom: 30px;
  }
  .geschaftsfelder .backimage {
    max-height: 900px;
    position: absolute;
    top: 0;
    height: 100%;
  }
  .referenzen .lefttop, .formwrapper .lefttop {
    padding-left: 15px;
    padding-right: 15px;
  }
  .referenzen .backimage {
    margin-top: 0px;
  }
  .referenzen .slick-next {
    right: 10px;
  }
  .referenzen .slick-prev {
    left: 10px;
  }
  .counter {
    margin-top: 0px;
  }
  .counter .backimage {
    display: none;
  }
  .counter .container {
    position: relative;
  }
  .counter .counterzahl, .counter .desc {
    color: #777;
  }
  .formwrapper .lefttop {
    height: auto;
    padding-bottom: 50px;
  }
  .formwrapper .form {
    width: 100%;
    margin-left: 0px;
    margin-top: 0;
    padding-right: 15px;
    padding-left: 15px;
  }
  .formwrapper .form .caldera-grid .last_row .col-sm-3 {
    width: 100%;
  }
  .col-one, .col-two, .col-three {
    padding-left: 0px;
    padding-bottom: 20px;
    padding-top: 20px;
  }
  .ansprechpartner {
    background: #e4e4e4;
  }
  .ansprechpartner .row.flex {
    display: block;
  }
  .site-branding {
    margin-right: 0px;
    z-index: 5;
  }
  .primary-navigation > .primary-menu-container {
    position: relative;
  }
  .primary-navigation, .flaggenmenu {
    right: 15px;
  }
  .site {
    overflow: hidden;
  }
  .team .row .ap:first-child {
    margin-left: 0;
  }
  .team .row {
    background: #e4e4e4;
  }
  .hero .text h2 {
    font-size: 30px;
    width: 100%;
  }
  .einleitung {
    margin-bottom: 140px !important;
  }
  .einleitung .contentwrapper .subline h3 {
    font-size: 26px;
    line-height: 30px;
  }
  .aufzahlung .lefttop {
    padding-left: 15px;
  }
  .aufzahlung .blue {
    background: #1ba7de;
    opacity: 0.7;
    color: #fff;
    padding: 15px;
  }
  .aufzahlung .blue li {
    font-size: 26px;
    line-height: 40px;
    font-weight: bold;
  }
  .ansprechpartner .lefttop {
    padding-left: 15px;
  }
}
.videomaster iframe {
  /*width: 100%;*/
}


.page-id-2 .headerslider .slick-slider .text h2 {
  width: 500px;
}
@media only screen and (max-width: 1280px) {
	.page-id-2 .headerslider .slick-slider .text h2 {
  		width: 400px;
	}
}
@media only screen and (max-width: 768px) {
	.page-id-2 .headerslider .slick-slider .text h2 {
  		width: 350px;
	}
}
@media only screen and (max-width: 550px) {
	.page-id-2 .headerslider .slick-slider .text {
		position: relative;
		top: 0;
  		left: 0;
	}
}
@media only screen and (max-width: 400px) {
	.page-id-2 .headerslider .slick-slider .text h2 {
  		width: 100%;
	}
}
