:root {
		--brand-blue: #1056A0; 
		--brand-blue2:  #4078B3; 

		--brand-midblue:  #CADBEF;
		--brand-lightblue: #E6EEF5;
		--brand-lightblue: rgba(230, 238, 245, 1);
		
		--brand-spendenblue: #A9C2DD;
		
		--brand-red: #C30D42;
		
		--brand-midred: #EDB6C6;
		--brand-lightred: #F8E4EA;
		--brand-black: #000000;

 /*
 
    --brand-gradient: linear-gradient(135deg, rgba(163,201,227,1) 0%,rgba(244,213,106,1) 100%);*/
 
}
  
* { 
	margin: 0; 
	padding: 0; 
	
}

*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
 }
 

 
 
html {
		scroll-behavior: smooth;
	}
/**
 * Disable smooth scrolling when users have prefers-reduced-motion enabled
 */
@media screen and (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}
 
body { 
background:#ffffff;
/*overscroll-behavior:none;*/
}
 

a img {
	border: none;
} 

a.anchor {
    display: block;
    position: relative;
    top: -80px;
     top: -240px;
     visibility: hidden;
}


.clear {clear:both;margin:0;padding:0;height:0px;}
.clearfix:after , div.btn-group:after, p.halfcol:after {content: '';display: table;clear: both;}
.invisible {display:none !important; }

 .unsichtbar {
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden; 
  white-space: nowrap;
  z-index: 1000;
  top: 0;
}

.unsichtbar:focus  {
  height: auto;
  width: auto;
  padding: 5px;
  background-color: #fff; color: #000;
}


html, body { height:100%;}
 


#wrapper {
position: relative;
background:#fff;
width:100%; 
height:100%;
min-height:100vh; margin: 0px auto 0px auto;
 /*footer padding-bottom: 600px;*/
/*overflow:hidden;*/ 
} 


#page  {
width:100%;
display:block;
position: relative;
margin:0px 0px 0px 0px;
padding:20px 0px 0px 0px;


}
 

header .navicontainer { position:absolute;  background-color:transparent;  height: 90px; height: 120px; width: 100%; z-index:11; }

#logo {
position: absolute;display:block; 
  left: 20px; top: 50px;	 
 
width: 49px; height: 49px;

/* left: 19px; top: 49px;	
width: 51px; height: 51px;*/	



background-image:url('../images/LogoMobile.svg');
background-repeat:no-repeat;
background-size: 49px auto;
background-position: center; background-position:   left 0px center;
z-index:1010;
} 

.menuopened #logo {  width: 210px;

background-image:none;
-webkit-transition: all 0.8s ease-in-out 0s;
  -moz-transition: all 0.8s ease-in-out 0s;
  -o-transition: all 0.8s ease-in-out 0s;
  transition: all 0.8s ease-in-out 0s;
  
/*
background-image:none;*/

/*background-image:url('../images/LogoMobile.svg'),url('../images/LogoMobile2.svg');
background-repeat:no-repeat,no-repeat;
background-size: 49px auto, auto 29px;
 background-position:   left 20px top 22px , left 80px top 32px;
 background-position:   left 0px center, left 80px center;*/
}
.menuopened header .navicontainer { position:fixed;background-color:  var(--brand-lightblue);}


 .menuopened #logo a {  width: 210px;}
 

header .contentcontainer.videocontainer { height: 100vh;}
  
  header .contentcontainer.videocontainer .lcol {width: 100%; display:block;  padding-top: 130px;height: auto;height:340px;padding-bottom: 30px;
  border-bottom: 1px solid  var(--brand-blue); }
  header .contentcontainer.videocontainer .rcol {width:100%; display:block; height: calc(100vh - 340px); padding: 0 !important;position:relative; background-color:  var(--brand-lightblue); }

  
  
.bgvideo {
overflow: hidden;
width: 100%;
margin-left: 0px;
height: 426px;height: 80vh; height: calc(100vh - 340px); 
}

.bgvideo video {
width: 100%;
display: block;
height: 426px;height: 80vh; height: calc(100vh - 340px); 
object-fit: contain;
/*margin-top: -10vh;*/

}
 
header div.readmore {position:absolute;bottom: 0px;

  width: calc(100% - 40px); z-index:10;}

 

#logo a {display:block; width: 49px;  height: 49px;}

.contentwrapper {  width: 100%; padding:18px 0px 18px 0px;  }



.formcontainer .contentwrapper {padding:0;} 
.formcontainer .contentwrapper.bglightblue {padding:18px 0px 18px 0px;  }

.formcontainer .actions .contentwrapper.bglightblue {padding:0px 0px 36px 0px;  }


.formcontainer {padding-top: 18px;}


.contentwrapper.bottompad   {  padding:18px 0px 36px 0px; }
.contentwrapper.toppad {    padding:36px 0px 18px 0px; }
.contentwrapper.bottompad.toppad {    padding:36px 0px 36px 0px; }

.contentwrapper.smallbottompad   {padding:18px 0px 18px 0px; }
.contentwrapper.smalltoppad {padding:18px 0px 18px 0px; }
.contentwrapper.smalltoppad.smallbottompad {    padding:18px 0px 18px 0px; }

.contentwrapper.smalltoppad.bottompad {    padding:18px 0px 36px 0px; }

.contentwrapper.nobottompad   {  padding:18px 0px 0px 0px; }
.contentwrapper.notoppad {  padding:0px 0px 18px 0px; }
.contentwrapper.notoppad.nobottompad {    padding:0px 0px 0px 0px; }


.contentwrapper:last-of-type {padding-bottom:36px; }

.contentwrapper.summarywrapper{    padding:0px 0px 0px 0px !important; }


/*.contentwrapper.breadcrumbs   {width: 100%; padding: 0px 0px 0px 0px !important;margin:auto;  }
 
.contentwrapper.breadcrumbs  + .contentwrapper {padding: 22px 0px 18px 0px; }
.contentwrapper.accordion   {  padding:0px 0px 20px 0px; }
.contentwrapper.loadmore-end{  padding:0px 0px 20px 0px !important; }

*/


.bglightblue, .bglightblue-box {background-color: var(--brand-lightblue);}
.bgblue , .bgblue-box {background-color: var(--brand-blue); color:#fff !important; }


.bgmidblue , .bgmidblue-box {background-color: var(--brand-midblue);}
.bglightred , .bglightred-box {background-color: var(--brand-lightred);}
.bgmidred , .bgmidred-box {background-color: var(--brand-midred);}


p.hint {padding:20px;border-radius: 5px;margin: 60px 0px 60px 0px;}
.imagehint + p.hint {margin: 40px 0px 60px 0px;}
 p.hint:last-of-type {margin: 40px 0px 0px 0px;}


.textbox {padding:20px; border-radius:5px; margin-bottom: 20px;}


.contentwrapper.bghellblau {background-color:var(--brand-lightblue) }


.contentwrapper.bgweiss {background-color: #fff;  }
.contentcontainer.bgweiss-box  {background-color: #fff; border:2px solid #00000033; }



.colbox.bghellblau, .colbox.bghellblau-box {background-color:var(--brand-lightblue) }
.colbox.bgblau, .colbox.bgblau-box {background-color: var(--brand-blue);color:#fff !important; }

.colbox.bgweiss, .colbox.bgweiss-box { background-color: #fff; border:2px solid #00000033; }

 

/*.interviewbox img {width: 100%; height:auto; }
.interviewimage a {line-height: 0px; display:block; }
.interviewimage { width: 100%; padding-bottom: 20px;}
.interviewtext { width: 100%;}


.interviewbox, .personbox {margin-bottom: 20px !important; }
.interviewbox:last-of-type , .personbox:last-of-type{margin-bottom: 0px; }*/


.contentwrapper.gridwrapper  { padding-top:30px } 
 

footer .contentwrapper, footer .contentwrapper:last-of-type {  padding:0px 0px 0px 0px; }

 
.contentwrapper.start {  width: 100%; padding:30px 0px 20px 0px; }
.contentwrapper.start + .contentwrapper {  margin-top: -120px;  margin-top: -150px; /*muss der gleiche wert sein wie newscarousel relative von bottom*/ }
 
 
 
.contentcontainer {max-width: 1440px; width: 100%; 
padding:0px 0px 0px 0px;
max-width: calc(100vw - 40px); margin:auto; 
}

header .contentcontainer {max-width: 100%;}

header .contentcontainer .lcol {padding:  130px 20px  0px 20px;  }


header .contentcontainer .rcol {padding:  40px 20px  40px 20px;  }

header .contentcontainer .rcoltext { padding: 0px;}




.defaultcontainer {width: 1440px;margin:auto;padding: 0px 20px 30px 20px;
padding:0px 0px 30px 0px;
max-width: calc(100vw - 40px); margin:auto; 
} 

.contentcontainer.bgimage {padding: 0;}

.contentcontainer.centercol {max-width: 690px;  margin:auto; padding:0px 20px 0px 20px; 
padding:0px 0px 0px 0px;
max-width: calc(100vw - 40px); margin:auto; 
}


.contentcontainer.contentcol {  margin:auto; padding:0px 0px 0px 0px; 
padding:0px 0px 0px 0px;
max-width: 1380px; margin:auto; 
}



.centercol img , .textcol img , .defaultcol img , .halfcol .ce-gallery img, .imgcol img , .contentcontainer .personimage img{width: 100vw; height: auto;  }

.contentcontainer.textcol {max-width:874px;  margin:auto; padding:0px 20px 0px 20px; 
padding:0px 0px 0px 0px;
max-width: calc(100vw - 40px); margin:auto; 

}

.contentcontainer.textcol.overflow {
max-width: 100vw;
}
 
 
.colcontainer {padding-bottom: 25px;}
.personimage { width: 100%; ; padding-bottom: 25px;}
.persontext  { width: 100%;  padding:0px 20px 0px 20px;  }
.personimage img {width: 100%; height: auto;}

.persontext p {padding-left: 25%;color: var(--brand-red) ;}


.contentcontainer  .colbox , .boxbg {width: 100%;  margin:auto; padding:20px 20px 20px 20px !important; border-radius:5px; }

.columnright .colbox {padding:0px 0px 0px 0px !important; }

.contentcontainer.contentcol .ce-column, .contentcontainer.contentcol figure {width: 100%;}

.contentcontainer img {height: auto;width: 100%; display:block; }
 
.contentwrapper.fullwidthcontent .contentcontainer {padding:0;width: 100%; max-width: 100%; overflow: hidden;  }
.contentwrapper.fullwidthcontent .contentcontainer .mediaelement { overflow: hidden;  }
.contentwrapper.fullwidthcontent .contentcontainer img {width: 100%; height: 600px;object-fit: cover;object-position:center center }
 
 
.contentwrapper.fullwidthcontent .contentcontainer .carouselslider img { height: auto; height: 400px; width:auto;}
.carouselslider .slide-element div {height:auto;height: 400px; width:auto;}



 
.grid-sizer {width:100%;}
.grid-item {width: 100%; padding-bottom:0px;    display:block; padding-bottom: 10px;float: left; } 
.grid-item img {width:100%; height:auto; }

.grid-item img {
  display: block;
  max-width: 100%;
} 

.grid-item {  padding:10px 0px 10px 0px;  } 
.grid-item:nth-of-type(even){ padding:10px 0px 10px 0px; } 
.grid-item:nth-of-type(odd){  padding:10px 0px 10px 0px;  } 
  




 
footer {width: 100%; background-color:var(--brand-blue) ;padding-top: 30px; position:relative; bottom:0}

footer ul {list-style-type:none; display:inline-block;  }  

footer ul li {list-style-type:none; display: block;  padding:0px 0px 5px 0px;}     

  

footer  ul li a, footer  ul li span {color:#fff;}

footer  ul li ul.footersubmenu {display:none;  padding-left: 10px; padding-top: 12px;    
-webkit-transition: all 0.8s ease-in-out 0s;
  -moz-transition: all 0.8s ease-in-out 0s;
  -o-transition: all 0.8s ease-in-out 0s;
  transition: all 0.8s ease-in-out 0s;}
  
  footer  ul li ul.footersubmenu.active a {display:block; line-height: 100%; padding-bottom: 6px;}
  
  footer  ul li ul.footersubmenu.active {display:block;   }

footer  ul li.has-sub span {cursor:pointer;
	display:inline-block;  
 } 
 
 footer  ul li.has-sub span span.subicon { background-image: url(../images/chevron-down_white.svg);
background-repeat:no-repeat;
background-size: 14px auto;
background-position:   center; 
width: 30px; height: 10px; 
 } 
 
 

footer  ul li.has-sub span.active span.subicon {background-image: url(../images/chevron-down_white.svg); transform: rotate(180deg);}



footer .boxes  div:not(.clear) { width: 100%;clear:both; padding-bottom: 40px;  }


 
footer a {color: #fff;font-weight: normal; }
footer a:hover {text-decoration:underline;color: #fff;}

footer .boxes div.content {
	width: 60%; float:left; clear:none;

}
 footer .boxes div.links {
width: 40%; float:left; clear:none;
 
}
 
 footer .someicons {margin-top: 20px; display:block; }
 
 footer .someicons a { 
background-repeat:no-repeat;
background-size: 28px auto;
background-position:   center; 
width: 28px; height: 28px; 
margin-right:14px; float:left; display:block; text-indent:-9999px;

}

 footer .someicons a.instagram {background-image: url(../images/icon-instagram.svg);}
 footer .someicons a.linkedin {background-image: url(../images/icon-linkedin.svg);}





#footerlogos { /*display:block; position:absolute; left:50%; bottom: 20px; width: 200px;  margin-left: -100px; height: 190px;*/clear:both;  padding: 0px;width: 100%;background-color:var(--brand-lightblue) ; }
 
.logoboxes  {   display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;

    justify-content: space-between ;

     -webkit-justify-content: space-between ;
     -moz-justify-content: space-between ;
       -ms-justify-content:space-between ;
       flex-wrap:  wrap  ;

padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px;

}



.logoboxes > div  {width: calc(100% / 2 - 15px);  margin-bottom: 20px;}

.onecol .logoboxes > div  {width: 100%;}

.logoboxes > div > div {
background-repeat:no-repeat;
background-size:  contain;
background-size:  80% auto;

background-position: center;}

.logoboxes a {display:block; position:relative; width: 100%;  padding-bottom: 100%; border:1px solid #000; border-radius:5px;}

.onecol .logoboxes a {padding-bottom: 50%;}


 
 #footerlogos .logoboxes {padding: 0px 0px 30px 0px; margin: 30px 0px 0px 0px;}
 .start #footerlogos .logoboxes {padding: 0px 0px 100px 0px;}

#footerlogos .logoboxes > div  {width: calc(100% / 2 - 30px); padding: 20px; margin-bottom: 0;}

#footerlogos .logoboxes > div > div {
background-repeat:no-repeat;
background-size:  contain;
background-position: center;}


#footerlogos .logoboxes a {display:block; position:relative; width: 100%;  padding-bottom: 33.3333%; border:none; }
 
 



 
.video {width: 100%; } 
video {width: 100%;height: auto; object-fit:cover;}


 

.newscarousel { padding:0px 0px 0px 0px; position:relative; bottom:  150px; width: 100%;}
.newscarousel > div {background-color: #F0F0F0;border-radius:15px; width: 100%;}
.newscarousel .slide-element > div {height: auto;min-height: 520px;}

div.readmore , p.readmore {position:relative; width: 100%; height: 69px;padding:0px 0px 20px 0px !important;  margin-top: 24px;}


div.readmore a , div.readmore span, p.readmore a , p.readmore span  {display:block;
width: 100%;height: 49px; line-height:47px;
text-align:center; background-color:var(--brand-blue); 
border:none ; color: var(--brand-lightblue); padding: 10px 20px 10px 20px;padding: 0px 20px 0px 20px;
margin: 0px 0px;
border-radius:5px;
position:absolute; top: 1px; left: 1px;
text-decoration:none !important; font-family:'Manrope', sans-serif; font-size: 18px;
}

div.readmore a:hover , div.readmore span:hover, p.readmore a:hover , p.readmore span:hover {background-color:var(--brand-blue2); }


.bgmidblue p.readmore a ,/*.bglightblue p.readmore a ,*/   .bglightred p.readmore a  , .bgmidred p.readmore a  , .broschueretext p.readmore a  { background-color:transparent; color:var(--brand-blue); border: 1px solid var(--brand-blue); display:inline-block; }

 
.bgblue p.readmore a , .bgblue-box p.readmore a {  background-color:transparent; color:#fff; border: 1px solid #fff; display:inline-block; }


.textcol section  p.readmore a  {display:block;
width: auto;height: 49px;line-height:47px;
text-align:center; background-color:var(--brand-lightblue); 
border:none ; color: var(--brand-blue); padding: 10px 20px 10px 20px;padding: 0px 20px 0px 20px;
margin: 0px 0px;
border-radius:5px; border: 1px solid var(--brand-lightblue);
position:absolute; top: 1px; left: 1px;
text-decoration:none !important; font-family:'Manrope', sans-serif; font-size: 18px;
}
.textcol section  p.readmore a:hover {background-color:var(--brand-midblue); border: 1px solid var(--brand-midblue);}




.bglightblue .textcol section  p.readmore a  { border: 1px solid var(--brand-blue);}
.bglightblue .textcol section  p.readmore a:hover {background-color:var(--brand-midblue); border: 1px solid var(--brand-blue);}


/*.bglightblue .textcol section  */p.readmore a:after  {content: '→';display: inline-block; padding-left: 5px; }

.broschuereselect p.readmore a:after  {content: '';display: none; padding-left: 0px; }



 
.toggle_container p.readmore a {background-color: var(--brand-lightblue); color:var(--brand-blue); border: 1px solid var(--brand-lightblue);}
.toggle_container p.readmore a:hover {background-color: #fff; color:var(--brand-blue); border: 1px solid var(--brand-blue);}
 
 .toggle_container p.readmore {margin-top: 100px;} 
 
 
 .colcontent p.readmore {/*margin-left:20px; */margin-left:15px;}
 .colcontent p.readmore a {width: auto; }
 
 .colcontent .col50 p.readmore {margin-left:0px;}
 
 
   


header .contentcontainer.videocontainer  p.readmore {
position: fixed;
  bottom: 10px;
  z-index: 10;
  width: calc(100vw - 40px);}
 height: 49px; padding:0;

.carouselslider { padding:0px 0px 40px 0px; position:relative; bottom:  0px; width: 100%;}
.carouselslider.zitatslider { padding:0px 0px 0px 0px;}





.grid-sizer {width:100%; }
.grid-item  {width: 100%;}

.grid-item img {width:100%; height:auto; }

.grid-item.newsbox > div {background-color: #F0F0F0; padding: 20px;border-radius:15px;}

.newsbox span.meta , .colbox span.meta , .toggle_container span.meta {display:inline-block;
 margin: 0px 5px 5px 0px; 
border-radius: 5px; 
padding:  3px 6px 3px 6px;
}


.toggle_container .footerline {padding:0px 20px 35px 20px}
 

/*vimeo default*/

/*.videocontainer.video-embed {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden; 

max-width: 1920px;
margin: auto;

}
 

.videocontainer.video-embed iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border:none; border-radius: 15px;
}

.fullwidthcontent .videocontainer.video-embed iframe {border-radius:0;}

.toggle_container .videocontainer {padding: 0px 20px 56.25% 20px; 
padding: 0px 0px 56.25% 0px; 
width: calc(100% - 40px);
margin: auto;
}


.toggle_container .videocontainer.video-embed iframe { border-radius:0px;}

.toggle_container .video-caption {display:none; }

.toggle_container .textcol {max-width: 914px;
  margin: auto;
  padding: 0px 20px 50px 20px;}
   
.halfcol { padding-bottom: 20px;}


*/


.kontextaccordion {width: 100%; border:1px solid var(--brand-black);  border-radius:5px ; margin: 50px 0px 10px 0px; overflow:hidden; }




.trigger {width: 100%; background-color:var(--brand-lightred);cursor:pointer; padding: 20px;padding: 32px 20px 32px 20px; 
position:relative;border:none; 
 border-bottom:1px solid var(--brand-black); 
 
/* 
border-top-left-radius: 5px;
border-top-right-radius: 5px;
border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px;
*/

}


.trigger h4 {position:absolute; left: 20px;  top: 50%; transform: translate(0,-50%);color:#000; z-index:1; display:inline-block; }

.trigger span {position: absolute;
  right: 20px;
  padding: 0px;
 
  display: block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  font-size: 16px;
  top: 50%;
  margin-top: -8px;
  z-index: 12;}

/*.trigger.trigger_active span { content: '-';}*/


.accordion:last-of-type .trigger, .trigger.trigger_active { border-bottom:none;} 

.toggle_container {padding:20px;}
 
 
 
 /*

.trigger.trigger_active {border-bottom-left-radius: 0px;
border-bottom-right-radius: 0px;}

.trigger div {display:block; float:left; }
 
.trigger.inactive div.toggleicon  span{display:none; }
.trigger.inactive {cursor:default; }*/





.contentcontainer.twocols  {padding: 0px 20px 0px 20px; display:block; clear:both; max-width: 100%;}

.nobottompad .contentcontainer.twocols  { }

.notoppad .contentcontainer.twocols  { }

.nobottompad.notoppad .contentcontainer.twocols  {}


.contentcontainer.twocols .col13 {width: 100%; }

.contentcontainer.twocols .col23 {width:100%; }


.contentcontainer .col13 .colcontent { margin-bottom: 20px; border-radius: 5px;}

.contentcontainer .col13 .colcontent > div { padding: 15px;}

.contentcontainer .col23 .colcontent {  margin-bottom: 15px; border-radius: 5px;  }
 
 
.contentcontainer .col23 .colcontent > div.col50  {padding:15px; }

.contentcontainer .col23 .colcontent > div.image >  div { }
.contentcontainer .col23 .colcontent > div.image >  div img {width: 100%; height: auto;   }

.contentcontainer .col23 .colcontent > div.col50.video {padding:0; }

.contentcontainer .col23 .colcontent > div.video  div {  }
  
.colcontent video {object-fit:cover;display: block; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px;}


.contentcontainer .col23 .colcontent > div.image >  div {  }
  
.contentcontainer .col23 .colcontent > div.image >  div img {height: auto; width: 100%; object-fit:cover;} 
  


.zitat {border:1px solid var(--brand-black);  border-radius:5px; padding: 20px; }

.zitat-top {}

.zitatimage {width: 114px; height: 114px; border-radius: 57px;
background-repeat:no-repeat;
background-size: cover;
background-position:  center; float:left; 
}

.zitatinfo {float:left; width: calc(100% - 114px); padding-left: 20px;}
.zitatinfo p {margin-top: 0px;}
  
.zitattext {width: 100%; clear:both;padding-top: 40px; padding-bottom: 18px;}
.zitatinfo p {/*{hyphens:auto*/hyphens:manual}




.imagehint {padding:15px 0px 20px 15px;clear:both; }
 
.imagehint > div > div.image {float:left; height: 75px;width: 75px;
background-repeat:no-repeat;
background-size: cover;
background-position:  center; 
}

.imagehint > div > div.text { width: calc(100% - 75px);float:left; padding-left: 20px;}

.imagehint > div:after {content: '';display: table;clear: both}

 
.kacheln {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;

  -webkit-justify-content: center;
    -moz-justify-content:center;
    justify-content: center; 

/*  -webkit-justify-content: start;
    -moz-justify-content:start;
    justify-content: start; */

}
 
a#scrolltop {
	display:none; 
	width: 49px; height:49px;background-color:var(--brand-midblue);
background-image: url(../images/arrow.svg);
background-repeat:no-repeat;
background-size: 21px auto;
background-position:  center; z-index:10000;
box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.1), 1px 1px 2px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  transform: rotate(90deg);
  
  -webkit-transition: all 250ms ease-in;
-ms-transition: all 250ms ease-in;
-moz-transition: all 250ms ease-in;
transition: all 250ms ease-in;

}

a#scrolltop:hover {background-color:var(--brand-lightblue);}

a#scrolltop { position:fixed; bottom: 10px; right: 10px; z-index:1000;}
/*
  scrollUpClass: "scroll-up",
  scrollDownClass: "scroll-down",
  scrollAtTopClass: "scroll-top",
  scrollAtMiddleClass: "scroll-middle",
  scrollAtBottomClass: "scroll-bottom",*/

.scroll-down a#scrolltop, .scroll-middle a#scrolltop , .scroll-bottom a#scrolltop  {display:block; }



.form-group {}
.form-group label {}
.form-group label {}


.inputs-list .form-group {}


.inputs-list .form-group label {}
.inputs-list .form-group input {}



.col-4  label.error  {position:relative; height: 25px; width: 100%; bottom: 0; }
 
div.input input[type="text"], div.input input[type="url"] , div.input input[type="email"] {border: 1px solid var(--brand-blue);
  padding: 6px 10px 6px 12px;
  border-radius: 0px;
  width: 100%;
  color: var(--brand-black);
  font-size: 18px;
  font-family: 'Manrope', sans-serif;
  border-radius: 5px;}

div.input textarea {border: 1px  solid var(--brand-blue); padding: 10px 10px 10px 20px; border-radius: 5px; width: 100%;     color: var(--brand-black); opacity:1;font-size:18px;   font-family:'Manrope', sans-serif;  height: 120px;}


/*



#bestellformularInfomaterial-77 .row .form-group { height: 68px; padding-bottom: 30px; position:relative; width: 100%;}

#bestellformularInfomaterial-77  .row .form-group label {position:absolute; bottom: 0px;}
*/

#bestellformularInfomaterial-77-fieldset-2 .row, #kontaktformular-82-fieldset-2 .row {width: 100%; clear:both; padding-bottom:36px;}

#bestellformularInfomaterial-77-fieldset-2 .row:last-of-type  , #kontaktformular-82-fieldset-2 .rowlast-of-type  {padding-bottom:0px;}



.formcontainer .row .col-4 {float:left; display:block; width: 33.333333%; width: calc(40% - 0px);padding: 0px 20px 0px 0px;}

.formcontainer .row .col-4:first-of-type {width: 20%;padding: 0px 20px 0px 0px;}

.formcontainer .row .col-4:last-of-type { width: calc(40% - 0px); padding: 0px 0px 0px 0px;}



.formcontainer .row .col-6 {float:left; display:block; width: 50%; padding: 0px 0px 0px 0px;}

.formcontainer .row .col-6:first-of-type  {float:left; display:block; width: 50%; padding: 0px 10px 0px 0px;}
.formcontainer .row .col-6:last-of-type  {float:left; display:block; width: 50%;padding: 0px 0px 0px 10px;}


.formcontainer .row#gridrow-2 .col-6:first-of-type { width: 80%; padding: 0px 20px 0px 0px;}
.formcontainer .row#gridrow-2 .col-6:last-of-type { width: 20%;}


.formcontainer .row#gridrow-3 .col-6:first-of-type { width: 30%; padding: 0px 20px 0px 0px;}
.formcontainer .row#gridrow-3 .col-6:last-of-type { width: 70%;}

 
 
 
.formcontainer .row .col-3 {float:left; display:block; width: 25%; padding: 0px 20px 0px 0px;}

.formcontainer .row .col-12 {width: 100%; float:none; display:block;}

#bestellformularInfomaterial-77-fieldset-2 .row:after ,#kontaktformular-82-fieldset-2 .row:after {content: '';display: table;clear: both;}



.inputs-list .form-check  {float:left; padding-right: 45px;}

.inputs-list .form-check input {float:left;margin-top: 8px; }
.inputs-list .form-check label {float:left;display:block; padding-left: 15px; }
.inputs-list .form-group:after {content: '';display: table;clear: both;}


.input.checkbox .form-check span:not(.required) {float:left; display:block; width: calc(100% - 35px); margin-left: 15px;}


.input.checkbox .form-check input {width: 20px;height: 20px; float:left; display:block; margin-top: 4px;}

.contentwrapper#f_bestellformularInfomaterial-77-fieldset-2 , 
.contentwrapper#f_kontaktformular-82-fieldset-2 {padding-bottom: 20px;}

.actions .contentwrapper.bhlightblue {padding-bottom: 72px;}




.textbox .form-label + .input {margin-top: 30px;}

.btn{
display: block;
	height: 49px;
	text-align: center;
	padding: 10px 20px 10px 20px;
padding: 10px 20px 10px 20px;
	margin: 0px 0px;
	border-radius: 5px;
	font-family: 'Manrope', sans-serif;
	font-size: 18px;
 cursor:pointer;
}

.btn-primary  {

	background-color: var(--brand-blue);
	border: 1px solid  var(--brand-blue);
	color: var(--brand-lightblue);
	}

.btn-primary:hover {background-color:var(--brand-blue2); 	border: 1px solid  var(--brand-blue2);cursor:pointer;}

.btn-delete  {
	background-color: var(--brand-lightblue);
	border: 1px solid  var(--brand-lightblue);
	color: var(--brand-blue); }
	
	
.btn-delete:hover {background-color:var(--brand-midblue); 
	border: 1px solid  var(--brand-midblue);}
	

.clearfix p { }

fieldset {padding: 0; border: 0; margin-bottom: 50px}
#bestellformularInfomaterial-77-fieldset-2, #kontaktformular-82-fieldset-2 {margin-bottom: 0px;}


.btn-group {margin-top: 0px;}

.btn-group .btn {float:left; margin-right: 20px;}

#result {display:none; width:100%; height:auto;  margin-top: 45px;}
#result h2{ margin-bottom:12px; }
#resultimage {float:left; display:block; width:102px; height:102px;margin:13px 45px 30px 15px;background-repeat: no-repeat; background-size:100%;}
#resulttext {float:left; display:block; width:360px; color:#323232;line-height:140%; font-size:16px;margin:20px 0px 0px 0px; padding:0;font-family: 'DINWeb Bold',arial,helvetica, sans-serif;}

#resulttext p {margin:0px 0px 21px 0px;}

 

#online-Risikocheck-74 .required {display:none; }


.broschuerecover {width: 100%; padding-bottom: 20px;}
.broschueretext {width: 100%}

.broschuereselect {  padding-top: 38px; }

.broschuereselect div  {float:left; display:block; margin-right: 20px; width: 126px;}
.broschuereselect div.selectcontainer  {width: 70px; }

.broschuereselect p.readmore {margin-top: 0px;}

span.required {padding-left: 3px;}


.fwimage {
/*position:absolute; z-index:-1;*/ position:relative; 
padding-bottom: 52%; width: calc(100% - 40px);width: 100%;
background-repeat:no-repeat;
background-size:cover ;
background-position:  center;
/*border-radius:15px; -moz-border-radius:15px; -webkit-border-radius:15px; */}

/*
.contentwrapper.fullwidthimage .contentcontainer {padding-top: calc(52% - 50px); padding-left: 20px; padding-right: 20px; }
.contentwrapper.fullwidthimage { padding-left: 20px; padding-right: 20px; }
*/

/*Startseite Knotenelement linkbutton sonst unten abgeschnitten wegen overflow:hidden */
#c3 .ce-textpic {padding-bottom: 2px;}

/***************************************************************************************************/ 
/***************************************************************************************************/ 


@media all and (min-width: 480px){ 
	
.zitat-top {position:relative; height: 114px;}

.zitatimage {width: 114px; height: 114px; border-radius: 57px;
background-repeat:no-repeat;
background-size: cover;
background-position:  center; 
position:absolute; top:0px; left:0px;}

.zitatinfo {max-width: 440px; position:absolute; top: 50%; transform: translate(0,-50%); left: 154px; padding-left: 0;}
.zitatinfo p {margin-top: 0px;}
.zitattext {width: 100%; clear:both;padding-top: 40px; padding-bottom: 18px;}


.imagehint {padding:15px 0px 20px 15px;}
.imagehint > div {position:relative; min-height: 75px;}
.imagehint > div > div.image {position:absolute; height: 75px;width: 75px;
background-repeat:no-repeat;
background-size: cover;
background-position:  center; 
position:absolute; top:0px; left:0px;}

.imagehint > div > div.text {position:absolute; width: calc(100% - 100px);position:absolute; top: 50%; transform: translate(0,-50%); left: 100px;}

.imagehint p {margin-top: 0px;}

 

.kontextaccordion {width: 440px; border:1px solid var(--brand-black);  border-radius:5px ; margin: 50px auto 10px auto; overflow:hidden; }


}



 

@media all and (min-width: 640px){ 
	
	

.broschuerecover {float:left; width: 235px; padding-right: 30px; padding-bottom:0px;}
.broschueretext {float:left; width: calc(100% - 235px)}

.broschuereselect {float:right; }

	
.logoboxes > div > div {background-size:  80% auto;}	
/*
.logoboxes > div.logo3 > div {background-size:  75% auto;}		*/


	
#footerlogos .logoboxes > div > div {background-size:  auto 70%;}	

#footerlogos .logoboxes > div.logo3 > div {background-size:  75% auto;}		

#footerlogos .logoboxes > div  { padding: 20px 40px 20px 40px; }

.start #footerlogos .logoboxes {padding: 0px 0px 0px 0px;}

	/*
.flexcontainer {display:flex; }
.columnleft {flex: 1 0 30%;}	
.columnright {flex: 1 0 70%;}


.flexcontainer.boxes50 .columnleft {flex: 1 0 50%;}	
.flexcontainer.boxes50 .columnright {flex: 1 0 50%;}


.columnright .colbox {padding:20px 20px 20px 20px !important; }


.flexelement {height: 100%;}
.columnleft > div {padding-right: 10px;padding-bottom:0;}
.columnright {padding-left: 10px;}


.kacheln div.portraitbox {
    width: calc((100% /2));
    padding: 15px 15px 15px 15px;
    
}


.formfield.multifield {float:left; display:block; }
.formfield.multifield.w20 {width: 20%;}
.formfield.multifield.w40 {width: 40%;}

.formfield.multifield.w80 {width: 80%;}


.formfield.padright {padding-right: 6px; } 
.formfield.padleft {padding-left: 6px; } 

.formfield.doublepadright {padding-right: 12px; } 
.formfield.doublepadleft {padding-left: 12px; } */

}




 
@media all and (min-width: 768px){  
	
	

.broschuerecover { padding-right: 90px; }



	
.contentwrapper {  width: 100%; padding:36px 0px 36px 0px;  }

.formcontainer .contentwrapper.bglightblue {padding:36px 0px 36px 0px;  }

.formcontainer .actions .contentwrapper.bglightblue {padding:0px 0px 72px 0px;  }

.formcontainer {padding-top: 36px;}

.contentwrapper.bottompad   {  padding:36px 0px 72px 0px; }
.contentwrapper.toppad {    padding:72px 0px 72px 0px; }
.contentwrapper.bottompad.toppad {    padding:72px 0px 72px 0px; }

.contentwrapper.smallbottompad   {padding:36px 0px 36px 0px; }
.contentwrapper.smalltoppad {padding:36px 0px 36px 0px; }
.contentwrapper.smalltoppad.smallbottompad {    padding:36px 0px 36px 0px; }

.contentwrapper.smalltoppad.bottompad {    padding:36px 0px 72px 0px; }

.contentwrapper.nobottompad   {  padding:36px 0px 0px 0px; }
.contentwrapper.notoppad {  padding:0px 0px 36px 0px; }
.contentwrapper.notoppad.nobottompad {    padding:0px 0px 0px 0px; }

 
div.readmore , p.readmore {position:relative; width: 100%; height: 49px;padding:0 !important;  }

 
	
.contentcontainer.twocols .colcontainer {padding: 15px 0px 15px 0px;  } 

.contentcontainer.twocols .colcontainer:first-of-type {padding: 30px 0px 15px 0px;  } 


.contentcontainer .colcontent {position:relative; width: 100%; border-radius: 5px;}


.contentcontainer .col13 .colcontent {padding-bottom: 45% ; float:left; width: calc(50% - 15px);}

.contentcontainer .col13 .colcontent:first-of-type {margin-right: 15px; margin-bottom: 0px}

.contentcontainer .col13 .colcontent:last-of-type {margin-left: 15px; margin-bottom: 0px}

.contentcontainer .col23 .colcontent {  padding-bottom: 70% ;  }

.contentcontainer .col23 .colcontent > div {width: 70%;}

.colcontent p.readmore {position:absolute; bottom: 40px; /*left:20px; */left:15px; margin:0;}

 


 .colcontent > div {padding: 20px; position:absolute; }

.contentcontainer .col23 .colcontent > div.col50 {position:absolute;width: 50%;  top:0; left: 0; height: 100%;}
.contentcontainer .col23 .colcontent > div.col50:last-of-type {position:absolute;width: 50%;  left: 50%; height: 100%; }


.contentcontainer .col23 .colcontent > div.col50.video {padding:0;   height: 100%;}

.contentcontainer .col23 .colcontent > div.video  div {
  position: absolute;
  overflow: hidden;
  height: 100%;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 0px;
  
  }
  
.colcontent video {object-fit:cover}


  .contentcontainer .col23 .colcontent > div.image >  div {
  position: absolute;
  overflow: hidden;
  height: calc(100% - 60px);
 
  
  }
  
  
.contentcontainer .col23 .colcontent > div.image >  div div {height: 100%;}
.contentcontainer .col23 .colcontent > div.image >  div figure {height: 100%;display:block; }
    
    
    
.contentcontainer .col23 .colcontent > div.image >  div img {height: 100%; width: auto; object-fit:cover;} 
  

.notoppad .contentcontainer.twocols .colcontainer:first-of-type {
    padding: 0px 0px 0px 0px;
  }


.contentcontainer.overflow {
max-width: 100vw;
}


 
.centercol img , .textcol img , .defaultcol img , .halfcol .ce-gallery img, .imgcol img , .contentcontainer .personimage img{width: 100%; height: auto; border-radius: 5px;}

 


.halfcol {float:left; display:block; width: 50%;padding-left: 10px;}

.halfcol:nth-of-type(odd) {padding-right: 10px; padding-left: 0;}
.halfcol:nth-of-type(even) {padding-right: 0px; padding-left: 10px;}
 


.downloadbox figure {
  position: relative;
  padding-bottom: 40%;
}
 .halfcol.downloadbox .ce-gallery  img {width: 50%;position:absolute; top: 40px; right: 0px;box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.1), 1px 1px 2px rgba(0, 0, 0, 0.2); border-radius: 0px;}
.downloadbox .colbox {position:relative;}
 
.halfcol.downloadbox:nth-of-type(1) {padding: 20px 10px 12.5% 0px;}
.halfcol.downloadbox:nth-of-type(2) {padding: 20px 0px 12.5% 10px;}


.contentwrapper.container-end  .halfcol.downloadbox {margin-left: 25%; padding-left: 0;}

.downloadbox .readmore {position:absolute; bottom: 60px;z-index:10;}


div.readmore a,div.readmore a:hover, 
div.readmore span,div.readmore span:hover ,
p.readmore a,p.readmore a:hover, 
p.readmore span,p.readmore span:hover  { width: auto; }
 
.contentwrapper { width: 100%; } 
 
.contentwrapper.gridwrapper  { padding-top: 50px } 
 



/*.contentwrapper.twocols {
display: flex; margin-top:19px; 
}
 
.col70 {flex: 1 0 66.666667%;}	
.col30 {flex: 1 0 33.333333%;}	*/
  

 
.grid-sizer {width:50%; }
.grid-item  {width: 50%;}


.grid-item { padding:10px; } 

.grid-item:nth-of-type(even){ padding:10px; } 

.grid-item:nth-of-type(odd){ padding:10px; } 


.contentwrapper.fullwidthcontent .contentcontainer .mediaelement { overflow: hidden;  }
.contentwrapper.fullwidthcontent .contentcontainer img {width: 100%; height: auto; }

 

section.imageteaser .ce-gallery { height: auto;  }	

section.imageteaser  .colbox{ 
position:absolute;
bottom: 60px;
top:auto;
left: 60px;
width: 50%; max-width: 600px;
height: auto;}
 
 
.contentcontainer.centercol {max-width: 690px;  ; margin:auto; } 


.contentcontainer.textcol.overflow {
max-width: calc(100vw - 60px);
}
 

.colcontainer {position:relative; padding:0; }
.personimage { width: 300px; padding-right: 25px; padding-bottom: 0px;}

  .persontext {position:absolute;  padding:0;
  left: 325px;
  top: 50%;transform: translate(0,-50%);  overflow:visible; width: calc(100% - 325px);}
.persontext p {padding-left: 20%;}


  
}


/***************************************************************************************************/ 
/***************************************************************************************************/ 
 
 

@media all and (min-width: 960px){
	
	
.contentcontainer .col13 .colcontent {padding-bottom: 33.333333% ; float:left; width: calc(50% - 15px);}

.contentcontainer .col13 .colcontent:first-of-type {margin-right: 15px; margin-bottom: 0px}

.contentcontainer .col13 .colcontent:last-of-type {margin-left: 15px; margin-bottom: 0px}

.contentcontainer .col23 .colcontent {  padding-bottom: 50% ;  }

.contentcontainer .col23 .colcontent > div {width: 50%;}


  

a#scrolltop { bottom: 60px; right: 20px; }
 
 
.intro {margin-top: -42px;}
 
div.readmore a , div.readmore span, p.readmore a , p.readmore span{
  display: inline-block;
  width: auto;
/*  position: absolute;
  left: 0;
  top: 50%;transform: translate(0,-50%); */
}
	


footer {  padding:20px 0px 0px 0px; }
 

footer .contentcontainer {  padding-bottom: 100px; }
 
footer .boxes > div.contact { display:block;width: 60%;float:left; }

footer .boxes > div.bank {width: 40%; float:left;  }
 
footer .boxes  div { text-align:left;  }

footer  ul li { float:none; display:block; padding: 0px 30px 5px 0px;}   



footer .boxes  { 
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-flex-direction: row;
    -moz-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;

    justify-content: flex-start ;

     -webkit-justify-content: flex-start ;
     -moz-justify-content: flex-start ;
       -ms-justify-content: flex-start ;
       flex-wrap:  wrap  ;
}
 

  
  
  
 
.logoboxes > div  {width: calc(100% / 4 - 15px); }

.onecol .logoboxes > div  {width: 100%;}

.onecol .logoboxes a {padding-bottom: 20%;}


  
.logoboxes > div.logo > div {background-size: background-size:  80% auto;}	



 
#footerlogos .logoboxes > div  {width: calc(100% / 5 ); padding: 30px; }
  
#footerlogos .logoboxes > div.logo > div {background-size:  auto 80%;}	
	
#footerlogos .logoboxes > div.logo3 > div {background-size:  contain;}	

#footerlogos .logoboxes > div.logo2 > div, .logoboxes > div.logo1 > div , .logoboxes > div.logo4 > div {background-size:  auto 100%;}	


 
 
#footerlogos h3 {display:none; }
#footerlogos .logoboxes {margin: 0;padding: 0; }

 


section p {padding:0px  }

/*.contentwrapper {padding:35px 0px 35px 0px;}

 */
 
 
.contentwrapper   {width: 100%; padding: 60px 0px 60px 0px;margin:auto;  }
 
 
.contentwrapper.bottompad   { padding: 60px 0px 120px 0px; }
.contentwrapper.toppad   { padding: 120px 0px 60px 0px; }
.contentwrapper.bottompad.toppad   { padding: 120px 0px 120px 0px; }


.contentwrapper.smallbottompad   { padding: 60px 0px 30px 0px; }
.contentwrapper.smalltoppad   { padding: 15px 0px 30px 0px; }
.contentwrapper.smalltoppad.smallbottompad   { padding: 30px 0px 30px 0px; }

.contentwrapper.smalltoppad.bottompad   { padding: 30px 0px 60px 0px; }
 
.contentwrapper.nobottompad   { padding: 60px 0px 0px 0px; }
.contentwrapper.notoppad   { padding: 0px 0px 60px 0px; }
.contentwrapper.notoppad.nobottompad   { padding: 0px 0px 0px 0px; }

.contentwrapper.notoppad.smallbottompad   { padding: 0px 0px 30px 0px; }


.contentwrapper:last-of-type {padding-bottom:60px; }




.contentcontainer.textcol , .contentcontainer.textcol.overflow {max-width:874px;  margin:auto; padding:0px 0px 0px 0px; }



.contentwrapper.fullwidthimage { padding-left: 0px; padding-right: 0px; }
	
.fwimage {padding-bottom: 28%; width: 100%;}




 
#logo {z-index: 1010;
position:absolute; left: 30px; top: 60px;		
display:block; width: 212px; height: 69px; 
background-image:url('../images/logo.svg');
background-repeat:no-repeat;
background-size: 212px auto;
background-position: center;

} 

.menuopened #logo {background-image:url('../images/logo.svg'); top: 60px;left: 30px;width: 212px;}
 
#logo a {width: 212px;height: 69px;}

header { width: 100%; padding: 0px 0px 50px 0px; position:absolute;z-index:100; height: auto;  }

.start header {height: 856px;}

.pagenav header { height: auto; }

 
header .navicontainer {height: 178px; width: 100%; }

header .contentcontainer  {padding:0px 30px 0px 30px; position:relative ; height: 100%;}  

 
#page {padding-top:200px;}

.start #page {padding-top:876px;}

.pagenav #page {/*padding-top:656px;padding-top:706px;*/}

#wrapper { margin:0px auto 0px auto; } 


.contentcontainer  {max-width: calc(100vw - 60px); }



header .contentcontainer.videocontainer { height: 856px;}

 
header div.readmore , header .contentcontainer.videocontainer  p.readmore {position:relative; width: auto; bottom: 0;}

 
  
  /*
header .contentcontainer .rcol {padding:  130px 20px  0px 20px;  }

header .contentcontainer .rcoltext { padding: 20px 20px 20px 20px;}

*/
  
  
header .contentcontainer .lcol {width: 66.666667%; display:block; float: left;  padding:  198px 20px 0px 0px; padding:  209px 20px 0px 0px}
 
header .contentcontainer .rcol {width:33.333333%; display:block; float: left;padding:  0px 20px 0px 0px}

 
header .contentcontainer .rcoltext { padding: 198px 0px 0px 0px;padding:  215px 20px 0px 0px; padding:  215px 0px 0px 0px;}

 
/* .rcolcontainer {position:relative; height: 100%;}  .rcoltext { padding-top: 198px;}*/

 
 .inpagenav {/*position:absolute; bottom: 50px; right: 50px;*/}
 



.colcontainer {position:relative; padding:0; }
.personimage { width: 50%; padding-right: 25px; padding-bottom: 0px;}

  .persontext {position:absolute;  padding:0;
  left: calc(50% + 25px);
  top: 50%;transform: translate(0,-50%);  overflow:visible; width: 50%;}
.persontext p {padding-left: 20%;}


  
  header .contentcontainer.videocontainer .lcol {/*width: 66.666667%; */ width: calc(100% - 450px);display:block; float: left; height:auto;  padding:  198px 20px 0px 0px; padding:  209px 20px 0px 0px;
  border-bottom: none; }
  header .contentcontainer.videocontainer .rcol {/*width:33.333333%; */ width: 450px; display:block; float: left;;position:static; height: auto;  }
  
  
.bgvideo {
overflow: hidden;
width: 100%;
margin-left: 0px;
height: 856px;
}

.bgvideo video {
width: 100%;
display: block;
height: 856px;
object-fit: cover;
margin-top: 0;

}


}  


 

@media all and (min-width: 1280px){

  

	

	
.start header {height: 856px;}

.start #page {padding-top:856px;}

.contentcontainer.twocols  {padding: 15px; display:block; clear:both; max-width: 100%;}

.nobottompad .contentcontainer.twocols  {padding-bottom: 0px; }

.notoppad .contentcontainer.twocols  { padding-top: 0px;}

.notoppad .contentcontainer.twocols .colcontainer:first-of-type {
    padding: 15px 15px 15px 15px;
  }




.nobottompad.notoppad .contentcontainer.twocols  {padding-bottom: 0px;  padding-top: 15px;}
 
.contentcontainer.twocols .colcontainer, .contentcontainer.twocols .colcontainer:first-of-type {padding: 15px;  }

.contentcontainer.twocols .col13 {width: 33.333333%;float:left; }
.contentcontainer.twocols .col23 {width: 66.666667%;float:left; }


 
.contentcontainer .colcontent {position:relative; width: 100%; border-radius: 5px;}

.contentcontainer .col13 .colcontent {padding-bottom: 77.27277% ;margin-bottom: 30px; width: 100%; }

.contentcontainer .col13 .colcontent:first-of-type {margin-right: 0px;margin-bottom: 30px;  }

.contentcontainer .col13 .colcontent:last-of-type {margin-left:0px;margin-bottom: 0px;}
  


.contentcontainer .col23 .colcontent {padding-bottom: 77.912087%; padding-bottom: 78%;margin-bottom: 0px;  }

.contentcontainer .col23 .colcontent > div {width: 50%;}

 .colcontent > div {padding: 20px; position:absolute; }

.contentcontainer .col23 .colcontent > div.col50 {position:absolute;width: 50%;  top:0; left: 0; }
.contentcontainer .col23 .colcontent > div.col50:last-of-type {position:absolute;width: 50%;  left: 50%;  }


footer {  padding:20px 0px 30px 0px; }	
	
#footerlogos { border-radius: 5px;}	

.logoboxes  { padding: 0px;}
 
.logoboxes > div  {width: calc(100% / 4 - 15px );}

.onecol .logoboxes > div  {width: 100%;}



#footerlogos .logoboxes  { padding: 20px;}
 
#footerlogos .logoboxes > div  {width: calc(100% / 5 );/* padding: 40px; background-size: 80% auto;  */ }

	
footer .boxes > div.contact {width: 30%;}
footer .boxes > div.bank { display:block;width: 30%;}
footer .boxes > div.content {width: 20%;} 
footer .boxes > div.links {width: 20%; }
 

.grid-sizer {width:33.333333%; }

.grid-item  {width: 33.33333%;}
 
.persontext {width: calc(50% + 110px);}
}
 
 
@media all and (min-width: 1320px){
 
 
  header .contentcontainer.videocontainer .lcol {width: 66.666667%; }
  header .contentcontainer.videocontainer .rcol {width:33.333333%; }
  
}

@media all and (min-width: 1440px){
 
		
	 
.persontext {position:absolute;  padding:0;
  left: calc(50% + 25px);
  top: 50%;transform: translate(0,-50%);  overflow:visible; width: calc(50% + 210px);}
  
.persontext p {padding-left: 30%;}


	
a#scrolltop { position:fixed; bottom: 60px; right: 65px;}
 

.contentcontainer  .colbox , .boxbg {width: 100%;  margin:auto; padding:50px 50px 50px 50px !important; border-radius:5px; }
.contentcontainer.menucontainer {padding: 50px 50px 30px 50px !important;}
 

  
 /*
footer {height:670px; position:relative;}
#page {min-height: calc(100vh - 840px) ;}*/
 
 
#wrapper {padding-bottom:670px;}

div.readmore{  margin-top: 40px;}
.loadmore-end div.readmore {  margin-top: 30px;}


/*

.contentwrapper   {width: 100%; padding: 50px 0px 50px 0px;margin:auto;  }
 
 
.contentwrapper.bottompad   { padding: 50px 0px 100px 0px; }
.contentwrapper.toppad   { padding: 100px 0px 50px 0px; }
.contentwrapper.bottompad.toppad   { padding: 100px 0px 100px 0px; }


.contentwrapper.smallbottompad   { padding: 50px 0px 25px 0px; }
.contentwrapper.smalltoppad   { padding: 15px 0px 30px 0px; }
.contentwrapper.smalltoppad.smallbottompad   { padding: 25px 0px 25px 0px; }

.contentwrapper.smalltoppad.bottompad   { padding: 25px 0px 50px 0px; }
 
.contentwrapper.nobottompad   { padding: 50px 0px 0px 0px; }
.contentwrapper.notoppad   { padding: 0px 0px 50px 0px; }
.contentwrapper.notoppad.nobottompad   { padding: 0px 0px 0px 0px; }

.contentwrapper.notoppad.smallbottompad   { padding: 0px 0px 30px 0px; }
*/



.contentwrapper   {width: 100%; padding: 60px 0px 60px 0px;margin:auto;  }
 
 
.contentwrapper.bottompad   { padding: 60px 0px 120px 0px; }
.contentwrapper.toppad   { padding: 120px 0px 60px 0px; }
.contentwrapper.bottompad.toppad   { padding: 120px 0px 120px 0px; }


.contentwrapper.smallbottompad   { padding: 60px 0px 30px 0px; }
.contentwrapper.smalltoppad   { padding: 15px 0px 30px 0px; }
.contentwrapper.smalltoppad.smallbottompad   { padding: 30px 0px 30px 0px; }

.contentwrapper.smalltoppad.bottompad   { padding: 30px 0px 60px 0px; }
 
.contentwrapper.nobottompad   { padding: 60px 0px 0px 0px; }
.contentwrapper.notoppad   { padding: 0px 0px 60px 0px; }
.contentwrapper.notoppad.nobottompad   { padding: 0px 0px 0px 0px; }

.contentwrapper.notoppad.smallbottompad   { padding: 0px 0px 30px 0px; }


.contentwrapper:last-of-type {padding-bottom:60px; }



.contentcontainer  {width: 1440px;margin:auto;padding: 0px 30px 0px 30px; }
 
.contentwrapper.gridwrapper .contentcontainer {padding:0px 50px 0px 50px;}

.contentwrapper.fullwidthcontent .contentcontainer {padding:0;width: 100%;
max-width: 1920px;max-width: 100%;
overflow: hidden; position:relative;
}





.formcontainer .contentwrapper.bglightblue {padding:60px 0px 60px 0px;  }

.formcontainer .actions .contentwrapper.bglightblue {padding:0px 0px 110px 0px;  }

.formcontainer {padding-top: 60px;}


.actions .contentwrapper.bhlightblue  {padding-bottom: 120px;}








#footerlogos  {width: 1380px;margin:auto;padding: 0px 30px 0px 30px; }

.defaultcontainer {width: 1440px;margin:auto;padding: 0px 60px 30px 60px; }


  
#logo { left: 30px;} 
 



 .contentwrapper.fullwidthcontent .contentcontainer .mediaelement {/* overflow: hidden;  height: 856px; width: 100%; position:absolute;*/  }
 .contentwrapper.fullwidthcontent .contentcontainer img { height: 856px;width: 100%; object-fit: cover;object-position:center center }


.fullwidthcontent figcaption {width: 1440px; margin:auto; padding:20px 60px 0px 60px;} 

.defaultcontainer {width: 1440px;margin:auto;padding: 0px 60px 30px 60px; } 

 .contentwrapper.includecontent  {padding:50px 60px 50px 60px;}

 

.video {width: 100%;  } 
video {width: 100%;height: auto; object-fit:cover;}
 
 
}
 

/************************************************************/

/************************************************************/


/************************************************************/


/************************************************************/


.errormessage, .error.form-text {margin:0px; padding: 0px; line-height: 26px;color:var(--brand-red); }

#summary + form { margin-top: 20px;}

#summary.errormessage span {display:block; margin-bottom: 20px;}

div.input input[type="text"].error,div.input input[type="email"].error, select.error, .inputs-list:has(.error) ,  .form-group.has-error .inputs-list   /*= fehlermeldung von forms serverseitig*/  {background: #FFFFA3}


div.input input[type="checkbox"].error + span {background: #FFFFA3}

 

div.introcoltext{position:absolute; top: 50%;
 
  -ms-transform: translateY(-50% );
  transform: translateY(-50% ); 
  
  text-align:center;width:100%;
   
  }
 

  

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

.boximage > div {
    width: 100%;
    padding-bottom: 100%;
 
    background-repeat: no-repeat;
    background-size: auto 100%;
 
    background-position: center center;
}

a:hover .boximage > div {opacity:0.7}
 
    
    
         .fadeInLoad {
        border: 1px solid #48484A;
        font-size: 40px;
        animation: fadeInLoad 5s;
    }
    @keyframes fadeInLoad {
        from {
            opacity:0;
        }
        to {
            opacity:1;
        }
    }
    
    
@media all and (-ms-high-contrast:none) {
     #sm_menu_ham { display:none !important; } /* IE10 */
     *::-ms-backdrop, #sm_menu_ham { display:none !important; } /* IE11 */
}

 