/*
 * contentspacer
 */
 .contentspacer-verysmall{
     height: 10px;
 }
.contentspacer-small{
    height: 25px;
}
.contentspacer-medium{
    height: 50px;
}
.contentspacer-large{
    height: 85px;
}
@media screen and (max-width: 767px) {
    .contentspacer-small{
        height: 15px;
    }
    .contentspacer-medium{
        height: 30px;
    }
    .contentspacer-large{
        height: 45px;
    }
}

/*
 * textblock Element
 */
.textblock{
    color: #FFF;
    font-size: 40px;
    line-height: 40px;
    max-width: 85%;
    margin: 0 auto;
    font-family: 'urw-din-semi-condensed';
}
@media screen and (max-width: 959px) {
    .textblock{
        font-size: 35px;
        line-height: 35px;
    }
}
@media screen and (max-width: 639px) {
    .textblock{
        font-size: 25px;
        line-height: 25px;
        max-width: 100%;
    }
}


/*
 * videoplayer Element
 */
.videoplayer{
    position: relative;
}
.videoplayerImage{
    border: 2px solid #FFF;
    border-radius: 5px;
    position: relative;
    cursor: pointer;
}
.videoplayerIcon{
    position: absolute;
    top: calc(50% - 40px);
    left: calc(50% - 40px);
    width: 70px;
}
.videoplayerImg{
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
}
.videoplayerVideo{
    display: none;
    /* border: 2px solid #FFF; */
    border-radius: 5px;
}
.videoplayerText{
    font-size: 25px;
    line-height: 30px;
    width: 55%;
    margin: 25px auto 0;
    text-align: center;
    letter-spacing: 0.75px;
    font-family: 'urw-din-condensed';
    font-weight: 700;
}
@media screen and (min-width: 1279px) {
    .videoplayerText{
        width: 45%;
    }
}
@media screen and (max-width: 959px) {
    .videoplayerText{
        width: 70%;
        /* font-size: 18px;
        line-height: 18px; */
    }
}
@media screen and (max-width: 639px) {
    .videoplayerIcon{
        top: calc(50% - 20px);
        left: calc(50% - 20px);
        width: 40px;
    }
    .videoplayerText{
        width: 75%;
        font-size: 18px;
        line-height: 18px;
    }
}



/*
 * testimonial Element
 */
.testimonial{
    padding: 120px 0;
    position: relative;
}
.testimonialBg{
    position: absolute;
    z-index: -1;
    top: 0;
    left: calc((100vw - 1200px) / -2);
    width: 100vw;
    height: 100%;
    background: -webkit-linear-gradient(270deg, #2042EF 10%, #EC6F2C  90%);
}
.testimonialText{
    font-size: 75px;
    line-height: 75px;
    color: #FFF;
    text-align: center;
    font-family: 'urw-din-condensed';
}
.testimonialPerson{
    font-size: 24px;
    line-height: 24px;
    color: #000;
    margin-top: 60px;
    text-transform: uppercase;
}
.testimonialInfo{
    font-size: 24px;
    line-height: 24px;
    color: FFF;
    margin-top: 5px;
    text-transform: uppercase;
}
@media screen and (max-width: 1279px) {
    .testimonialBg{
        left: -40px;
    }
}
@media screen and (max-width: 959px) {
    .testimonialBg{
        left: -30px;
    }
    .testimonial{
        padding: 90px 0;
    }
    .testimonialText{
        font-size: 60px;
        line-height: 60px;
    }
    .testimonialPerson{
        font-size: 20px;
        line-height: 20px;
        margin-top: 40px;
    }
    .testimonialInfo{
        font-size: 20px;
        line-height: 20px;
    }
}
@media screen and (max-width: 639px) {
    .testimonialBg{
        left: -15px;
    }
    .testimonial{
        padding: 60px 0;
    }
    .testimonialText{
        font-size: 30px;
        line-height: 30px;
    }
    .testimonialPerson{
        font-size: 16px;
        line-height: 16px;
        margin-top: 20px;
    }
    .testimonialInfo{
        font-size: 16px;
        line-height: 16px;
    }
}


/*
 * kontaktpartner Element
 */
.kontaktpartner{
    padding: 120px 0;
    position: relative;
}
.kontaktpartnerBg{
    position: absolute;
    z-index: -1;
    top: 0;
    left: calc((100vw - 1200px) / -2);
    width: 100vw;
    height: 100%;
    background: #020859;
}
.kontaktpartnerBox{
    width: 80%;
    margin: 0 auto;
}
.kontaktpartnerItem{
    border: 2px solid #fff;
    border-radius: 5px;
}
.kontaktpartnerItemImage img{
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center;
    width: 100%;
}
.kontaktpartnerItemText{
    background: #2042EF;
    padding: 20px;
}
.kontaktpartnerItemName{
    color: #EC6F2C;
    font-size: 22px;
    line-height: 22px;
    letter-spacing: 0.22px;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 5px;
    font-family: 'urw-din-semi-condensed';
}
.kontaktpartnerItemFunction{
    color: #FFF;
    font-size: 22px;
    line-height: 22px;
    letter-spacing: 0.22px;
    text-transform: uppercase;
    margin-bottom: 20px;
    font-weight: 700;
    font-family: 'urw-din-semi-condensed';
}
.kontaktpartnerItemLink{
    margin-top: 10px;
}
.kontaktpartnerItemLink a{
    font-family: 'urw-din-semi-condensed';
    color: #FFF;
    font-size: 14px;
    line-height: 14px;
    display: block;
}
.kontaktpartnerItemLink a:hover{
    text-decoration: none;
}
.kontaktpartnerItemLink a img{
    margin-right: 10px;
}


@media screen and (max-width: 1279px) {
    .kontaktpartnerBg{
        left: -40px;
    }
}
@media screen and (max-width: 959px) {
    .kontaktpartnerBg{
        left: -30px;
    }
    .kontaktpartner{
        padding: 80px 0;
    }
}
@media screen and (max-width: 639px) {
    .kontaktpartnerBg{
        left: -15px;
    }
    .kontaktpartner{
        padding: 40px 0;
    }
    .kontaktpartnerBox{
        width: 100%;
    }
}



/*
 * aktuelles Element
 */
.aktuelles{
    width: calc(((100vw - 1200px) / 2) + 1200px);
}
.aktuellesItem{
    margin-bottom: 30px;
    cursor: pointer;
}
.aktuellesItemInner{
    border: 2px solid #fff;
    border-radius: 5px;
}
.aktuellesItemInner img{
    width: 300px;
    height: 300px;
    object-fit: cover;
    object-position: center;
}
.aktuellesItemInner span{
    border: 2px solid #fff;
    border-radius: 5px;
    width: 35px;
    height: 30px;
    display: inline-block;
    font-size: 35px;
    padding-top: 5px;
    text-align: center;
    margin-bottom: 20px;
}
.aktuelles .uk-dotnav li{
    padding: 0;
}
.aktuelles .uk-dotnav li a{
    margin: 40px 0;
    width: 20px;
    max-width: 100px;
    height: 2px;
    background: #FFF;
    border-radius: 0;
}
.aktuelles .uk-dotnav .uk-active a{
    height: 4px;
    background: #EC6F2C;
    position: relative;
    top: -1px;
}

#aktuellesDetail{
    z-index: 9999;
}
#aktuellesDetailContent{
    border-radius: 5px;
}
#aktuellesDetailContent iframe{
    border: none !important;
}
.aktuellesDetailInner{
    border: 2px solid #fff;
    border-radius: 5px;
    background: #2042EF;
    position: relative;
    padding: 20px;
}
.aktuellesDetailClose{
    position: absolute;
    top: 25px;
    right: 25px;
    z-index: 9999;
    color: #000;
    cursor: pointer;
}
@media screen and (max-width: 1279px) {
    .aktuelles{
        width: calc(100vw - 40px);
    }
}
@media screen and (max-width: 959px) {
    .aktuelles{
        width: calc(100vw - 30px);
    }
    .aktuellesItemInner img{
        width: 275px;
        height: 275px;
    }
}
@media screen and (max-width: 639px) {
    .aktuelles{
        width: calc(100vw - 15px);
    }
    .aktuellesItemInner img{
        width: 225px;
        height: 225px;
    }
}




/*
 * projekte Element
 */
#projekte{
    position: relative;
    top: -60px;
}
.projekteFilter{
    padding-bottom: 50px;
}
.projekteFilter .button {
    padding: 0 5px;
}
.projekteFilter .button a{
    font-family: 'urw-din-condensed';
    font-size: 14px;
    line-height: 14px;
    font-weight: 700;
    min-width: 140px;
    margin: 0 auto;
    padding: 10px 15px;
}
.projekteSlider{
    width: calc(((100vw - 1200px) / 2) + 1200px);
    margin-bottom: 80px;
}
.projekteSliderItem{
    cursor: pointer;
}
.projekteSliderItemInner{
    border: 2px solid #fff;
    border-radius: 5px;
}
.projekteSliderItemInner img{
    width: 600px;
    height: 400px;
    object-fit: cover;
    object-position: center;
}
.projekteSliderItemInnerTitle{
    font-family: 'urw-din-condensed';
    font-weight: 700;
    padding: 30px;
    font-size: 25px;
    line-height: 25px;
    letter-spacing: 0.75px;
    text-transform: uppercase;
    color: #FFF;
}
.projekteGridItem{
    border: 2px solid #fff;
    border-radius: 5px;
    width: 100%;
    cursor: pointer;
}
.projekteGridItem img{
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 11;
    object-fit: cover;
    object-position: center;
}
.projekteGridMoreButton{
    text-align: center;
    padding: 50px 0;
}
.projekteGridMore{
    margin-top: 30px;
}
#projekteDetail{
    background: #2042EF;
    width: 100vw;
    position: relative;
    left: calc((100vw - 1200px) / -2);
    overflow: hidden;
    color: #FFF;
    padding-bottom: 80px;
    display: none;
}
.projekteGrid #projekteDetail{
    margin-top: 20px;
}
#projekteDetailContent{
}
.projektDetail{
}
.projektDetailVideo{
    width: 100%;
}
.projektDetailVideo video{
    width: 100%;
}
.projektDetailImage{
    max-height: 70vh;
    overflow: hidden;
}
.projektDetailImage img{
    width: 100%;
}
.projektDetailTitle{
    text-transform: uppercase;
    font-size: 35px;
    line-height: 35px;
    margin-bottom: 50px;
    font-family: 'urw-din-semi-condensed';
    font-weight: 700;
}
.projektDetailText{
    column-count: 2;
    line-height: 1.2em;
}
.projektDetailTextTitle{
    color: #EC6F2C;
    font-weight: 700;
}
.projekteSlider .uk-dotnav li{
    padding: 0;
}
.projekteSlider .uk-dotnav li a{
    margin: 40px 0;
    width: 20px;
    max-width: 100px;
    height: 2px;
    background: #FFF;
    border-radius: 0;
}
.projekteSlider .uk-dotnav .uk-active a{
    height: 4px;
    background: #EC6F2C;
    position: relative;
    top: -1px;
}
.projekteFilterMobile{
    margin-bottom: 30px;
}
.projekteFilterMobile select{
    border-radius: 3px;
    border: none;
    background: #EC6F2C;
    color: #FFF;
    padding: 10px 25px;
    text-transform: uppercase;
    text-align: center;
    font-family: 'urw-din-condensed';
    font-size: 14px;
    line-height: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-align-last: center;
}
@media screen and (max-width: 1279px) {
    .projekteSlider{
        width: calc(100vw - 40px);
    }
    #projekteDetail{
        left: -40px;
    }
    .projektDetailInner{
        padding: 0 40px;
    }
}
@media screen and (max-width: 959px) {
    .projekteFilter .button a{
        min-width: 120px;
    }
    .projekteSlider{
        width: calc(100vw - 30px);
    }
    .projekteSliderItemInner img{
        width: 450px;
        height: 300px;
    }
    .projekteSliderItemInnerTitle{
        padding: 20px;
        font-size: 20px;
        line-height: 20px;
        letter-spacing: 0.5px;
    }
    #projekteDetail{
        left: -30px;
        padding-bottom: 20px;
    }
    .projektDetailInner{
        padding: 0 30px;
    }
}
@media screen and (max-width: 639px) {
    .projekteFilter{
        padding-bottom: 25px;
    }
    .projekteFilter .button {
        padding: 0;
    }
    .projekteFilter .button a{
        display: block;
        width: 140px;
        margin-bottom: 5px;
    }
    .projekteSlider{
        width: calc(100vw - 15px);
    }
    .projekteSliderItemInner img{
        width: 240px;
        height: 160px;
    }
    .projekteSliderItemInnerTitle{
        padding: 15px;
        font-size: 16px;
        line-height: 16px;
        letter-spacing: 0.25px;
    }
    #projekteDetail{
        left: -15px;
        padding-bottom: 0;
    }
    .projektDetailInner{
        padding: 0 15px;
    }
    .projektDetailText{
        column-count: 1;
    }
    .projektDetailInner .jobDetailPerson {
        margin: 50px 0;
    }
}






/*
 * mitarbeiter Element
 */
.mitarbeiter{
}
.mitarbeiterFilter{
    text-align: center;
    margin: 30px auto 60px;
    border: 2px solid #FFF;
    border-radius: 30px;
    overflow: hidden;
    width: 275px;
    background-position: 238px 11px;
    background-repeat: no-repeat;
    cursor: pointer;
    background-size: 28px;
}
.mitarbeiterBox{
    margin: 0 120px;
}
.mitarbeiterItem{
    color: #010F48;
    font-size: 14px;
    line-height: 16px;
    background: #fff;
    padding: 10px;
    border-radius: 5px;
}
.mitarbeiterItemImage{
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: top;
}
.mitarbeiterItemText{
    padding: 0 5px;
}
.mitarbeiterItemTitle{
    margin-top: 15px;
}
.mitarbeiterItemFunction{
    color: #6D7582;
    margin-bottom: 25px;
}
.mitarbeiterItemNumber{
    color: #010F48;
    font-size: 10px;
    line-height: 12px;
    margin-bottom: 5px;
}
.mitarbeiterItemNumber a{
    color: #010F48;
}
.mitarbeiterItemNumber a:hover{
    text-decoration: none;
}
.mitarbeiterItemNumber img{
    width: 14px;
    margin-right: 10px;
}
#maFilter,
#videoFilter,
#photoFilter{
    font-size: 20px;
    line-height: 22px;
    text-transform: uppercase;
    color: #FFFF;
    padding: 15px 20px 15px 0;
    border: none;
    box-shadow: none;
    background: transparent;
    background-image: none;
    background-image: none;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    width: 275px;
    text-align: center;
}
@media screen and (max-width: 1023px) {
    .mitarbeiterBox{
        margin: 0 60px;
    }
}
@media screen and (max-width: 959px) {
    .mitarbeiterBox{
        margin: 0;
    }
}

@media screen and (max-width: 639px) {
    .mitarbeiterFilter{
        background-size: 20px;
        margin: 25px auto 40px;
        width: 240px;
        background-position: 210px 11px;
    }
    #maFilter,
    #videoFilter,
    #photoFilter{
        font-size: 16px;
        line-height: 16px;
        padding: 12px 20px 12px 0;
        width: 240px;
    }
}




/*
 * mitarbeiter Element
 */
.jobs{
}
.jobsBox{
    margin: 0 100px;
}
.jobItem{
    border: 2px solid #fff;
    border-radius: 5px;
    padding: 12px;
    max-width: 85%;
    margin: 0 auto 12px auto;
    cursor: pointer;
    color: #FFF;
    font-size: 20px;
    line-height: 20px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.jobItem img{
    width: 30px;
    margin-right: 30px;
}
.jobDetail{
    background: #2042EF;
    width: 100vw;
    position: relative;
    left: calc((100vw - 1000px) / -2);
    overflow: hidden;
    color: #FFF;
    margin-bottom: 12px;
    display: none;
}
.jobDetailImage{
    object-fit: cover;
    object-position: center;
    width: 100%;
    max-height: 70vh;
}
.jobDetailContent{
    font-size: 20px;
    line-height: 1.1em;
}
.jobDetailClose img{
    width: 45px;
    margin: 40px 0 20px 0;
}
.jobDetailContent ul {
    padding-left: 20px;
}
.jobDetailContent ul li {
    margin-bottom: 5px;
}
.jobDetailContent .jobDetailTextTitle {
    /* margin-bottom: 10px; */
}
.jobDetailTitle{
    font-size: 35px;
    line-height: 35px;
    margin-bottom: 50px;
    text-transform: uppercase;
    font-family: 'urw-din-semi-condensed';
    font-weight: 700;
}
.jobDetailText{
    font-size: 20px;
    line-height: 1.1em;;
    margin-bottom: 50px;
}
.jobDetailPerson{
    margin: 50px 0 75px 0;
}
.jobDetailPersonLead{
    font-size: 12px;
    line-height: 14px;
    font-family: 'urw-din-semi-condensed';
}
.jobDetailPersonIcon img{
    width: 30px;
}
.jobDetailPersonName{
    font-family: 'urw-din-semi-condensed';
    font-size: 20px;
    font-weight: 700;
    line-height: 20px;
    margin: 20px 0 10px 0;
    color: #EC6F2C;
    text-transform: uppercase;
}
.jobDetailPersonItem{
    font-size: 12px;
    line-height: 14px;
    margin: 0 0 3px 0;
}
.jobDetailPersonItem a{
    font-family: 'urw-din-semi-condensed';
    color: #FFF;
}
.jobDetailPersonItem a:hover{
    text-decoration: none;
}
.jobDetailPersonItem img{
    width: 14px;
    margin-right: 10px;
}
.jobDetailVideoTitle{
    font-size: 30px;
    line-height: 30px;
    text-align: center;
    color: #EC6F2C;
    width: 80%;
    margin: 0 auto 30px auto;
    text-transform: uppercase;
    font-family: 'urw-din-semi-condensed';
}
.jobDetailVideo {
    width: 80%;
    margin: 0 auto;
}
.jobDetailVideo video{
    border: 2px solid #fff;
    border-radius: 5px;
    width: 100%;
    background: #FFF;
    /* aspect-ratio: 9 / 16;
    object-fit: cover;
    object-position: center; */
}
.jobDetailVideoName{
    color: #EC6F2C;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: 0.16px;
    text-align: center;
    margin-top: 20px;
    font-weight: 700;
}
.jobDetailVideoText{
    font-size: 16px;
    line-height: 16px;
    letter-spacing: 0.16px;
    text-align: center;
    margin-bottom: 30px;
}
.jobDetailTextTitle{
    font-size: 20px;
    line-height: 20px;
    color: #EC6F2C;
    font-weight: 700;
}
.jobDetailTextContent{
    font-size: 20px;
    line-height: 1.1em;
    margin-bottom: 20px !important;
}
.jobDetailLink{
    margin: 20px 0 50px 0 !important;
    text-align: center;
}
.jobDetailLink a{
    display: inline-block;
    background: #EC6F2C;
    font-size: 20px;
    line-height: 20px;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 5px;
    padding: 15px 30px;
    color: #FFF;
    font-family: 'urw-din-condensed';
    font-weight: 700;
}
.jobDetailLink a:hover{
    text-decoration: none;
}
@media screen and (max-width: 1279px) {
    .jobDetail{
        left: -140px;
    }
    .jobDetailInner{
        padding: 0 40px;
    }
    .jobDetailContent{
        width: 38vw !important;
    }
}
@media screen and (max-width: 1023px) {
    .jobsBox{
        /* margin: 0 60px; */
    }
}
@media screen and (max-width: 1200px) {
    .jobDetailVideoWrapper{
        /* padding-bottom: 34vw;
        width: 19vw; */
    }
}
@media screen and (max-width: 959px) {
    .jobsBox{
        margin: 0;
    }
    .jobDetail{
        left: -30px;
    }
    .jobDetailInner{
        padding: 0 30px;
    }
    .jobDetailContent{
        width: 45vw !important;
        padding-right:  30px;
    }
    .jobDetailClose img {
        margin: 30px 0 30px 0;
    }
    .jobDetailVideoWrapper{
        /* padding-bottom: 50vw;
        width: 29vw; */
    }
}
@media screen and (max-width: 639px) {
    .jobDetailPersonItem{
        margin: 0 0 3px 0px;
    }
    .jobItem{
        border: 2px solid #fff;
        border-radius: 15px;
        padding: 8px;
        margin-bottom: 8px;
        max-width: 100%;
        cursor: pointer;
        color: #FFF;
        font-size: 14px;
        line-height: 16px;
        font-weight: 300;
    }
    .jobItem img{
        width: 20px;
        margin-right: 10px;
    }
    .jobDetail{
        left: -15px;
    }
    .jobDetailInner{
        padding: 0 15px;
    }
    .jobDetailContent{
        width: calc(100vw - 30px) !important;
        /* padding:  0 15px; */
    }
    .jobDetailVideoWrapper{
        padding-bottom: 100vw;
        width: 58vw;
    }
    .jobDetailClose {
        margin: 20px 0;
    }
    .jobDetailClose img {
        width: 40px;
        margin: 15px 15px 0 0;
    }
    .jobDetailTitle {
        font-size: 35px;
        line-height: 35px;
        margin-bottom: 50px;
    }
    .jobDetailPerson{
        margin: 50px 0 0 0;
    }
    .jobDetailVideoTitle {
        font-size: 24px;
        line-height: 24px;
        margin: 15px auto 30px;
        width: calc(100% - 30px);
        padding: 0 15px;
    }
    .jobDetailLink a{
        font-size: 16px;
        line-height: 16px;
        padding: 10px 20px;
    }
}


/*
 * footerwidget Element
 */

.footerwidget{
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #FFF;
}
.footerwidget .footerTitle{
    color: #EC6F2C;
    margin-bottom: 30px;
    font-weight: bold;
}
.footerwidget a{
    text-decoration: underline;
    color: #FFF;
}
.footerwidget ul{
    padding: 0;
    margin: 0 0 0 17px;
}
.footerwidget li{
    margin-bottom: 2px;
}
@media screen and (max-width: 639px) {
    .footerwidget{
        font-size: 16px;
        line-height: 20px;
    }
    .footerwidget p{
        margin: 0;
    }
    .footerwidget .footerTitle{
        margin-bottom: 10px;
    }
}
