/*Basics*/

:root {
    --darkbrown: #562e2e;
    --blue: #4D9DD7;
    --iceblue: #99B5C6;
    --orange: #F34607;
}
/* open-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-300.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-300.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-300.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-italic.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-italic.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-500.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-500.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-600.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-600.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-600.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-700.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-800.eot'); /* IE9 Compat Modes */
  src: url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-800.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-800.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-800.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/files/theme/layout/fonts/opensans/open-sans-v40-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
}

*{
    box-sizing: border-box;
}

body{
   font-family: 'Open Sans',sans-serif;
    font-weight: 300;
    font-size: 18px;
    color:var(--darkblue);
    line-height: 1.8;
}

.mod_article:not(.fullwidth) .ce_kachelelement .notfloat_right > .inside{
    padding-left: 0;
}

h1, h2, h3, h4, h5, h6, .headlinecontainer > *,.footer_top .name{
     font-family: 'Open Sans',sans-serif;
font-weight: 300;
letter-spacing: inherit;
line-height: 1.3;
}
h1, .h1 {
font-size: 46px;
}

h2,.article_1.full .teaserheadline{
    font-size: 32px;
    line-height: 1.4;
}

.article_1.full .teaserheadline{
    margin-bottom: 20px;
    max-width: 75%;
}

h3{
    font-size: 20px;
	color:var(--darkblue);
	padding-top:1rem;
}
h4{
    font-size: 18px;
	color:var(--darkblue);
}

strong,b,.ce_teamListZitat .caption .name,.name,.ce_teaserList .headline,.ce_form legend,.cardholder .h2{
    font-weight: 500;
}

header {
  position: fixed;
  width: 100%;
    z-index: 999;
    font-size: 14px;
    background: white;
}

p a{
   text-decoration: underline;
    color: var(--darkbrown);
}

header > .inside{
   max-width: 1200px;
    margin: 0 auto;
    
    padding: 25px 2rem 36px;
    box-sizing: border-box;
} 

header > .inside .holder > .table {
  background: var(--darkblue);
  color: white;
  padding: 20px 2rem;
  box-sizing: border-box;
}
#herosection{
	margin-top:122px;
}


#main .mod_article > .holder > .block{
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
    box-sizing: border-box;
}

footer{
    background: var(--darkbrown);
    color: white;
 
}

footer > .inside{
    max-width: 1200px;
    margin: 0 auto;
    padding: 3rem 2rem;
}

.card{
    position: relative;
	margin: .5rem 0 1rem 0;
	background-color: #fff;
	/*-webkit-transition: -webkit-box-shadow .25s;
	transition: -webkit-box-shadow .25s;
	transition: box-shadow .25s;
	transition: box-shadow .25s, -webkit-box-shadow .25s;
    
    box-shadow: 0 10px 30px 0 rgba(2,15,73,0.25);
    box-shadow: 0px 5px 21px -10px rgba(2,15,73,0.25);*/
}
.card:after{
	position: absolute;
z-index: -1;
background: url(/files/theme/layout/images/icons/gkm/schatten.svg) no-repeat;
display: block;
width: calc( 100% + 39px );
left: -19px;
bottom: -41px;
content: '';
height: 260px;
background-size: contain;
}
.ce_teamList .card.filterItem {
    box-shadow: 0px 5px 30px -10px rgba(2,15,73,0.15);
}
.ce_teamList .card.filterItem .text{
	padding-bottom: 2rem;
}
.ce_pageteaser.block,
.mod_newslist .block {
	overflow: visible;
}
.bildmitschatten .bgImage {
	box-shadow: 0 10px 30px 0 rgba(2,15,73,0.25);
}
#herosection .ce_teamMember .cardholder > .inside,
.kontakt #herosection .cardholder > .inside{
box-shadow: 0 10px 30px 0 rgba(2,15,73,0.25);
     box-shadow: 0px 5px 21px -10px rgba(2,15,73,0.25);
	height:auto;
}

.card .holder{
    display: table;
    width: 100%;
    height: 100%;
}
.parent_team .tabcontrol_tabs {
	padding-top:4rem;
	border-bottom: 1px solid black;
	margin-bottom: 3.5rem;
}

.card .holder > .row{}


.card .holder > .row > *{}

.card .holder .caption {
  padding: 2rem;
  box-sizing: border-box;
    height: 100%;
}


.mod_joblist .teasergrid > div {
  margin: 10px -20px -20px;
  display: table;
  min-width: 100%;
  padding: 10px;
  box-sizing: border-box;
}


.arcname,.facts,.ce_kachelelement .listitem > * > .title {
  font-weight: 800;
  color: var(--darkblue);
}

.arcname {
  margin-bottom: 2rem;
  font-size: 18px;
  line-height: 1.5;
}

.facts{
    font-size: 14px;
    line-height: 1.4;
}

.darkblue{
     color: var(--darkblue);
}

.facts .art, .blue{
    color:var(--blue);
}


.facts .location,.orange{
    color:var(--orange);
}

.ce_kachelelement .listitem > * {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.2;
}

.ce_kachelelement .listitem > .icon{
    width: 140px;
}

.ce_kachelelement .listitem > .text{
    width: calc(100% - 150px);
}




.twocol .row > *{
    width: 50%;
}

.twocol .row > *:first-of-type{
    padding-right: 2rem;
}

.twocol .row > *:last-of-type{
    padding-left: 2rem;
}
.twocol .row > .mediaholder:last-of-type{
    padding-left: 7rem;
}

.section{
    padding: 4rem 0;
}

.factlist > *{
    margin-bottom: 20px;
}

.factlist > *:last-of-type{
    margin-bottom: 0;
}

.jobfacts .holder{
    padding: 2rem;
}

.musthaves_benefits .block{
    margin-bottom: 2rem;
}

.musthaves_benefits .block:last-of-type{
    margin-bottom: 0;
}

.maillink a {
  background: var(--darkblue);
  color: white;
  display: table;
  margin: 0 auto;
  line-height: 1;
  padding: 10px 20px;
}

.musthaves_benefits ul li{
    padding-left: 30px;
    margin-bottom: 1rem;
    line-height: 1.5;
}

.musthaves_benefits ul li::before {
  content: '';
  background: url(/files/theme/user/images/c-check.svg) no-repeat scroll 50% 50% transparent;
    background-size: auto;
  display: inline-block;
  width: 20px;
  height: 20px;
  background-size: contain;
  vertical-align: middle;
  margin-left: -30px;
  margin-right: 10px;
}

#main .mod_article > .block{
    padding: 6rem 0;
}



#main .mod_article:first-of-type > .block{
    padding: 3rem 3.5rem 4rem;
}



#main .mod_article > .block.reader{
    padding: 0;
    margin: 0;
    max-width: none;
}

.mod_productdetails .imagecontainer > img{
    width: 100%;
}

.twocol .row > .ce_text:first-of-type, .jobfacts .holder{
    padding-left: calc((100vw - 1200px) / 2);
}

.twocol .row > .ce_text:last-of-type{
    padding-right: calc((100vw - 1200px) / 2);
}


.twocol .row > .ce_text:first-of-type .inside, .jobfacts .holder .inside{
    padding-left: 2rem;
}

.twocol .row > .ce_text:last-of-type .inside{
padding-right: 2rem;
}

#herosection .row > div > div > div{
	position:relative;
	z-index:500;
}
#herosection .caption .inside > div{
    padding-top: 20px;
}


/*.reader #herosection{
  background:url(/files/theme/user/images/herojob.jpg) no-repeat scroll 50% 0% transparent;
    background-size:cover;
    position: relative;

}*/

/*.reader #herosection > .inside {
  position: absolute;
  height: 100%;
  width: 100vw;
  left: 0;
  top: 0;
  z-index: 999;
  box-sizing: border-box;
  max-width: none;
}


.reader #herosection > .inside .text{
  width: 50%;
  padding-right: 4rem;
  box-sizing: border-box;
  padding-bottom: 8rem;
}
*/


.herocaption > .inside {
  max-width: 1200px;
  margin: 0 auto;
  padding: 4rem 2rem;
  width: 100%;
  box-sizing: border-box;
}


.white{
    color: white;
}


.readmore,button.submit  {
  display: table;
  margin-top: 2rem;
    cursor: pointer;
}

.linkholder .readmore,button.submit,.contao-cookiebar .cc-btn {
  border: 1px solid gray;
  line-height: 1;
  padding: 15px 2rem;
  border-radius: 2rem;
    color: gray;
	font-size: 18px;
}

.slideout {
  background: white;
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  color: var(--darkblue);
  display: none;
box-shadow: 0 10px 30px 0 rgba(2,15,73,0.25);
}

.slideout .inside{
    padding: 22px 0 35px 3px;
}
.slideout .inside a:hover{
color:var(--orange);
}

.menubtn .icon {
  content: '';
  display: block;
  height: 20px;
  width: 20px;
  background: url(/files/theme/user/images/menu.svg) no-repeat scroll 50% 50% transparent;
  background-size: contain;
}

.menubtn.open .icon {
   background: url(/files/theme/user/images/cross.svg) no-repeat scroll 50% 50% transparent;
  background-size: contain;  
}

.link a > span:after {
  content: '';
  display: inline-block;
  height: 20px;
  width: 20px;
  background: url(/files/theme/user/images/extern.svg) no-repeat scroll 50% 50% transparent;
    background-size: auto;
  background-size: contain;
  vertical-align: middle;
  margin-left: 5px;
}

header .row > .right > *{
    display: inline-block;
    vertical-align: middle;
}

.headerleft .mod_logo{
max-width: 210px;
}

.headerleft > .mod_logo{
    width: 100%;
}
header .row .center{
    font-weight: 800;
    font-size: 14px;
}

.headerright > .menuebox{
    float: right;
}

.menu{

  margin-right: 20px;

}


.menubtn{
    cursor: pointer;
}

header .holder{
    position: relative;
    font-size: 16px;
}

.contactslides {
  position: fixed;
  right: 0;
  top: calc(100vh - (100vh/2));
    z-index: 9999;
}


.contactslides > * {
  background: #F34607;
  color: white;
  display: block;
  margin-bottom: 5px;
  padding: 10px 20px;
  position: relative;
  right: calc(-1 * (100% - 60px));
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
}
.contactslides > *:hover {
    right: 0;
}

.contactslides > .top{
    background: transparent;
    padding: 0;
}

.contactslides > .top:hover{
   right: calc(-1 * (100% - 60px));
}

.contactslides .phone a > span:before {
  content: '';
  display: inline-block;
  height: 20px;
  width: 20px;
  background: url(/files/theme/user/images/icons/letter.svg) no-repeat scroll 50% 50% transparent;
    background-size: auto;
  background-size: contain;
  vertical-align: middle;
  margin-right: 20px;
}

.contactslides .external a > span:before {
  content: '';
  display: inline-block;
  height: 20px;
  width: 20px;
  background: url(/files/theme/user/images/extern.svg) no-repeat scroll 50% 50% transparent;
    background-size: auto;
  background-size: contain;
  vertical-align: middle;
  margin-right: 20px;
}

.mod_joblist .teasergrid > div > div{
   /* background: url(/files/theme/user/images/bgimage.jpg) no-repeat scroll 50% 50% transparent;
    background-size: cover;*/
}
.mod_joblist .teasergrid > div > div .caption {
    background: white;
}
.mod_joblist .teasergrid > div > div .caption,
.mod_joblist .teasergrid > div > div:hover .caption .title > *,
.mod_joblist .teasergrid > div > div:hover .caption .title > .plus {
      transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
}


.mod_joblist .teasergrid > div > div:hover .caption{
    background: transparent;
}
.mod_joblist .teasergrid > div > div:hover .caption .title > *{
opacity: 0;
}

.mod_joblist .teasergrid > div > div:hover .caption .title > .plus{
    opacity: 1;
}


.card .holder .caption{
    padding: 20px 2rem;
}

.bgImage  >  img{
    width: 100%;
}

.ce_kachelelement .mediaholder > .bgImage{
    position: relative;
    line-height: 0;
    height: 100%;
    width: 100%;
}


#bewerben .ce_kachelelement .mediaholder > .bgImage{
    /*max-width: 400px;*/
    margin: 0 auto;
}

.ce_kachelelement{
    overflow: visible;
}

.ce_kachelelement .row > *:last-of-type .bgImage:after {
  content: '';
  background: url(/files/theme/user/images/overlay_right.svg) no-repeat scroll 0% 100% transparent;
    background-size: auto;
  height: 100%;
  width: 200px;
  display: block;
  position: absolute;
  bottom: -2rem;
  right: 0;
  background-size: contain;
}


.fullwidth.mod_article.block{
    overflow: visible;
    position: relative;
	
}


.links li{
    float: left;
}

.links li span,
.ce_hyperlink a {
  color: white;
  background: var(--darkblue);
  display: block;
  line-height: 1;
  padding: 15px;
  margin-left: 10px;
    font-size: 14px;
font-weight: 600;
}
.ce_hyperlink a {
display:inline-block;
}

.links li.first span {
    margin-left: 0;
}

.links li.first + li > a > span{
    background: var(--orange);
}



#main .mod_article#header-impressum > .block {
padding: 12rem 2rem 2rem;
}
.impressum #main .mod_article > .ce_text.block {
padding: 3rem 2rem 2rem;
}





footer .vmiddle > *{
  vertical-align: middle;
    display: inline-block;
}

footer .vmiddle > img{
    margin-right: 15px;
}

footer > .inside > .footer_top{
    position: relative;
	max-width:100%;
}



.social img {
  height: 20px;
  width: auto;
}

#container{
    padding-bottom: 0;
}

#herosection .headlinecontainer > *{
    line-height: 1.4;
}





.links li span:after{
     content: '';
  display: inline-block;
  height: 20px;
  width: 20px;
  background: url(/files/theme/user/images/externarrow.svg) no-repeat scroll 50% 50% transparent;
    background-size: auto;
  background-size: auto;
  background-size: contain;
  vertical-align: middle;
  margin-left: 5px;

}
.links li.first span:after{
     content: '';
  display: inline-block;
  height: 20px;
  width: 20px;
  background: url(/files/theme/user/images/linkarrow.svg) no-repeat scroll 50% 50% transparent;
    background-size: auto;
  background-size: auto;
  background-size: contain;
  vertical-align: middle;
  margin-left: 5px;

}

#jobs,#video{
    position: relative;
    overflow: visible;
}

#jobs:after{
 content: '';
  background:url(/files/theme/user/images/ecke_jobs.svg) no-repeat scroll 100% 50% transparent;
  position: absolute;
  width: 100%;
  display: table;
  height: 85px;
  background-size: contain;
  z-index: 1;
  bottom: 10rem;
  right: 0;

}


#video:after{
 content: '';
  background:url(/files/theme/user/images/ecke_video.svg) no-repeat scroll 100% 50% transparent;
  position: absolute;
  width: 40px;
  display: table;
  height: 85px;
  background-size: contain;
  z-index: 1;
  bottom: -2rem;
  left: 0;

}


#bewerben:before {
  content: '';
  background: url(/files/theme/user/images/ecke_keyfacts.svg) no-repeat scroll 100% 50% transparent;
    background-size: auto;
  position: absolute;
  width: 40px;
  display: table;
  height: 85px;
  background-size: contain;
  z-index: 1;
  top: 0;
  left: 0;
}


header .row > .right{
    text-align: right;
}

.ce_iconList {
  font-weight: 600;
  line-height: 1.4;
  font-size: 18px;
}

.iconlist .icon{
    height: 110px;
    width: 140px;
}

.ce_iconList .icon{
height: 140px;
    overflow: hidden;
    width: 140px;
}


.ce_iconList .icon img{
 height: 140px;
    width: 140px;
    max-width: none;
}

.iconlist .icon img{
    margin-top: -15px;
}


#main #keyfacts.mod_article > .block{
    padding-bottom: 0;
}

#main .mod_article > .block.ce_iconList{
    padding: 2rem;
}



footer > .inside > *{
    max-width: 1200px;
   
    margin: 0 auto;
    box-sizing: border-box;
    
}


#herosection img {
opacity:1 !important;
height:auto;
width: 100%;
max-width:none;
    min-height: 280px;
    object-fit: cover;
}

.safari #herosection .table{
    display: block;
}


.index #herosection .table > .row{
   display: table;
height: 100% !important;
max-width: 1200px;
padding: 0;
box-sizing: border-box;
margin: 0 auto;
    width:100%;
}
.safari #herosection .ce_textBox .table > .row {
height:auto !important;
}

.safari #herosection .caption .inside > div{
    max-width: none;
margin: 0;
}

.twocol .row > .ce_text:first-of-type > .inner{
    padding-left: 2rem;
}

.mod_joblist{
    overflow: visible;
}

.factlist > * > .title{
    font-weight: 800;
}

.layout_full .ce_iconList{
    max-width: 1200px;
    margin: 0 auto;
    padding: 3rem 2rem 0;
    box-sizing: border-box;
    width: 100%;
}

.plus{
    text-align: center;
	margin-bottom:2rem;
}

.mod_joblist .teasergrid > div > div .caption .title{
    position: relative;
}

.mod_joblist .teasergrid > div > div .caption .title::after {
  content: '';
  background: url(/files/theme/layout/images/icons/icons/Plus-Icon.svg) no-repeat scroll 100% 50% transparent;
    background-size: auto;
  background-size: auto;
  background-size: auto;
  position: absolute;
  width: 50px;
  display: table;
  height: 55px;
  background-size: contain;
  z-index: 1;
  top: 50%;
  right: 0;
  margin-top: -25px;
    display: none;
}
.mod_joblist .teasergrid > div > div {
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
}
.mod_joblist .teasergrid > div > div:hover {
	-webkit-transform: perspective(1000px) translate3d(0,0,50px);
	transform: perspective(1000px) translate3d(0,0,50px);
}

.col{
    column-count: 2;
    column-gap: 4rem;
}
.footertop a {
text-decoration:underline;
}
.footertop a:hover {
text-decoration:none;
}
#herosection .mod_pageImage > .inside .bgImage {
	max-width: 1920px;
    z-index: 5;
    position: relative;
    margin: 0 auto;
}

#main .mod_article > .ce_hyperlink.block{
	padding:2rem 0;
}
#header .link .title .label {
display:inline;
}


.mod_changelanguage{
    margin-left: 10px;
}

.ce_kachelelement {
    overflow: visible;
}

.ce_kachelelement .teasergrid > div{
    margin: 0 -30% 0 0;
    overflow: hidden;
    padding: 25px;
}

.ce_kachelelement .teaserheadline {
     font-family: 'Open Sans',sans-serif;
  font-weight: 700;
  letter-spacing: inherit;
  line-height: 1.2;
  font-size: 23px;
  margin-bottom: 10px;
}

.ce_kachelelement .datetime {
  color: var(--orange);
  font-weight: 600;
  font-size: 15px;
}


.ce_kachelelement .teasergrid > .itemsperRow_2 > .item + .item{
    opacity: 0.3;
}


.ce_kachelelement .teaserimage{
    line-height: 0;
}

.ce_kachelelement .teaserbox{
    padding: 10px 20px;
}

header .mod_navigation ul li:hover > a, header .mod_navigation ul li.active strong, header .mod_navigation ul li.trial > a{
    color: var(--orange);
}

.pushy{
    background: #f1f1f1;
    z-index: 9999991;
	width:calc( 50vw - 170px )
}
.pushy-right {
    transform: translate3d(calc( 50vw - 170px ), 0, 0);
}
.pushy .inside {
	max-width: 600px;
}

.pushy .mod_navigation li{
    border-bottom: 1px solid white;
}

.pushy .mod_navigation li > a, .pushy .mod_navigation li > strong, .pushy .mod_navigation li > span{
    padding: 20px;
    color: black;
    font-size: 36px;
    display: block;
    padding-left: 15%;
}
.pushy li > strong{
    font-weight: 300;
    color: black;
}


.pushy-content {
  margin-top: 99px;
  border-top: 1px solid white;
}

footer .mod_customnav.columized ul{
  column-count: 2;
  column-width: 200px;
}

.footertop_right{
    width: 300px;
}
.footer_bottom > .inside{
    padding: 4rem 0 0;
}




#main .mod_article > .block.padded_left .textholder,
#main .mod_article > .block.padded_left.ce_introtext .inside{
    padding-left: 15%;
	max-width: 990px;
}
.ce_teamListZitat .teasergrid {

	padding-left: 8%;
}
.noPageImage #herosection .mod_article > .block.padded_left:not(.ce_ownSlider) .text{
    padding-left: 18.5%;
}

#main .mod_article > .block.padded_right .textholder{
    padding-right: 7%;
}
.noPageImage #herosection .mod_article > .block.padded_right:not(.ce_ownSlider) .text{
    padding-right: 11%;
}

.teasergrid > div{
    margin: 0 -15px -20px -15px
}

.mod_article.bgColored{
    background: #f1f1f1;
}
.ce_teamListZitat .teasergrid > div > *{
   margin-bottom: 4rem; 
}
.ce_teamListZitat .teasergrid > div > * {
	margin-bottom: 6rem;
}

.ce_teamListZitat .teasergrid > div > *:last-of-type{
   margin-bottom: 0; 
}

.ce_teamListZitat .teasergrid > * > * .row > .zitat{
    width: calc( 50% - 4rem );
}
.ce_teamListZitat .teasergrid > * > * .row > a{
    width: 50%;
}
.ce_teamListZitat figure img{
    width: 100%;
    object-fit: cover;
}

.ce_teamListZitat .zitat,blockquote{
    padding: 0 2rem 2rem 2rem;
    font-size: 28px;
    line-height: 1.65;
}
#main blockquote{
    padding: 0;
    margin-bottom: 20px;
    display: block;
}

body:not(.index) #main > .inside{
  
    background: transparent;
   
}
body:not(.index) #main > .inside .mod_article:first-of-type{
    overflow: visible;
}


body.pageImage:not(.index) #main > .inside .mod_article:first-of-type > .block{
    padding: 4rem;
}

body:not(.index) #main > .inside .mod_article:first-of-type > .block.noPadTop{
    padding-top: 0;
}

body:not(.index) #main > .inside .mod_article:first-of-type > .block.noPadBottom{
    padding-bottom: 0;
}

body:not(.index) #main > .inside .mod_article:first-of-type > .block.padTopSmall{
    padding-top: 3rem;
}

body.pageImageSite:not(.index) #main > .inside .mod_article:first-of-type > .block:first-of-type{
    
      margin-top: -6rem;
    background: white;

}

body:not(.index) #main > .inside .mod_article > .block{
   /* margin-left: 30%; */
}
     

.tabcontrol_tabs > ul{
    display: table;
    margin-bottom: 2rem;
}

.tabcontrol_tabs > ul > li,.ce_teamList .filter button{
float: left;
  padding: 20px 0;
  display: block;
  line-height: 1;
  margin-right: 40px;
  cursor: pointer;
	color:var(--darkbrown);
}
.tabcontrol_tabs > ul > li{
  margin-right: 80px;
}

.ce_teamList .filter button{
     margin-right: 5%;
	font-weight: 300;
}

.ce_teamList .filter button:last-of-type{
     margin-right: 0;
}
.tabcontrol_tabs {
    color: var(--darkbrown);
}
.tabcontrol_tabs > ul > li:hover,.ce_teamList .filter button:hover,.ce_teamList .filter button.is-checked,.tabcontrol_tabs > ul > li.selected{
text-decoration: underline;
}

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


.teasergrids > div > *{
    display: table;
}

.ce_teamList .text{
    background: white;
    padding: 2rem 3rem 3rem;
}

.ce_teamList .text h4{
    margin-top: 0;
}
.ce_teamList .desc {
	margin-top: 1rem;
}

.ce_teamList .card:after {
bottom: -57px;
height: 320px;
}

.avatar{
   line-height: 0;
  width: calc( 100% - 20px );
  box-sizing: border-box;
  overflow:hidden;
}

.ce_teamList .filter{
    display: table;
    width: 100%;
    margin-bottom: 6rem;
}

button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: none;
    background: transparent;
    line-height: 1;
    padding: 0;
}


body:not(.index):not(.noPageImage) #herosection  {
  max-width: 1500px;
margin: 132px auto 0;
}


#herosection .ce_teamMember,#herosection .ce_textBox{
    max-width: 1200px;
    margin: 0 auto 4rem !important;
    padding: 0 2rem;
    box-sizing: border-box;
}

#herosection .ce_teamMember .row > *,#herosection .ce_textBox .row > *{
    width: 50%;
}
#herosection .ce_teamMember .cardholder,#herosection .ce_textBox .cardholder{
    vertical-align: bottom;
    width: 43%;
}

#herosection .ce_teamMember .cardholder > .inside,#herosection .ce_textBox .cardholder > .inside{
    background: white;
    padding: 2rem;
    margin-left: -12%;
}

#herosection .ce_teamMember .row > .mediaholder, #herosection .ce_textBox .row > .mediaholder{
    width: 57%;
}

#herosection .ce_teamMember .row > .mediaholder .imageholder,#herosection .ce_textBox .row > .mediaholder .imageholder{
    margin-bottom: 4rem;
}
.noPageImage #herosection .mod_article > .block.ce_teamMember {
		max-width: 990px;
	}

#herosection .ce_teamMember .cardholder > .inside > div{
    margin-bottom: 2rem;
}

#herosection .ce_teamMember .cardholder > .inside > div:last-of-type,#herosection .ce_textBox .cardholder > .inside > div:last-of-type{
    margin: 0;
}

#herosection .ce_teamMember .cardholder > .inside .download,#herosection .ce_textBox .cardholder > .inside .download{
    text-align: right;
}





#main .mod_article > .ce_introtext{
    font-size: 22px;
    line-height: 1.5;
    max-width: 1200px;
}

#main .mod_article > .ce_introtext > *{
    padding-right: 10%;
}
body.parent_team:not(.index) #main > .inside .mod_article:first-of-type > .block{
    margin-top: 0;
}

body.parent_team:not(.index) #main > .inside .mod_article > .block{
   /* margin-left: 30%; */
}


body:not(.index) #main > .inside .mod_article:first-of-type > .block.noPadBottom {
    padding-bottom: 0;
}

.text ul{
    padding-left: 14px;
}

.tabcontrol_panes .text ul > li{
    margin-bottom: 2rem;
}
.text ul {
    margin-bottom: 2rem;
}
.tabcontrol_panes .text ul {
    margin-bottom: 0;
}

.text ul > li:before {
  content: '•';
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5rem;
  margin-left: -14px;
}

#herosection{
    background: #f1f1f1;
}

.ce_pageteaser .headlinecontainer{
    margin-bottom: 3rem;
}

.ce_pageteaser .teasergrid .text, .layout_latest .teaserbox{
    padding: 32px 28px 40px;
}
.ce_pageteaser .teasergrid .textItem .text {
	padding-bottom:10px;
}
.ce_pageteaser .teasergrid .text{
    display: table;
    width: 100%;
}
.ce_pageteaser .teasergrid .imageItem .text,
.ce_teamList .text,
.ce_teamListZitat .caption{
z-index:5;
background:white;
position:relative;
}

.ce_pageteaser .teasergrid h2,.layout_latest .teaserbox .teaserheadline{
    margin: 0;
    line-height: 1.3;
    font-size: 20px;
	font-weight:400;
	padding-top:10px;
}
.ce_pageteaser .teasergrid .imageItem h2 {
padding-top:0;
}

.ce_pageteaser .teasergrid .textItem h2,.layout_latest .teaserbox .teaserheadline{
    margin-bottom: 20px;
}


.ce_pageteaser .teasergrid .textItem > .inside, .layout_latest .teaserbox,
.ce_pageteaser .teasergrid .textItem{
    border-top: 1px solid;
	transition: all 0.6s;
}

.ce_pageteaser .teasergrid .textItem:hover, .layout_latest .teaserbox:hover{
    color: white;
    background: var(--darkbrown);
}
.article_1.full .layout_latest .teaserbox:hover{
	color:inherit;
	background: none;
}

.ce_pageteaser .teasergrid .textItem .arrow svg,
.layout_latest .teasercontent .arrow svg,
.layout_latest .teasercontent .arrow svg {
	opacity: 0;
}
.ce_pageteaser .teasergrid .textItem .arrow,
.layout_latest .teasercontent .arrow,
.article_1.full .teasercontent:hover .arrow{
	background: url(/files/theme/layout/images/icons/gkm/Arrow.svg) no-repeat;
	background-size: contain;
}
.ce_pageteaser .teasergrid .textItem:hover .arrow,
.layout_latest .teasercontent:hover .arrow{
	background: url(/files/theme/layout/images/icons/gkm/Arrow-white.svg) no-repeat;
	background-size: contain;
}
.article_1.full .layout_latest .teaserbox {
padding-left: 7px;
}


.article_1.full{
    width: 100%;
    float: none;
    margin: 0 10px 2rem;
    padding-top: 2rem;
}
.article_1.full .teaser{
	max-width: 990px;
}
.article_1.full a:hover,
.pushy .mod_navigation a:hover{
	color: var(--darkbrown);
}

.ce_teamListZitat .caption{
    line-height: 1.5;
}

.pushy-open-left .pushy-content, .pushy-open-right .pushy-content{
    margin-top: 0;
}

.pushy .menuebox{
    height: 101px;
    display: table;
    width: 100%;
    padding: 55px 43px;
    box-sizing: border-box;
    border-bottom: 2px solid white;
    padding-left: 15%;
}

.pushy .menuebox > *{
    display: table-cell;
    width: 50%;
    vertical-align: middle;
}
.line{
	background: #73787c;
	width:32px;
}
.line:nth-child(2) {
top: 12px;
}
.line:nth-child(3) {
top: 24px;
}
.active .hamburg .line:nth-child(1){
   transform: translateY(6px) rotate(-45deg);
}

.active .hamburg .line:nth-child(2){
   opacity:0;
}

.active .hamburg .line:nth-child(3){
   transform: translateY(-17px) rotate(45deg);
}
.openBtn{
	margin-left: 3.3rem;
	margin-top:2px;
}
label.hamburg {
	width:32px;
	height: 26px;
}

.pushy-content .mod_customnav{
    padding-top: 4rem;
}

body:not(.index) #main > .inside .mod_article:first-of-type > .block{
    position: relative;
    overflow: visible;
}
body:not(.index) #main > .inside .mod_article:first-of-type > .block:after{
    content: '';
    background: white;
    position: absolute;
    top: 0;
    right: -100%;
    height: 100%;
    width: 100%;
}

body:not(.index) #main > .inside .mod_article:first-of-type > .block.maxWidth, body:not(.index) #main > .inside .mod_article > .block.maxWidth,
body:not(.index) #main .mod_article > .ce_introtext.block{
    max-width: 990px;
	padding-left: 5%;
}

.ce_accordion .toggler {
  font-size: 36px;
  padding: 40px 0;
    position: relative;
    cursor: pointer;
    border-top: 1px solid black;
	font-weight: 400;
}
.tabcontrol_panes,
#stellenangebote .ce_accordion:last-of-type .toggler,
#stellenangebote .ce_accordion:last-of-type .accordion{
	border-bottom: 1px solid black;
}
.ce_accordion .ui-icon{
    position: absolute;
    right: 0;
}

.ce_accordion .ui-icon:before {
  content: '+';
  height: 0.8rem;
  width: 23px;
  display: inline-block;
  vertical-align: baseline;
  margin-right: 5px;
	font-size: 50px;
	margin-top: -14px;
	font-weight:300;
}

.ce_accordion .active .ui-icon:before {
   content: '–'; 
	margin-top: -18px;
}
.ce_accordion .toggler.active {
	border-bottom: 1px solid black;
}

.ce_accordion .accordion > div{
    padding: 4rem 0;
	max-width: 800px;
}
.textKachel.filterItem .inside{
    height: 100%;
}


.textKachel.filterItem .inside .holder{
    padding: 2rem;
    text-align: left;
}

.textKachel.filterItem .inside .holder .headlinecontainer > *{
    font-size: 55px;
}

.textKachel.filterItem .inside .holder .headlinecontainer{
    margin-bottom: 10%;
}
.figure{
    line-height: 0;
}
.ce_teaserList {
    overflow: visible;
}

.ce_teaserList .caption{
   display: table;
  position: relative;
  width: 100%;
    max-width: 450px;
  height: auto;
  bottom: 0;
  background: white; 
    margin:-4rem 0 -4rem 4rem;
}

.ce_teaserList .caption.left{
    margin:-4rem 0 -4rem -4rem;
}
.ce_teaserList .caption > .inside{
    padding: 30px;
}

.itemrow > .inside{
    width: 100%;
    display: table;
}

.itemrow > .inside .holder.right{
  float: right;
    width: 50%;
    padding-left: 2rem;
}

.itemrow > .inside .holder.left{
  
    width: 50%;
    padding-right: 2rem;
}

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

#main .mod_article > .block.ce_teaserList{
    padding-bottom: 10rem;
}

#main .mod_article > .block.ce_accordion{
    padding: 0;
    box-sizing: border-box;
   border: none;
}

.ce_form .widget > label{
    display: none;
}

.ce_form .widget.widget-textarea > label{
    display: block;
    margin-bottom: 10px;
}

.ce_form .widget-checkbox legend{
    display: none;
}

.submit{
    float: none;
    color: inherit;
}
.widget.widget-text input {
  background: white;
  border-bottom: 1px solid #d1d1d1 !important;
  padding: 10px 0;
  
}

.widget.widget-text input,.widget.widget-textarea textarea,.ce_form .widget.widget-textarea > label,.ce_form .widget.widget-upload {
    font-size: 16px;
}

.ce_form .widget.widget-upload {
    font-weight: 300;
}

.widget.widget-textarea textarea {
    min-width: 100%;
    max-width: 100%;
    min-height: 250px;
}

span.mandatory{
    display: inline;
    color: red;
}

.ce_form.fancybox-content{
    max-width: 990px;
}

body .fancybox-bg{
    background: whiteSmoke;
}

.ce_kachelelement .table, .ce_kachelelement .table > .row, .ce_kachelelement .table > .row > *{
    height: 100%;
}

.noPageImage #herosection .mod_article > .block:not(.ce_ownSlider),
#herosection .ce_textBox {
    margin: 4rem auto;
}


.tabcontrol_panes .pane_1 > .panes{
  
}
.headerright > .inside,.ce_pageteaser .readmore > .arrow,.jumpToURL .readmore,.layout_latest .readmore > .arrow,.ce_teamMember .download > .readmore {
    display: table;
    float: right;
}
.jumpToURL .readmore {
text-align:right;
}

.headerright > .inside > *{
    display: inline-block;
    float: none;
    vertical-align: middle;
}

.headerright > .inside .menuebox{
    float: none;
}

footer > .inside > #searchBox{
    max-width: none;
}

.overlay{
    background: rgba(255,255,255, 1);
}

.layout_latest .readmore,.ce_pageteaser .readmore,.jumpToURL .readmore{
position:absolute;
bottom:20px;
right:35px;
/*  margin-top: 10px;
    display: table;
    width: 100%;
*/
}
.ce_pageteaser .inside {
position:static;
overflow:hidden;
}
.ce_pageteaser .desc{
padding-bottom:20px;
	padding-right:´30px;
}

.jumpToURL,.layout_latest .readmore {
    display: table;
   width: 100%;
}

.ce_teamMember .download{
    display: table;
    width: 100%;
}

#main .mod_article > .block,#main .mod_article > .ce_introtext.block{
    max-width: 1200px;
}

.borderTop .textholder:before{
    content: '';
    display: table;
    width: 100%;
    max-width: 60%;
    background: #CCC;
    height: 1px;
    margin-bottom: 4rem;
}


.parallax-container .parallax img{
    max-width: none;
}

blockquote{
    margin: 0;
}

#wrapper{
    overflow-x: hidden;
}

fieldset{
    padding: 0;
}

.cardholder h2{
    font-weight: 500;
}

body .flex-control-paging li a{
    background: rgba(255,255,255,0.8);
    box-shadow:none;
    -webkit-box-shadow:none;
}

body .flex-control-paging li a.flex-active {
  background: white;
}

#main .mod_article:first-of-type > .block.mod_newsreader, #herosection .ce_textBox
/*.noPageImage #herosection .mod_article > .block:not(.ce_ownSlider)*/
{
    max-width: none;
    margin: 0;
    padding: 0;
}
.noPageImage #herosection .mod_article > .block:not(.ce_ownSlider),
body:not(.index) #main > .inside .mod_newsreader #herosection .mod_article > .block{
   max-width: calc( 1200px - 4rem );
    margin: 0 auto;
    padding: 4rem 0 5rem;
}

.noPageImage #main .mod_article:first-of-type > .block {

}

body:not(.index) #main > .inside .mod_newsreader #herosection .mod_article:first-of-type > .block:after {
    display: none;
}

p.back {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
display:none;
}

.headlinecontainer h1,.headlinecontainer h2{
    margin: 0;
}

.mod_newslist .headlinecontainer{
display:table;
width:100%;
}

.mod_newslist .headlinecontainer .newslink{
    text-align: right;
}

.mod_newslist .headlinecontainer .newslink a{
    text-decoration: underline;
    color: var(--darkbrown);
}


body .flex-direction-nav a:before{
    display: none;
}

body #herosection .flex-direction-nav a img{
    height: 20px;
    width: 40px;
    min-height: 0;
    min-width: 0;
    object-fit: contain;
}
.capholder h2 {
line-height:1.3;
margin-bottom:6rem;
}
#article-14 .headlinecontainer {
margin-left:-10%;
}
.ce_teamListZitat .caption {
padding:2rem 0 3.5rem;
    background: white;
}

.ce_teamListZitat .caption > * {
padding:0 3rem;
}
.teaserpreHeadline {
font-size: 15px;
padding-bottom:1rem;
}
.teasergrid > div > *, .ce_gallery ul > li {
margin-bottom: 4rem;
}
.article_1.full{
position:relative;
}
.layout_latest .teaser {
padding-bottom:2rem;
}
.article_1.full .readmore {
right:44px;
}
.ce_teamMember .download > .readmore {
margin-top:-2rem;
}
.ce_teamMember .position {
font-weight:400;
}
.ce_teamMember h3 {
font-size:35px;
font-weight:400;
}
.ce_teamMember .contact a {
color:var(--darkbrown);
}
.ce_teamMember .contact a:hover {
text-decoration:underline;
}
.padBottomSmall, #main .mod_article > .block.padBottomSmall {
padding-bottom:4rem;
}
.pushy-open-right #container {
	transform: none;
}
.changelang {
	color: var(--darkbrown);
}
.changelang > * {
	display: inline-block;
	padding-right: 20px;
}
.changelang .active {
	text-decoration: underline;
}
.headerright {
	padding-top:14px;
}
#main .mod_article > .block.ce_tabcontrol,
#main .mod_article > .block.ce_teamList,
#stellenangebote{
	max-width:990px;
	margin: 0 auto;
}
.ce_teamList .avatar {
	width:auto;
}
.ce_teaserList .item_7 .figure {
	padding-right:40px;
}

.ce_teaserList .item_6 .figure {
	padding-left:40px;
	padding-top:4rem;
}
.parent_team .borderTop ul {
	margin-top:2rem;
}
.parent_team .borderTop ul li {
	margin-bottom:0;
}
.parent_team .ce_headline h2,
#main .mod_article > .block.maxwidth990{
	max-width: 990px;
margin: 0 auto;
	padding-left:0;
	padding-right: 0;
}
.parent_team .tabcontrol_panes,
.kontakt .tabcontrol_panes{
border-bottom: none;
}

#herosection .cardholder .h2 {
	font-weight: 300;
	font-size: 32px;
	line-height: 1.4;
	margin-bottom: 1rem;
}
#herosection .ce_textBox .cardholder > .inside {
margin-left: -50%;
	max-width: 460px;
}
#herosection .ce_textBox .cardholder {
width: 35%;
}
.kontakt .tabcontrol_tabs {
	border-bottom:1px solid silver;
	margin-bottom: 3rem;
}

/* iOS switch*/

.widget.widget-checkbox input[type="checkbox"] {
    position: absolute;
    margin: 8px 0 0 16px;
	-webkit-appearance: inherit;
}
.widget.widget-checkbox input[type="checkbox"] + label {
    position: absolute;
    padding: 0 0 0 60px;
}
.widget.widget-checkbox input[type="checkbox"] + label:before {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    width: 50px; /* x*5 */
    height: 24px; /* x*3 */
    border-radius: 16px; /* x*2 */
    background: #ebebeb;
    border: 1px solid black;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.widget.widget-checkbox input[type="checkbox"] + label:after {
    content: "";
    position: absolute;
    display: block;
    left: 2px;
    top: 2px;
    width: 18px; /* x*3 */
    height: 18px; /* x*3 */
    border-radius: 16px; /* x*2 */
    background: black;
    border: 2px solid black;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.widget.widget-checkbox input[type="checkbox"] + label:hover:after {
    box-shadow: 0 0 5px rgba(0,0,0,0.3);
}
.widget.widget-checkbox input[type="checkbox"]:checked + label:after {
    margin-left: 26px;
	background:var(--darkbrown);
	border: 2px solid var(--darkbrown);
}
.widget.widget-checkbox input[type="checkbox"]:checked + label:before {
    background:white;
}
.widget.widget-checkbox {
padding-left: 0;
	float: left;
	width: 50%;
}
.widget.widget-checkbox label span {
	display: inline-block;
	max-width: 440px;
	margin: -8px 0 0 15px;
}
.widget.widget-submit{
	float: right;
	width: 50%;
	text-align: right;
	clear:both;
}
button.submit {
	float: right;
}
::placeholder,
.widget.widget-text input, .widget.widget-textarea textarea, .ce_form .widget.widget-textarea > label, .ce_form .widget.widget-upload{
  color: black;
	font-weight: 300;
	font-family: 'Open Sans';
  opacity: 1; /* Firefox */
}
.widget.widget-textarea textarea {
background: #ebebeb;
}
.widget {color: black;}
.widget-explanation{
	margin-bottom: 4rem;
}
.maxwidth800{
	max-width: 800px;
}
.maxwidth700{
	max-width: 700px;
	margin: 0 auto;
}
.fancybox-button {
	width: 65px !important;
	height: 65px !important;
}
.fancybox-content .widget.widget-checkbox {
	width: 40%;
}
.fancybox-content .linkholder .readmore {
	margin: 4rem 0;
}
.ce_form legend {
	padding: 4rem 0 3rem;
}
body:not(.kontakt) .ce_form h2 {
	margin-top: 0;
	margin-bottom: 0;
}
.widget-textarea label,
.abstandoben{
	padding-top: 4rem;
}
span.mandatory {
	color: black;
}
.onlinebewerbung #main .mod_article > .block.ce_form {
	max-width: 990px;
}
.onlinebewerbung button.submit {
	margin-top: 4rem;
}
input[type="file"] {
  outline: none;
  padding: 4px;
  margin: -4px;
	font-style: italic;
	color:gray;
	font-size:18px;
	width:420px;
}

input[type="file"]:focus-within::file-selector-button,
input[type="file"]:focus::file-selector-button {
  outline: 2px solid #0964b0;
  outline-offset: 2px;
}

input[type="file"]::before {
  top: 16px;
}

input[type="file"]::after {
  top: 14px;
}


input[type="file"],
.widget-upload label {
  position: relative;
}
.ce_form .widget-upload > label{
display:inline-block;
width:262px;
font-weight: 500;
	padding-bottom: 2rem;
}

input[type="file"]::file-selector-button {
  width: 210px;
  color: transparent;
}

/* Faked label styles and icon */
.widget-upload label::after {
  position: absolute;
  pointer-events: none;
 bottom:38px;
  left: 268px;
  color: gray;
  content: 'Datei auswählen';
	font-style:normal;
	font-size: 18px;
	width: 210px;
text-align:center;
	z-index:5;
}


/* file upload button */
input[type="file"]::file-selector-button {
  border-radius: 4px;
  padding: 0 16px;
  height: 45px;
  cursor: pointer;
  background-color: white;
  border: 1px solid gray;
line-height: 1;
padding: 15px 2rem;
border-radius: 2rem;

}

/* file upload button hover state */
input[type="file"]::file-selector-button:hover {
  
}

/* file upload button active state */
input[type="file"]::file-selector-button:active {
  
}
.fancybox-button svg path {
	fill:#73787C !important;
}
.border-bottom{
	border-bottom: 1px solid #d1d1d1;
}
.border-top{
	border-top: 1px solid #d1d1d1;
	padding-top: 4rem;
}
.kontakt .ce_kachelelement .notfloat_right > .inside {
	padding-top:0;
}
.ce_pageteaser .readmore > .arrow, .jumpToURL .readmore, .layout_latest .readmore > .arrow, .ce_teamMember .download > .readmore, a .avatar.card .arrow {
transition:all;
transition-duration: .2s;
transition-timing-function: cubic-bezier(.4,0,.2,1);
}
.ce_pageteaser a:hover .readmore > .arrow, .jumpToURL a:hover .readmore, .layout_latest a:hover .readmore > .arrow, a:hover .avatar.card .arrow {
transform: translate3d(10px, 0, 0);
}

body:not(.index):not(.noPageImage) #herosection.animate:after {
transform: translateY(-100%);
}
body:not(.index):not(.noPageImage) #herosection:after {
width: 100%;
height: 100%;
background: #ffffff;
content: "";
position: absolute;
top: 0;
left: 0;
transition: all 1s;
transition-timing-function: ease-out;
}
.ce_pageteaser .imageItem .image_container,
.avatar img,
.ce_teamListZitat figure img{
	transform: scale(1);
	transition: all 0.4s linear;
}
.ce_pageteaser .imageItem a:hover .image_container,
.avatar a:hover img,
.ce_teamListZitat a:hover figure img{
	transform: scale(1.1);
}
.ce_teamListZitat .item_2 .jumpToURL .readmore {
	right: 40px;
}
label a {
	text-decoration: underline;
	color:var(--darkbrown);
}
label a:hover {
	opacity: 0.75;
}
.overlay .closebtn {
	background: url(/files/theme/layout/images/icons/close.svg) no-repeat;
	background-size: contain;
	display: block;
	width:30px;
	height: 30px;
}
.contao-cookiebar .cc-btn {
background-color:white;
margin-right:20px;
}
.contao-cookiebar .cc-btn:hover {
background-color:var(--darkbrown);
color:white;
border-color:var(--darkbrown);
}
.contao-cookiebar .cc-inner {
border-radius:0;
}
.contao-cookiebar h3 {
font-size:30px;
}
#cookiebar-desc {
font-size:18px;
}
.contao-cookiebar .cc-footer, .contao-cookiebar .cc-info {
text-align:left;
margin-top:2rem;
}
@media (min-width: 768px) {
.contao-cookiebar .cc-inner {
max-width: 1000px;
padding:2rem 3rem;
}
}
.ce_text p a {
color:inherit;
}
input#altcha_checkbox {
-webkit-appearance:checkbox !important;
}
altcha-widget {
float:right;
}
.onlinebewerbung .altcha {
margin-top: 8rem;
}
.mod_changelanguage li {
	display:inline-block;
}
.mod_changelanguage li.lang-de:after {
	display:inline-block;
	content:'|';
	padding-left:3px;
	margin-left:3px;
}