:root {
    --brand-rot: #CC0837; 
     --brand-lightgrey: #F5F5F5;
     --brand-lightgrey2: #EBEBEB;
     
      --brand-darkgrey: #323232;
      
      --brand-footergrey: #4A4A49;
      
      --brand-mediumgrey: #D9D9D9;
      --brand-mediumgrey2: #505456;
 
 
    --brand-gradient: linear-gradient(135deg, rgba(163,201,227,1) 0%,rgba(244,213,106,1) 100%);
 
}

.rot { background: var(--brand-rot); padding-left: 1rem; padding-right:1rem; }
 
  
* { 
	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 {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%;}
 


#pwrapper {
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:124px 0px 0px 0px;
}
 

header { background-color:#fff;  height: 124px; width: 100%; box-shadow: 0px 2px 20px 0px rgba(0, 0, 0, 0.05);position:fixed;  z-index: 9999;
  -webkit-transition: all 0.5s ease-in-out 0s;
  -moz-transition: all 0.5s ease-in-out 0s;
  -o-transition: all 0.5s ease-in-out 0s;
  transition: all 0.5s ease-in-out 0s;}

.scrolled header {height: 0px; }
.scrolled #logo {height: 0px; }

.scrolled .searchbutton {margin-top:-100px;}


#logo {display:block; width: 60%;   height: 160px;height: 124px;height: 100px;
background-image:url('../images/logo-dgrh.svg');
background-image:url('../images/DGRh-Logo_web_RGB.svg');


background-repeat:no-repeat;
background-size: 160px auto;

background-position: left 0px top 35px;  

-webkit-transition: all 0.5s ease-in-out 0s;
  -moz-transition: all 0.5s ease-in-out 0s;
  -o-transition: all 0.5s ease-in-out 0s;
  transition: all 0.5s ease-in-out 0s;
} 


#logo a {display:block; width: 100%;  height: 160px;height: 100px;}



header .contentcontainer {  padding:0px 0px 0px 0px;   position:relative; }
 

header .contentwrapper   {  width: 100%; padding:0px 0px 0px 0px !important;   }

#arrow_top {position:fixed; bottom: 50px; right: 20px;z-index:9999; display:none; 
width: 48px;
height: 48px;
background-image:url('../images/north.svg');
background-repeat:no-repeat;
background-size: 30px auto;

background-position:center;  
background-color: #fff;
border: 2px solid var(--brand-rot);
border-radius: 24px;
text-indent: -9999px;
}


#arrow_top:hover {background-image:url('../images/north_white.svg');
background-color: var(--brand-rot);
}


.scrolled #arrow_top {display:block; }



 
.contentwrapper.fwimage  .contentcontainer {position:relative; height: 50vw;width: 100%;}

.imagecontainer { position:absolute; z-index: 1; width: 100%;  }

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

 .fwimage .textcol {position:absolute;width: 90%; z-index:2; top:20vw; left: 50%;  
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  
 }
 
 
 
 

 
.jahresliste {text-align:center;padding: 50px 0px 70px 0px;}

.jahresliste ul {list-style-type:none;  
display: inline-block;
        margin: 0;
        padding: 0;}
        
.jahresliste li {  float:left; width: calc(50% - 30px); text-align:center;padding: 10px 10px 10px 10px; margin: 0px 15px 20px 15px; background-color:  #fff; border: 2px  solid var(--brand-darkgrey);border-radius: 15px;  font-size: 20px; color: var(--brand-darkgrey); cursor:pointer;}
.jahresliste li.active , .jahresliste li:hover  {   background-color:  var(--brand-rot);border: 2px  solid var(--brand-rot); color: #fff;}

.jahresliste li :last-of-type {margin-right: 0}




.jahresliste.eventsmenu {text-align:center;padding: 30px 0px 50px 0px;}
.jahresliste.eventsmenu ul{ width:350px; margin:auto; }


.jahresliste.eventsmenu li { background-color:  var(--brand-lightgrey);border: 2px  solid var(--brand-lightgrey); color:  var(--brand-rot); width: 351px; text-align:center;padding: 10px 10px 10px 10px; margin: 0px 0px 20px 0px;}
.jahresliste.eventsmenu li.active , .jahresliste.eventsmenu li:hover { background-color:  var(--brand-rot);border: 2px  solid var(--brand-rot); color: #fff; }

.jahresliste.eventsmenu li a {color:  var(--brand-rot); }
.jahresliste.eventsmenu li a:hover {color: #fff; }

.jahresliste.eventsmenu li.active a , .jahresliste.eventsmenu li.active a:hover{ color: #fff; }




.news-menu-view {position:relative; padding: 50px 0px 50px 0px; width: 100%;}

.news-menu-container {position:absolute; left: 50%; top: 0; width: 376px; margin-left: -188px; }

.news-menu-listcontainer {position:absolute; left:88px; top: 0; width: 200px; overflow:hidden; }

.news-menu-view ul {list-style-type:none;  
display: inline-block;
        margin: 0;
        padding: 0;}
        
.news-menu-view li {  float:left; margin-right: 0px; background-color:  #fff;border: 2px  solid var(--brand-darkgrey); padding: 10px 10px 10px 10px; border-radius: 15px;  font-size: 20px; color: var(--brand-darkgrey); cursor:pointer; width: 200px; text-align:center;}

.news-menu-view li.active , .news-menu-view li:hover  {  margin-right: 30px; background-color:  var(--brand-rot);border: 2px  solid var(--brand-rot); color: #fff;}

.news-menu-view li :last-of-type {margin-right: 0}


.news-menu-view li {display:none; }
.news-menu-view li.active, .news-menu-view li.active:hover {display:block; }



.news-menu-view a.prevnext {display:block; position:absolute;  top: 0;
cursor:pointer; width: 49px; height: 49px; border-radius: 25px;  background-color:  var(--brand-lightgrey);    background-repeat: no-repeat;
  background-size: center;
  background-position: center;}
  
  
.news-menu-view a#next { background-image: url('../images/keyboard_arrow_right.svg');  right:0; }
.news-menu-view a#prev { background-image: url('../images/keyboard_arrow_left.svg');left:0;  }





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

.jahresliste li {    margin: 0px 15px 0px 15px;  padding: 10px 40px 10px 40px;  width: auto;  }	


.jahresliste.eventsmenu { padding: 50px 0px 70px 0px;}


.jahresliste.eventsmenu ul {width: auto; }

.jahresliste.eventsmenu  li {  float:left;  margin: 0px 15px 0px 15px; padding: 10px 10px 10px 10px; }


}



@media all and (min-width: 1280px){
	
.jahresliste li {    padding: 10px 68px 10px 68px;  }	
.jahresliste.eventsmenu  li {  padding: 10px 10px 10px 10px; }
}
 



.quiz-checkbox, .quiz-radio {clear:both; padding-bottom: 16px;}
.quiz-checkbox label {}
.quiz-checkbox label input, .quiz-radio label input  {float:left; width: 24px; display:block; margin-top: 6px;}
.quiz-checkbox label span , .quiz-radio label span{float:left; width: calc(100% - 24px); display:block; padding-left: 8px }


.quiz-checkbox label span:after , .quiz-radio label span:after {content : '';display: block;clear: both;}
.quiz-checkbox label:after , .quiz-radio label:after {content : '';display: block;clear: both;}

.card h4 {margin: 16px 0px 16px 0px}

.tx-fp-masterquiz fieldset {border:none; }

.progress {width: 100%; background-color: var(--brand-lightgrey);display:block; height: 26px;}
.progress-bar { background-color: var(--brand-mediumgrey); height: 26px; color: var(--brand-darkgrey); text-align:center; line-height: 26px; }


.alert.alert-danger {color: var(--brand-rot); padding: 10px 0px 20px 0px;  }


.quiz-showEveryAnswer {}


.quiz-showEveryAnswer li.font-weight-bold {font-weight: normal; }

.quiz-showEveryAnswer li.text-success {color: green}
.quiz-showEveryAnswer li.text-danger {color: var(--brand-rot); }

.quiz-showEveryAnswer li { padding-left: 32px;
  background-image: url('../images/radio-button-off1.svg');
  background-repeat: no-repeat;
  background-size: 28px auto !important;
  background-position: left top 0px;}

 .quiz-showEveryAnswer li.font-weight-bold {  background-image: url('../images/radio-button-on1.svg'); 
background-position: left 4px top 4px;
  background-size: 20px auto !important;  }
  
  
  

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

#logo {background-size: 193px auto;
background-position: left 0px top 35px; }


}



@media all and (min-width: 1024px){
	
#logo {background-position: left 15px top 54px;} 
 
header { background-color:transparent;  height: 170px;}
header .contentwrapper {  width: 100%; padding:0px 100px 0px 100px;   }	

}






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

.contentwrapper.breadcrumbs   {width: 100%; padding: 0px 0px 0px 0px !important;margin:auto; background-color: var(--brand-lightgrey);/* margin-bottom: 36px;*/  }

.contentwrapper.breadcrumbs  + .contentwrapper,
.contentwrapper.breadcrumbs  + div   {padding-top: 22px; /* + 36 */ padding-top: 58px; }

/*muss auch funktionieren, wenn kein layout gesetzt und typo3 standard div als wrapper. daher reset */ 
.frame-default > .contentwrapper {padding: 0;} 



 

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

.contentwrapper.bottompad.toppad  {    padding:36px 0px 36px 0px !important; ; /* + 36 */   padding:72px 0px 36px 0px !important;}

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

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

.contentwrapper.nobottompad  {  padding:18px 0px 0px 0px !important;  /* + 36 */ padding:54px 0px 0px 0px !important;}
.contentwrapper.notoppad {  padding:0px 0px 18px 0px !important; }
.contentwrapper.notoppad.nobottompad {    padding:0px 0px 0px 0px !important; }


.contentwrapper.accordion   {  padding:0px 0px 20px 0px; }
.contentwrapper:last-of-type {padding-bottom:36px; padding-bottom:58px; }
.contentwrapper.loadmore-end{  padding:0px 0px 20px 0px !important; }



.greybox {background-color: var(--brand-lightgrey); border-radius:25px; padding: 30px 15px 30px 15px;}
.headerimage .greybox {padding: 15px 15px 15px 15px;}
#search .greybox {padding: 50px 15px 30px 15px;}



.contentcol  { max-width: 1096px;margin:auto ;}

.textcol { max-width: 872px;margin:auto ;}

.formcol { max-width: 538px;margin:auto ;}




.contentbox {width: 100%; position:relative; background-color:#fff; }

.contentbox .close {position:absolute; right: 20px; top: 20px; }
.contentbox .boxheader {position:absolute; left: 20px; top: 20px; }

.contentbox .boxheader span {color:var(--brand-rot); float:left;float: left;
  line-height: 48px;
  padding-left: 10px; }
  
#search  .contentbox .boxheader span { line-height: 38px; }

	
.close { 
width: 28px; height: 28px;
background-image: url('../images/close.svg');
background-repeat:no-repeat; 
background-size:24px auto  !important; 
background-position:center;
cursor:pointer; }







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

 
.contentwrapper.start {  width: 100%; padding:30px 0px 20px 0px; }

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


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

padding:20px 0px 0px 0px;
max-width: calc(100vw - 40px); margin:auto; 

} 
/*.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; 
}
 
.centercol img , .textcol img , .defaultcol img , .halfcol .ce-gallery img, .imgcol img , .personimage img{width: 100%; height: auto; border-radius: 15px;}

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

}


 


.contentwrapper.breadcrumbs .contentcontainer { max-width: calc(100vw - 40px);margin:auto ;}
  
footer {width: 100%; background-color: var(--brand-footergrey);padding-top: 20px; position:relative; bottom:0}

/*footer .contentcontainer {max-width: 100vw; }*/

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


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


footer .servicenav ul {width: 50%; float:left; display:block; }  
 
footer .servicenav ul li { display:block;  padding:10px 20px 0px 0px;}    

footer .copyfooter ul li {display:block; float:left;  padding:20px 20px 20px 0px;}  




footer .boxes  div { width: 100%;clear:both; padding-bottom: 18px; max-width: calc(100vw - 40px);margin:auto; }

footer .boxes > div.contact h3 {
  
    line-height: 130%;
  }
  
  
 
footer a {color: #fff;font-weight: normal; }
footer a:hover {text-decoration:underline;color: #fff;}

footer p {color:#fff;}
 
footer .boxes div.contact  { padding-bottom: 40px;}
footer .boxes div.social  { margin-top: 32px;margin-bottom: 0px;}
 
footer .boxes div.newsletter  {padding-bottom: 30px;  }

footer .social  ul li {  padding:0px 0px 0px 0px;list-style-type: none;
  background-image: none;}    
footer .social  ul{  padding:0px 0px 0px 0px;}    


footer .social a {
display:inline-block; width: 36px; height: 36px; margin-right: 16px;text-indent: -9999px;background-color: #fff;
background-repeat:no-repeat;
background-size:auto 26px ;
background-position:  center;border-radius:18px; -moz-border-radius:18px; -webkit-border-radius:18px; 
}


footer .social a.facebook{ background-image:url('../images/icons/LinkFacebook.svg');background-size: auto 44px;}

footer .social a.twitter{ background-image:url('../images/icons/twitter.svg');}

footer .social a.linkedin{ background-image:url('../images/icons/LinkLinkedIn.svg');background-size: auto 36px;}

footer .social a.youtube{ background-image:url('../images/icons/youtube.svg');background-size:auto 20px !important ;}

footer .social a.vimeo{ background-image:url('../images/icons/LinkVimeo.svg');background-size: auto 36px;}

footer .social a.instagram{ background-image:url('../images/icons/LinkInstagram.svg');background-size: auto 36px;}


footer .social a.facebook:hover, a.facebook:focus{ background-image:url('../images/icons/LinkFacebook.svg')}
footer .social a.twitter:hover, .twitter:focus { background-image:url('../images/icons/twitter.svg')}
footer .social a.linkedin:hover ,a.linkedin:focus{ background-image:url('../images/icons/LinkLinkedIn.svg')}
footer .social a.youtube:hover, a.youtube:focus{ background-image:url('../images/icons/youtube.svg')}
footer .social a.vimeo:hover, a.vimeo:focus{ background-image:url('../images/icons/LinkVimeo.svg')}

footer .social a.instagram:hover, a.instagram:focus  { background-image:url('../images/icons/LinkInstagram.svg')}



footer .social a:hover, footer .social a:focus {opacity:0.85}

p.icontext {padding:10px 0px 10px 42px;background-repeat:no-repeat;
background-size:auto 24px ;
background-position:  left center; color:#fff; margin-bottom: 0px;}

p.icontext.pin {background-image:url('../images/pin_white.svg')}
p.icontext.phone {background-image:url('../images/phone_white.svg')}
p.icontext.mail {background-image:url('../images/mail_white.svg')}


.textinput {width: 100%; border-radius: 4px; background-color: #fff; border:none;  line-height: 42px; height: 42px;  padding: 0px 4px 0px 20px;}
.submitbutton {height: 40px; line-height: 40px; padding: 0px 20px 0px 20px; color: #fff;  background-color: var(--brand-rot); border:none; margin-top: 16px;  border-radius: 4px; }

footer .copyfooter {width: 100%; max-width: 100vw; background-color: var(--brand-darkgrey);}

footer .copyfooter .contentcontainer {/*padding: 10px 20px 30px 20px !important;padding: 0px 0px 0px 0px !important;*/}
footer .copyfooter p {padding-top: 20px; }
 


.fwimage {
position:absolute; z-index:-1;
padding-bottom: 52%; width: calc(100% - 40px);
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; }




.himage {
position:absolute; z-index:-1;
padding-bottom: 22%; padding-bottom: 28%; 

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.headerimage .contentcontainer {padding-top: calc(22% - 50px);padding-top: calc(28% - 30px);
padding-left: 20px; padding-right: 20px; }
.contentwrapper.headerimage, .contentwrapper.breadcrumbs  + .contentwrapper.headerimage  {padding: 0px !important; }






.thementeaser {position:relative; /*padding-bottom: 117%;*/ width: 100%; background:transparent; border-radius:15px; background-color: var(--brand-lightgrey);}

.thementeaser .teaserimage  {position:relative; padding-bottom: 62%; width: 100%; background-repeat:no-repeat;
background-size:cover ;
background-position:  center;
border-radius:15px;}

.thementeaser .teasertext {position:relative; padding-bottom: 50%; width: 100%; 
}
.thementeaser .teasertext div {position:absolute; padding: 30px 20px 0px 20px;}

.themenslider  { 
    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  ;
}
.themenslider .slide-box {width:100%; padding-bottom: 30px;}


.contentwrapper.flexboxes  h1 {margin-bottom: 30px;}
.contentwrapper.flexboxes  {padding-bottom: 0px;}


.highlights , .fakten { 
    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: center ;

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

.highlights > div.highlight {   width: 50%;  padding: 0px 10px 20px 10px;   }

.fakten > div.fakt {   width: 50%;  padding: 0px 10px 20px 10px;  max-width: 220px; }

div.fakt > div {position:relative; width: 100%; padding-bottom: 100%;border: 2px solid var(--brand-rot); border-radius:50%; }

div.fakt > div > span {display:block;text-align:center;  width: 100%; 
position:absolute; left:0; top: 50%;   margin-top:9px;
/*-ms-transform: translateY(-50%);
transform: translateY(-50%);*/

color:  var(--brand-rot); }

div.fakt > div >  span.heading {  margin-top: -35px; }
 




div.highlightimage {
 display: block;
  width: 100%;
 
  height: 140px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 102px auto;
  background-position: center bottom 10px
 
}

div.highlightheader {background-color: var(--brand-lightgrey); height: 90px; 
 width: 100%; border-radius: 15px; position:relative;  padding: 0px 0px 0px 0px;} 

div.highlightheader a {position:absolute; left:0; top: 50%;   
-ms-transform: translateY(-50%);
  transform: translateY(-50%);
  
  text-align:center;  width: 100%; 

display:block; line-height: 24px; padding: 0px 10px 0px 10px; font-size: 16px; font-weight: 500;}

 
 
  
 
 
 

.greybox.accordion {margin-bottom: 20px;}
.trigger {cursor:pointer; }
.trigger span {/*float:left;*/ display:block; width: 50px; height: 50px;   margin-right: 20px;text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; background-image:url('../images/plus.svg');
background-size:22px auto ;;
background-position:  center;border-radius:25px; -moz-border-radius:25px; -webkit-border-radius:25px;
border: 2px solid var(--brand-rot); 
line-height: 50px;}

.trigger h4 , .trigger h3{/*float:left;*/display:block; /*padding-top: 6px;*/ width: calc(100% - 70px); padding-left: 70px;}

.trigger:after {content : '';
    
    display: block;
    clear: both;
}
.trigger_active span { background-image:url('../images/minus.svg');background-size:22px auto ;}

.toggle_container {padding: 20px 0px 20px 20px;}

.greybox.accordion .toggle_container {padding: 20px 0px 0px 0px;}


.greybox.accordion .trigger {position:relative; }
.greybox.accordion .trigger span {position:absolute;top:50%; margin-top:-25px; }



 
.textaccordion {border-bottom: 2px solid var(--brand-rot); padding-bottom: 20px;}

.textaccordion  .trigger span {float:right; display:block; width: 50px; height: 50px;   margin-right: 20px;text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; background-image:url('../images/plus_black.svg');
background-size:22px auto ;
background-position:  center;
border: none; 
line-height: 50px;}
 
.textaccordion    .trigger_active span { background-image:url('../images/minus_black.svg');background-size:22px auto ;}
 
.textaccordion .trigger h5 {float:left;display:block; padding-top: 6px; width: calc(100% - 70px);}
.textaccordion .toggle_container {padding: 0px 0px 5px 0px;}



.transskriptaccordion {border-bottom: 1px solid var(--brand-mediumgrey);border-top: 1px solid var(--brand-mediumgrey);  padding: 10px 0px 10px 0px; margin-top: 12px;}

.transskriptaccordion  .trigger span {float:left; display:block; width: 30px; height: 30px;   margin-right: 10px;text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; background-image:url('../images/chevron_right_black.svg');
background-size:22px auto ;
background-position:  center;
border: none; 
line-height: 50px;position: static !important;
  margin-top: 0 !important; color: var(--brand-mediumgrey2) !important; }
 
.transskriptaccordion    .trigger_active span {transform: rotate(90deg); }
 
.transskriptaccordion .trigger p {float:left;display:block; padding-top: 3px; width: calc(100% - 70px);color: var(--brand-mediumgrey2)}
.transskriptaccordion .toggle_container {padding: 10px 0px 5px 40px; height: 250px; overflow:scroll;}
.transskriptaccordion .toggle_container p {
color: var(--brand-mediumgrey2) !important; }


 
 .infoicon {float:left; display:block; cursor:pointer;/*  padding-top: 10px;*/}
    
     
     
 .contentwrapper.infoicons {padding-bottom: 0px !important;}
 .contentwrapper.infoicons.newsheader  {padding-top: 0px !important;}
 .contentwrapper.infoicons + .contentwrapper {padding-top: 0px  !important;}
 
 .contentwrapper.infoicons.newsheader .contentcontainer .linkboxline {border-top: 2px solid var(--brand-rot); padding-top: 30px; padding-bottom: 30px;}
 
 
 .infoicon span {float:left; display:block; line-height: 50px; color: var(--brand-rot);
    font-weight: 500;
    font-size: 20px;
    padding-right: 50px;
    padding-bottom: 20px;
  
    }
    
 .infoicon span.icon {width: 50px; height: 50px;   margin-right: 10px;
 text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; 
background-size:22px auto ;
background-position:  center;border-radius:25px; -moz-border-radius:25px; -webkit-border-radius:25px;padding: 0;
border: 2px solid var(--brand-rot); }    
    
   .infoicon.kontakt span.icon {  background-image:url('../images/button_kontakt.svg');}
   .infoicon.downloads span.icon {  background-image:url('../images/button_downloads.svg');background-size:26px auto ;}
   .infoicon.links span.icon {  background-image:url('../images/button_links.svg');background-size:26px auto ;}

   .infoicon:hover span.icon { color: #fff;background-color: var(--brand-rot);} 
    .infoicon:hover span {text-decoration:underline;}
    
   .infoicon.kontakt:hover span.icon {  background-image:url('../images/button_kontakt_white.svg');}
   .infoicon.downloads:hover span.icon {  background-image:url('../images/button_downloads_white.svg');background-size:26px auto ;}
   .infoicon.links:hover span.icon {  background-image:url('../images/button_links_white.svg');background-size:26px auto ;}
   
   
   .infobox {position:fixed; bottom:0px; left: -100vw;  z-index: 10000;

   width: 100vw; height: 100vh; background-color:#fff; /*height: calc(100vh - 180px);*/
   
    box-shadow: 0px 2px 20px 0px rgba(0, 0, 0, 0.05);   
    
    -webkit-transition: all 0.5s ease-in-out 0s;
  -moz-transition: all 0.5s ease-in-out 0s;
  -o-transition: all 0.5s ease-in-out 0s;
  transition: all 0.5s ease-in-out 0s;
  
  overflow:scroll;
  
   }
 
 .infobox.opened {left :0px;}
 
 
.infoboxcontent .infoicon:hover {cursor:default; }
    .infoboxcontent .infoicon:hover span.icon { color:var(--brand-rot);background-color:#fff;} 
     .infoboxcontent .infoicon:hover span {text-decoration:none;}
    
    .infoboxcontent .infoicon.kontakt:hover span.icon {  background-image:url('../images/button_kontakt.svg');}
    .infoboxcontent .infoicon.downloads:hover span.icon {  background-image:url('../images/button_downloads.svg');background-size:26px auto ;}
    .infoboxcontent .infoicon.links:hover span.icon {  background-image:url('../images/button_links.svg');background-size:26px auto ;}
    
    

 .infoboxcontent {position:relative; width:100%; padding: 30px 20px 50px 20px;}
 
  .infoboxcontent .contentcontainer {padding:0 !important; width: 100% !important; }
  
 
  .infoboxcontent .close {position:absolute; top: 30px; right: 20px;}
  
  .infoboxcontent .infoicon + div {clear:both; padding-top:50px;}
  
  .infoboxcontent p {margin: 50px 0px 50px 0px;}
  
  
.infoboxcontent p.contactinfo { color:var(--brand-darkgrey); background-image:none;padding: 10px 0px 10px 0px;margin: 0px 0px 0px 0px;line-height: 50px;}

.infoboxcontent p.contactinfo:before { display:block;content : '';float:left;
width: 50px; height: 50px;   margin-right: 20px;
 text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; 
background-size:22px auto ;
background-position:  center;border-radius:25px; -moz-border-radius:25px; -webkit-border-radius:25px;
border: 2px solid var(--brand-rot);
}

.infoboxcontent p.contactinfo.fax:before {background-image:url('../images/fax.svg')}
.infoboxcontent p.contactinfo.phone:before {background-image:url('../images/phone.svg')}
.infoboxcontent p.contactinfo.mail:before {background-image:url('../images/mail.svg')}

.infoboxcontent p.contactinfo:after {content : '';display: block; clear: both;}
    
    
.infoboxcontent p.contactinfo a {color:var(--brand-darkgrey); text-decoration:underline;}






.infoboxcontent p.linkline:before { display:block; float:left; content : '';
width: 24px; height: 24px;   margin-right: 22px;
 text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; 
background-size:16px auto ;
background-position:  center;border-radius:12px; -moz-border-radius:12px; -webkit-border-radius:12px;
border: 2px solid var(--brand-rot);background-image:url('../images/east.svg');
}

 .infoboxcontent p.linkline {margin: 27px 0px 27px 0px;}

.infoboxcontent p.linkline a {display:block; float:left;  }
 
.infoboxcontent p.linkline a {display:block; float:left; line-height: 24px; width:calc(100% - 46px); }

.infoboxcontent p.linkline:hover::before {background-image:url('../images/east_white.svg'); background-color: var(--brand-rot);}
 
.infoboxcontent p.linkline:after { display:block;content : ''; clear:both; }
 
 .infoboxcontent .frame-default +  .frame-default { border-top: 2px solid #333;margin-top: 40px;}
 
   
.greybox p.contactinfo { color:var(--brand-darkgrey); background-image:none;padding: 10px 0px 10px 0px;margin: 0px 0px 0px 0px;line-height: 50px;}

.greybox p.contactinfo:before { display:block;content : '';float:left;
width: 50px; height: 50px;   margin-right: 20px;
 text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; 
background-size:22px auto ;
background-position:  center;border-radius:25px; -moz-border-radius:25px; -webkit-border-radius:25px;
border: 2px solid var(--brand-rot);
}

.greybox p.contactinfo.fax:before {background-image:url('../images/fax.svg')}
.greybox p.contactinfo.phone:before {background-image:url('../images/phone.svg')}
.greybox p.contactinfo.mail:before {background-image:url('../images/mail.svg')}

.greybox p.contactinfo:after {content : '';display: block; clear: both;}
 
.greybox p.contactinfo a {color:var(--brand-darkgrey); text-decoration:underline;}
 
 
 
 
 
 .personbox {margin-top: 30px; padding-bottom: 0px;/*background-color: var(--brand-lightgrey); border-radius: 15px;*/}
 
  
 .personimage { width: 150px; height:150px;margin-left: 20px;}
 
 .personimage > div {width: 150px; height:150px; position:absolute; z-index:10;
background-repeat:no-repeat; 
background-size:cover;
background-position:  center;border-radius:15px; -moz-border-radius:15px; -webkit-border-radius:15px;}

.persontext > div {background-color: var(--brand-lightgrey); height: auto;  width: 100%; border-bottom-right-radius:15px; border-bottom-left-radius:15px;  border-top-right-radius:15px;  border-top-left-radius:15px; padding:50px 20px 20px 20px;  }
 
 .persontext {width: 100%;  height: auto;  padding:20px 0px 20px 0px; position:relative; margin-top:-50px; }
 
.persontext p {color: var(--brand-rot);}
  
.personbox:after, .clearfix:after {content : ''; display: block; clear: both;}
 
 
 

@media all and (min-width: 520px){
	
 .personimage { margin-left: 0px;}
  
 .personbox {/*background-color: transparent; border-radius: 0px;*/}
 
 .personbox > div {float:left; display:block; }
 
 .persontext {width: calc(100% - 150px);  height: auto;  padding:20px 0px 20px 0px; margin-top:0px; }
 
 .persontext > div {background-color: var(--brand-lightgrey); height: auto;  width: 100%; position:relative;  border-top-right-radius:15px;border-bottom-right-radius:15px; border-top-left-radius:0px;  border-bottom-left-radius:15px; padding: 20px;  ;}
 
 .persontext > div p.readmore {position:absolute; bottom: 20px; left: 20px }
 
}
 
 
 
 .teaser-text + .newsinfo {margin-top: 15px;}
 
  .newsitem .newsinfo {color:var(--brand-darkgrey);}
 
  .newsitem , .listitem {padding: 14px 30px 14px 30px;border-bottom: 1px solid var(--brand-lightgrey2)}
  
  .newsitem  h3  ,  .listitem  h3 ,   .newsitem  h2  ,  .listitem  h2 {margin: 10px 0px 16px 0px;}
 
 .listitem p,  .listitem p.newsinfo {margin-bottom: 10px; }
 .listitem p.readmore {margin-bottom: 25px; }

/*
 
.contentcontainer.centercol = Default Boxed = Breite Menu/Header
.contentcontainer.centercol  .textcol = Textcol-  872
.contentcontainer.centercol  .contentcol = Centercol  - 1096

*/


/*Bilder rausgezogen - nur für centercol*/
 
 .contentcol .ce-textpic img {width:100%;  border-radius:15px;

  height: auto;
}
  
  .contentcol .ce-textpic.ce-left .ce-gallery {width:100%; margin:0px 0px 20px 0px;}
  .contentcol .ce-textpic.ce-left .ce-bodytext { padding: 0px 158px 0px 158px;  padding: 0px 0px 0px 0px;}
 
 
  .contentcol .ce-textpic.ce-right .ce-gallery {width:100%; margin:0px 0px 20px 0px;}
  .contentcol .ce-textpic.ce-right .ce-bodytext { padding: 0px 158px 0px 158px;padding: 0px 0px 0px 0px;  }
 
 
 .textcol .ce-textpic img ,  .textcol .ce-gallery img {width:auto;  height: auto;  border-radius:15px; height: auto; max-width: 100%;}
 
   .textcol .ce-textpic.ce-left .ce-gallery { margin:0px 0px 20px 0px;}
   .textcol .ce-textpic.ce-right .ce-gallery {margin:0px 0px 20px 0px;}

  .textcol .ce-textpic.textpic-accordion img {width: 100%;}
  /*sonst wird text gefloated wenn bild nicht breit genug / schmaler als Display (bei weniger als 480px)*/
  .textcol .ce-textpic.textpic-accordion .ce-gallery {width:100%;}
  
  
 
 .copyright {display:block; }
 
 
 
 
 
 
     /* Table */
    .ce-table { width: 100%; max-width: 100%; }
    .ce-table th, .ce-table td { padding: 0.5em 0.75em; vertical-align: top; }
   
   
   /* .ce-table thead th { border-bottom: 2px solid var(--brand-darkgrey); }
    .ce-table th, .ce-table td { border-top: 1px solid #dadada; }*/
    
    .ce-table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0,0,0,.05); }
    
    /*
    .ce-table-bordered th, .ce-table-bordered td { border: 1px solid var(--brand-darkgrey); }*/
    
 

.contenttable, .tablecontainer table, figure.table table {width:100% !important; border-style:none !important;  border-collapse: separate !important; border-spacing:0 !important;border-top:1px solid var(--brand-darkgrey) !important; border-left:1px solid var(--brand-darkgrey) !important;}


/*
.contenttable tr:nth-child(even), .tablecontainer tr:nth-child(even) {background-color:#fff !important}
.contenttable tr:nth-child(odd), .tablecontainer tr:nth-child(odd) {background-color:var(--brand-lightgrey) !important;}


figure.table  tr:nth-child(even), figure th { background-color:var(--brand-lightgrey) !important;}
figure.table 

*/

/*tr:nth-child(even){ background-color:var(--brand-lightgrey) !important;}
tr:nth-child(odd){background-color:#fff !important;}
*/


tbody tr:nth-child(even){ background-color:var(--brand-lightgrey) !important;}
tbody tr:nth-child(odd){background-color:#fff !important;}

thead tr { background-color:var(--brand-lightgrey) !important;}



.tablecontainer table.ce-table-bordered tr td:first-child , table th { font-weight:600 !important}
/*bordered = erste Spalte fett*/

.contenttable td , .tablecontainer td,.contenttable th , .tablecontainer th,  figure table td, figure table th {padding:12px 10px 12px 10px  !important;  border-bottom:1px solid var(--brand-darkgrey) !important; border-right:1px solid var(--brand-darkgrey) !important; }


    
    
/*inline css überschreiben*/
figure.table {width: 100% !important; margin: 20px 0px 50px 0px;}

figure.table table td, figure table th {background-color:transparent !important}

figure.table table td {with: auto !important;}





.frame-type-table {margin:16px 0px 16px 0px;}
.frame-type-table:first-of-type {margin:0px 0px 16px 0px;}




.themenmenu {list-style-type:none; }
.themenmenu li {float:left; padding: 10px 16px 10px 16px; background-color:var(--brand-lightgrey); border-radius: 15px; font-size: 20px; margin-bottom: 15px;margin-right: 15px;}


.themenmenu li.headline {width: 100%;
	background-color: #fff;padding:0;
	color: var(--brand-rot);
	padding-left: 30px;
	background-image: url('../images/red_dot.svg');
	background-repeat: no-repeat;
	background-size: 20px auto !important;
	background-position: left center;
	margin-top: 10px;
	margin-bottom: 25px;margin-right: 0px;
} 
.themenmenu  li.headline span {font-size:14px;}
.themenmenu  li.headline span.weiterethemen {font-size:14px;padding-left: 50px; background-repeat:no-repeat;
background-size: 24px auto ;
background-position:  left 10px center;background-image:url('../images/east.svg')  }









 @media all and (min-width: 768px){
.tablecontainer table.ce-table-bordered tr td:first-child {white-space: nowrap; }
 }




/*aktuell nicht verwendet */
/*
 .tablecontainer div.scrolldiv  {width:calc(100vw - 40px);   overflow:scroll;}*/
 .tablecontainer p + div.scrolldiv {padding:30px 0px 0px 0px;}
 
 
 .tablecontainer div.scrolldiv  {width:100%;  overflow:scroll; }

 @media all and (max-width: 768px){
.scrolldiv {overflow:auto;}
 }





 @media all and (max-width: 540px){	
 	.scrolldiv table tr {
    display: flex;
    flex-direction: column;  
}
    
 .scrolldiv td {border-bottom: none;}
 .scrolldiv td:last-of-type {border-bottom: 1px solid var(--brand-darkgrey);}
}
 
 
/* 
 .tx-kesearch-pi1 #kesearch_results .teaser_icon img {
  float: left;
  margin-top: 2px;
  margin-right: 5px;
  width: auto !important; height:auto !importan; border-radius:0;
  display:none; 
}
 */
 
 #kesearch_pagebrowser_bottom .pages_total {
  border-top: none !important;
}

 .kesearch_pagebrowser {
  margin: 16px auto 0  !important;
}
 
  .kesearch_pagebrowser ul li {padding: 10px 4px 10px 4px;}
 
 .kesearch_pagebrowser ul li.prevnext {padding-top: 15px;}
 #kesearch_pagebrowser_bottom a {
  padding: 0px !important;
}

  
 .kesearch_pagebrowser a.nextpage {display:block; padding: 0; width: 24px; height: 24px;   
 text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; 
background-size:16px auto ;
background-position:  center;border-radius:12px; -moz-border-radius:12px; -webkit-border-radius:12px;
border: 2px solid var(--brand-rot);background-image:url('../images/east.svg');
}
  
 .kesearch_pagebrowser a.previouspage {display:block; padding: 0;  width: 24px; height: 24px;   
 text-indent: -9999px;background-color: transparent;
background-repeat:no-repeat; 
background-size:16px auto ;
background-position:  center;border-radius:12px; -moz-border-radius:12px; -webkit-border-radius:12px;
border: 2px solid var(--brand-rot);background-image:url('../images/west.svg');
}





.veranstaltungen { 
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 ;
}



.eventbox {width: 100%; 
margin-bottom:40px;
}

.top-box {position:relative; padding-bottom: 70%;
border-top: 2px solid var(--brand-rot); 
border-right: 2px solid var(--brand-rot); 
border-left: 2px solid var(--brand-rot); 

border-top-right-radius: 25px;
border-top-left-radius: 25px;
}
.top-box > div {padding: 20px 20px 14px 20px;position:absolute; }

.bottom-box {position:relative; padding-bottom: 70%; background-color:  var(--brand-mediumgrey2);  background: var(--brand-lightgrey);

border-bottom: 2px solid var(--brand-mediumgrey2); 
border-right: 2px solid var(--brand-mediumgrey2); 
border-left: 2px solid var(--brand-mediumgrey2); 



border-bottom: 2px solid var(--brand-lightgrey); 
border-right: 2px solid var(--brand-lightgrey); 
border-left: 2px solid var(--brand-lightgrey); 

 
border-bottom: 2px solid var(--brand-rot); 
border-right: 2px solid var(--brand-rot); 
border-left: 2px solid var(--brand-rot); 

border-bottom-right-radius: 25px;
border-bottom-left-radius: 25px;
 
}
 
 
.bottom-box > div {padding: 14px 20px 20px 20px; position:absolute;}
 
.bottom-box p {color:#fff; color:var(--brand-rot)}


p.eventinfo {background-repeat:no-repeat; 
background-size:40px auto ;
background-position:  left top;
padding: 0px 0px 0px 55px;
line-height: 40px;
}


p.date {background-image:url('../images/eventdate.svg');}
p.location{background-image:url('../images/eventlocation.svg');}

p.veranstalter{padding: 0px 0px 0px 55px;}

.eventbox  p.readmore{padding: 0px 0px 0px 95px;  background-position: left  55px center; color:#fff; /*background-image: url('../images/east_white.svg');*/ }
/*.eventbox  p.readmore a { color:#fff}*/




.iframecontainer {padding:56.6% 0 0 0;position:relative; padding-bottom:70%;}

.iframecontainer iframe {width:100%; height:100%; position:absolute;top:0; left: 0; border:none; }



/*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; 
}


  .contentcol .ce-textpic img {width:316px; width:286px; border-radius:15px;  height: auto; }
  

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


.top-box ,.bottom-box  {padding-bottom: 90%;}


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

.top-box ,.bottom-box  {padding-bottom: 80%;}
 
div.highlightheader a {font-size: 18px;}

}

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

.top-box ,.bottom-box  {padding-bottom: 70%;}

div.highlightheader a {font-size: 20px;}

 
 /*Bilder rausgezogen - nur für centercol*/
 .textcol .ce-textpic img ,  .textcol .ce-gallery img {width:auto;  height: auto;  border-radius:15px; height: auto; max-width: 100%;}
 
   .textcol .ce-textpic.ce-left .ce-gallery {float:left;margin:0px 22px 20px 0px;}
   .textcol .ce-textpic.ce-right .ce-gallery {float:right;margin:0px 0px 20px 22px;}

  .textcol .ce-textpic.textpic-accordion img {width: 200px;}
  
  .textcol .ce-textpic.textpic-accordion .ce-gallery {width:auto;}
  
}



@media all and (min-width: 540px){
 .contentcol .ce-textpic img {width:316px; width:286px; border-radius:15px;height: auto;
}
  
  
.top-box ,.bottom-box  {padding-bottom: 60%;}
 
.top-box > div {padding: 30px 30px 24px 30px; }
.bottom-box > div {padding: 24px 30px 30px 30px;}


}
 
@media all and (min-width: 600px){
 
.trigger h4 { /*padding-top: 10px;*/}

.top-box ,.bottom-box  {padding-bottom: 50%;}

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


.highlights > div.highlight {width:33.333333%; }

.fakten > div.fakt {   width: 25%; }



  .contentcol .ce-textpic.ce-left .ce-gallery {width:316px;width:286px;  float:left; margin:0px 22px 20px 0px;}
  .contentcol .ce-textpic.ce-left .ce-bodytext { padding: 0px 158px 0px 158px;  padding: 0px 0px 0px 0px;}
 
 
  .contentcol .ce-textpic.ce-right .ce-gallery {width:316px; width:286px; float:right;  margin:0px 0px 20px 22px;}
  .contentcol .ce-textpic.ce-right .ce-bodytext { padding: 0px 158px 0px 158px;padding: 0px 0px 0px 0px;  }

}



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



.veranstaltungen .eventbox {width: calc(50% - 15px); }

.top-box, .bottom-box { padding-bottom: 75%;}
	
 
 .personbox {padding-top: 30px; padding-bottom: 0px;}
 
 .personimage {width: 420px; height:420px;width: 334px; height:334px;}
 
 .personimage > div {width: 420px; height:420px;width: 334px; height:334px;
background-repeat:no-repeat; 
background-size:cover;
background-position:  center;border-radius:15px; -moz-border-radius:15px; -webkit-border-radius:15px;}
 
 .persontext {width: calc(100% - 420px);width: calc(100% - 334px); height: 420px;height: 334px;  padding:20px 0px 20px 0px;}
 
 .persontext > div {background-color: var(--brand-lightgrey);height: 380px;height: 300px;  width: 100%; position:relative;   border-bottom-left-radius:0px; /*border-top-right-radius:15px;border-bottom-right-radius:15px;*/ padding: 20px;}
 
 
 
 
 

	
.themenslider .slide-box {width: 50%; padding-bottom: 30px;}
 
footer {  padding:60px 0px 0px 0px; }
 
	
footer .boxes > div {  margin:0;}


footer .boxes > div.contact {width: 70%; padding-bottom: 50px; padding-right: 50px;}
footer .boxes > div.contact p , footer .boxes > div.contact h3 {max-width: 620px; }
 
 
footer .boxes > div.servicenav { display:block; width: 30%;}

footer .boxes > div.social { margin-top: 0px;margin-bottom: 30px;width: 70%; }
footer .boxes > div.newsletter { margin-top: 0px;margin-bottom: 0px;width: 30%; padding-bottom: 18px;  }

footer .boxes > div.servicenav ul {float:none; width: 100%;}


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  ;
}
 

/*footer .contentcontainer { padding: 0px 20px 0px 20px;}*/
 

section p {padding:0px  }

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

.contentwrapper.gridwrapper .contentcontainer {padding:0px 20px 0px 20px;}

.contentwrapper.gridwrapper .contentcontainer .nogrid {padding:0px 10px 0px 10px;}
 
 
.contentwrapper.includecontent  {padding:30px 20px 30px 20px;}

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




.contentcontainer .textcol.zitat {max-width:770px; }
 
.greybox { padding: 30px 40px 30px 40px; width: 100%;}
 .headerimage .greybox {padding: 30px 40px 30px 40px; }
 
 
.contentwrapper.headerimage .contentcontainer {padding-top: calc(28% - 50px);}




header {/*height: 180px; */width: 100%; position:fixed;background:#fff;}

 
 
#logo {
width: 193px; height: 100px; 
background-size: 193px auto;
background-position: left 0px top 40px;
} 


#logo a {width: 193px; height: 100px; } 
 
#pwrapper { margin:0px auto 0px auto;  } 
#page  {padding:180px 0px 0px 0px;}



}  

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

  .contentcol .ce-textpic.ce-left .ce-bodytext { padding: 0px 158px 0px 158px;  padding: 0px 50px 0px 50px;  padding: 0px  calc(50vw - 456px) 0px calc(50vw - 456px);}

 
  .contentcol .ce-textpic.ce-right .ce-bodytext { padding: 0px 158px 0px 158px;padding: 0px 50px 0px 50px;  padding: 0px  calc(50vw - 456px) 0px calc(50vw - 456px); }
 
}


@media all and (min-width: 960px){
	
.top-box, .bottom-box { padding-bottom: 70%;}
 



}



@media all and (min-width: 1024px){
	
header {height: 180px; }

	
.top-box, .bottom-box { padding-bottom: 60%;}

	
.contentcol.fakten   {padding: 0px 50px 0px 50px;}	

.highlights > div.highlight {width:33.333333%;   height: 134px; padding: 0px 10px 30px 10px; position:relative; }

div.highlightheader a {display:block; text-align:center;/* line-height: 60px;*/ padding: 0px 0px 0px 30px; font-size: 24px; font-weight: 500;}
 
div.highlightimage {
 display:block; width: 104px; height: 104px;  padding-bottom: 0; background-color: transparent;
background-repeat:no-repeat;  
background-size:100% auto ;
background-position:  center;
position:absolute; z-index:10;
}

div.highlightheader {background-color: var(--brand-lightgrey); height: 60px; 
position:absolute; top: 22px; left: 80px; width: calc(100% - 80px); border-radius: 15px;} 

 



	
	   
.infobox { left: -50vw;  width: 50vw; }
.infoboxcontent {position:relative; width:100%; padding: 30px 100px 50px 100px;}
.infoboxcontent .close { top: 30px; right: 50px;}
  

#search  .contentbox .boxheader span { line-height: 48px; }	
#search .greybox {padding: 30px 25px 30px 25px;}
 .kesearch_pagebrowser ul li {padding: 10px;}
 

  
  
  
  

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

.contentwrapper.fullwidthimage .contentcontainer {padding-top: calc(28% - 50px);}


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

header {overflow:visible; }
#mainmenu {  -webkit-transition: all 1s ease-in-out 0s;
  -moz-transition: all 1s ease-in-out 0s;
  -o-transition: all 1s ease-in-out 0s;
  transition: all 1s ease-in-out 0s;opacity:1;
  /*top:125px;*/ }
  
  
.scrolled header {height: 90px;overflow:hidden;}
.scrolled #mainmenu { opacity:0;/* display:none; height: 1px; top:-450px;*/}




.scrolled #logo {height: 80px; background-position: left 0px top 20px;}
.scrolled header .searchbutton {margin-top: 20px;}

.contentwrapper.breadcrumbs .contentcontainer, .contentwrapper.infoicons .contentcontainer, #search .contentcontainer { max-width: calc(100vw - 90px);margin:auto ;}
 
 
 .contentwrapper.infoicons.pageheader {position:absolute; top:250px; padding:0; }
 
 .contentwrapper.infoicons.pageheader.flowcontainer {position:static; }
 
 .contentwrapper.infoicons.pageheader.flowcontainer .contentcontainer {
 padding-bottom: 40px;
  padding-top: 50px;
 }
  
  
 .contentwrapper.infoicons.pageheader  .contentcontainer  { }
 
 .contentwrapper.breadcrumbs  + .contentwrapper,
/*muss auch funktionieren, wenn kein layout gesetzt und typo3 standard div als wrapper*/ 
.contentwrapper.breadcrumbs  + div   {padding-top: 50p; /* + 36*/ padding-top: 86px  !important; padding-top: 110px  !important; }

 footer .copyfooter p { float:left; padding-bottom: 20px;}
 footer .copyfooter nav { float:right; }
footer .copyfooter .contentcontainer:after {content : '';display: block;clear: both;}
}
 
 
 
@media all and (min-width: 1280px){
	
.top-box, .bottom-box { padding-bottom: 50%;}
	
/*footer .contentcontainer { padding: 0px 30px 0px 30px;}*/

.contentwrapper.breadcrumbs .contentcontainer, .contentwrapper.infoicons .contentcontainer , #search .contentcontainer { max-width: 1096px;margin:auto ;}


.themenslider .slide-box {width: 33.333333%; padding-bottom: 30px;}



	
	
.contentcol .ce-textpic.ce-left .ce-gallery {width:316px; width:286px; float:left;  margin:0px 22px 20px 0px;}
  .contentcol .ce-textpic.ce-left .ce-bodytext { padding: 0px 158px 0px 158px;  padding: 0px 0px 0px 111px;}
 
 
  .contentcol .ce-textpic.ce-right .ce-gallery {width:316px; width:286px; float:right;  margin:0px 0px 20px 22px;}
  .contentcol .ce-textpic.ce-right .ce-bodytext { padding: 0px 158px 0px 158px;padding: 0px 111px 0px 0px;  }
 


  .contentcol .ce-textpic.ce-left .ce-bodytext { padding: 0px 158px 0px 158px;  padding: 0px 111px 0px 111px;}
  
  .contentcol .ce-textpic.ce-right .ce-bodytext { padding: 0px 158px 0px 158px;padding: 0px 111px 0px 111px;  }	 

}
 
 
 
 

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


.highlights > div.highlight {  width: 440px; }
 
.contentcontainer {width: 1440px;margin:auto;padding: 0px 60px 0px 60px; }

header .contentcontainer  {padding: 0px 120px 0px 120px; }
.contentwrapper.breadcrumbs .contentcontainer , .contentwrapper.infoicons .contentcontainer, #search .contentcontainer{ max-width: 1324px;}

/*footer .copyfooter .contentcontainer {padding: 10px 0px 30px 0px !important; padding: 10px 20px 30px 20px !important;}*/
 

footer {min-height:600px; min-height:350px; position:relative;}
  
 
#page {min-height: calc(100vh - 840px) ;}
 
#pwrapper {padding-bottom:670px;}



.contentbox .boxheader  {left: 0px; }
.contentbox .close  {right: 0px; }
 
  
 

.contentcontainer  .colbox , .boxbg {width: 100%;  margin:auto; padding:50px 50px 50px 50px !important; border-radius:15px; }
 
 
/*footer .contentcontainer { padding: 0px 20px 0px 20px;}*/
 



.contentwrapper   {width: 100%; padding: 50px 0px 50px 0px;margin:auto;  }
.contentwrapper.breadcrumbs {width: 100%; padding: 0px 0px 0px 0px !important;margin:auto; /*margin-bottom: 80px;*/ }

.contentwrapper.breadcrumbs  + .contentwrapper,
/*muss auch funktionieren, wenn kein layout gesetzt und typo3 standard div als wrapper*/ 
.contentwrapper.breadcrumbs  + div  {padding-top: 50px; /* + 80 */padding-top: 130px !important;}
 


.contentwrapper.bottompad   { padding: 50px 0px 100px 0px  !important; }
.contentwrapper.toppad     { padding: 100px 0px 50px 0px  !important; }
.contentwrapper.bottompad.toppad   { padding: 100px 0px 100px 0px  !important; }
.contentwrapper.toppad.nobottompad {    padding:100px 0px 0px 0px  !important; }



.contentwrapper.smallbottompad   { padding: 50px 0px 30px 0px  !important; }
.contentwrapper.smalltoppad   { padding: 30px 0px 50px 0px  !important; }
.contentwrapper.smalltoppad.smallbottompad   { padding: 30px 0px 30px 0px  !important; }

.contentwrapper.smalltoppad.bottompad   { padding: 30px 0px 100px 0px  !important; }
 
.contentwrapper.nobottompad   { padding: 50px 0px 0px 0px  !important; }
.contentwrapper.notoppad   { padding: 0px 0px 50px 0px  !important; }
.contentwrapper.notoppad.nobottompad   { padding: 0px 0px 0px 0px  !important; }

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

 
.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;
}

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

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

section.imageteaser {height: 856px; }

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

 
.contentwrapper.fwimage {position:relative;}

.imagecontainer { position:absolute; z-index: 1; }

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

 .fwimage .textcol {position:absolute; z-index:2; top:200px; left: 50%;  
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);}

 
	   
.infobox { left: -33vw;  width: 33vw; }
}
 

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

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


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


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

 

.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 */
}
/*
    .ce-center .ce-outer { position: relative; float: right; right: 50%; }
    .ce-center .ce-inner { position: relative; float: right; right: -50%; }
   .ce-gallery img { display: block; }
    .ce-above .ce-bodytext { clear: both; }
    
    .ce-textpic, .ce-image, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div { overflow: hidden; }

    .ce-left .ce-gallery, .ce-column { float: left; }*/
    
/* default styles for extension "tx_frontend"*/

    .ce-align-left { text-align: left; }
    .ce-align-center { text-align: center; }
    .ce-align-right { text-align: right; }

    .ce-table td, .ce-table th { vertical-align: top; }

    .ce-textpic, .ce-image, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div { overflow: hidden; }

    .ce-left .ce-gallery, .ce-column { float: left; }
    .ce-center .ce-outer { position: relative; float: right; right: 50%; }
    .ce-center .ce-inner { position: relative; float: right; right: -50%; }
    .ce-right .ce-gallery { float: right; }

    .ce-gallery figure { display: table; margin: 0; }
    .ce-gallery figcaption { display: table-caption; caption-side: bottom; }
    .ce-gallery img { display: block; }
    .ce-gallery iframe { border-width: 0; }
    .ce-border img,
    .ce-border iframe {
        border: 2px solid #000000;
        padding: 0px;
    }

    .ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery {
        margin-bottom: 10px;
    }
    .ce-image .ce-gallery { margin-bottom: 0; }
    .ce-intext.ce-right .ce-gallery { margin-left: 10px; }
    .ce-intext.ce-left .ce-gallery { margin-right: 10px; }
    .ce-below .ce-gallery { margin-top: 10px; }

    .ce-column { margin-right: 10px; }
    .ce-column:last-child { margin-right: 0; }

    .ce-row { margin-bottom: 10px; }
    .ce-row:last-child { margin-bottom: 0; }

    .ce-above .ce-bodytext { clear: both; }

    .ce-intext.ce-left ol, .ce-intext.ce-left ul { padding-left: 40px; overflow: auto; } 
    
    
    
    /* Headline 
    .ce-headline-left { text-align: left; }
    .ce-headline-center { text-align: center; }
    .ce-headline-right { text-align: right; }*/

    /* Uploads
    .ce-uploads { margin: 0; padding: 0; }
    .ce-uploads li { list-style: none outside none; margin: 1em 0; }
    .ce-uploads img { float: left; padding-right: 1em; vertical-align: top; }
    .ce-uploads span { display: block; } */

    /* Table
    .ce-table { width: 100%; max-width: 100%; }
    .ce-table th, .ce-table td { padding: 0.5em 0.75em; vertical-align: top; }
    .ce-table thead th { border-bottom: 2px solid #dadada; }
    .ce-table th, .ce-table td { border-top: 1px solid #dadada; }
    .ce-table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0,0,0,.05); }
    .ce-table-bordered th, .ce-table-bordered td { border: 1px solid #dadada; } */

    /* Space 
    .frame-space-before-extra-small { margin-top: 1em; }
    .frame-space-before-small { margin-top: 2em; }
    .frame-space-before-medium { margin-top: 3em; }
    .frame-space-before-large { margin-top: 4em; }
    .frame-space-before-extra-large { margin-top: 5em; }
    .frame-space-after-extra-small { margin-bottom: 1em; }
    .frame-space-after-small { margin-bottom: 2em; }
    .frame-space-after-medium { margin-bottom: 3em; }
    .frame-space-after-large { margin-bottom: 4em; }
    .frame-space-after-extra-large { margin-bottom: 5em; }*/

    /* Frame
    .frame-ruler-before:before { content: ''; display: block; border-top: 1px solid rgba(0,0,0,0.25); margin-bottom: 2em; }
    .frame-ruler-after:after { content: ''; display: block; border-bottom: 1px solid rgba(0,0,0,0.25); margin-top: 2em; }
    .frame-indent { margin-left: 15%; margin-right: 15%; }
    .frame-indent-left { margin-left: 33%; }
    .frame-indent-right { margin-right: 33%; } */






#CookieDeclarationUserStatusPanel {background-color: #FFF1E5; border-radius: 15px; padding: 10px; margin: 20px 0px 20px 0px !important; }


#CookieDeclarationUserStatusLabel > div {margin: 20px 0px 20px 0px; font-weight: bold; font-size: 20px;}

#CookieDeclarationChangeConsent { margin: 20px 0px 20px 0px !important; }

#CookieDeclarationChangeConsent > a { font-weight: bold; font-size: 20px; text-decoration:underline; }

#CybotCookiebotDialogPoweredbyCybot {display:none !important; }



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

#CybotCookiebotDialogPoweredbyLink {min-width: 250px;}

#CybotCookiebotDialogTabContent {
	margin: 0 3em;
}

}



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


#CybotCookiebotDialogTabContent{
	margin: 0 4em;
}

}





