.threebox .leftbox {background-color: var(--white); padding: 38px 28px;}
.threebox .middlebox {background-color: var(--white); padding: 38px 28px;}
.threebox .rightbox {background-color: var(--white); padding: 38px 28px;}
.threebox .image {text-align: center; margin-bottom: 45px;}
.threebox .headline {font-size: 26px; font-weight: bold; font-style: italic; text-align: center; margin-bottom: 20px;word-break: break-word;}
.threebox .redbutton {margin: 60px auto 0 auto;}
.threebox .redbutton a {position: relative; padding-left: 40px;}
.threebox .redbutton a:before {content:"arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: 3px; left: 10px; position: absolute; pointer-events: none; color: var(--white);}

.portfolio .image {text-align: center; margin-bottom: 20px; display: flex; justify-content: center; align-items: flex-end; height: 105px;}
.portfolio .headline {text-align: center; margin-bottom: 20px;}
.portfolio .headline h4 {font-size: 20px;}
.portfolio .text {text-align: justify; margin-bottom: 20px; font-size: 14px;}
.slider-container{overflow:hidden;}
.portfolio .slider-container{padding-left:30px;padding-right:30px;}
.frame.frame-layout-5 > header {margin-left:15px;margin-right:15px;}
.portfolio .link {text-align: center;}
.portfolio .link a {position: relative; padding-left: 40px;}
.portfolio .link a:before {content:"arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: -5px; left: 10px; position: absolute; pointer-events: none; color: var(--red);}

.zweixzwei .image {max-width: 80px; display: inline-block; vertical-align: top; margin-right: 28px}
.zweixzwei .image img {width: 80px;}
.zweixzwei .content {display: inline-block; max-width: calc(100% - 128px);}
.zweixzwei .content .headline {font-size: 22px; font-weight: bold; margin-bottom: 10px;}
.zweixzwei .upper {margin-bottom: 40px;}
.default .frame.frame-layout-1.zweixzwei {padding: 0 0 20px 0;}
.default .frame.frame-layout-2.zweixzwei {padding: var(--spacing-home) 0 20px 0;}

#keyvisual .canvas.mobile-canvas {display:none;}
@media (max-width: 992px) {
    #keyvisual .canvas.desktop-canvas {display:none;}
    #keyvisual .canvas.mobile-canvas {display: block;}
}
.keyvisual-startseite .canvas {
    min-height:300px;
    max-height: 964px;
    max-height: 85vh;
    position: relative;
}
.keyvisual-startseite .content {
    position: absolute;
    right: 0;
    bottom: 80px;
    height: 300px;
    width: 950px;
    background: transparent linear-gradient(0deg, #FFFFFF00 0%, #FFFFFF46 0%, #FFFFFF 100%) 0% 0% no-repeat padding-box;
    padding: 28px 84px;
    border-style:solid;
    border-image:linear-gradient(var(--red), transparent) 1;
    border-width: 4px;
    border-bottom:0;
    border-top: 0;
    border-right: 0;
}
.keyvisual-startseite .content .headline { max-width: 600px; margin-bottom: 15px;}
.keyvisual-startseite .content .text {max-width: 600px; margin-bottom: 40px; font-size: 22px; line-height: 32px; text-align: justify;}
.keyvisual-startseite .content .redbutton a {padding-left: 40px;}
.keyvisual-startseite .content .redbutton a:before {content:"arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: 3px; left: 10px; position: absolute; pointer-events: none; color: var(--white);}

#keyvisual .keyvisual-unterseite {background-color: rgba(75, 74, 77, 0.08); padding-bottom: 0;}
.keyvisual-unterseite .canvas {height: 550px;position: relative; background-position: center!important;max-width: 1244px; margin: 0 auto;}
.keyvisual-unterseite .content {
    position: relative;
    margin: 0 auto;
    margin-top: -40px;
    bottom: 20px;
    height: auto;
    width: calc(var(--width-desktop) - 160px);
    background: transparent linear-gradient(249deg, #FFFFFF91 0%, #FFFFFFF3 40%, #FFFFFF 100%) 0% 0% no-repeat padding-box;
    padding: 28px 40px; border-style:solid; border-image:linear-gradient(var(--red), transparent) 1;
    border-width: 4px;
    border-bottom:0;
    border-top: 0;
    border-right: 0;
    max-width: 100%;
}
.keyvisual-unterseite .content .headline {margin-bottom: 20px;}
.keyvisual-unterseite .content .text {font-size: 18px; line-height: 28px; text-align: justify;}

#keyvisual .keyvisual-intranet {padding-bottom: 0;}
.keyvisual-intranet .canvas {min-height: 595px;position: relative;}
.keyvisual-intranet .content {position: absolute; right: 0; margin: 0 auto; bottom: 140px; width: var(--width-desktop); padding: 65px; background-color: rgba(189, 9, 38, 0.9); color: var(--white);}
.keyvisual-intranet .text {font-size: 30px; line-height: 40px; max-width: 584px; text-align: justify;}

#keyvisual .keyvisual-landingpage {background-color: rgba(75, 74, 77, 0.08); padding-bottom: 0;}
.keyvisual-landingpage .canvas {height: 550px;position: relative; background-position: center!important;max-width: 1244px; margin: 0 auto;}
.keyvisual-landingpage .content {position: relative; margin: 0 auto; margin-top: -40px; bottom: 20px; height: auto; width: calc(var(--width-desktop) - 100px); background: transparent linear-gradient(249deg, #FFFFFF91 0%, #FFFFFFF3 40%, #FFFFFF 100%) 0% 0% no-repeat padding-box; padding: 28px 40px; border-style:solid; border-image:linear-gradient(var(--red), transparent) 1; border-width: 4px; border-bottom:0; border-top: 0; border-right: 0;}
.keyvisual-landingpage .content .headline {margin-bottom: 20px;}
.keyvisual-landingpage .content .text {font-size: 18px; line-height: 28px; text-align: justify;}

.start-vier .box {
    position: relative;
    margin-bottom: 201px;
}

.start-vier .box .content {
    position: absolute;
    right: 15px;
    bottom: -148px;
    background-color: var(--white);
    height: fit-content;
    width: 531px; padding: 19px 29px;
    border-style:solid;
    border-image:linear-gradient(var(--red), transparent) 1;
    border-width: 4px;
    border-bottom:0;
    border-top: 0;
    border-right: 0;
	max-width: 90%;
}
.start-vier .box .content .headline {font-size: 26px; line-height: 39px; font-weight: 600; margin-bottom: 20px;}
.start-vier .box .content .text {margin-bottom: 20px;}
.start-vier .box .content .text p {font-size: 16px; line-height: 24px; font-weight: 300; }
.start-vier .box .content .link a {font-size: 16px; line-height: 24px; position: relative; padding-left: 30px;}
.start-vier .box .content .link a:before {content:"arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: 0px; left: 0px; position: absolute; pointer-events: none; color: var(--red);}

.start-zwei .box {position: relative;}
.start-zwei .box .content {position: absolute; right: 33px; bottom: 31px; background-color: var(--white); height: 320px; width: 251px; padding: 19px 34px; border-style:solid; border-image:linear-gradient(var(--red), transparent) 1; border-width: 4px; border-bottom:0; border-top: 0; border-right: 0;}
.start-zwei .box .content .headline {font-size: 26px; line-height: 39px; font-weight: 600; margin-bottom: 20px;}
.start-zwei .box .content .text {margin-bottom: 40px;}
.start-zwei .box .content .text p {font-size: 16px; line-height: 24px; font-weight: 300; }
.start-zwei .box .content .link a {font-size: 16px; line-height: 24px; position: relative; padding-left: 30px;}
.start-zwei .box .content .link a:before {content:"arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: 0px; left: 0px; position: absolute; pointer-events: none; color: var(--red);}

.wipeslider {display: flex; flex-wrap: wrap; justify-content: space-between;}
.wipeslider .content {width: calc(100% - 837px); display: inline-block; margin-top: 42px;}
.wipeslider .content .headline {font-size: 36px; line-height: 47px; margin-bottom: 15px; font-weight: 600;}
.wipeslider .content .text {font-size: 22px; line-height: 32px; font-weight: 300; }
.wipeslider .outercontainer {width: 100%; max-width: 817px; display: inline-block;}
.wipeslider .twentytwenty-wrapper {max-width: 817px; }
.wipeslider .twentytwenty-wrapper img {clip: rect(0px, 817px, 462px, 0px);}

.youtube {display: flex; flex-wrap: wrap; justify-content: space-between;}
.youtube .youtube-player {position:relative; padding-bottom:56.25%; height:0; overflow:hidden;}
.youtube .youtube-player iframe {position:absolute; top:0; left:0; width:100%; height:100%; z-index:100; background:transparent;}
.youtube .youtube-player {position: relative; background: url('/typo3conf/ext/eas_sitepackage/Resources/Public/Images/preview.jpg') no-repeat center; background-size: cover;}
.youtube .youtube-player p { display: inline-block; color: #ffffff; padding: 50px 20px 175px 15px; hyphens: none; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; font-size: 16px; background-color: rgba(0, 0, 0, 0.7); margin-bottom: 0; text-align: center;}
.btn-primary {margin: 10px; background-color: var(--red);border-color: var(--red);border-radius:0px; text-transform: uppercase;}
.btn-primary:hover {background-color: #6f0012;border-color: #6f0012;}

.youtube .youtube-player .play {height:72px; width:72px; left:50%; top:70%; margin-left:-36px; margin-top:-36px; position:absolute; background:url('/typo3conf/ext/eas_sitepackage/Resources/Public/Images/play-button.png') no-repeat; cursor:pointer;}
.youtube .content .headline {font-size: 36px; line-height: 47px; margin-bottom: 30px; font-weight: 600;}
.youtube .content .text {font-size: 22px; line-height: 32px; font-weight: 300px; margin-bottom: 40px;}
.youtube .content .redbutton a {padding-left: 40px;}
.youtube .content .redbutton a:before {content:"arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: 3px; left: 10px; position: absolute; pointer-events: none; color: var(--white);}
.youtube .previewButton {background-color: #9f1a38; border: none; color: #ffffff; width: 227px; height: 50px;font-size: 16px; font-family: FuturaStd-Bold; cursor: pointer;}

.accordion .item {position: relative; max-width: 100%;}
.accordion.faq-accordeon .item {max-width: 100%;}
.accordion .item:before {content:"add"; font-family: 'Material Icons'; font-size: 30px; top: 17px; right: 20px; position: absolute; pointer-events: none; color: var(--red);}
.accordion .item.active:before {content:"remove"; color: var(--grey);}
.accordion .item .content {margin-top: -1px;height: 0;overflow: hidden;transition: all 0.2s;padding: 0 20px 0 20px;}
.accordion .item.active .content {display: block;height: auto; border-style:solid; border-image:linear-gradient(var(--red), transparent) 1; border-width: 2px; border-bottom:0; border-top: 0; padding: 0 20px 30px 20px;}
.accordion .item .headline {border: 2px solid var(--red); padding: 13px 50px 13px 20px;border-bottom: none; font-size: 20px; font-weight: 700; line-height: 38px; cursor: pointer;}
.accordion .item:last-child .headline {border-bottom: 2px solid var(--red);}
.accordion .item.active:last-child .headline {border-bottom: none;}
.accordion .item.active:last-child {border-bottom: 2px solid var(--red);}
.accordion .item.active .headline {color: var(--red);}

.keyvisual-loginseite {position: fixed; width: 100%; height: 100%; }
.keyvisual-loginseite img {height: 100%; object-fit: cover;}

.kacheln .kachel {box-shadow: 0px 0px 15px rgba(242, 242, 242, 1); border: 2px solid var(--white); position: relative; height: 134px; cursor: pointer; border-radius: 10px;}
.kacheln .kachel:hover {border: 2px solid var(--white); }
.kacheln .kachel.disabled:hover {border: 2px solid var(--white);}
.kacheln .kachel:before { content:"arrow_forward"; font-family: 'Material Icons'; font-size: 17px; bottom: 10px; right: 10px; position: absolute; pointer-events: none; color: var(--red); height: 24px; width: 24px; background-color: #f2f2f2; border-radius:50%; -webkit-border-radius:50%; -moz-border-radius:50%; -ms-border-radius:50%; -o-border-radius:50%; text-align: center;}
.kacheln .row {margin-bottom: 28px;}
.kacheln .kachel:hover:before {background-color: transparent;}
.kacheln .kachel.disabled:before {display: none;}
.kacheln .kachel .text {display: inline-block; font-size: 20px; color: var(--grey); font-weight: 600; margin-left: 20px; }
.kacheln .kachel a {display: block; padding: 45px 23px;  }
.kacheln .kachel.disabled a,
.kacheln .kachel.disabled {cursor: default;}
.kacheln .overlay-grey {background-color: rgba(131, 131, 131, 0.2); border-radius: 10px; cursor: default}

.plzsuche-startseite {background: url('/typo3conf/ext/eas_sitepackage/Resources/Public/Images/placeholder-map.svg'); background-position: center center; background-size: cover; width: 100%; max-width: 100%;}
.plzsuche-startseite .searchbox {max-width: var(--width-desktop); margin: 0 auto;}
.plzsuche-startseite .searchbox .headline h3 {color: var(--white); text-align: center;}
.plzsuche-startseite .searchbox .text {color: var(--white); text-align: center; margin-bottom: 15px;}
.plzsuche-startseite .searchbox input {height: 46px; background-color: transparent; border-right: none; color: var(--white);}
.plzsuche-startseite .searchbox input::placeholder {color: var(--white); opacity: 1;}
.plzsuche-startseite .searchbox .input-group {max-width: 250px; position: relative; margin: 0 auto; left: -16px;}
.plzsuche-startseite .searchbox .input-group-btn {position: relative; font-size: 0; white-space: nowrap;width: 1%; vertical-align: middle; display: table-cell; background-color: transparent; left: -1px;}
.plzsuche-startseite .searchbox .input-group-btn .btn {height: 46px; padding: 10px 16px; font-size: 1.125em; line-height: 1.3333333; border-radius: 6px; font-size: 16px;border-top-left-radius: 0; border-bottom-left-radius: 0; border: 1px solid #ccc; border-left: none; background-color: transparent;}
.plzsuche-startseite .searchbox .input-group-btn .btn:before {content:"search"; font-family: 'Material Icons'; font-size: 22px; top: 9px; left: 3px; position: absolute; color: var(--white);}

.default .frame.landingpage-title {padding-bottom: 30px;}
.landingpage-title .subheadline {letter-spacing: 2.8px; color: #4A4A49; text-transform: uppercase; font-size: 14px; margin-bottom: 16px;}
.landingpage-title .headline {font-size: 38px; font-weight: bold; letter-spacing: 0px; color: #222222; margin-bottom: 16px;}
.landingpage-title .link {margin-top: 20px;}
.landingpage-title .link a {position: relative; padding-left: 30px;}
.landingpage-title .link a:before {content: "arrow_forward"; font-family: 'Material Icons'; font-size: 22px; top: -5px; left: 0px; position: absolute; pointer-events: none; color: var(--red);}

.redbox .box {width: 196px; min-height: 329px; padding: 50px 14px 20px 14px; display: inline-block; background-color: #BE1622; vertical-align: top;}
.redbox .box1 {background-color: #BE1622;}
.redbox .box2 {margin-top: 113px;}
.redbox .box1,
.redbox .box2 {margin-right: 5px;}
.redbox .icon {margin-bottom: 40px; text-align: center;}
.redbox .icon img {margin: 0 auto;}
.redbox .headline {font-size: 24px; color: #ffffff; text-align: center; margin-bottom: 5px;}
.redbox .text {text-align: center; color: #ffffff;letter-spacing: 0px; line-height: 1;}

.kv_image.canvas {
    text-align:center;
    overflow-y: hidden;
}
.keyvisual-unterseite .kv_image.canvas img {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
.kv_image.canvas.kv_video_canvas .overlay-red {
    background-image: linear-gradient(179deg, var(--red) 0%, #0B84C700 30%), linear-gradient(161deg, var(--red) 0%, var(--red), var(--red));
    background-image: linear-gradient(179deg, var(--red) 0%, #0B84C700 30%), linear-gradient(161deg, var(--red) 0%, rgba(190, 22, 34, 0.34), #BE1622);
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: cover;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
  }
.kv_image.canvas.kv_video_canvas video{
    object-fit: cover;
    width: 100%;
    height: 100%;
}