.justify-items-start{justify-items:start}.justify-items-center{justify-items:center}.justify-items-end{justify-items:end}.content-start{align-content:start}.content-center{align-content:center}.content-end{align-content:end}.items-start{align-items:start}.items-center{align-items:center}.items-end{align-items:end}[class*=grid_]{display:grid;grid-gap:1rem}[class*=grid_]>.block{margin-bottom:0}@media(min-width: 576px){.grid_mobile_100{grid-template-columns:1fr}.grid_mobile_50_50{grid-template-columns:repeat(2, 1fr)}.grid_mobile_33_33_33{grid-template-columns:repeat(3, 1fr)}.grid_mobile_25_25_25_25{grid-template-columns:repeat(4, 1fr)}.grid_mobile_75_25{grid-template-columns:3fr 1fr}.grid_mobile_25_75{grid-template-columns:1fr 3fr}.grid_mobile_66_33{grid-template-columns:2fr 1fr}.grid_mobile_33_66{grid-template-columns:1fr 2fr}.grid_mobile_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_mobile_25_50_25{grid-template-columns:1fr 2fr 1fr}.grid_mobile_25_25_50{grid-template-columns:1fr 1fr 2fr}.grid_mobile_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_mobile_30_40_30{grid-template-columns:3fr 4fr 3fr}.grid_mobile_30_30_40{grid-template-columns:3fr 3fr 4fr}}@media(min-width: 768px){.grid_tablet_100{grid-template-columns:1fr}.grid_tablet_50_50{grid-template-columns:repeat(2, 1fr)}.grid_tablet_33_33_33{grid-template-columns:repeat(3, 1fr)}.grid_tablet_25_25_25_25{grid-template-columns:repeat(4, 1fr)}.grid_tablet_75_25{grid-template-columns:3fr 1fr}.grid_tablet_25_75{grid-template-columns:1fr 3fr}.grid_tablet_66_33{grid-template-columns:2fr 1fr}.grid_tablet_33_66{grid-template-columns:1fr 2fr}.grid_tablet_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_tablet_25_50_25{grid-template-columns:1fr 2fr 1fr}.grid_tablet_25_25_50{grid-template-columns:1fr 1fr 2fr}.grid_tablet_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_tablet_30_40_30{grid-template-columns:3fr 4fr 3fr}.grid_tablet_30_30_40{grid-template-columns:3fr 3fr 4fr}.grid_tablet_20_40_40{grid-template-columns:1fr 2fr 2fr}.grid_tablet_40_20_40{grid-template-columns:2fr 1fr 2fr}.grid_tablet_40_40_20{grid-template-columns:2fr 2fr 1fr}}@media(min-width: 992px){.grid_desktop_100{grid-template-columns:1fr}.grid_desktop_50_50{grid-template-columns:repeat(2, 1fr)}.grid_desktop_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_desktop_33_33_33{grid-template-columns:repeat(3, 1fr)}.grid_desktop_75_25{grid-template-columns:3fr 1fr}.grid_desktop_25_75{grid-template-columns:1fr 3fr}.grid_desktop_66_33{grid-template-columns:2fr 1fr}.grid_desktop_33_66{grid-template-columns:1fr 2fr}.grid_desktop_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_desktop_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_desktop_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_desktop_25_50_25{grid-template-columns:1fr 2fr 1fr}.grid_desktop_25_25_50{grid-template-columns:1fr 1fr 2fr}.grid_desktop_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_desktop_30_40_30{grid-template-columns:3fr 4fr 3fr}.grid_desktop_30_30_40{grid-template-columns:3fr 3fr 4fr}.grid_desktop_20_40_40{grid-template-columns:1fr 2fr 2fr}.grid_desktop_40_20_40{grid-template-columns:2fr 1fr 2fr}.grid_desktop_40_40_20{grid-template-columns:2fr 2fr 1fr}.grid_desktop_25_25_25_25{grid-template-columns:repeat(4, 1fr)}.grid_desktop_40_20_20_20{grid-template-columns:2fr 1fr 1fr 1fr}.grid_desktop_20_40_20_20{grid-template-columns:1fr 2fr 1fr 1fr}.grid_desktop_20_20_40_20{grid-template-columns:1fr 1fr 2fr 1fr}.grid_desktop_20_20_20_40{grid-template-columns:1fr 1fr 1fr 2fr}.grid_desktop_20_20_20_20_20{grid-template-columns:repeat(5, 1fr)}}

.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}}
.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible:not(.cc-hide-focus)+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-group{display:flex;flex-wrap:wrap;justify-content:space-between;align-content:center}.cc-group>label{flex-grow:1;margin:5px 0 5px 10px}.cc-cookies{display:none;width:100%}.cc-detail-btn{padding:8px 10px;line-height:1.2rem}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px}.cc-detail-btn,.cc-detail-btn-details{display:inline-block;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn span:nth-child(2),.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn.cc-active span:nth-child(1),.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn.cc-active span:nth-child(2),.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn:hover,.cc-detail-btn-details:hover{background:rgba(0,0,0,0);color:var(--ccb-detail-clr-hvr, #717171)}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
@charset "UTF-8";
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
}

html {
  --brand-color1:	#006A30;
  --brand-color2:	#FCEA10;
  --brand-black:	#060707;
  --gruen-100:	#e6f0ea;
  --gruen-200:	#cce1d6;
  --gruen-300:	#99c3ac;
  --gruen-400:	#66a683;
  --gruen-500:	#338859;
  --gruen-600: var(--brand-color1);
  --gruen-700:	#005526;
  --gruen-800:	#00401d;
  --gruen-900:	#00150a;
  --gelb-100:	#fffde7;
  --gelb-200:	#fefbcf;
  --gelb-300:	#fdf270;
  --gelb-400:	#fdee40;
  --gelb-500:	var(--brand-color2);
  --gelb-600:	#cabb0d;
  --gelb-700:	#978c0a;
  --gelb-800:	#655e06;
  --gelb-900:	#191702;
  --grau-100:	#F8F8F8;
  --grau-200:	#cdcdcd;
  --grau-300:	#b4b5b5;
  --grau-400:	#9b9c9c;
  --grau-500:	#838383;
  --grau-600:	#6a6a6a;
  --grau-700:	#515151;
  --grau-800:	#383939;
  --grau-900:	var(--brand-black);
  --base-color:	#fff;
  --text-color:	var(--brand-black);
  --text-color-light:	#fff;
  --heading-color:	var(--brand-color1);
  --secondary-heading-color:	var(--text-color);
  --action:	var(--brand-color1);
  --action-respond:	var(--text-color);
  --alert-yellow:	#ff0;
  --alert-blue:	#00f;
  --alert-red:	#f00;
  --alert-green:	#0f0;
}

/* roboto-condensed-regular - latin */
@font-face {
  font-display: swap;
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 400;
  src: url("/files/theme-solar/fonts/roboto-condensed-v27-latin-regular.woff2") format("woff2");
}
/* roboto-condensed-600 - latin */
@font-face {
  font-display: swap;
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 600;
  src: url("/files/theme-solar/fonts/roboto-condensed-v27-latin-600.woff2") format("woff2");
}
/* roboto-condensed-500 - latin */
@font-face {
  font-display: swap;
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 500;
  src: url("/files/theme-solar/fonts/roboto-condensed-v27-latin-500.woff2") format("woff2");
}
/* roboto-condensed-700 - latin */
@font-face {
  font-display: swap;
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 700;
  src: url("/files/theme-solar/fonts/roboto-condensed-v27-latin-700.woff2") format("woff2");
}
html {
  --base-font-size: 16px;
  --doc-font-size: 16;
  --base-line-height: 24px;
}

body {
  --font-family-sans:	"Roboto Condensed", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-family-serif: "Roboto Condensed", "Arial", "Droid sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-family-display:	var(--font-family-serif);
  --font-family-default:	var(--font-family-sans);
  --fw-l:	400;
  --fw-n:	400;
  --fw-sb:	500;
  --fw-b:	600;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

.invisible, .ce_form .widget-radio .radio_container > span input, .ce_form .widget-checkbox .checkbox_container > span input {
  border: 0 none;
  clip: rect(0px, 0px, 0px, 0px);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.invisibleAccessible,
.sr-only {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

/*Make Contao Elements visble at all*/
.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.centered {
  text-align: center;
}

p.centered {
  text-wrap: balance;
}

.listreset, .ce_downloads ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */
/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */
q {
  quotes: "“" "”" "‘" "’";
}

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/******************************************************************
CUSTOMIZED RESET VALUES
I added these extra styles as a more personalized reset. Feel free
to remove them if you like or add your own. If you want to update
the normalize styles, make sure to edit from this point up.
******************************************************************/
b, strong, .strong {
  font-weight: bold;
}

em, .em {
  font-style: italic;
}

small {
  font-size: 75%;
}

dd {
  margin: 0;
}

html {
  font-size: 100%;
  font-family: var(--font-family-default);
  --border-radius: 5px;
}

html, body {
  font-family: var(--font-family-default);
  font-weight: var(--fw-n);
  line-height: 1.5;
  color: var(--text-color);
  overflow-x: hidden;
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}
p {
  margin: 0 0 0.75em 0;
}

::-moz-selection {
  background: var(--grau-500);
  color: #fff;
  text-shadow: none;
}

::-moz-selection,
::selection {
  background: var(--grau-500);
  color: #fff;
  text-shadow: none;
}

html {
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  --spacingtop: 2;
  --spacingbottom: 2;
}

.mtop0 {
  --spacingtop: 0;
}

.mtop10 {
  --spacingtop: 10;
}

.mtop20 {
  --spacingtop: 20;
}

.mtop30 {
  --spacingtop: 30;
}

.mtop40 {
  --spacingtop: 40;
}

.mtop50 {
  --spacingtop: 50;
}

.mtop60 {
  --spacingtop: 60;
}

.mtop70 {
  --spacingtop: 70;
}

.mtop80 {
  --spacingtop: 80;
}

.mtop90 {
  --spacingtop: 90;
}

.mtop100 {
  --spacingtop: 100;
}

.mtop150 {
  --spacingtop: 150;
}

.mtop200 {
  --spacingtop: 200;
}

.mtop300 {
  --spacingtop: 300;
}

.mbottom0 {
  --spacingbottom: 0;
}

.mbottom10 {
  --spacingbottom: 10;
}

.mbottom20 {
  --spacingbottom: 20;
}

.mbottom30 {
  --spacingbottom: 30;
}

.mbottom40 {
  --spacingbottom: 40;
}

.mbottom50 {
  --spacingbottom: 50;
}

.mbottom60 {
  --spacingbottom: 60;
}

.mbottom70 {
  --spacingbottom: 70;
}

.mbottom80 {
  --spacingbottom: 80;
}

.mbottom90 {
  --spacingbottom: 90;
}

.mbottom100 {
  --spacingbottom: 100;
}

.mbottom150 {
  --spacingbottom: 150;
}

.mbottom200 {
  --spacingbottom: 200;
}

.mbottom300 {
  --spacingbottom: 300;
}

.ptop0 {
  --spacingtop: 0;
}

.ptop10 {
  --spacingtop: 10;
}

.ptop20 {
  --spacingtop: 20;
}

.ptop30 {
  --spacingtop: 30;
}

.ptop40 {
  --spacingtop: 40;
}

.ptop50 {
  --spacingtop: 50;
}

.ptop60 {
  --spacingtop: 60;
}

.ptop70 {
  --spacingtop: 70;
}

.ptop80 {
  --spacingtop: 80;
}

.ptop90 {
  --spacingtop: 90;
}

.ptop100 {
  --spacingtop: 100;
}

.ptop150 {
  --spacingtop: 150;
}

.ptop200 {
  --spacingtop: 200;
}

.ptop300 {
  --spacingtop: 300;
}

.pbottom0 {
  --spacingbottom: 0;
}

.pbottom10 {
  --spacingbottom: 10;
}

.pbottom20 {
  --spacingbottom: 20;
}

.pbottom30 {
  --spacingbottom: 30;
}

.pbottom40 {
  --spacingbottom: 40;
}

.pbottom50 {
  --spacingbottom: 50;
}

.pbottom60 {
  --spacingbottom: 60;
}

.pbottom70 {
  --spacingbottom: 70;
}

.pbottom80 {
  --spacingbottom: 80;
}

.pbottom90 {
  --spacingbottom: 90;
}

.pbottom100 {
  --spacingbottom: 100;
}

.pbottom150 {
  --spacingbottom: 150;
}

.pbottom200 {
  --spacingbottom: 200;
}

.pbottom300 {
  --spacingbottom: 300;
}

[class*=mtop] {
  margin-top: calc(var(--spacingtop) * 1px);
}

[class*=mbottom] {
  margin-bottom: calc(var(--spacingbottom) * 1px);
}

[class*=mtop].ppercent {
  margin-top: calc(var(--spacingtop) * 0.1%);
}

[class*=mbottom].ppercent {
  margin-bottom: calc(var(--spacingbottom) * 0.1%);
}

[class*=ptop],
.mod_article[class*=ptop] {
  padding-top: calc(var(--spacingtop) * 1px);
}

[class*=pbottom],
.mod_article[class*=pbottom] {
  padding-bottom: calc(var(--spacingbottom) * 1px);
}

[class*=ptop].ppercent,
.mod_article[class*=ptop].ppercent {
  padding-top: calc(var(--spacingtop) * 0.1%);
}

[class*=pbottom].ppercent,
.mod_article[class*=pbottom].ppercent {
  padding-bottom: calc(var(--spacingbottom) * 0.1%);
}

.innerpadding {
  padding-left: 1rem;
  padding-right: 1rem;
}

h1, h2, h3, h4, h5, h6 .all-headlines {
  line-height: 1.2;
  text-wrap: balance;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 .all-headlines a {
  text-decoration: none;
  color: inherit;
}

[class^=ce_] h2:first-of-type,
[class^=ce_] h3:first-of-type,
[class^=ce_] h4:first-of-type,
[class^=ce_] h5:first-of-type,
[class^=ce_] h6:first-of-type {
  margin-top: 0;
}

h1 {
  font-family: var(--font-family-display);
  font-weight: var(--fw-sb);
  color: var(--heading-color);
  margin: 0 0 0.5em 0;
  font-size: 1.75rem;
}
@media screen and (min-width: 768px) {
  h1 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  h1 {
    font-size: 2.4rem;
  }
}

h2 {
  font-family: var(--font-family-display);
  font-weight: var(--fw-sb);
  color: var(--text-color);
  margin: 0.75em 0 0.5em 0;
  font-size: 1.375rem;
}
@media screen and (min-width: 768px) {
  h2 {
    font-size: 1.5555556rem;
  }
}
@media screen and (min-width: 1200px) {
  h2 {
    font-size: 1.8rem;
  }
}

h3 {
  font-family: var(--font-family-display);
  font-weight: var(--fw-sb);
  color: var(--heading-color);
  margin: 0.75em 0 0.5em 0;
  font-size: 1.25rem;
}
@media screen and (min-width: 768px) {
  h3 {
    font-size: 1.3333333rem;
  }
}
@media screen and (min-width: 1200px) {
  h3 {
    font-size: 1.4rem;
  }
}

h4 {
  font-family: var(--font-family-display);
  font-weight: var(--fw-b);
  color: var(--heading-color);
  margin: 0.75em 0 0.5em 0;
  font-size: 1.125rem;
}
@media screen and (min-width: 768px) {
  h4 {
    font-size: 1.1111111rem;
  }
}
@media screen and (min-width: 1200px) {
  h4 {
    font-size: 1.2rem;
  }
}

h5 {
  font-family: var(--font-family-display);
  font-weight: var(--fw-b);
  color: var(--text-color);
  margin: 0.75em 0 0.5em 0;
  font-size: 1rem;
}
@media screen and (min-width: 1200px) {
  h5 {
    font-size: 1.1rem;
  }
}

h6 {
  font-family: var(--font-family-display);
  font-weight: var(--fw-b);
  color: var(--text-color);
  margin: 0.75em 0 0.5em 0;
  font-size: 1rem;
}

img, picture {
  max-width: 100%;
  height: auto;
  line-height: 0;
}

figure {
  line-height: 0;
  margin: 0;
}

figcaption {
  line-height: 1.2;
}

/*Fix für Caption auf Bildbreite beschränken*/
figure img {
  display: block;
}

figcaption {
  caption-side: bottom;
}

/*Alle Bilder ohne Alt-Attribut kennzeichen*/
/*sollte für Production auskommentiert werden!*/
img:not([alt]) {
  border: 5px dashed #c00;
}

/*Behebt Probleme mit responsiven Bildern
//https://community.contao.org/de/showthread.php?81074-Problem-mit-Bildgr%C3%B6%C3%9Fen-bei-responsive-Ausgabe-(seit-Kurzem)&p=545407&viewfull=1#post545407
*/
:where(source[width][height] ~ img) {
  width: auto;
  height: auto;
}

a {
  color: var(--action);
  text-decoration: underline;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
a:hover, a:focus {
  color: var(--action-respond);
}

:focus {
  outline: 1px dashed var(--grau-700);
}

a[href^=tel] {
  display: block;
  text-decoration: none;
  color: var(--text-color);
  padding-left: 2.5rem;
  line-height: 2rem;
  font-weight: var(--fw-b);
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M28.44 25.38a3.426 3.426 0 0 1-1.179 1.91 7 7 0 0 1-4.984 2.085h-.433a14.631 14.631 0 0 1-5.607-1.45h-.013c-.407-.189-.827-.378-1.233-.609a25.5 25.5 0 0 1-5.58-4.24 24.256 24.256 0 0 1-5.2-7.056 15.59 15.59 0 0 1-1.358-4.59 8.507 8.507 0 0 1 .543-4.945 9.103 9.103 0 0 1 1.53-1.909 2.925 2.925 0 0 1 2.127-.99 3.347 3.347 0 0 1 2.25 1.247c.61.663 1.353 1.354 1.964 1.991l.84.827c.493.437.798 1.048.853 1.706 0 .604-.223 1.187-.624 1.639-.26.316-.536.618-.827.907l-.27.284a1.376 1.376 0 0 0-.352.529 1.573 1.573 0 0 0-.08.61c.214.574.552 1.097.986 1.53.68.92 1.356 1.72 2.047 2.587a17.2 17.2 0 0 0 4.387 3.644c.17.124.364.206.57.242.18.014.36-.013.528-.08a4.784 4.784 0 0 0 1.246-1.057 2.898 2.898 0 0 1 1.896-1.043 2.71 2.71 0 0 1 1.897.814c.27.229.568.541.853.84l.406.418.42.407.718.73c.428.38.831.787 1.206 1.22.376.52.545 1.165.473 1.802Zm-4.861-9.279a1.03 1.03 0 0 1-1.016-1.016 5.826 5.826 0 0 0-5.838-5.837 1.016 1.016 0 0 1 0-2.032 7.858 7.858 0 0 1 7.87 7.87 1.015 1.015 0 0 1-1.016 1.015Z' fill='%23006A30'/%3E%3Cpath d='M28.279 15.627a1.03 1.03 0 0 1-1.016-1.015 9.94 9.94 0 0 0-9.942-9.956 1.016 1.016 0 1 1 0-2.03 11.973 11.973 0 0 1 11.974 11.986 1.017 1.017 0 0 1-1.016 1.015Z' fill='%23006A30'/%3E%3C/svg%3E");
  background-size: 2rem;
  background-repeat: no-repeat;
  background-position: left center;
}

a[href^=tel].mobile {
  text-decoration: none;
  color: var(--text-color);
  padding-left: 1.2em;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M28.44 25.38a3.426 3.426 0 0 1-1.179 1.91 7 7 0 0 1-4.984 2.085h-.433a14.631 14.631 0 0 1-5.607-1.45h-.013c-.407-.189-.827-.378-1.233-.609a25.5 25.5 0 0 1-5.58-4.24 24.256 24.256 0 0 1-5.2-7.056 15.59 15.59 0 0 1-1.358-4.59 8.507 8.507 0 0 1 .543-4.945 9.103 9.103 0 0 1 1.53-1.909 2.925 2.925 0 0 1 2.127-.99 3.347 3.347 0 0 1 2.25 1.247c.61.663 1.353 1.354 1.964 1.991l.84.827c.493.437.798 1.048.853 1.706 0 .604-.223 1.187-.624 1.639-.26.316-.536.618-.827.907l-.27.284a1.376 1.376 0 0 0-.352.529 1.573 1.573 0 0 0-.08.61c.214.574.552 1.097.986 1.53.68.92 1.356 1.72 2.047 2.587a17.2 17.2 0 0 0 4.387 3.644c.17.124.364.206.57.242.18.014.36-.013.528-.08a4.784 4.784 0 0 0 1.246-1.057 2.898 2.898 0 0 1 1.896-1.043 2.71 2.71 0 0 1 1.897.814c.27.229.568.541.853.84l.406.418.42.407.718.73c.428.38.831.787 1.206 1.22.376.52.545 1.165.473 1.802Zm-4.861-9.279a1.03 1.03 0 0 1-1.016-1.016 5.826 5.826 0 0 0-5.838-5.837 1.016 1.016 0 0 1 0-2.032 7.858 7.858 0 0 1 7.87 7.87 1.015 1.015 0 0 1-1.016 1.015Z' fill='%23006A30'/%3E%3Cpath d='M28.279 15.627a1.03 1.03 0 0 1-1.016-1.015 9.94 9.94 0 0 0-9.942-9.956 1.016 1.016 0 1 1 0-2.03 11.973 11.973 0 0 1 11.974 11.986 1.017 1.017 0 0 1-1.016 1.015Z' fill='%23006A30'/%3E%3C/svg%3E");
  background-size: 1em;
  background-repeat: no-repeat;
  background-position: left center;
}

a[href^=mailto] {
  text-decoration: none;
  color: var(--text-color);
  padding-left: 1.2em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath fill='%232f5a8f' d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4l-8 5l-8-5V6l8 5l8-5z'/%3E%3C/svg%3E");
  background-size: 1em;
  background-repeat: no-repeat;
  background-position: left center;
}

.content-kontakt a[href^=tel] {
  color: var(--text-color);
  padding-left: 1.25em;
  line-height: 1.5;
  font-weight: var(--fw-n);
  background-size: 1em;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M28.44 25.38a3.426 3.426 0 0 1-1.179 1.91 7 7 0 0 1-4.984 2.085h-.433a14.631 14.631 0 0 1-5.607-1.45h-.013c-.407-.189-.827-.378-1.233-.609a25.5 25.5 0 0 1-5.58-4.24 24.256 24.256 0 0 1-5.2-7.056 15.59 15.59 0 0 1-1.358-4.59 8.507 8.507 0 0 1 .543-4.945 9.103 9.103 0 0 1 1.53-1.909 2.925 2.925 0 0 1 2.127-.99 3.347 3.347 0 0 1 2.25 1.247c.61.663 1.353 1.354 1.964 1.991l.84.827c.493.437.798 1.048.853 1.706 0 .604-.223 1.187-.624 1.639-.26.316-.536.618-.827.907l-.27.284a1.376 1.376 0 0 0-.352.529 1.573 1.573 0 0 0-.08.61c.214.574.552 1.097.986 1.53.68.92 1.356 1.72 2.047 2.587a17.2 17.2 0 0 0 4.387 3.644c.17.124.364.206.57.242.18.014.36-.013.528-.08a4.784 4.784 0 0 0 1.246-1.057 2.898 2.898 0 0 1 1.896-1.043 2.71 2.71 0 0 1 1.897.814c.27.229.568.541.853.84l.406.418.42.407.718.73c.428.38.831.787 1.206 1.22.376.52.545 1.165.473 1.802Zm-4.861-9.279a1.03 1.03 0 0 1-1.016-1.016 5.826 5.826 0 0 0-5.838-5.837 1.016 1.016 0 0 1 0-2.032 7.858 7.858 0 0 1 7.87 7.87 1.015 1.015 0 0 1-1.016 1.015Z' fill='%23006A30'/%3E%3Cpath d='M28.279 15.627a1.03 1.03 0 0 1-1.016-1.015 9.94 9.94 0 0 0-9.942-9.956 1.016 1.016 0 1 1 0-2.03 11.973 11.973 0 0 1 11.974 11.986 1.017 1.017 0 0 1-1.016 1.015Z' fill='%23006A30'/%3E%3C/svg%3E");
}
.content-kontakt a[href^=mailto] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath fill='%23006A30' d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4l-8 5l-8-5V6l8 5l8-5z'/%3E%3C/svg%3E");
  background-size: 1em;
  padding-left: 1.25em;
  line-height: 1.5;
}

#footer a[href^=tel] {
  padding-left: 1.25em;
  line-height: 1;
  font-weight: var(--fw-n);
  background-size: 1em;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M28.44 25.38a3.426 3.426 0 0 1-1.179 1.91 7 7 0 0 1-4.984 2.085h-.433a14.631 14.631 0 0 1-5.607-1.45h-.013c-.407-.189-.827-.378-1.233-.609a25.5 25.5 0 0 1-5.58-4.24 24.256 24.256 0 0 1-5.2-7.056 15.59 15.59 0 0 1-1.358-4.59 8.507 8.507 0 0 1 .543-4.945 9.103 9.103 0 0 1 1.53-1.909 2.925 2.925 0 0 1 2.127-.99 3.347 3.347 0 0 1 2.25 1.247c.61.663 1.353 1.354 1.964 1.991l.84.827c.493.437.798 1.048.853 1.706 0 .604-.223 1.187-.624 1.639-.26.316-.536.618-.827.907l-.27.284a1.376 1.376 0 0 0-.352.529 1.573 1.573 0 0 0-.08.61c.214.574.552 1.097.986 1.53.68.92 1.356 1.72 2.047 2.587a17.2 17.2 0 0 0 4.387 3.644c.17.124.364.206.57.242.18.014.36-.013.528-.08a4.784 4.784 0 0 0 1.246-1.057 2.898 2.898 0 0 1 1.896-1.043 2.71 2.71 0 0 1 1.897.814c.27.229.568.541.853.84l.406.418.42.407.718.73c.428.38.831.787 1.206 1.22.376.52.545 1.165.473 1.802Zm-4.861-9.279a1.03 1.03 0 0 1-1.016-1.016 5.826 5.826 0 0 0-5.838-5.837 1.016 1.016 0 0 1 0-2.032 7.858 7.858 0 0 1 7.87 7.87 1.015 1.015 0 0 1-1.016 1.015Z' fill='%23FCEA10'/%3E%3Cpath d='M28.279 15.627a1.03 1.03 0 0 1-1.016-1.015 9.94 9.94 0 0 0-9.942-9.956 1.016 1.016 0 1 1 0-2.03 11.973 11.973 0 0 1 11.974 11.986 1.017 1.017 0 0 1-1.016 1.015Z' fill='%23FCEA10'/%3E%3C/svg%3E");
}
#footer a[href^=mailto] {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24'%3E%3Cpath fill='%23FCEA10' d='M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m0 4l-8 5l-8-5V6l8 5l8-5z'/%3E%3C/svg%3E");
}

ul li, ol li {
  color: inherit;
}

ul {
  list-style-type: disc;
}

ol {
  list-style-type: decimal;
}

.checklist ul {
  list-style: none;
  margin: 0 0 1.5rem 0;
  padding: 0;
}
.checklist li {
  padding-left: 1.5rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 14 14' height='14' width='14'%3E%3Cg id='check--check-form-validation-checkmark-success-add-addition-tick'%3E%3Cpath id='Vector (Stroke)' fill='%230f682e' fill-rule='evenodd' d='M13.637 1.198a1 1 0 0 1 0.134 1.408l-8.04 9.73 -0.003 0.002a1.924 1.924 0 0 1 -1.5 0.693 1.924 1.924 0 0 1 -1.5 -0.75L0.21 9.045a1 1 0 1 1 1.578 -1.228l2.464 3.167 7.976 -9.652a1 1 0 0 1 1.408 -0.134Z' clip-rule='evenodd' stroke-width='1'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left top 0.4rem;
  margin-bottom: 0.5rem;
}

.checklist-circle ul {
  list-style: none;
  margin: 0 0 1.5rem 0;
  padding: 0;
}
.checklist-circle li {
  padding-left: 1.75rem;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22' height='22' width='22'%3E%3Ccircle cx='11' cy='11' r='10' fill='%23006A30'/%3E%3Cpath d='m8.768 14.26-2.604-2.604a.687.687 0 0 0-.971.971l3.09 3.09a.687.687 0 0 0 .97 0l7.554-7.553a.687.687 0 0 0-.97-.971L8.767 14.26Z' fill='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left top;
  line-height: 1.5;
  margin-bottom: 0.5rem;
}

.numberlist-circle ol {
  list-style: none;
  margin: 0 0 1.5rem 0;
  padding: 0;
  counter-reset: list-number;
}
.numberlist-circle ol li {
  padding-left: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23006A30'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 24px;
  line-height: 1.5;
  margin-bottom: 0.5rem;
  position: relative;
}
.numberlist-circle ol li::before {
  counter-increment: list-number;
  content: counter(list-number);
  color: #fff;
  font-size: 13px;
  font-weight: var(--fw-sb);
  position: absolute;
  left: 9px;
  top: 2px;
}

html {
  background-color: var(--grau-100);
}

body {
  margin: 0 auto;
  background-color: #fff;
}

.wrapper {
  min-height: 100vh;
}

.wrap, .mod_article .wrap-article, .left-aside-right .container, .aside-right .container, .aside-left .container {
  max-width: 1440px;
  margin: 0 auto;
}
@media screen and (max-width: 1480px) {
  .wrap, .mod_article .wrap-article, .left-aside-right .container, .aside-right .container, .aside-left .container {
    padding: 0 1rem 0 1rem;
  }
}

.container {
  background-color: #fff;
  position: relative;
}

/*
.inside {

} */
.aside-left .container {
  --layout-column-gap: 5rem;
  -ms-grid-columns: 25% var(--layout-column-gap) calc(75% - var(--layout-column-gap));
  grid-template-columns: 25% calc(75% - var(--layout-column-gap));
      grid-template-areas: "aside-left main";
  grid-column-gap: var(--layout-column-gap);
}
@media screen and (min-width: 990px) {
  .aside-left .container {
    display: -ms-grid;
    display: grid;
  }
}
.aside-left .container .left {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: aside-left;
}

.aside-right .container {
  --layout-column-gap: 5rem;
  -ms-grid-columns: calc(75% - var(--layout-column-gap)) var(--layout-column-gap) 25%;
  grid-template-columns: calc(75% - var(--layout-column-gap)) 25%;
      grid-template-areas: "main aside-right ";
  grid-column-gap: var(--layout-column-gap);
}
@media screen and (min-width: 990px) {
  .aside-right .container {
    display: -ms-grid;
    display: grid;
  }
}
.aside-right .container .right {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: aside-right;
}

.left-aside-right .container {
  --layout-column-gap: 3rem;
  -ms-grid-columns: 25% var(--layout-column-gap) calc(50% - var(--layout-column-gap) * 2) var(--layout-column-gap) 25%;
  grid-template-columns: 25% calc(50% - var(--layout-column-gap) * 2) 25%;
      grid-template-areas: "aside-left main aside-right ";
  grid-column-gap: var(--layout-column-gap);
}
@media screen and (min-width: 990px) {
  .left-aside-right .container {
    display: -ms-grid;
    display: grid;
  }
}
.left-aside-right .container .left {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: aside-left;
}
.left-aside-right .container .right {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: aside-right;
}

:root {
  --header-height: 80px;
  --topheader-height: 40px;
  --header-padding: .5rem;
}
@media screen and (min-width: 768px) {
  :root {
    --header-height: 112px;
    --header-padding: 1rem;
  }
}

#header {
  background: #fff;
  color: var(--grau-900);
  height: var(--header-height);
  z-index: 10;
  position: relative;
}
@media screen and (min-width: 1280px) {
  #header {
    height: calc(var(--header-height) + var(--topheader-height));
  }
}
#header .inside {
  max-width: 1600px;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: var(--header-padding) calc(var(--header-padding) * 2);
}
.scroll--down #header.fixed-active {
  --header-height: 80px;
  --topheader-height: 0;
  --header-padding: .5rem;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  -webkit-box-shadow: 0 4px 8px -4px rgba(0, 0, 0, 0.15);
          box-shadow: 0 4px 8px -4px rgba(0, 0, 0, 0.15);
}
.scroll--up #header.fixed-active {
  --header-height: 80px;
  --topheader-height: 40px;
  --header-padding: .5rem;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  -webkit-box-shadow: 0 4px 8px -4px rgba(0, 0, 0, 0.15);
          box-shadow: 0 4px 8px -4px rgba(0, 0, 0, 0.15);
}
@media screen and (min-width: 768px) {
  .scroll--up #header.fixed-active .inside {
    padding: var(--header-padding) calc(var(--header-padding) * 4);
  }
}
#header.fixed-active + #container {
  margin-top: calc(var(--header-height) + var(--topheader-height));
}
#header .logo {
  margin-right: auto;
}
#header .logo img {
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  height: calc(var(--header-height) - var(--header-padding) * 2);
  width: auto;
  max-height: 80px;
}
@media screen and (max-width: 500px) {
  #header .ce_hyperlink {
    display: none;
  }
}
#header .mainnav {
  display: none;
}
@media screen and (min-width: 1280px) {
  #header .mainnav {
    display: block;
  }
}

#topheader {
  display: none;
  background-color: var(--grau-100);
  height: var(--topheader-height);
  visibility: visible;
  opacity: 1;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
@media screen and (min-width: 1280px) {
  #topheader {
    display: block;
  }
}
.scroll--down .fixed-active #topheader {
  opacity: 0;
  visibility: hidden;
}
.scroll--up .fixed-active #topheader {
  opacity: 10;
  visibility: visible;
}
#topheader .inside {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-line-pack: center;
      align-content: center;
  padding: 0 calc(var(--header-padding) * 2);
}

#footer {
  background: var(--brand-black);
  color: #fff;
  padding: 1rem;
}
#footer * {
  color: inherit;
}
@media screen and (min-width: 768px) {
  #footer {
    padding: 2.5rem 1rem;
  }
}
@media screen and (min-width: 1200px) {
  #footer {
    padding: 4rem 1rem;
  }
}
#footer .inside {
  max-width: 1600px;
  margin-inline: auto;
}
#footer .logo {
  margin-bottom: 1rem;
}
#footer .logo img {
  max-width: 300px;
}
#footer a {
  font-size: inherit;
}
#footer a:hover, #footer a:focus {
  color: var(--brand-color2);
  text-decoration: underline;
}

.mod_article {
  --article-bg-color: transparent;
  --article-color: var(--text-color);
  --ce-color: var(--text-color);
  --ce-color-invert: var(--brand-color1);
  color: var(--article-color);
  background-color: var(--article-bg-color);
  padding: calc(var(--spacingtop) * 1rem) 1rem calc(var(--spacingbottom) * 1rem) 1rem;
  padding: calc(var(--spacingtop) * 1rem) 1rem calc(var(--spacingbottom) * 1rem) 1rem;
}
@media screen and (min-width: 768px) {
  .mod_article {
    padding: calc(var(--spacingtop) * 2rem) 1rem calc(var(--spacingbottom) * 2rem) 1rem;
  }
}
@media screen and (min-width: 1440px) {
  .mod_article {
    padding: calc(var(--spacingtop) * 3rem) 0 calc(var(--spacingbottom) * 3rem) 0;
  }
}
.mod_article .wrap-article {
  z-index: 2;
  position: relative;
  padding-left: 0;
  padding-right: 0;
}
.mod_article.nopadding {
  padding: 0;
}
.mod_article.nowrap .wrap-article {
  max-width: 100%;
}
.mod_article.full-width .wrap-article {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
.mod_article.bg-black-pattern {
  --article-bg-color: var(--brand-black);
  --article-color: var(--text-color-light);
  --ce-color: var(--text-color-light);
  opacity: 1;
  background-image: linear-gradient(#1f1f1f 1.8px, transparent 1.8px), linear-gradient(to right, #1f1f1f 1.8px, #000000 1.8px);
  background-size: 108px 36px;
}
.mod_article.bg-brand1 {
  --article-bg-color: var(--brand-color1);
  --article-color: var(--text-color-light);
  --ce-color: var(--text-color-light);
  --ce-color-invert: var(--brand-color2);
}
.mod_article.bg-dunkelgruen {
  --article-bg-color: var(--gruen-800);
  --article-color: var(--text-color-light);
  --ce-color: var(--text-color-light);
  --ce-color-invert: var(--brand-color2);
}
.mod_article.bg-brand2 {
  --article-bg-color: var(--brand-color2);
}
.mod_article.bg-white {
  --article-bg-color: #fff;
}
.mod_article.bg-lightgrey {
  background-color: var(--grau-100);
}
.mod_article.bg-lightgreen {
  background-color: var(--gruen-100);
}

#hero {
  padding: 0;
  height: calc(100vh - var(--header-height));
  overflow: hidden;
}
#hero .wrap-article {
  display: -ms-grid;
  display: grid;
  max-width: unset;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
      grid-template-areas: "hero";
  padding: 0;
  height: 100%;
}
#hero .hero-video {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: hero;
  z-index: 1;
  position: relative;
  bottom: 0;
  height: calc(100vh - var(--header-height));
}
@media screen and (min-width: 768px) {
  #hero .hero-video {
    left: 0;
  }
}
#hero .hero-video video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 990px) {
  #hero .hero-video video {
    width: auto;
    height: 100%;
    min-width: 100%;
  }
}
@media screen and (min-width: 1480px) {
  #hero .hero-video video {
    width: 100vw;
    height: auto;
    min-width: unset;
  }
}
#hero .hero-video .video_container {
  height: 100%;
  position: relative;
}
#hero .hero-image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: hero;
  z-index: 1;
  position: relative;
  bottom: 0;
  height: calc(100vh - var(--header-height));
}
@media screen and (min-width: 768px) {
  #hero .hero-image {
    left: 0;
  }
}
#hero .hero-content {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: hero;
  z-index: 2;
  background-color: rgba(6, 6, 6, 0.5);
  border-radius: calc(4 * var(--border-radius));
  -ms-grid-row-align: center;
  -ms-grid-column-align: center;
  place-self: center;
  color: var(--text-color-light);
  padding: 2rem;
  max-width: calc(100vw - 2rem);
  text-align: center;
}
@media screen and (min-width: 990px) {
  #hero .hero-content {
    max-width: 60vw;
  }
}
@media screen and (min-width: 1480px) {
  #hero .hero-content {
    max-width: 50vw;
  }
}
#hero .hero-content h1 {
  --hero-font-size: 2rem;
  --hero-font-size-dachzeile: 1rem;
  color: var(--text-color-light);
  font-size: var(--hero-font-size);
  margin-bottom: 1.25rem;
}
@media screen and (min-width: 768px) {
  #hero .hero-content h1 {
    --hero-font-size: 2.75rem;
    --hero-font-size-dachzeile: 1.25rem;
  }
}
@media screen and (min-width: 1200px) {
  #hero .hero-content h1 {
    --hero-font-size: 3.75rem;
    --hero-font-size-dachzeile: 1.5rem;
  }
}
#hero .hero-content h1 .hero-headline__content {
  display: block;
  max-width: 24ch;
  text-wrap: balance;
  position: relative;
}
#hero .hero-content h1 .hero-headline__content--neu::before {
  content: "Neu!";
  background-color: var(--brand-color2);
  font-size: 1rem;
  display: inline-block;
  padding: 0.5rem;
  border-radius: 99em;
  color: var(--text-color);
  aspect-ratio: 1;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-transform: translateY(calc(var(--hero-font-size) * -0.625)) rotate(-20deg);
          transform: translateY(calc(var(--hero-font-size) * -0.625)) rotate(-20deg);
}
#hero .hero-content h1 .hero-headline__dachzeile {
  display: block;
  font-size: var(--hero-font-size-dachzeile);
  color: var(--brand-color2);
  text-transform: uppercase;
  font-weight: var(--fw-n);
  margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
  #dreibloecke {
    --spacingbottom: 1;
    margin-top: -10rem;
  }
}

#solarpanele {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: relative;
}
@media screen and (max-width: 480px) {
  #solarpanele {
    background-image: url("/files/theme-rechner/img/backgrounds/solaranlagennrw-solarpanele-xs_728059988.webp");
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  #solarpanele {
    background-image: url("/files/theme-rechner/img/backgrounds/solaranlagennrw-solarpanele-s_728059988.webp");
  }
}
@media screen and (min-width: 769px) and (max-width: 990px) {
  #solarpanele {
    background-image: url("/files/theme-rechner/img/backgrounds/solaranlagennrw-solarpanele-m_728059988.webp");
  }
}
@media screen and (min-width: 991px) and (max-width: 1400px) {
  #solarpanele {
    background-image: url("/files/theme-rechner/img/backgrounds/solaranlagennrw-solarpanele-l_728059988.webp");
  }
}
@media screen and (min-width: 1401px) and (max-width: 1920px) {
  #solarpanele {
    background-image: url("/files/theme-rechner/img/backgrounds/solaranlagennrw-solarpanele-xl_728059988.webp");
  }
}
@media screen and (min-width: 1921px) {
  #solarpanele {
    background-image: url("/files/theme-rechner/img/backgrounds/solaranlagennrw-solarpanele-xxl_728059988.webp");
  }
}
#solarpanele::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
}
#solarpanele .wrap-article {
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  #content-hero {
    min-height: 540px;
  }
  #content-hero .wrap-article,
  #content-hero .wrap-article > section {
    min-height: 540px;
  }
}
#content-hero .ce_image,
#content-hero .ce_image figure,
#content-hero .ce_player,
#content-hero .ce_player figure {
  height: 100%;
}
#content-hero .ce_image img,
#content-hero .ce_player video {
  border-radius: 0;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

@supports (grid-area: auto) {
  [class*=grid_] {
    --gap-default: 1rem;
    --gap-value: var(--gap-default);
    grid-column-gap: var(--gap-value);
    grid-row-gap: var(--gap-value);
  }
  @media screen and (min-width: 768px) {
    [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 2);
    }
  }
  @media screen and (min-width: 990px) {
    [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 3);
    }
  }
  * + .ce_cp_grid_start {
    margin-top: calc(var(--gap-default) * 2);
  }
  .grid-gap-null [class*=grid_] {
    --gap-default: 0;
  }
  @media screen and (min-width: 768px) {
    .grid-gap-big [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 3);
    }
  }
  @media screen and (min-width: 990px) {
    .grid-gap-big [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 5);
    }
  }
  @media screen and (min-width: 990px) {
    .grid-gap-medium [class*=grid_] {
      grid-gap: 3rem;
    }
  }
  @media screen and (min-width: 768px) {
    .grid-gap-small [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 1.5);
    }
  }
  @media screen and (min-width: 990px) {
    .grid-gap-small [class*=grid_] {
      --gap-value: calc(var(--gap-default) * 2);
    }
  }
  .grid-item-padding {
    padding: 1rem;
  }
  @media screen and (min-width: 768px) {
    .grid-item-padding {
      padding: 2rem;
    }
  }
  .grid-item-padding-hero {
    padding: 1rem;
  }
  @media screen and (min-width: 768px) {
    .grid-item-padding-hero {
      padding: 2rem;
    }
  }
  @media screen and (min-width: 1200px) {
    .grid-item-padding-hero {
      padding: 4rem;
    }
  }
}
.flexbox .grid_start {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flexbox.flexcenter .grid_start {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* Contao elements */
.ce_headline.centered {
  text-align: center;
}

.ce_text:after {
  content: "";
  display: table;
  clear: both;
}
.ce_text.textcenter {
  text-align: center;
}
.ce_text.textcenter p {
  text-wrap: balance;
}

blockquote {
  padding: 0.25rem 0 1rem 0;
  margin: 0;
  font-size: 1.5rem;
  font-style: italic;
  color: var(--grau-700);
}
blockquote p {
  margin: 0;
  color: inherit;
  font-size: inherit;
}

blockquote p {
  position: relative;
  padding-left: 4rem;
  position: relative;
  z-index: 2;
}
blockquote p:before {
  content: "„";
  position: absolute;
  left: 32px;
  top: -24px;
  font-size: 6rem;
  line-height: 0;
  color: var(--brand-color1);
  z-index: 1;
}
blockquote footer {
  font-size: 0.8rem;
  text-align: right;
}

main .ce_hyperlink {
  margin: 1rem 0;
}

.ce_text {
  overflow: auto;
}
@media screen and (min-width: 768px) {
  .ce_text figure.float_right {
    float: right;
    margin: 0 0 1.5rem 1.5rem;
  }
  .ce_text figure.float_left {
    float: left;
    margin: 0 1.5rem 1.5rem 0;
  }
}
.ce_text.box-iconlinks {
  padding: 1rem;
  border-radius: calc(var(--border-radius) * 4);
  background-color: #fff;
  -webkit-box-shadow: -2px 4px 12px 0px rgba(16, 28, 2, 0.08);
          box-shadow: -2px 4px 12px 0px rgba(16, 28, 2, 0.08);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .ce_text.box-iconlinks {
    padding: 3rem 1rem;
    text-align: left;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.375rem;
  }
}
.ce_text.box-iconlinks.box-iconlinks--neu .box-content {
  position: relative;
}
.ce_text.box-iconlinks.box-iconlinks--neu .box-content::before {
  content: "Neu!";
  background-color: var(--brand-color2);
  font-size: 1rem;
  display: inline-block;
  padding: 0.5rem;
  border-radius: 99em;
  color: var(--text-color);
  aspect-ratio: 1;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
  position: absolute;
  top: 0;
  right: 0;
}
.ce_text.box-iconlinks figure {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
}
.ce_text.box-iconlinks p {
  margin-bottom: 0;
}
@media screen and (max-width: 1600px) {
  .ce_text.box-iconlinks p {
    text-wrap: balance;
  }
}
.ce_text.box-iconlinks strong {
  font-style: normal;
  font-size: 1.375rem;
  font-weight: var(--fw-sb);
  margin-bottom: 0.875rem;
  display: block;
}
.ce_text.card-icon {
  background-color: #fff;
  border-radius: calc(var(--border-radius) * 4);
  padding: 1rem;
  text-align: center;
}
.ce_text.card-icon h1, .ce_text.card-icon h2, .ce_text.card-icon h3, .ce_text.card-icon h4, .ce_text.card-icon h5, .ce_text.card-icon h6 {
  color: var(--text-color);
}
@media screen and (min-width: 768px) {
  .ce_text.card-icon {
    padding: 2rem;
  }
}
.ce_text.card-icon p {
  text-wrap: balance;
}
.ce_text.card-icon figure {
  margin-block: 0.5rem;
}
.ce_text.card-icon img {
  margin-inline: auto;
}

.badge--neu {
  position: relative;
}
.badge--neu::before {
  content: "Neu!";
  background-color: var(--brand-color2);
  font-size: 1.5rem;
  font-weight: var(--fw-b);
  display: inline-block;
  padding: 0.5rem;
  border-radius: 99em;
  color: var(--text-color);
  aspect-ratio: 1;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-transform: rotate(20deg);
          transform: rotate(20deg);
  top: 10px;
  right: 10px;
  position: absolute;
}

.ce_list.zweispaltig {
  margin-block: 2rem;
}
.ce_list.zweispaltig ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.75rem;
}
.ce_list.zweispaltig li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 45%;
          flex: 0 0 45%;
}

.flex-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3rem;
}

[href^=tel].decolink--tel {
  font-weight: var(--fw-n);
  line-height: 1.2;
}
[href^=tel].decolink--tel span {
  font-size: 1.375em;
}

.content-headlinedachzeile {
  text-align: center;
  margin-bottom: 2rem;
}
.content-headlinedachzeile.textleft {
  text-align: left;
}
.content-headlinedachzeile .dachzeile {
  color: var(--ce-color-invert);
  font-weight: var(--fw-sb);
  margin-bottom: 0;
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .content-headlinedachzeile .dachzeile {
    font-size: 1.25rem;
  }
}
.content-headlinedachzeile .hl {
  line-height: 1.3;
  color: var(--ce-color);
  text-wrap: balance;
  font-weight: var(--fw-sb);
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .content-headlinedachzeile .hl {
    font-size: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .content-headlinedachzeile .hl {
    font-size: 2.5rem;
  }
}

.content-card-iconimage {
  background-color: #fff;
  border-radius: calc(var(--border-radius) * 4);
  -webkit-box-shadow: -2px 4px 12px 0px rgba(16, 28, 2, 0.08);
          box-shadow: -2px 4px 12px 0px rgba(16, 28, 2, 0.08);
  overflow: hidden;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  border-bottom: 1rem;
}
.content-card-iconimage .card__image, .content-card-iconimage picture {
  overflow: hidden;
  display: block;
  line-height: 0;
}
.content-card-iconimage a {
  text-decoration: none;
}
.content-card-iconimage img {
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}
.content-card-iconimage:hover {
  -webkit-box-shadow: -2px 4px 16px 0px rgba(16, 28, 2, 0.15);
          box-shadow: -2px 4px 16px 0px rgba(16, 28, 2, 0.15);
}
.content-card-iconimage:hover .card__image img {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.content-card-iconimage:hover .card__title {
  color: var(--brand-color1);
}
.content-card-iconimage .card__title {
  text-decoration: none;
  color: var(--text-color);
  margin-block: 2rem;
  text-align: center;
  font-size: 1.5rem;
  font-weight: var(--fw-sb);
  -webkit-transition: color 0.3s linear;
  transition: color 0.3s linear;
}
.content-card-iconimage .card__icon {
  text-align: center;
  position: relative;
}
.content-card-iconimage .card__icon img {
  margin-inline: center;
}
.content-card-iconimage .card__icon .card__icon--inner {
  background-color: #fff;
  width: calc(80px + 0.75rem);
  height: calc(80px + 0.75rem);
  text-align: center;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 2;
}
.content-card-iconimage .card__icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background-color: var(--brand-color1);
  z-index: 1;
}

.kundenstimme .kundenstimme__inner {
  background-color: #fff;
  border-radius: var(--border-radius);
  padding: 1rem 2rem;
  margin: 0 2.5rem 2rem 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 300px;
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 67 58'%3E%3Cpath opacity='.2' d='M56.955.1c4.473.512 7.398 2.731 8.775 6.657 1.376 3.755 1.634 7.937.774 12.546-.516 2.39-1.29 5.206-2.323 8.449-1.032 3.243-2.495 6.656-4.387 10.24-1.893 3.415-4.301 6.743-7.226 9.986-2.753 3.243-6.108 6.145-10.065 8.705-1.72 1.024-3.097 1.451-4.13 1.28-.86-.17-1.462-.597-1.806-1.28-.344-.853-.43-1.792-.258-2.816.344-1.195 1.032-2.304 2.065-3.328 1.892-2.049 3.87-4.95 5.935-8.706a40.898 40.898 0 0 0 4.646-12.545c-2.065.512-3.613.683-4.646.512-2.752-.341-5.075-1.536-6.968-3.585-1.892-2.218-2.58-5.376-2.064-9.473.86-4.95 3.44-9.046 7.742-12.29C47.32 1.04 51.966-.411 56.955.1ZM21.857.1c4.473.512 7.312 2.731 8.516 6.657 1.377 3.755 1.635 7.937.775 12.546-.345 2.39-1.033 5.206-2.065 8.449-1.032 3.243-2.58 6.656-4.645 10.24-1.893 3.415-4.302 6.743-7.226 9.986-2.753 3.243-6.108 6.145-10.065 8.705-1.72 1.024-3.097 1.451-4.13 1.28-.86-.17-1.462-.597-1.806-1.28-.344-.853-.43-1.792-.258-2.816.344-1.195.946-2.304 1.806-3.328 1.893-2.049 3.872-4.95 5.936-8.706a40.895 40.895 0 0 0 4.645-12.545c-1.72.512-3.182.683-4.387.512-2.753-.341-5.075-1.536-6.968-3.585C.265 23.997-.337 20.84.18 16.742c.344-2.56 1.204-4.864 2.58-6.913C4.136 7.61 5.77 5.733 7.663 4.197a20.555 20.555 0 0 1 6.71-3.329A21.934 21.934 0 0 1 21.857.1Z' fill='%23FCEA10'/%3E%3C/svg%3E");
  background-position: top 1rem left 1rem;
  background-repeat: no-repeat;
  background-size: auto 25%;
}
@media screen and (min-width: 768px) {
  .kundenstimme .kundenstimme__inner {
    padding: 1rem 5rem;
  }
}
.kundenstimme blockquote {
  padding: 0;
  margin: 0;
  font-size: 1.75rem;
  font-style: italic;
  color: var(--brand-color1);
  line-height: 1.2;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.kundenstimme blockquote p {
  margin: 0;
  color: inherit;
  font-size: inherit;
  text-wrap: balance;
}
.kundenstimme blockquote p::before {
  content: unset;
}
.kundenstimme blockquote .kundenstimme__footer {
  font-size: 0.825rem;
  margin: 1rem 0 2rem 0;
  color: var(--text-color);
}
.kundenstimme blockquote .ort:before,
.kundenstimme blockquote .zusatz:before {
  content: "–";
}
.kundenstimme blockquote .kundenstimme__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.kundenstimme blockquote .kundenstimme__content .zitat {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.kundenstimme blockquote img {
  border-radius: 999em;
  width: 100px;
  height: 100px;
}

.slider-kundenstimmen {
  margin: 0 auto;
  --swiper-theme-color: #fff;
}
@media screen and (min-width: 768px) {
  .slider-kundenstimmen {
    max-width: 80vw;
  }
}
@media screen and (min-width: 1400px) {
  .slider-kundenstimmen {
    max-width: 50vw;
  }
}

.ce_cp_grid_start.bg-white {
  background-color: #fff;
  border-radius: calc(var(--border-radius) * 4);
  overflow: hidden;
}

.ce_rsce_fakt,
.content-fakt {
  text-align: center;
  line-height: 1.2;
}
.ce_rsce_fakt .faktzahl,
.content-fakt .faktzahl {
  font-size: 2.5rem;
  font-weight: var(--fw-b);
}
.ce_rsce_fakt .faktname,
.content-fakt .faktname {
  font-size: 1.25rem;
  font-weight: var(--fw-sb);
}

nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
nav li {
  position: relative;
}
nav a {
  display: block;
  text-decoration: none;
  color: var(--text-color);
  font-size: 1.125rem;
}
nav a:hover, nav a:focus {
  color: var(--action-respond);
}

.mainnav {
  --size-activedot: .5rem;
}
.mainnav ul.level_1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.mainnav ul.level_1 > li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.mainnav ul.level_1 > li::after {
  content: "";
  position: absolute;
  top: 100%;
  left: calc(50% - 2px);
  width: var(--size-activedot);
  height: 0;
  background-color: var(--brand-color1);
  -webkit-transition: height 0.2s ease-in;
  transition: height 0.2s ease-in;
  border-radius: 50%;
}
.mainnav ul.level_1 > li:hover::after, .mainnav ul.level_1 > li:focus::after, .mainnav ul.level_1 > li.active::after {
  height: var(--size-activedot);
}
.mainnav ul.level_1 > li:hover .level_2, .mainnav ul.level_1 > li:focus .level_2 {
  visibility: visible;
  opacity: 1;
  top: 100%;
}
.mainnav a {
  padding: 0.25rem 1rem;
  max-width: 18ch;
  text-align: center;
}
.mainnav a:hover, .mainnav a:focus {
  color: var(--brand-color1);
}
.mainnav .level_2 {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 120%;
  left: 0;
  z-index: 2;
  width: 100%;
  background-color: #fff;
  border: 1px solid #eee;
  -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.25);
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.ce_cookiebarOpener a {
  text-decoration: none;
}

.metanav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
  margin: 0;
  padding: 0;
}
.metanav .level_1 a {
  font-size: 1rem;
  color: var(--grau-700);
  padding-block: 0.75rem;
  display: inline-block;
  line-height: 1;
}
.metanav .level_1 a.active {
  color: var(--brand-color1);
  font-weight: var(--fw-b);
}
.metanav .level_1 a:hover,
.metanav .level_1 a:focus {
  color: var(--brand-color1);
  text-decoration: underline;
}

.btn-mobilemenu {
  border: none;
  background-color: transparent;
  width: 40px;
  height: 40px;
  position: relative;
  margin: 0 0 0 0.5rem;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
  -webkit-transform: translateY(0.5rem);
          transform: translateY(0.5rem);
}
.btn-mobilemenu strong {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}
.btn-mobilemenu span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: var(--brand-color1);
  border-radius: 3px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
}
.btn-mobilemenu span:nth-child(1) {
  top: 0px;
  -webkit-transform-origin: left center;
          transform-origin: left center;
}
.btn-mobilemenu span:nth-child(2) {
  top: 10px;
  -webkit-transform-origin: left center;
          transform-origin: left center;
}
.btn-mobilemenu span:nth-child(3) {
  top: 20px;
  -webkit-transform-origin: left center;
          transform-origin: left center;
}
.mobile_menu.active .btn-mobilemenu span:nth-child(1), .mobile_menu_trigger.active .btn-mobilemenu span:nth-child(1) {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 4px;
  left: 5px;
}
.mobile_menu.active .btn-mobilemenu span:nth-child(2), .mobile_menu_trigger.active .btn-mobilemenu span:nth-child(2) {
  width: 0%;
  opacity: 0;
}
.mobile_menu.active .btn-mobilemenu span:nth-child(3), .mobile_menu_trigger.active .btn-mobilemenu span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 32px;
  left: 5px;
}

.mod_mobile_menu {
  display: block;
}
@media screen and (min-width: 1280px) {
  .mod_mobile_menu {
    display: none;
  }
}

.mobile_menu .offcanvas-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
}
.mobile_menu .offcanvas-header button {
  margin-left: 0.5rem;
  -ms-flex-preferred-size: 40px;
      flex-basis: 40px;
}
.mobile_menu .inner {
  background-color: #fff;
  padding: 1rem;
}
.mobile_menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.mobile_menu ul.level_2 {
  padding-left: 1rem;
  margin-left: 0.5rem;
}
.mobile_menu a {
  display: block;
  color: var(--brand-color1);
  text-decoration: none;
  padding: 0.5em;
}
.mobile_menu a:hover, .mobile_menu a:focus {
  background-color: var(--brand-color1);
  color: #fff;
}
.mobile_menu a.trail, .mobile_menu a.active {
  font-weight: bold;
}
.mobile_menu li {
  position: relative;
}

.mod_breadcrumb {
  display: none;
  font-size: 0.875rem;
}
@media screen and (min-width: 900px) {
  .mod_breadcrumb {
    font-size: 0.75rem;
  }
}
@media screen and (min-width: 768px) {
  .mod_breadcrumb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .mod_breadcrumb ol {
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0;
    padding: 0;
  }
  .mod_breadcrumb li {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    font-size: 1em;
  }
  .mod_breadcrumb li.active {
    font-weight: var(--fw-b);
  }
  .mod_breadcrumb li:not(.last):after {
    content: ">";
    display: inline-block;
    margin: 0 0.25rem;
  }
  .mod_breadcrumb a {
    font-size: 1em;
    color: var(--text-color);
    -webkit-transition: 0;
    transition: 0;
  }
  .mod_breadcrumb a:hover, .mod_breadcrumb a:focus {
    color: var(--grau-700);
  }
  .mod_breadcrumb .breadcrumb-name {
    margin-right: 0.5rem;
  }
}
.mod_breadcrumb .navicon a:hover .icon-home, .mod_breadcrumb .navicon a:focus .icon-home {
  color: var(--grau-700);
}
.mod_breadcrumb .icon-home {
  -webkit-transform: translateY(0.1rem);
          transform: translateY(0.1rem);
  margin-right: 0;
  height: 18px;
  width: 18px;
  color: var(--grau-500);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.button {
  display: block;
  --button-bg-color: var(--brand-color1);
  --button-border-color: var(--brand-color1);
  --button-color: var(--text-color-light);
  --button-padding: .5rem 1.5rem;
  --action: var(--button-color);
  --action-respond: var(--button-color);
}
.button a {
  display: inline-block;
  padding: var(--button-padding);
  text-align: center;
  border: 1px solid var(--button-border-color);
  background-color: var(--button-bg-color);
  color: var(--button-color);
  text-decoration: none;
  border-radius: var(--border-radius);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.button a:hover, .button a:focus {
  --button-border-color: var(--gelb-700);
  --button-bg-color: var(--brand-color2);
  --button-color: var(--text-color);
  text-decoration: none;
}
.button.button-center {
  text-align: center;
}
.button.button-center .inner {
  display: inline-block;
  margin-inline: auto;
}
.button.button-green-skeleton a {
  --button-bg-color: transparent;
  --button-color: var(--brand-color1);
  --button-border-color: var(--brand-color1);
}
.button.button-green-skeleton a:hover, .button.button-green-skeleton a:focus {
  --button-bg-color: var(--brand-color1);
  --button-border-color: var(--brand-color1);
  --button-color: var(--text-color-light);
}
.button.button-white-skeleton a {
  --button-bg-color: transparent;
  --button-color: var(--text-color-light);
  --button-border-color: var(--text-color-light);
}
.button.button-white-skeleton a:hover, .button.button-white-skeleton a:focus {
  --button-bg-color: var(--text-color-light);
  --button-border-color: var(--text-color-light);
  --button-color: var(--brand-color1);
}
.button.button-gelb a {
  --button-bg-color: var(--brand-color2);
  --button-border-color: var(--brand-color2);
  --button-color: var(--text-color);
}
.button.button-gelb a:hover, .button.button-gelb a:focus {
  --button-bg-color: var(--text-color-light);
  --button-border-color: var(--brand-color2);
}
.button.button-cta {
  --button-padding: .25rem 1rem;
  margin-left: 1rem;
}

.ce_download {
  --download-color: #000000;
  --download-background: var(--grau-200);
  --download-border-weight: 1px;
  --download-border-style: solid;
  --download-border-color: var(--grau-400);
  --download-action-color: #ffffff;
  --download-action-background: var(--grau-700);
  --download-action-border-color: var(--grau-800);
}

.ce_download {
  display: inline-block;
  /* Display the extension as file*/
}
.ce_download a {
  display: block;
  padding: 0.5em 0.5em 0.5em 2.5rem;
  color: var(--download-color);
  background-color: var(--download-background);
  border: var(--download-border-weight) var(--download-border-style) var(--download-border-color);
  background-repeat: no-repeat;
  background-position: left 0.25rem center;
  background-size: 1.5rem;
  text-decoration: none;
}
.ce_download a:hover, .ce_download a:focus {
  border-color: var(--download-action-border-color);
  background-color: var(--download-action-background);
  color: var(--download-action-color);
}
.ce_download .download-element a {
  padding: 0.5rem;
}
.ce_download .download-element a:before {
  content: attr(data-type);
  display: inline-block;
  vertical-align: middle;
  height: 1.5rem;
  width: 1.2rem;
  font-size: 8px;
  line-height: 240%;
  text-align: center;
  border: 1px solid var(--download-border-color);
  border-radius: 5px 2px 2px 2px;
  padding: 0.2rem;
  margin-right: 0.3rem;
}

.ce_downloads li {
  padding-left: 1rem;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxZW0iIGhlaWdodD0iMWVtIiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGZpbGw9IiM4ODg4ODgiIGQ9Ik0xOSA5aC00VjNIOXY2SDVsNyA3bDctN3pNNSAxOHYyaDE0di0ySDV6Ii8+PC9zdmc+) left top 0.5em no-repeat;
}

.mod_faqpage article {
  display: -ms-grid;
  display: grid;
  gap: 1rem 2rem;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .mod_faqpage article {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}

.ce_accordion {
  margin-bottom: 0.25rem;
}
.ce_accordion .toggler {
  background-color: var(--base-color);
  color: var(--brand-color1);
  font-size: 1.5rem;
  padding: 0.375em 1rem;
  cursor: pointer;
  -webkit-transition: background-color 0.3s ease-in;
  transition: background-color 0.3s ease-in;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: left;
  border: 1px solid var(--gruen-200);
  border-radius: var(--border-radius);
}
.ce_accordion .toggler h3 {
  font-size: inherit;
  margin-bottom: 0;
  color: inherit;
}
.ce_accordion .toggler:hover, .ce_accordion .toggler:focus {
  border: 1px solid var(--brand-color1);
  background-color: var(--brand-color1);
  color: #fff;
}
.ce_accordion .toggler.active {
  border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.ce_accordion .ui-accordion-header-icon {
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M28 14c0 7.732-6.268 14-14 14S0 21.732 0 14 6.268 0 14 0s14 6.268 14 14Z' fill='%23006A30'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M14 27c7.18 0 13-5.82 13-13S21.18 1 14 1 1 6.82 1 14s5.82 13 13 13Zm0 1c7.732 0 14-6.268 14-14S21.732 0 14 0 0 6.268 0 14s6.268 14 14 14Z' fill='%23fff'/%3E%3Cpath d='M20.645 12.482v3.213H7v-3.213h13.645ZM15.559 7v14.492h-3.46V7h3.46Z' fill='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: cover;
  width: 1.5rem;
  height: 1.5rem;
  display: inline-block;
  margin-left: auto;
  -webkit-transform: translateY(0.125rem);
          transform: translateY(0.125rem);
  -webkit-box-flex: 0;
      -ms-flex: 0 0 24px;
          flex: 0 0 24px;
}
.ce_accordion .toggler.active .ui-accordion-header-icon {
  background-image: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M28 14c0 7.732-6.268 14-14 14S0 21.732 0 14 6.268 0 14 0s14 6.268 14 14Z' fill='%23006A30'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M14 27c7.18 0 13-5.82 13-13S21.18 1 14 1 1 6.82 1 14s5.82 13 13 13Zm0 1c7.732 0 14-6.268 14-14S21.732 0 14 0 0 6.268 0 14s6.268 14 14 14Z' fill='%23fff'/%3E%3Cpath d='M20.645 12.482v3.213H7v-3.213h13.645Z' fill='%23fff'/%3E%3C/svg%3E");
}
.ce_accordion .accordion {
  background-color: var(--gruen-100);
  color: var(--text-color);
  padding: 1rem 3rem;
  font-size: 1.125rem;
  border-radius: 0 0 var(--border-radius) var(--border-radius);
}

.ce_form {
  /*Variable Werte für Grundstyle*/
  --field-border-color:	transparent;
  --field-background:	var(--grau-100);
  --field-color:	var(--text-color);
  --label-color:	var(--brand-color1);
  --field-alert-color:	red;
  --field-valid-color:	var(--text-color);
  --field-invalid-color:	var(--grau-800);
  --field-border-radius:	5px;
  --field-border-width:	1px;
  --field-border-style:	solid;
  --field-padding:	.75rem 1rem;
  --checkbox-size:	1.5rem;
  --abstand-widget:	1rem;
  --color-rangeslider:	var(--text-color);
}

/*Klassen für @extend*/
.fieldreset, .ce_form .widget-checkbox.dsgvo fieldset, .ce_form fieldset.invisiblefieldset {
  border: none;
  padding: 0;
}

/*Basic Styles*/
.ce_form input,
.ce_form label {
  display: block;
}
.ce_form label,
.ce_form legend {
  color: var(--label-color);
  font-weight: var(--fw-sb);
}
.ce_form label span.mandatory,
.ce_form legend span.mandatory {
  color: var(--brand-color1);
}
.ce_form input,
.ce_form textarea {
  width: 100%;
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
  padding: var(--field-padding);
  background-color: var(--field-background);
  color: var(--field-colord);
  border-radius: var(--field-border-radius);
}
.ce_form input:focus,
.ce_form textarea:focus {
  border: 1px solid var(--brand-color1);
  background-color: var(--gruen-100);
}
.ce_form input:valid {
  color: var(--field-valid-color);
}
.ce_form input:invalid {
  color: var(--field-invalid-color);
}
.ce_form fieldset {
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
}
.ce_form .ce_cp_grid_start .widget {
  margin-block: 0;
}
.ce_form .widget {
  margin-block: var(--abstand-widget);
}
.ce_form .widget-checkbox .checkbox_container > span {
  display: block;
  position: relative;
}
.ce_form .widget-checkbox .checkbox_container > span label {
  padding-left: 30px;
}
.ce_form .widget-checkbox .checkbox_container > span label::before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  height: var(--checkbox-size);
  width: var(--checkbox-size);
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
  background: var(--field-background);
  text-align: center;
  cursor: pointer;
}
.ce_form .widget-checkbox .checkbox_container > span input:checked ~ label::before {
  content: "✔ ";
  line-height: 1;
  font-size: var(--checkbox-size);
  color: var(--text-color);
}
.ce_form .widget-checkbox.dsgvo legend {
  display: none;
}
.ce_form .widget-radio .radio_container > span {
  display: block;
  position: relative;
}
.ce_form .widget-radio .radio_container > span label {
  padding-left: 30px;
}
.ce_form .widget-radio .radio_container > span label::before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  height: var(--checkbox-size);
  width: var(--checkbox-size);
  border-radius: 50%;
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
  background: var(--field-background);
  text-align: center;
  cursor: pointer;
}
.ce_form .widget-radio .radio_container > span input:checked ~ label::before {
  content: "✔ ";
  line-height: 1;
  font-size: var(--checkbox-size);
  color: var(--text-color);
}
.ce_form .widget-submit button {
  margin-block: var(--abstand-widget);
  background: var(--brand-color1);
  color: #fff;
  font-weight: var(--fw-sb);
  padding: 0.5em 1.5em;
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
  border-radius: var(--field-border-radius);
  cursor: pointer;
}
.ce_form .widget-submit button:hover {
  background: var(--brand-color2);
  --field-border-color: var(--gelb-600);
  color: var(--text-color);
}
.ce_form .widget-select,
.ce_form .ctlg_form_field.select {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.ce_form .widget-select::after,
.ce_form .ctlg_form_field.select::after {
  content: "▼";
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 0.5rem 0.2em;
  cursor: pointer;
  pointer-events: none;
  -webkit-transition: 0.25s all ease;
  transition: 0.25s all ease;
  color: var(--field-colord);
}
.ce_form .widget-select label,
.ce_form .ctlg_form_field.select label {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.ce_form .widget-select select,
.ce_form .ctlg_form_field.select select {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  width: 100%;
  padding: var(--field-padding);
  border: var(--field-border-width) var(--field-border-style) var(--field-border-color);
  background: var(--field-background);
  color: var(--field-colord);
  cursor: pointer;
  border-radius: var(--field-border-radius);
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}
.ce_form .widget-select select option,
.ce_form .ctlg_form_field.select select option {
  padding: var(--field-padding);
  color: var(--field-colord);
}
.ce_form .widget-range .range {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 100%;
  height: 25px;
  background: var(--field-background);
  outline: none;
  opacity: 0.7;
  -webkit-transition: 0.2s;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.ce_form .widget-range .range:hover, .ce_form .widget-range .range:focus {
  opacity: 1;
}
.ce_form .widget-range .range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  background: var(--color-rangeslider);
  cursor: pointer;
}
.ce_form .widget-range .range::-moz-range-thumb {
  width: 25px;
  height: 25px;
  background: var(--color-rangeslider);
  cursor: pointer;
}
.ce_form .ce_cp_grid_start {
  margin: 0;
}

.ce_gallery ul {
  --gap-default: 1rem;
  --gap-value: var(--gap-default);
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  grid-gap: var(--gap-value);
  -ms-grid-columns: 1fr var(--gap-value) 1fr;
  grid-template-columns: 1fr 1fr;
  place-content: center;
}
@media screen and (min-width: 768px) {
  .ce_gallery ul {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 990px) {
  .ce_gallery ul {
    --gap-value: calc(var(--gap-default) * 2);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul {
    --gap-value: calc(var(--gap-default) * 3);
  }
}
.ce_gallery ul li {
  margin: 0;
  display: -ms-grid;
  display: grid;
  place-content: center;
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_2 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_3 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_4 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_5 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_5 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(5, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_6 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_6 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(6, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_7 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_7 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(7, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_8 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_8 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(8, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_9 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(5, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_9 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(9, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_10 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(5, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_10 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(10, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_11 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(6, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_11 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(11, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .ce_gallery ul.cols_12 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(6, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .ce_gallery ul.cols_12 {
    -ms-grid-columns: 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr var(--gap-value) 1fr;
    grid-template-columns: repeat(12, 1fr);
  }
}
.ce_gallery.grid-gap-null ul {
  grid-gap: 0;
}
.ce_gallery.item-bg-white li {
  background-color: #fff;
  border-radius: calc(var(--border-radius) * 2);
  padding: 1rem;
}

.ce_image:not(.logo) img {
  border-radius: 5px;
  overflow: hidden;
}
.ce_image:not(.logo).centered figure {
  display: inline-block;
}

table {
  --table-border-width: 1px;
  --table-border-style: solid;
  --table-border-color: transparent;
  --table-color: var(--brand-black);
  --table-even-background: var(--grau-100);
  --table-odd-background: var(--grau-100);
  --table-cell-padding: .5rem 1rem;
  --table-th-padding: var(--table-cell-padding);
  --table-row-action-respond-background: #c7c7c7;
  --table-caption-color: rgb(61, 61, 61);
  --table-th-background: var(--brand-color1);
  --table-th-color: rgb(255, 255, 255);
  --table-th-body-background: var(--brand-color1);
  --table-tfoot-fontsize: .7rem;
}

.ce_table + .ce_table {
  margin-top: 1.5rem;
}

.ce_table.table-60-40 td.col_0 {
  width: 60%;
}
.ce_table.table-60-40 td.col_1 {
  width: 40%;
}

table {
  width: 100%;
}
table caption {
  color: var(--table-caption-color);
}
table td, table th {
  border: var(--table-border-width) var(--table-border-style) var(--table-border-color);
  padding: var(--table-cell-padding);
}
table tr:nth-child(even) {
  background-color: var(--table-even-background);
}
table tr:nth-child(odd) {
  background-color: var(--table-odd-background);
}
table tr:hover {
  background-color: var(--table-row-action-respond-background);
}
table th {
  padding: var(--table-th-padding);
  text-align: left;
  background-color: var(--table-th-background);
  color: var(--table-th-color);
}
table tbody th {
  background-color: var(--table-th-body-background);
}
table tfoot td, table tfoot th {
  font-size: var(--table-tfoot-fontsize);
}

.ce_table,
.ce_text:has(table) {
  overflow-x: auto;
}

.video_container .responsive {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.video_container .responsive:hover {
  cursor: pointer;
}
.video_container .responsive.ratio-169 {
  padding-bottom: 56.25%;
}
.video_container .responsive.ratio-916 {
  padding-bottom: 0;
  height: auto;
  overflow: inherit;
  max-width: auto;
}
.video_container .responsive.ratio-916 iframe {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 9/16 !important;
}

.video_container .responsive iframe,
.video_container .responsive object,
.video_container .responsive embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.video_container .responsive figure {
  opacity: 0.75;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.video_container .responsive figure:hover,
.video_container .responsive figure:focus {
  opacity: 1;
}
.video_container .responsive figure:hover figcaption,
.video_container .responsive figure:focus figcaption {
  height: auto;
  bottom: 0;
}
.video_container .responsive figure:focus {
  outline: 4px dashed var(--grau-500);
  outline-offset: -4px;
}
.video_container .responsive figure:focus figcaption {
  height: auto;
  bottom: 0;
}
.video_container .responsive figcaption {
  position: absolute;
  bottom: -100%;
  left: 0;
  right: 0;
  top: auto;
  background-color: rgba(255, 255, 255, 0.9);
  color: var(--grau-800);
  text-align: center;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  padding: 2rem 0.5rem;
  font-weight: var(--fw-b);
}

.ce_player .video_container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.ce_player .video_container video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

[id^=splashImage] {
  position: relative;
  display: block;
  border: 1px solid var(--grau-200);
}
[id^=splashImage]::after {
  content: url("data:image/svg+xml,%3Csvg fill='none' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 271 271'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M135.5 271c74.835 0 135.5-60.665 135.5-135.5C271 60.665 210.335 0 135.5 0 60.665 0 0 60.665 0 135.5 0 210.335 60.665 271 135.5 271Zm-30.795-82.161 92.386-53.339-92.386-53.34V188.84Z' fill='url(%23paint0_radial_446_11)'/%3E%3Cdefs%3E%3CradialGradient id='paint0_radial_446_11' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='rotate(90 0 135.5) scale(135.5)'%3E%3Cstop stop-color='%23fff' stop-opacity='.3'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='.8'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/svg%3E");
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  opacity: 0.8;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
[id^=splashImage]:hover::after, [id^=splashImage]:focus::after {
  opacity: 1;
}

.mod_search {
  margin: 1rem 0;
}
.mod_search .formbody {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  max-width: 30rem;
  margin: 0 auto 2rem auto;
}
.mod_search .formbody .widget-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.mod_search .formbody .widget-text label {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
}
.mod_search .formbody .widget-text input {
  height: 40px;
  padding: 0.5em;
  border: 1px solid var(--grau-300);
  border-radius: 5px 0 0 5px;
  background-color: var(--grau-100);
  color: var(--grau-900);
  width: 100%;
}
.mod_search .formbody .widget-submit {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mod_search .formbody .widget-submit button {
  height: 40px;
  width: auto;
  background: var(--grau-400);
  border: none;
  border-radius: 0 5px 5px 0;
  color: var(--grau-900);
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.mod_search .formbody .widget-submit button:hover, .mod_search .formbody .widget-submit button:focus {
  background-color: var(--grau-800);
  color: var(--grau-100);
  cursor: pointer;
}
.mod_search .header {
  margin-bottom: 2rem;
}
.mod_search > div {
  margin-bottom: 2rem;
}
.mod_search h3 {
  font-family: var(--font-family-default);
  font-weight: var(--fw-sb);
  margin-bottom: 0.25em;
  color: var(--grau-700);
}
.mod_search .relevance, .mod_search .url {
  font-size: 0.75rem;
  color: var(--grau-600);
  font-weight: normal;
}
.mod_search .context {
  margin-bottom: 0.25em;
}
.mod_search .highlight {
  background-color: var(--grau-200);
  padding: 0 0.2em;
}
.mod_search .url {
  color: var(--grau-600);
}

.pagination p {
  margin: 0;
}
.pagination ul {
  margin: 0;
  display: block;
}
.pagination li {
  display: inline-block;
  margin-right: 0.3rem;
  margin-bottom: 0.3em;
}
.pagination a,
.pagination .active {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  background: var(--grau-100);
  border: 1px solid var(--grau-300);
  text-align: center;
  text-decoration: none;
  color: var(--text-color);
  line-height: 2.5rem;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.pagination .active {
  background: var(--grau-700);
  border: 1px solid var(--grau-700);
  color: var(--grau-100);
}
.pagination a.next,
.pagination a.previous,
.pagination a.first,
.pagination a.last {
  width: auto;
  padding: 0 0.5em;
}
.pagination a:hover,
.pagination a:focus {
  background: var(--grau-700);
  border: 1px solid var(--grau-700);
  color: #fff;
}

.ce_tabcontrol .tabcontrol_tabs {
  display: block;
  background: var(--brand-color2);
}
.ce_tabcontrol .tabcontrol_tabs ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.ce_tabcontrol .tabcontrol_tabs li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.ce_tabcontrol .tabcontrol_tabs li.tabs {
  padding: 10px;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  color: #fff;
  -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.ce_tabcontrol .tabcontrol_tabs li.selected {
  background-color: var(--brand-color1);
  color: var(--text-color);
  -webkit-box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}
.ce_tabcontrol .tabcontrol_panes {
  padding: 2rem;
  border: 1px solid var(--brand-color2);
  border-top: none;
}
.box-sticky {
  display: block;
  position: fixed;
  right: -10rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 20;
}
.box-sticky > div {
  position: relative;
  right: 0;
  width: 12.5rem;
  height: 2.5rem;
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
  border-radius: var(--border-radius) 0 0 var(--border-radius);
  margin-bottom: 2px;
  -webkit-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
}
.box-sticky > div:hover {
  right: 10rem;
}
.box-sticky svg {
  width: 2.5rem;
  height: 2.5rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 2.5rem;
          flex: 0 0 2.5rem;
  max-width: 2.5rem;
  color: var(--text-color);
  fill: var(--text-color);
  padding: 0.25rem;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.box-sticky svg path {
  color: inherit;
  fill: inherit;
}
.box-sticky a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--brand-color2)), color-stop(20%, #fff));
  background: linear-gradient(to right, var(--brand-color2) 20%, #fff 20%);
  color: var(--text-color);
  line-height: 2.5rem;
  font-size: 1rem;
  white-space: nowrap;
  text-decoration: none;
  border-radius: 4px 0 0 4px;
}
@media screen and (min-width: 768px) {
  .box-sticky a {
    font-size: 1.25rem;
  }
}
.box-sticky a span {
  display: inline-block;
  margin-left: 0.5rem;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: var(--text-color);
}
.box-sticky a:hover, .box-sticky a:focus {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--brand-color1)), color-stop(20%, #fff));
  background: linear-gradient(to right, var(--brand-color1) 20%, #fff 20%);
  color: #fff;
}
.box-sticky .box-sticky__contact a[href^=tel] {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--brand-color2)), color-stop(20%, #fff));
  background: linear-gradient(to right, var(--brand-color2) 20%, #fff 20%);
  padding-left: 0;
  font-weight: var(--fw-n);
}
.box-sticky .box-sticky__anfrage a {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--brand-color2)), color-stop(20%, #fff));
  background: linear-gradient(to right, var(--brand-color2) 20%, #fff 20%);
}
.box-sticky .box-sticky__anfrage a:hover, .box-sticky .box-sticky__anfrage a:focus {
  background: -webkit-gradient(linear, left top, right top, color-stop(20%, var(--brand-color2)), color-stop(20%, #fff));
  background: linear-gradient(to right, var(--brand-color2) 20%, #fff 20%);
}
