@charset "utf-8";
/* CSS Document */

@font-face {
    font-family: "Walsheim";
    src:url(../fonts/GT-Walsheim-Regular.otf) format("opentype");
}
@font-face {
    font-family: "Walsheim";
    font-weight: bold;
    src:url(../fonts/GT-Walsheim-Medium.otf) format("opentype");
}

:root {
  --cicolor: #00594e;
  --websiteWidth: 1300px;
    --headerHeight: 118px;
    
    --pagePadding: 15px;
    --marginBottomEl: 110px;
    
    --imgVersatz: 80px;
    
}
a{
    color:var(--cicolor);
    text-decoration: none;
}
.flex_oneLine{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;   
}
.flex_wrap{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;   
}
.flex_dontScaleVertical{
    align-items:flex-start;
}
.fullscreenimg{
    width:100%;
    height: auto;
    margin-bottom: 1em;
align-self: flex-start;
}

.xRelImg, img{
    align-self: flex-start !important;
}

.noscallfullscreenimg{
    width:auto;
    max-width: 100%;
    height: auto;
    margin-bottom: 1em;
}
*{
    box-sizing: border-box;
}
a:active, a:focus {outline: none;}
.websiteWidth{
    width:var(--websiteWidth);
    margin-left: auto;
    margin-right: auto;
}
html{
    scroll-behavior: smooth;
    font-family: 'Walsheim';
    font-size:1.1em;
}
h1{
    font-weight: normal;
    color: var(--cicolor);
    line-height: 1.3em;
    margin-top: 0px;
    margin-bottom: 0.6em;
}
h2{
    margin-top:0px;
}
article p{
    margin: 0px;
    margin-bottom: 0.8em;
}
.filledColumn  h1{
}
.pagePadding{
    padding-left:var(--pagePadding);
    padding-right:var(--pagePadding);
}

header{
    position: fixed;
    top:0px;
    left: 0px;
    width: 100%;
    background-color: white;
    height: var(--headerHeight);
    -webkit-box-shadow: 0px 0px 9px 0px rgba(50, 50, 50, 0.75);
    -moz-box-shadow: 0px 0px 9px 0px rgba(50, 50, 50, 0.75);
    box-shadow: 0px 0px 9px 0px rgba(50, 50, 50, 0.75);  
    z-index: 999;
}
.headerImgWrapper{
    text-align: right;
    display: flex;
    justify-content: flex-end;
}
.headerImgWrapper{
    width:100%;
}
.headerImgWrapper img{
    width: 100px;
    height: 100%;
    transition: 0.5s;
}
.innerHeader{
    align-items: center;
    align-content: center;
    transition: 0.5s;
    height: 100%;
    justify-content: flex-start
}
#closeMe{
    padding-top:5vh;
    padding-bottom: 3vh;
}
#mainNav{
    width:500px;
    min-height: 100vh;

    box-shadow: 10px 0px 3px 0px rgba(50, 50, 50, 0.2);  

}
#mainNav ul{
    margin: 0px;
    padding: 0px;
    list-style: none;
}
#mainNav ul li{
    margin-bottom: 1em;
    font-size:1.4em;
}
#mainNav ul li a{
    color:white;
    text-decoration: none;
}
.fullNa{
    position: fixed;
    top:0px;
    left: 0px;
    z-index: 99999;
    min-height: 100vh;
    width:100%;    
}
#burgerButton{
    cursor: pointer;
}
#navWrapper{
    visibility: hidden;
    opacity: 0;
    transition: 0.5s;
}
#navWrapper.visible{
    opacity: 1;
    transition: 0.5s;
    visibility: visible;
}

header .leftRow{
    justify-content: flex-start;
    align-content: center;
    align-items: center;
}
#burgerButton{
    margin-right: 70px;
}
.ciButton, .contentColumn a, button{
    border:1px solid var(--cicolor);
    text-align: center;
    padding-left:20px;
    padding-right: 20px;
    color: var(--cicolor);
    text-decoration: none;
    margin-right: 12px;
    padding-top:3px;
    padding-bottom: 3px;
    white-space: nowrap;
}
.spacer{
    height: var(--headerHeight);
}
.headerImg{
    margin-bottom: 0px;
}




.fullWidthEl{
    display: flex;
    justify-content: space-between;
}
.emptyColumn{
    flex-grow: 1;
}

.marginBottomEl{
    margin-bottom: var(--marginBottomEl);
}

.startHeaderWrapper article{
    width: 51%;
    width: 90%;
    padding-left:80px;
    padding-left:6%;
    padding-right:80px;
    padding-right:6%;
}
.startHeaderWrapper article h1{
    margin-top: 50px;
}
.startHeaderWrapper{
    margin-left: 164px;
    justify-content: flex-start;
}

.filledColumn, .ciBackground{
    background-color: var(--cicolor);
    color:white;
}
.filledColumn h1, .ciBackground h1, .filledColumn h2, .ciBackground h2{
    color:white;
}
.rectimg{
    width:400px;
    width:35%;
    border:15px solid white;
}
.rectContent{
    position: absolute;
    width:40%;
    border:30px solid #83aba6;
    background-color: white;
    padding:20px;
    color:black;
    right:10%;
    top:-130px;
}

form label, input, textarea{
    width:100%;
    margin-bottom: 1em;

}
form .formcheckbox input{
    width:auto;
}

form button{
    margin-top: 1em;
}
.startHeaderEl .fullWidthEl{
    transform: translateY(-140px);
}
.startHeaderEl .contentColumn{
    padding-top:140px;
}
.contentColumn{
    position: relative;
}
.startHeaderEl .rectimg{
    transform: translateY(-80px);
}

.x3Elm{
    display: grid;
    grid-template-columns: 560px 395px 130px;
    grid-template-columns: 43% 32% 12%;
    justify-content: space-between;
    
    transform: translateY(-80px);
}
.zertImg{
    margin-top:5em;
    padding-right: var(--pagePadding);
}
.x3Elm .fullscreenimg{
    margin-bottom: 0px;
}

footer{
    background-color: #e5eeed;
    padding-top:75px;
    padding-bottom: 45px;
}
.innerFooter{
    display: grid;
    grid-template-columns: 25% 30% 20% 20% auto;
    justify-content: space-between;
    align-items: flex-end;
}

.articleBlockPadding{
    padding-top:120px;
    padding-bottom: 45px;
}

.tlbrtd{

    width:55%;
    padding-right: 214px;
}
.tlbrtdMainWrapper{
    margin-top: 140px;
}
.tlbrtdT2{
    width:484px;
    width:40%;
}
.tlbrtdT2Wrapper{
    justify-content: flex-end; transform: translateY(-150px);
    margin-bottom: -150px;
}
img.xRelImg{
    position: absolute;
    width: 718px;
    width: 55%;
    height: auto;
    top: -140px;
    right: 0px;
}
.halfColumn{
    width:48%;
}
.zertBlocks{
    display: grid;
    grid-template-columns: 20% 80%;
    grid-row-gap:1em;
}

.zertifikateWrapper{
    width:85%;

    padding-left:15%;
    padding-top:80px;    
    padding-bottom:80px;
}

.colums2-50{
    display: grid;
    grid-template-columns: 48% 48%;
    justify-content: space-between;
}
.headimg{
    margin-bottom: 2em;
}
.headimg .fullscreenimg{
    margin-bottom: 0px;
}
.butvWrapper article{
    width:50%;
    padding-top:40px;
    padding-bottom: 40px;
    padding-right: var(--pagePadding);
    padding-left:5%;
    display: flex;
    align-items: center;
}
.toTopRow{
    text-align: right;
}
.imgRight.butvWrapper article{
    padding-left: var(--pagePadding);
    padding-right:5%;
}

.butvWrapper .contentColumn{
    justify-content: space-between;
}
.imgUp.blockSideInvisible.butvWrapper .contentColumn{
    align-items: flex-end;
}
.imgDown.blockSideInvisible.butvWrapper .contentColumn{
    align-items: flex-start;
}
h1.websiteWidth{
    margin-top: 1em;
}
.imgLeft article{
    order:2;
}
.imgLeft .butvImageWrapper{
    order:1;
}
.imgRight .butvImageWrapper{
    background-position: top left;
}

.butvImageWrapper{
    width:50%;
    justify-content: flex-end;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    background-image: url(../img/back.png);
    background-position: top right;
    background-repeat: repeat-y;
    background-size: 30% auto;
    
    align-self: stretch;
}
.imgDown.butvWrapper{
    padding-bottom: calc(var(--imgVersatz) + var(--marginBottomEl));
    margin-bottom:0px;
}
.imgUp.butvWrapper{
    padding-top: calc(var(--imgVersatz));
}

.butvImageWrapper .fullscreenimg{
    margin-bottom: 0px;
}
.butvImageWrapper img, .butvImageWrapper iframe{
    transform: translateY( var(--imgVersatz));
}

.imgUp .butvImageWrapper img, .imgUp .butvImageWrapper iframe{
    transform: translateY( calc(var(--imgVersatz)*-1) );
}
p{
    margin: 0px;
    margin-bottom: 1em;
}

.butvImageStreifen{
    height: 50px;
    width:15%;
}
.apItem{
    font-size:1.1em;
    margin-bottom:2em;
}
.apItem h4{
    margin-bottom: 0.4em;
    font-size:1.4em;
}
.apItemFullscreen{
    display: grid;
    grid-template-columns: 50% 50%;
}
.apItemFullscreen .imgWrapper{
    height: 450px !important;
    padding:4%;
    color: white;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

}
.apItem .apText{
    padding-left:7%;
    padding-right:7%;
    padding-top:1em;
    padding-bottom: 3em;
    height: 100%;
}

.apItemWrapper{
    display: grid;
    grid-template-columns: 31% 31% 31%;
    grid-column-gap: 3.5%;
}

.apItem .imgWrapper{
    height: 550px;
    padding:4%;
    color: white;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

}

.blockSideInvisible .emptyColumn.filledColumn{
    background-color: #fff !important;
}



.blockSideInvisible.imgRight article{
    padding-left:5%;
}

.downloadsWrapper{
    display: flex;
    justify-content: flex-end;
    margin-top: -150px;
}
.downloadsInner{
    width:50%;
    padding-left:5%;
    padding-right: 5%;
}
.downloadsInner a{
    display: flex;
    justify-content: space-between;
    margin-bottom: 1em;
    font-size:0.9em;
}
.downloadsInner a .title{
    font-size:1.2em;
    font-weight: bold;
}

.loneBlock{
    padding: 5%;
    width:45%;
}
.zeitstrahlWrapper{
    width:50%;
    padding-right: var(--pagePadding);
}
.zeitstrahlItem h3{
    padding-left:50px;
    background-image: url(../img/circle.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 13px auto;
    margin-bottom: 0.2em;
}
.ea{
    align-items: flex-start;
}
.zeitstrahlItem div{
    padding-top:0.4em;
    padding-bottom: 4em;
    margin-left: 6px;
    padding-left:43px;
    border-left: 1px solid black;
}

.zeitstrahlItem:last-of-type div{
    border:none;
}

h1.blogHeader{
    color:white;
    padding-top:40px;
    padding-bottom: 40px;
}
.blogWidth{
    width:50%;
}
.blogHeadHWrapper .contentColumn{
    justify-content: center;
}
.blogHeadImgWrapper h1{
    margin: 0px;
}
.blogHeadImgWrapper{
    margin-bottom: 40px;
}
.blogContent{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.blogTeaserWrapper{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.blogTeaserWrapper a{
    display: flex;
    align-items: flex-end;
    background-size: cover;
    background-position: center center;
    color:white;
    padding:4%;
    margin-bottom: 1em;
    position: relative;
}
.blogTeaserWrapper a:nth-child(4n-3){
    width:65%;
}
.blogTeaserWrapper a:nth-child(4n-2){
    width:33%;
    margin-left: 1%;

}
.blogTeaserWrapper a:nth-child(4n-1){
    width:33%;
    margin-right: 1%;
}
.blogTeaserWrapper a:nth-child(4n){
    width:65%;
}
.blogTeaserText{
    z-index: 4;
}
.farbverlaufOverlay{
    position: absolute;
    background-image: linear-gradient(to top, rgba(22,91,80,1) 0%, rgba(22,91,80,0) 100%);
    width:100%;
    height: 100%;
    top:0;
    left: 0px;
    z-index: 2;
}
#closeMeButton{
    cursor: pointer;
}

#burgerButton{
    transition: 1s;
}
#burgerButton:hover{
    transform: rotate(360deg);
}

.bildergalerie{
    display: grid;
    grid-template-columns: 46% 46%;
    justify-content: space-between;
    grid-row-gap:4em;
}
.bildergalerieItem{
    position: relative;
}
/*
.bildergalerieItem:nth-of-type(1){
    transform: translateY(30px);
}

.bildergalerieItem:nth-of-type(2){
    transform: translateY(-90px);
}
.bildergalerieItem:nth-of-type(3){
    transform: translateY(160px);
}
.bildergalerieItem:nth-of-type(4){
    transform: translate(-30px, -60px);
}
.bildergalerieItem:nth-of-type(5){
    align-self: flex-end;
    transform: translateX(130%);
}
*/
.bildergalerieItem .fullscreenimg{
    margin-bottom: 0px;
}
.bildergalerieItem .title{
    position: absolute;
    bottom:10px;
    left:10px;
    color:white;
}

#jameda-widget-container126870 a{
    border: none;
    white-space: normal;
    padding: 0;
    margin: 0;
}


#fzh-popup {
  position: relative;
  background: #ffffff;
  padding: 20px;
  width: auto;
  max-width: 700px;
  margin: 20px auto;
}
.popupText{
    padding-top:20px;
    padding:20px;
    background-color: var(--cicolor);
    color:white;
}
button.mfp-close{
    right:-20px;
    top:-10px;
}

.mfp-content .flex_oneLine img{
    align-self: flex-start;
}

.col2{
    display: grid;
    grid-template-columns: 48% 48%;
    justify-content: space-between;
}

.iwcc-accept-all{
    background-color: var(--cicolor) !important;
    cursor: pointer !important;
    border:none !important;;
}
.iwcc-show-details a{
    color:var(--cicolor) !important;
}