.cms-content{box-sizing:border-box;width:100%;max-width:100%!important}
.cms-content{line-height:1.7}.cms-content h1,.cms-content h2,.cms-content h3{margin-top:1.5em}.cms-content h1:first-child,.cms-content-page-title{margin-top:0}.cms-page-header{position:relative;min-height:min(var(--cms-header-height),70vh);height:var(--cms-header-height);background-color:var(--cms-header-bg,#212529);background-image:none;overflow:hidden;border-bottom:var(--cms-header-border)}.cms-page-header-background{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--cms-header-image);background-size:var(--cms-header-bg-size,cover);background-position:var(--cms-header-position);background-repeat:no-repeat;transform:scale(var(--cms-header-image-zoom,1));transform-origin:var(--cms-header-position,center center)}.cms-page-header-background[data-cms-hero-smart-zoom="1"]{transform:none}
.cms-page-header-overlay{position:absolute;inset:0;z-index:1;background:var(--cms-header-shade)}.cms-page-header-stage{position:relative;z-index:2;height:100%;display:flex;padding-top:var(--cms-header-padding-y,1.5rem);padding-bottom:var(--cms-header-padding-y,1.5rem)}.cms-page-header-stack{position:relative;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.45);max-width:min(100%,900px);transform:translate(var(--cms-overlay-x),var(--cms-overlay-y))}.cms-page-header-text{transform:translateY(var(--cms-text-offset-y,0px))}.cms-page-header-logo{display:block;width:min(var(--cms-overlay-width),90vw);max-width:100%;max-height:var(--cms-overlay-max-height);height:auto;object-fit:contain;margin-bottom:1.25rem}.text-center .cms-page-header-logo{margin-left:auto;margin-right:auto}.text-end .cms-page-header-logo{margin-left:auto}.cms-overlay-pos-top-left{align-items:flex-start;justify-content:flex-start}.cms-overlay-pos-top-center{align-items:flex-start;justify-content:center}.cms-overlay-pos-top-right{align-items:flex-start;justify-content:flex-end}.cms-overlay-pos-center-left{align-items:center;justify-content:flex-start}.cms-overlay-pos-center-center{align-items:center;justify-content:center}.cms-overlay-pos-center-right{align-items:center;justify-content:flex-end}.cms-overlay-pos-bottom-left{align-items:flex-end;justify-content:flex-start}.cms-overlay-pos-bottom-center{align-items:flex-end;justify-content:center}.cms-overlay-pos-bottom-right{align-items:flex-end;justify-content:flex-end}.container>.cms-page-header{border-radius:.85rem}@media(max-width:767.98px){.cms-page-header{height:min(var(--cms-header-mobile-height,var(--cms-header-height)),420px);min-height:min(220px,var(--cms-header-mobile-height,var(--cms-header-height)))}.cms-page-header .display-4{font-size:var(--cms-hero-title-size-mobile,clamp(2rem,8vw,3.25rem))}.cms-page-header-subtitle{font-size:var(--cms-hero-subtitle-size-mobile,var(--mt-page-header-subtitle-size-mobile,18px))}.cms-page-header-stage{padding-top:var(--cms-header-mobile-padding-y,1rem);padding-bottom:var(--cms-header-mobile-padding-y,1rem);padding-left:1rem;padding-right:1rem}.cms-page-header-stack{transform:none}.cms-page-header-text{transform:translateY(var(--cms-text-offset-y,0px))}.cms-page-header-logo{width:min(var(--cms-overlay-width),80vw);max-height:min(var(--cms-overlay-max-height),220px)}}
/* Live-Status-Badge auf Mobile: Der Hero ist dort deutlich niedriger (min. 220px)
   als am Desktop, und die frei wählbare Ecke (oben/unten/mittig) des Badges
   kollidiert dort leicht mit der Hero-Überschrift, die je nach Ausrichtung
   ebenfalls jede Ecke belegen kann - beide sind absolut/flex-positioniert und
   weichen sich nicht gegenseitig aus. Deshalb dockt das Badge auf Mobile immer
   unten mittig an (unabhaengig von der am Desktop gewaehlten Position), und der
   Hero-Bereich bekommt zusaetzlichen unteren Freiraum in der Groesse des
   Badges reserviert, damit der Text dort nie hineinlaeuft. */
@media(max-width:767.98px){
    .cms-page-header-has-hours .cms-page-header-stage{padding-bottom:calc(var(--cms-header-mobile-padding-y,1rem) + 3rem)}
    /* HeroBlocks (Logo/Bild, Ueberschrift, Text, Button, Slider) sind unabhaengig
       voneinander frei platzierbar und dafuer absolut mit inset:0 auf die volle
       Hero-Flaeche gelegt - das umgeht den obigen Innenabstand der Buehne, da
       inset:0 an der Padding-Box andockt, nicht an der Content-Box. Ohne diese
       Zeile bliebe die Reservierung oben wirkungslos, sobald Inhalte ueber
       HeroBlocks statt den klassischen Baustein gepflegt werden.*/
    .cms-page-header-has-hours .cms-hero-block{bottom:4.5rem}
    .cms-page-header-has-hours .cms-hero-hours{top:auto!important;left:50%!important;right:auto!important;bottom:.5rem!important;transform:translateX(-50%)!important;width:calc(100% - 1.5rem)}

    /* Ueberschrift/Text/Button-HeroBlocks sind unabhaengig voneinander frei positionierbar
       (Standard bei neuen Bloecken: alle "center-center") und liegen als absolut positionierte
       Ebenen exakt uebereinander. Auf Desktop faellt das bei kurzen Inhalten kaum auf, auf
       schmalen Mobilgeraeten verdeckt umgebrochener Fliesstext die Ueberschrift fast immer.
       Ab zwei gleichzeitig vorhandenen Bloecken (siehe $heroStackMobileText in page-header.php)
       werden sie deshalb hier aus der freien Ueberlagerung genommen und stattdessen normal im
       Textfluss untereinander gestapelt - Bild und Slider bleiben wie gewohnt frei positioniert.
       Die feste Mobile-Hoehe oben wuerde gestapelten, laengeren Text abschneiden
       (.cms-page-header hat overflow:hidden), daher waechst die Hero-Flaeche hier zusaetzlich
       mit dem Inhalt mit statt starr auf max. 420px/min. 220px zu bleiben. */
    /* Einfache Klassenselektoren reichen hier nicht: template-css.php erzwingt
       height/min-height auf .cms-page-header bereits mit !important (damit die per
       Design-Hub eingestellte Hero-Hoehe zuverlaessig zieht), in einem <style>-Block, der
       nach diesem Stylesheet im Dokument steht. Bei zwei !important-Regeln gewinnt die
       spezifischere unabhaengig von der Reihenfolge - deshalb hier der zusammengesetzte
       Selektor (zwei Klassen statt einer).*/
    .cms-page-header.cms-page-header-stack-text{height:auto!important;min-height:min(220px,var(--cms-header-mobile-height,var(--cms-header-height)))!important}
    .cms-page-header-stack-text .cms-page-header-stage{height:auto;flex-direction:column;justify-content:center;gap:.35rem}
    .cms-page-header-stack-text .cms-hero-block-heading,
    .cms-page-header-stack-text .cms-hero-block-text,
    .cms-page-header-stack-text .cms-hero-block-button{position:static}
    .cms-page-header-stack-text .cms-hero-block-heading-text,
    .cms-page-header-stack-text .cms-hero-block-text-content,
    .cms-page-header-stack-text .cms-hero-block-button-link{transform:none}
}

.cms-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.feedback-reply{background:var(--mt-feedback-reply-bg,var(--mt-system-bg,var(--mt-card-bg,#f1f3f5)));color:var(--mt-system-text,var(--mt-text,inherit));border-left:3px solid var(--bs-success)}.cms-cookie-banner{position:fixed;inset:auto 0 0 0;z-index:1080;padding:1rem;pointer-events:none}.cms-cookie-box{pointer-events:auto;margin-left:auto;width:min(100%,525px);padding:1.35rem;background:var(--mt-card-bg,var(--bs-body-bg));color:var(--mt-card-text,var(--bs-body-color));border-color:var(--mt-card-border-color,var(--bs-border-color));border-radius:var(--mt-card-radius,.85rem);box-shadow:var(--mt-card-shadow,0 1rem 3rem rgba(0,0,0,.35))}.cms-cookie-icon{color:var(--mt-button-bg,var(--bs-primary))}.cms-cookie-box p{line-height:1.55}@media(max-width:575.98px){.cms-cookie-banner{padding:.6rem}.cms-cookie-box{padding:1rem}}
/* Navigation mit Unterebene */


.cms-nav-parent{position:relative;display:flex;align-items:stretch}.cms-nav-parent-link{padding-right:.25rem}.cms-nav-toggle{width:1.9rem;padding-left:.2rem;padding-right:.45rem;border:0;background:transparent}.cms-nav-toggle::after{margin-left:0}.cms-nav-parent>.dropdown-menu{top:100%;left:auto;right:0}@media(max-width:991.98px){.cms-nav-parent{flex-wrap:wrap;justify-content:flex-start}.cms-nav-parent-link{flex:0 1 auto;padding-right:.2rem}.cms-nav-toggle{flex:0 0 auto;width:1.7rem;padding-left:.1rem;padding-right:.3rem}.cms-nav-parent>.dropdown-menu{position:static!important;transform:none!important;flex:0 0 100%;width:100%;margin:0 0 .35rem;padding-left:.5rem;border:0;box-shadow:none}}
/* TemplateDesign basis */


body{background:var(--mt-body-bg,#fff);color:var(--mt-text,#212529);font-size:var(--mt-font-size,16px)}body.cms-font-arial{font-family:Arial,sans-serif}body.cms-font-verdana{font-family:Verdana,sans-serif}body.cms-font-georgia{font-family:Georgia,serif}body.cms-font-trebuchet{font-family:"Trebuchet MS",sans-serif}body a{color:var(--mt-link,#0d6efd)}body>nav.navbar{background:var(--mt-header-bg,#fff)!important}body.cms-header-sticky>nav.navbar{position:sticky;top:0;z-index:1030}body.cms-header-after-hero-sticky>nav.navbar{position:sticky;top:0;z-index:1030}body>nav.navbar .nav-link{color:var(--mt-nav-color,#212529);position:relative;transition:all calc(var(--mt-hover-speed,250) * 1ms) ease}body>nav.navbar .nav-link:hover,body>nav.navbar .nav-link:focus,body>nav.navbar .nav-link.active{color:var(--mt-nav-hover,#0d6efd)}body.cms-nav-hover-underline>nav.navbar .nav-link::after,body.cms-nav-hover-line-grow>nav.navbar .nav-link::after,body.cms-nav-hover-line-center>nav.navbar .nav-link::after{content:"";position:absolute;left:.5rem;right:.5rem;bottom:.25rem;height:2px;border-radius:999px;background:var(--mt-nav-hover,#0d6efd);pointer-events:none;transition:transform calc(var(--mt-hover-speed,250) * 1ms) ease,right calc(var(--mt-hover-speed,250) * 1ms) ease,left calc(var(--mt-hover-speed,250) * 1ms) ease}body.cms-nav-hover-underline>nav.navbar .nav-link::after{transform:scaleX(0);transform-origin:center}body.cms-nav-hover-underline>nav.navbar .nav-link:hover::after,body.cms-nav-hover-underline>nav.navbar .nav-link:focus-visible::after,body.cms-nav-hover-underline>nav.navbar .nav-link.active::after{transform:scaleX(1)}body.cms-nav-hover-line-grow>nav.navbar .nav-link::after{right:calc(100% - .5rem);transform:none}body.cms-nav-hover-line-grow>nav.navbar .nav-link:hover::after,body.cms-nav-hover-line-grow>nav.navbar .nav-link:focus-visible::after,body.cms-nav-hover-line-grow>nav.navbar .nav-link.active::after{right:.5rem}body.cms-nav-hover-line-center>nav.navbar .nav-link::after{left:50%;right:50%;transform:none}body.cms-nav-hover-line-center>nav.navbar .nav-link:hover::after,body.cms-nav-hover-line-center>nav.navbar .nav-link:focus-visible::after,body.cms-nav-hover-line-center>nav.navbar .nav-link.active::after{left:.5rem;right:.5rem}body.cms-nav-hover-bg>nav.navbar .nav-link:hover,body.cms-nav-hover-bg>nav.navbar .nav-link:focus,body.cms-nav-hover-bg>nav.navbar .nav-link.active{background:color-mix(in srgb,var(--mt-nav-hover,#0d6efd) 14%,transparent);border-radius:.5rem}body.cms-nav-hover-lift>nav.navbar .nav-link:hover,body.cms-nav-hover-lift>nav.navbar .nav-link:focus{transform:translateY(-2px)}main{background:var(--mt-content-bg,#fff)}main>.container,main>.container-fluid{max-width:var(--mt-content-width,1320px)}h1,.h1{font-size:var(--mt-h1-size,40px)}h2,.h2{font-size:var(--mt-h2-size,32px)}h3,.h3{font-size:var(--mt-h3-size,28px)}.btn{border-radius:var(--mt-button-radius,6px);transition:all calc(var(--mt-hover-speed,250) * 1ms) ease}.btn-primary{--bs-btn-bg:var(--mt-primary,#0d6efd);--bs-btn-border-color:var(--mt-primary,#0d6efd)}body.cms-button-hover-lift .btn:hover{transform:translateY(-2px)}body.cms-button-hover-scale .btn:hover{transform:scale(1.03)}body.cms-button-hover-shadow .btn:hover{box-shadow:0 .5rem 1rem rgba(0,0,0,.18)}.card{background:var(--mt-card-bg,#fff);border-radius:var(--mt-card-radius,8px);transition:all calc(var(--mt-hover-speed,250) * 1ms) ease}body.cms-card-hover-lift .card:hover{transform:translateY(-4px);box-shadow:0 .75rem 1.5rem rgba(0,0,0,.15)!important}body.cms-card-hover-scale .card:hover{transform:scale(1.015)}body.cms-card-hover-border .card:hover{border-color:var(--mt-primary,#0d6efd)!important}
.cms-builder-card-surface,.cms-builder-column-card,.cms-builder-stats-style-card .cms-builder-stats-item,.cms-builder-cta-surface{transition:transform calc(var(--mt-hover-speed,250) * 1ms) ease,box-shadow calc(var(--mt-hover-speed,250) * 1ms) ease,border-color calc(var(--mt-hover-speed,250) * 1ms) ease}
body.cms-card-hover-lift .cms-builder-card-surface:hover,body.cms-card-hover-lift .cms-builder-column-card:hover,body.cms-card-hover-lift .cms-builder-stats-style-card .cms-builder-stats-item:hover,body.cms-card-hover-lift .cms-builder-cta-surface:hover{transform:translateY(-4px);box-shadow:0 .75rem 1.5rem rgba(0,0,0,.15)!important}
body.cms-card-hover-scale .cms-builder-card-surface:hover,body.cms-card-hover-scale .cms-builder-column-card:hover,body.cms-card-hover-scale .cms-builder-stats-style-card .cms-builder-stats-item:hover,body.cms-card-hover-scale .cms-builder-cta-surface:hover{transform:scale(1.015)}
body.cms-card-hover-border .cms-builder-card-surface:hover,body.cms-card-hover-border .cms-builder-column-card:hover,body.cms-card-hover-border .cms-builder-stats-style-card .cms-builder-stats-item:hover,body.cms-card-hover-border .cms-builder-cta-surface:hover{border-color:var(--mt-primary,#0d6efd)!important}
@media (prefers-reduced-motion:reduce){.cms-builder-card-surface,.cms-builder-column-card,.cms-builder-stats-style-card .cms-builder-stats-item,.cms-builder-cta-surface{transition:none}body.cms-card-hover-lift .cms-builder-card-surface:hover,body.cms-card-hover-lift .cms-builder-column-card:hover,body.cms-card-hover-lift .cms-builder-stats-style-card .cms-builder-stats-item:hover,body.cms-card-hover-lift .cms-builder-cta-surface:hover,body.cms-card-hover-scale .cms-builder-card-surface:hover,body.cms-card-hover-scale .cms-builder-column-card:hover,body.cms-card-hover-scale .cms-builder-stats-style-card .cms-builder-stats-item:hover,body.cms-card-hover-scale .cms-builder-cta-surface:hover{transform:none}}body>footer{background:var(--mt-footer-bg,#f8f9fa);color:var(--mt-footer-color,#6c757d)}body>footer a,body>footer .text-secondary{color:var(--mt-footer-color,#6c757d)!important}body>footer a:hover{color:var(--mt-footer-hover,#0d6efd)!important}
/* TemplateDesign: Formulare & Systemmodule */


main .cms-system-box{background:var(--mt-system-bg,var(--mt-card-bg,#fff));color:var(--mt-system-text,var(--mt-card-text,var(--mt-text,#212529)));border-color:var(--mt-system-border-color,var(--mt-card-border-color,#dee2e6))}
main .cms-system-box .text-secondary,main .cms-system-box .form-text{color:var(--mt-system-muted,#6c757d)!important}
main .form-label,main .cms-system-box h1,main .cms-system-box h2,main .cms-system-box h3,main .cms-system-box h4,main .cms-system-box h5,main .cms-system-box h6{color:var(--mt-system-text,var(--mt-text,#212529))}
main .form-control,main .form-select{background-color:var(--mt-input-bg,#fff);color:var(--mt-input-text,#212529);border-color:var(--mt-input-border,#ced4da)}
main .form-control:focus,main .form-select:focus{background-color:var(--mt-input-bg,#fff);color:var(--mt-input-text,#212529);border-color:var(--mt-input-focus,var(--mt-primary,#0d6efd));box-shadow:0 0 0 .2rem color-mix(in srgb,var(--mt-input-focus,var(--mt-primary,#0d6efd)) 22%,transparent)}
main .btn-primary{--bs-btn-bg:var(--mt-button-bg,var(--mt-primary,#0d6efd));--bs-btn-border-color:var(--mt-button-border,var(--mt-button-bg,var(--mt-primary,#0d6efd)));--bs-btn-hover-bg:var(--mt-button-hover-bg,var(--mt-button-bg,var(--mt-primary,#0d6efd)));--bs-btn-hover-border-color:var(--mt-button-hover-bg,var(--mt-button-bg,var(--mt-primary,#0d6efd)));--bs-btn-active-bg:var(--mt-button-hover-bg,var(--mt-button-bg,var(--mt-primary,#0d6efd)));--bs-btn-active-border-color:var(--mt-button-hover-bg,var(--mt-button-bg,var(--mt-primary,#0d6efd)))}
/* Stabile Seitenhoehe + schlanker Mobile-Toggler */


html,body{min-height:100%}body{min-height:100vh;display:flex;flex-direction:column}body>main{flex:1 0 auto;width:100%}body>footer{flex-shrink:0;margin-top:auto!important}.navbar-toggler{border:0!important;box-shadow:none!important;padding:.35rem .45rem}.navbar-toggler:focus,.navbar-toggler:focus-visible,.navbar-toggler:active{outline:0!important;box-shadow:none!important;border-color:transparent!important}

.cms-content-block{display:block}.cms-content-block+ .cms-content-block{margin-top:1.5rem}
/* Template Basis: Header-/Footer-Höhe und Footer-Hovereffekte */


body>nav.navbar{min-height:var(--mt-header-height,72px)}
body>footer{min-height:var(--mt-footer-min-height,0px);display:flex;align-items:center;background:var(--mt-footer-bg,#f8f9fa)!important;color:var(--mt-footer-color,#6c757d)}
body>footer .container{width:100%}
body>footer a,body>footer button.btn-link{position:relative;color:var(--mt-footer-link,var(--mt-footer-color,#6c757d))!important;transition:all calc(var(--mt-hover-speed,250) * 1ms) ease}
body.cms-footer-hover-color>footer a:hover,body.cms-footer-hover-color>footer a:focus,
body.cms-footer-hover-none>footer a:hover,body.cms-footer-hover-none>footer a:focus,
body.cms-footer-hover-underline>footer a:hover,body.cms-footer-hover-underline>footer a:focus,
body.cms-footer-hover-line-grow>footer a:hover,body.cms-footer-hover-line-grow>footer a:focus,
body.cms-footer-hover-line-center>footer a:hover,body.cms-footer-hover-line-center>footer a:focus,
body.cms-footer-hover-bg>footer a:hover,body.cms-footer-hover-bg>footer a:focus,
body.cms-footer-hover-lift>footer a:hover,body.cms-footer-hover-lift>footer a:focus,
body.cms-footer-hover-color>footer button.btn-link:hover,body.cms-footer-hover-color>footer button.btn-link:focus,
body.cms-footer-hover-underline>footer button.btn-link:hover,body.cms-footer-hover-underline>footer button.btn-link:focus,
body.cms-footer-hover-line-grow>footer button.btn-link:hover,body.cms-footer-hover-line-grow>footer button.btn-link:focus,
body.cms-footer-hover-line-center>footer button.btn-link:hover,body.cms-footer-hover-line-center>footer button.btn-link:focus,
body.cms-footer-hover-bg>footer button.btn-link:hover,body.cms-footer-hover-bg>footer button.btn-link:focus,
body.cms-footer-hover-lift>footer button.btn-link:hover,body.cms-footer-hover-lift>footer button.btn-link:focus{color:var(--mt-footer-hover,var(--mt-primary,#0d6efd))!important}
body.cms-footer-hover-none>footer a:hover,body.cms-footer-hover-none>footer a:focus{color:var(--mt-footer-color,#6c757d)!important}
body.cms-footer-hover-underline>footer a::after,body.cms-footer-hover-line-grow>footer a::after,body.cms-footer-hover-line-center>footer a::after{
content:"";position:absolute;left:0;right:0;bottom:-.25rem;height:2px;border-radius:999px;background:var(--mt-footer-hover,var(--mt-primary,#0d6efd));pointer-events:none;transition:transform calc(var(--mt-hover-speed,250) * 1ms) ease,left calc(var(--mt-hover-speed,250) * 1ms) ease,right calc(var(--mt-hover-speed,250) * 1ms) ease
}
body.cms-footer-hover-underline>footer a::after{transform:scaleX(0);transform-origin:center}
body.cms-footer-hover-underline>footer a:hover::after,body.cms-footer-hover-underline>footer a:focus-visible::after{transform:scaleX(1)}
body.cms-footer-hover-line-grow>footer a::after{right:100%}
body.cms-footer-hover-line-grow>footer a:hover::after,body.cms-footer-hover-line-grow>footer a:focus-visible::after{right:0}
body.cms-footer-hover-line-center>footer a::after{left:50%;right:50%}
body.cms-footer-hover-line-center>footer a:hover::after,body.cms-footer-hover-line-center>footer a:focus-visible::after{left:0;right:0}
body.cms-footer-hover-bg>footer a:hover,body.cms-footer-hover-bg>footer a:focus{background:color-mix(in srgb,var(--mt-footer-hover,var(--mt-primary,#0d6efd)) 14%,transparent);border-radius:.4rem;padding:.2rem .4rem;margin:-.2rem -.4rem}
body.cms-footer-hover-lift>footer a:hover,body.cms-footer-hover-lift>footer a:focus{transform:translateY(-2px)}
/* Template Basis: Link-Hovereffekte für allgemeine Inhalts-Links (nicht Navigation/Footer/Buttons - die haben eigene Effekte) */


main a:not(.btn):not([role="button"]):not([class*="button"]){position:relative;transition:color calc(var(--mt-hover-speed,250) * 1ms) ease}
body.cms-link-hover-none main a:not(.btn):not([role="button"]):not([class*="button"]):hover,body.cms-link-hover-none main a:not(.btn):not([role="button"]):not([class*="button"]):focus{color:var(--mt-link,#0d6efd)!important}
body.cms-link-hover-underline main a:not(.btn):not([role="button"]):not([class*="button"])::after,body.cms-link-hover-line-grow main a:not(.btn):not([role="button"]):not([class*="button"])::after,body.cms-link-hover-line-center main a:not(.btn):not([role="button"]):not([class*="button"])::after{
content:"";position:absolute;left:0;right:0;bottom:-.15em;height:2px;border-radius:999px;background:var(--mt-link-hover,var(--mt-link,#0d6efd));pointer-events:none;transition:transform calc(var(--mt-hover-speed,250) * 1ms) ease,left calc(var(--mt-hover-speed,250) * 1ms) ease,right calc(var(--mt-hover-speed,250) * 1ms) ease
}
body.cms-link-hover-underline main a:not(.btn):not([role="button"]):not([class*="button"])::after{transform:scaleX(0);transform-origin:center}
body.cms-link-hover-underline main a:not(.btn):not([role="button"]):not([class*="button"]):hover::after,body.cms-link-hover-underline main a:not(.btn):not([role="button"]):not([class*="button"]):focus-visible::after{transform:scaleX(1)}
body.cms-link-hover-line-grow main a:not(.btn):not([role="button"]):not([class*="button"])::after{right:100%}
body.cms-link-hover-line-grow main a:not(.btn):not([role="button"]):not([class*="button"]):hover::after,body.cms-link-hover-line-grow main a:not(.btn):not([role="button"]):not([class*="button"]):focus-visible::after{right:0}
body.cms-link-hover-line-center main a:not(.btn):not([role="button"]):not([class*="button"])::after{left:50%;right:50%}
body.cms-link-hover-line-center main a:not(.btn):not([role="button"]):not([class*="button"]):hover::after,body.cms-link-hover-line-center main a:not(.btn):not([role="button"]):not([class*="button"]):focus-visible::after{left:0;right:0}
body.cms-link-hover-bg main a:not(.btn):not([role="button"]):not([class*="button"]):hover,body.cms-link-hover-bg main a:not(.btn):not([role="button"]):not([class*="button"]):focus{background:color-mix(in srgb,var(--mt-link-hover,var(--mt-link,#0d6efd)) 14%,transparent);border-radius:.25rem;padding:.05rem .25rem;margin:-.05rem -.25rem}
body.cms-link-hover-lift main a:not(.btn):not([role="button"]):not([class*="button"]):hover,body.cms-link-hover-lift main a:not(.btn):not([role="button"]):not([class*="button"]):focus{display:inline-block;transform:translateY(-2px)}
@media (prefers-reduced-motion:reduce){main a:not(.btn):not([role="button"]):not([class*="button"]){transition:none}body.cms-link-hover-lift main a:not(.btn):not([role="button"]):not([class*="button"]):hover,body.cms-link-hover-lift main a:not(.btn):not([role="button"]):not([class*="button"]):focus{transform:none}}


.cms-block-image-placeholder{background:var(--mt-card-bg,var(--mt-content-bg,#fff))}
.cms-feedback-block .fa-star{color:var(--mt-primary,#0d6efd)}


.cms-block-logo-placeholder{background:var(--mt-card-bg,var(--mt-content-bg,#fff));color:var(--mt-system-muted,#6c757d)}
.cms-block-cta-image{background:var(--mt-card-bg,var(--mt-content-bg,#fff))}


.cms-block-jobs-contact{background:var(--mt-card-bg,var(--mt-content-bg,#fff))}
.cms-block-jobs .badge{border:1px solid var(--mt-input-border,#dee2e6)}




.cms-block-selected-image{display:block;max-width:100%;height:auto}
.cms-footer-block-content{width:100%;padding-top:1.5rem;padding-bottom:1.5rem}.cms-footer-block-content .cms-block-footer h2,.cms-footer-block-content .cms-block-footer h3,.cms-footer-block-content .cms-block-footer p,.cms-footer-block-content .cms-block-footer li,.cms-footer-block-content .cms-block-footer span{color:var(--mt-footer-color,#6c757d)}.cms-footer-block-content .cms-block-footer-bottom{border-color:color-mix(in srgb,var(--mt-footer-color,#6c757d) 22%,transparent)!important}


.cms-content-block,.cms-page-header-block{box-sizing:border-box;width:100%;max-width:100%}
.cms-content-block>*,.cms-page-header-block>*{box-sizing:border-box;max-width:100%}
.cms-content-block>[class^="cms-block-"],.cms-content-block>[class*=" cms-block-"]{width:100%;max-width:100%}
.cms-footer-block-content>*{box-sizing:border-box;max-width:100%}
.cms-footer-block-content>.cms-block-footer{width:100%;max-width:100%}
@media (min-width:1200px){
  .cms-footer-block-content .cms-block-footer-four>.row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;column-gap:var(--bs-gutter-x,1.5rem)!important;width:100%!important;margin-left:0!important;margin-right:0!important}
  .cms-footer-block-content .cms-block-footer-four>.row>[class*="col-"]{width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;padding-left:0!important;padding-right:0!important;text-align:left!important;justify-self:stretch!important}
  .cms-footer-block-content .cms-block-footer-four>.row>[class*="col-"]:first-child{width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important;text-align:left!important;justify-self:stretch!important}
  .cms-footer-block-content .cms-block-footer-four>.row>[class*="col-"]:last-child{width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important;text-align:right!important;justify-self:stretch!important}
}
/* Hero-Blöcke: Inhalt flexibel, Seitenheader bleibt das Design-Gerüst. */


.cms-page-header-block{position:relative;width:100%;max-width:100%;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.45)}
.cms-page-header-block>.cms-block-hero{width:100%}
.cms-page-header-block .cms-block-hero h1,.cms-page-header-block .cms-block-hero h2,.cms-page-header-block .cms-block-hero h3,.cms-page-header-block .cms-block-hero p{color:inherit}
.cms-page-header-block .cms-block-image-placeholder{border:1px dashed rgba(255,255,255,.5);background:rgba(0,0,0,.2)}
/* Mobiler Navigationstoggler ohne Rahmen – auch gegen importierte Button-Styles */


body .navbar-toggler,
body .cms-imported-navigation .navbar-toggler{
  border:0!important;
  border-width:0!important;
  border-style:none!important;
  border-color:transparent!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  -webkit-appearance:none;
  appearance:none;
}
body .navbar-toggler:hover,
body .navbar-toggler:focus,
body .navbar-toggler:focus-visible,
body .navbar-toggler:active{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
/* Vom Editor gesetzte Bildausrichtung sicher darstellen */


.cms-content::after,.cms-content-block::after{content:"";display:block;clear:both}
.cms-content img[style*="margin-left: auto"][style*="margin-right: auto"],
.cms-content-block img[style*="margin-left: auto"][style*="margin-right: auto"]{display:block}


.cms-content img,.cms-content-block img{max-width:100%;height:auto}
/* Vom Blockeditor gewählte Bildbreite respektieren; nur gegen Überlauf begrenzen */


.cms-content img,.cms-content-block img{box-sizing:border-box;max-width:100%;height:auto}
/* Optionale Frontend-Schutzfunktionen */


.cms-protect-image-drag img{
    -webkit-user-drag:none;
}
.cms-protect-selection body{
    -webkit-user-select:none;
    user-select:none;
}
.cms-protect-selection input,
.cms-protect-selection textarea,
.cms-protect-selection select,
.cms-protect-selection [contenteditable="true"]{
    -webkit-user-select:text;
    user-select:text;
}
/* Bildunterschrift */


.cms-block-image-caption{
    margin-top:.4rem;
    font-size:.875em;
    line-height:1.4;
    color:var(--bs-secondary-color,currentColor);
}
/* Bildunterschrift folgt der Bildbreite */


.cms-block-image-caption{
    box-sizing:border-box;
    max-width:100%;
}
/* Footer-Standardlayout: Copyright links, Cookie-Einstellungen exakt mittig, Navigation rechts. */


body>footer{flex-direction:column;justify-content:center}
.cms-footer-standard-grid{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1.5rem;width:100%}
.cms-footer-standard-left{min-width:0;text-align:left;justify-self:start}
.cms-footer-standard-center{text-align:center;justify-self:center;white-space:nowrap}
.cms-footer-standard-right{min-width:0;text-align:right;justify-self:end}
.cms-footer-standard-right nav{justify-content:flex-end!important}
@media(max-width:767.98px){
  .cms-footer-standard-grid{grid-template-columns:1fr;gap:.75rem;text-align:center}
  .cms-footer-standard-left,.cms-footer-standard-center,.cms-footer-standard-right{justify-self:center;text-align:center}
  .cms-footer-standard-right nav{justify-content:center!important}
  .cms-footer-standard-right .text-end{text-align:center!important}
}
/* Mobile Navigation: Unterstreichungs-Effekte nur so breit wie der Linktext, nicht über die ganze aufgeklappte Navigationsbreite. */


@media(max-width:991.98px){
  body>nav.navbar .navbar-nav>.nav-item>.nav-link{width:max-content;max-width:100%}
}
/* HeroBlocks V2 */


.cms-hero-block{position:absolute;inset:0;display:flex;pointer-events:none;z-index:2;padding:var(--cms-header-padding-y,24px) 0}
.cms-hero-block-image img{display:block;max-width:100%;object-fit:contain;transform:translate(var(--cms-hero-block-x,0),var(--cms-hero-block-y,0))}
.cms-hero-block-heading-text{margin:0;max-width:100%;transform:translate(var(--cms-hero-block-x,0),var(--cms-hero-block-y,0));line-height:1.1;overflow-wrap:anywhere}
.cms-hero-block-text-content{max-width:100%;transform:translate(var(--cms-hero-block-x,0),var(--cms-hero-block-y,0));line-height:1.45;overflow-wrap:anywhere}
.cms-hero-block-button{pointer-events:none}.cms-hero-block-button-link{pointer-events:auto;transform:translate(var(--cms-hero-block-x,0),var(--cms-hero-block-y,0))}
.cms-hero-block-slider{pointer-events:none}.cms-hero-image-text-slider{pointer-events:auto;transform:translate(var(--cms-hero-block-x,0),var(--cms-hero-block-y,0));overflow:hidden;border-radius:.75rem;background:rgba(0,0,0,.28)}
.cms-hero-image-text-slide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;min-height:180px}.cms-hero-image-text-slide-media-only{grid-template-columns:minmax(0,1fr)}.cms-hero-image-text-media{min-height:0;order:1}.cms-hero-image-text-media img{width:100%;height:100%;min-height:180px;object-fit:cover;display:block}.cms-hero-image-text-copy{display:flex;flex-direction:column;justify-content:center;padding:1.5rem;color:#fff;order:2}.cms-hero-image-text-slide-media-right .cms-hero-image-text-media{order:2}.cms-hero-image-text-slide-media-right .cms-hero-image-text-copy{order:1}.cms-hero-image-text-title{font-size:clamp(1.35rem,2.5vw,2rem);font-weight:700;line-height:1.15;margin-bottom:.6rem}.cms-hero-image-text-content{line-height:1.45}.cms-hero-image-text-slider .carousel-control-prev,.cms-hero-image-text-slider .carousel-control-next{width:8%}
@media(max-width:767.98px){.cms-hero-block{padding:var(--cms-header-mobile-padding-y,16px) 12px}.cms-hero-block-image img{max-height:calc(var(--cms-header-mobile-height,220px) - 32px)}.cms-hero-image-text-slide{grid-template-columns:1fr;min-height:0}.cms-hero-image-text-media img{height:120px;min-height:120px}.cms-hero-image-text-copy{padding:1rem 2rem}.cms-hero-image-text-title{font-size:1.25rem}}


.cms-footer-columns{width:100%}
.cms-footer-columns-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.5rem,3vw,3.5rem)}
.cms-footer-column-title-align-left,.cms-footer-column-content-align-left{text-align:left}.cms-footer-column-title-align-center,.cms-footer-column-content-align-center{text-align:center}.cms-footer-column-title-align-right,.cms-footer-column-content-align-right{text-align:right}
.cms-footer-column-content-align-center a,.cms-footer-column-content-align-right a{display:inline-block}
.cms-footer-column-title{font:inherit;font-weight:700;margin:0 0 .85rem;color:inherit}
.cms-footer-column-content{line-height:1.65}
.cms-footer-columns-contact{padding-top:1rem}
.cms-footer-columns-bottom{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-top:2rem;padding-top:1.5rem}.cms-footer-columns-bottom.cms-footer-separator-content{border-top:var(--mt-footer-separator-width,1px) solid var(--mt-footer-border-color,currentColor)}.cms-footer-columns-bottom.cms-footer-separator-full::before{content:"";position:absolute;top:0;left:50%;width:100vw;transform:translateX(-50%);border-top:var(--mt-footer-separator-width,1px) solid var(--mt-footer-border-color,currentColor);pointer-events:none}.cms-footer-columns-bottom.cms-footer-separator-none{border-top:0}
.cms-footer-columns-bottom-text{min-width:0;max-width:75%;line-height:1.5}
.cms-footer-columns-bottom-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:1rem;white-space:nowrap}
.cms-footer-bottom-align-left,.cms-footer-bottom-align-center,.cms-footer-bottom-align-right{justify-content:flex-start;flex-direction:column;gap:.75rem}
.cms-footer-bottom-align-left{align-items:flex-start;text-align:left}.cms-footer-bottom-align-center{align-items:center;text-align:center}.cms-footer-bottom-align-right{align-items:flex-end;text-align:right}
.cms-footer-bottom-align-left .cms-footer-columns-bottom-text,.cms-footer-bottom-align-center .cms-footer-columns-bottom-text,.cms-footer-bottom-align-right .cms-footer-columns-bottom-text{max-width:100%}
.cms-footer-bottom-align-left .cms-footer-columns-bottom-links{justify-content:flex-start}.cms-footer-bottom-align-center .cms-footer-columns-bottom-links{justify-content:center}.cms-footer-bottom-align-right .cms-footer-columns-bottom-links{justify-content:flex-end}
.cms-footer-columns a,.cms-footer-columns .btn-link{color:inherit}
@media (max-width:991.98px){.cms-footer-columns-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:575.98px){
  .cms-footer-columns-grid{grid-template-columns:1fr}
  .cms-footer-columns-bottom{flex-direction:column;gap:1rem}
  .cms-footer-columns-bottom-text{max-width:none}
  .cms-footer-columns-bottom-links{justify-content:flex-start}
}



.cms-system-main-minheight{min-height:60vh}
.cms-system-narrow{max-width:760px}
.cms-sticky-offset{top:2rem}

.cms-contact-map{border:0}
/* Dropdown-Hauptpunkte: Chevron statt normalem Nav-Hover */


body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link::after,
body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link::after,
body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link::after{
  content:none!important;
  display:none!important;
}
body.cms-nav-hover-bg>nav.navbar .cms-nav-parent-link:hover,
body.cms-nav-hover-bg>nav.navbar .cms-nav-parent-link:focus,
body.cms-nav-hover-bg>nav.navbar .cms-nav-toggle:hover,
body.cms-nav-hover-bg>nav.navbar .cms-nav-toggle:focus{
  background:transparent!important;
}
body.cms-nav-hover-lift>nav.navbar .cms-nav-parent-link:hover,
body.cms-nav-hover-lift>nav.navbar .cms-nav-parent-link:focus,
body.cms-nav-hover-lift>nav.navbar .cms-nav-toggle:hover,
body.cms-nav-hover-lift>nav.navbar .cms-nav-toggle:focus{
  transform:none!important;
}
body>nav.navbar .cms-nav-toggle.dropdown-toggle::after{
  display:inline-block!important;
  position:static!important;
  width:0!important;
  height:0!important;
  margin-left:0!important;
  vertical-align:.255em!important;
  content:""!important;
  background:none!important;
  border-top:.34em solid currentColor!important;
  border-right:.34em solid transparent!important;
  border-bottom:0!important;
  border-left:.34em solid transparent!important;
  border-radius:0!important;
  transform:none!important;
  transform-origin:center!important;
  transition:transform calc(var(--mt-hover-speed,250) * 1ms) ease!important;
}
body>nav.navbar .cms-nav-toggle.dropdown-toggle.show::after,
body>nav.navbar .cms-nav-parent:has(.dropdown-menu.show) .cms-nav-toggle.dropdown-toggle::after{
  transform:rotate(180deg)!important;
}
/* Dropdown-Navigation sauber ausgerichtet */


@media (min-width:992px){
  body>nav.navbar .cms-nav-parent{
    align-items:center;
  }
  body>nav.navbar .cms-nav-parent-link{
    padding-right:.15rem;
  }
  body>nav.navbar .cms-nav-toggle{
    display:inline-flex;
    width:auto;
    min-width:1.35rem;
    align-items:center;
    justify-content:center;
    align-self:center;
    padding-left:.3rem;
    padding-right:.35rem;
  }
  body>nav.navbar .cms-nav-parent>.dropdown-menu{
    top:100%;
    left:0;
    right:auto;
    min-width:100%;
    margin-top:.35rem;
  }
}


/* Volle Hero-Breite wird bereits am absoluten HeroBlock bis an beide Viewportkanten aufgezogen.
   Dadurch begrenzen weder Bootstrap-.container noch die gespeicherte Pixelbreite die Sliderfläche. */




/* Navigation: optionaler Trenner zwischen Hauptlinks.
   Der Trenner ist rein dekorativ, wird aus der Tastatur-/Screenreader-Navigation
   herausgehalten und auf Mobilgeräten bewusst nicht dargestellt. */
body>nav.navbar .navbar-nav>.cms-nav-separator{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    align-self:stretch;
    padding-left:var(--mt-nav-separator-gap,10px);
    padding-right:var(--mt-nav-separator-gap,10px);
    color:var(--mt-nav-separator-color,#6c757d);
    font:inherit;
    line-height:1;
    opacity:.9;
    user-select:none;
    pointer-events:none;
}
@media(max-width:991.98px){
    body>nav.navbar .navbar-nav>.cms-nav-separator{display:none!important}
}


/* Footer: derselbe optionale Link-Trenner wie bei der Navigation (siehe oben),
   nur ohne das Mobil-Ausblenden - die Footer-Links kollabieren nicht in ein
   Hamburger-Menü, sondern brechen einfach um, daher bleibt der Trenner auch
   auf schmalen Bildschirmen sichtbar. */
body>footer .cms-footer-link-separator{
    display:inline-flex;
    align-items:center;
    padding-left:var(--mt-footer-link-separator-gap,10px);
    padding-right:var(--mt-footer-link-separator-gap,10px);
    color:var(--mt-footer-link-separator-color,#6c757d)!important;
    font:inherit;
    line-height:1;
    opacity:.9;
    user-select:none;
    pointer-events:none;
}


/* Der Dropdown-Pfeil ist ein eigener, rahmenloser Bedienpunkt.
   Globale Link-Hovereffekte dürfen hier keinen Button-Rahmen/Hintergrund erzeugen. */
body>nav.navbar .cms-nav-toggle,
body>nav.navbar .cms-nav-toggle:hover,
body>nav.navbar .cms-nav-toggle:focus,
body>nav.navbar .cms-nav-toggle:focus-visible,
body>nav.navbar .cms-nav-toggle.show,
body>nav.navbar .cms-nav-toggle[aria-expanded="true"]{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
    border-radius:0!important;
    text-decoration:none!important;
}
body>nav.navbar .cms-nav-toggle::before{display:none!important}
body>nav.navbar .cms-nav-toggle::after{
    color:var(--mt-nav-dropdown-arrow,var(--mt-nav-color,#212529));
    transition:color calc(var(--mt-hover-speed,250) * 1ms) ease,
               transform calc(var(--mt-hover-speed,250) * 1ms) ease;
    transform-origin:center;
}
/* Bootstrap zeichnet das Dreieck mit border-color; currentColor allein reicht daher nicht. */
body>nav.navbar .cms-nav-toggle::after{
    border-top-color:currentColor!important;
    border-right-color:transparent!important;
    border-bottom-color:transparent!important;
    border-left-color:transparent!important;
}
body.cms-nav-arrow-hover-color>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-color>nav.navbar .cms-nav-toggle:focus-visible::after,
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:focus-visible::after,
body.cms-nav-arrow-hover-scale>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-scale>nav.navbar .cms-nav-toggle:focus-visible::after,
body.cms-nav-arrow-hover-rotate>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-rotate>nav.navbar .cms-nav-toggle:focus-visible::after{
    color:var(--mt-nav-dropdown-arrow-hover,var(--mt-nav-hover,#0d6efd));
}
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:focus-visible::after{
    transform:translateY(-2px);
}
body.cms-nav-arrow-hover-scale>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-scale>nav.navbar .cms-nav-toggle:focus-visible::after{
    transform:scale(1.28);
}
body.cms-nav-arrow-hover-rotate>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-rotate>nav.navbar .cms-nav-toggle:focus-visible::after{
    transform:rotate(180deg);
}
/* Offen zeigt der Pfeil nach oben; Hover-Transformationen bleiben davon unabhängig. */
body>nav.navbar .cms-nav-toggle[aria-expanded="true"]::after{transform:rotate(180deg)}
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle[aria-expanded="true"]:hover::after{transform:rotate(180deg) translateY(2px)}
body.cms-nav-arrow-hover-scale>nav.navbar .cms-nav-toggle[aria-expanded="true"]:hover::after{transform:rotate(180deg) scale(1.28)}

/* Desktop-Dropdown mittig unter dem zugehörigen Hauptlink.
   Der kleine Pfeil verbindet Menü und Hauptnavigation optisch sauber.
   Mobil bleibt das bestehende, statische Untermenü unverändert. */
@media(min-width:992px){
    body>nav.navbar .cms-nav-parent>.dropdown-menu{
        top:calc(100% + .55rem)!important;
        left:50%!important;
        right:auto!important;
        transform:translateX(-50%)!important;
        margin-top:0!important;
    }

    body>nav.navbar .cms-nav-parent>.dropdown-menu::before,
    body>nav.navbar .cms-nav-parent>.dropdown-menu::after{
        content:"";
        position:absolute;
        left:50%;
        width:0;
        height:0;
        transform:translateX(-50%);
        pointer-events:none;
    }

    /* äußerer Rand des Pfeils */
    body>nav.navbar .cms-nav-parent>.dropdown-menu::before{
        top:-10px;
        border-left:10px solid transparent;
        border-right:10px solid transparent;
        border-bottom:10px solid var(--mt-nav-dropdown-border-color,var(--mt-nav-border-color,#dee2e6));
    }

    /* eigentliche Pfeilfläche */
    body>nav.navbar .cms-nav-parent>.dropdown-menu::after{
        top:-8px;
        border-left:8px solid transparent;
        border-right:8px solid transparent;
        border-bottom:8px solid var(--mt-nav-dropdown-bg,var(--mt-header-bg,#fff));
    }
}


/* Hovereffekte für die eigentlichen Links im Dropdown.
   Die Auswahl entspricht bewusst den Hovereffekten der Hauptnavigation. */
body>nav.navbar .dropdown-menu .dropdown-item{
    position:relative;
    overflow:hidden;
    transition:
        color calc(var(--mt-hover-speed,250) * 1ms) ease,
        background-color calc(var(--mt-hover-speed,250) * 1ms) ease,
        transform calc(var(--mt-hover-speed,250) * 1ms) ease;
}

/* Keiner: weder Farbwechsel noch zusätzlicher Effekt. */
body.cms-nav-dropdown-item-hover-none>nav.navbar .dropdown-menu .dropdown-item:hover,
body.cms-nav-dropdown-item-hover-none>nav.navbar .dropdown-menu .dropdown-item:focus{
    color:var(--mt-nav-dropdown-text,var(--mt-nav-color,#212529))!important;
    background:transparent!important;
    transform:none!important;
}

/* Farbwechsel nutzt die eigene Dropdown-Hoverfarbe. */
body.cms-nav-dropdown-item-hover-color>nav.navbar .dropdown-menu .dropdown-item:hover,
body.cms-nav-dropdown-item-hover-color>nav.navbar .dropdown-menu .dropdown-item:focus{
    color:var(--mt-nav-dropdown-hover,var(--mt-nav-hover,#0d6efd))!important;
    background:transparent!important;
}

/* Linienvarianten */
body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item::after,
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item::after,
body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item::after{
    content:"";
    position:absolute;
    left:.85rem;
    right:.85rem;
    bottom:.35rem;
    height:2px;
    border-radius:999px;
    background:var(--mt-nav-dropdown-hover,var(--mt-nav-hover,#0d6efd));
    pointer-events:none;
    transition:
        transform calc(var(--mt-hover-speed,250) * 1ms) ease,
        right calc(var(--mt-hover-speed,250) * 1ms) ease,
        left calc(var(--mt-hover-speed,250) * 1ms) ease;
}

body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item::after{
    transform:scaleX(0);
    transform-origin:center;
}
body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item:hover::after,
body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
    transform:scaleX(1);
}

body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item::after{
    right:calc(100% - .85rem);
}
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:hover::after,
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
    right:.85rem;
}

body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item::after{
    left:50%;
    right:50%;
}
body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:hover::after,
body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
    left:.85rem;
    right:.85rem;
}

/* Hintergrund hervorheben */
body.cms-nav-dropdown-item-hover-bg>nav.navbar .dropdown-menu .dropdown-item:hover,
body.cms-nav-dropdown-item-hover-bg>nav.navbar .dropdown-menu .dropdown-item:focus{
    color:var(--mt-nav-dropdown-hover,var(--mt-nav-hover,#0d6efd))!important;
    background:color-mix(in srgb,var(--mt-nav-dropdown-hover,var(--mt-nav-hover,#0d6efd)) 14%,transparent)!important;
}

/* Leicht anheben */
body.cms-nav-dropdown-item-hover-lift>nav.navbar .dropdown-menu .dropdown-item:hover,
body.cms-nav-dropdown-item-hover-lift>nav.navbar .dropdown-menu .dropdown-item:focus{
    color:var(--mt-nav-dropdown-hover,var(--mt-nav-hover,#0d6efd))!important;
    background:transparent!important;
    transform:translateY(-2px);
}

@media(max-width:991.98px){
    /* Auf Touch-Geräten bleiben die Links ruhig und klickstabil. */
    body>nav.navbar .dropdown-menu .dropdown-item{
        transform:none!important;
    }
}


/* Dropdown-Pfeil folgt wahlweise Navigation, Hoverfarbe oder eigener Farbe.
   Die Hovereffekte entsprechen bewusst exakt der Auswahl der normalen Navigationslinks. */
body>nav.navbar .cms-nav-toggle{
    position:relative;
    overflow:visible;
    color:var(--mt-nav-dropdown-arrow-resolved,var(--mt-nav-color,#212529))!important;
}
body>nav.navbar .cms-nav-toggle::after{
    color:var(--mt-nav-dropdown-arrow-resolved,var(--mt-nav-color,#212529))!important;
}

/* Keine Bootstrap-Aktivfläche bei Unterseiten/geklickten Dropdown-Items. */
body>nav.navbar .dropdown-menu .dropdown-item.active,
body>nav.navbar .dropdown-menu .dropdown-item:active{
    background:transparent!important;
    color:var(--mt-nav-active,var(--mt-nav-dropdown-hover,var(--mt-nav-hover,#0d6efd)))!important;
}

/* Pfeil: Keiner */
body.cms-nav-arrow-hover-none>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-none>nav.navbar .cms-nav-toggle:focus-visible::after{
    color:var(--mt-nav-dropdown-arrow-resolved,var(--mt-nav-color,#212529))!important;
    transform:none;
}

/* Pfeil: Farbwechsel */
body.cms-nav-arrow-hover-color>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-color>nav.navbar .cms-nav-toggle:focus-visible::after{
    color:var(--mt-nav-dropdown-arrow-hover-resolved,var(--mt-nav-dropdown-arrow-hover,var(--mt-nav-hover,#0d6efd)))!important;
}

/* Für Linien-Effekte wird eine eigene Linie am Toggle gezeichnet;
   das Bootstrap-Dreieck bleibt separat und sauber rahmenlos. */
body.cms-nav-arrow-hover-underline>nav.navbar .cms-nav-toggle::before,
body.cms-nav-arrow-hover-line-grow>nav.navbar .cms-nav-toggle::before,
body.cms-nav-arrow-hover-line-center>nav.navbar .cms-nav-toggle::before{
    content:""!important;
    display:block!important;
    position:absolute;
    left:.15rem;
    right:.15rem;
    bottom:.2rem;
    height:2px;
    border-radius:999px;
    background:var(--mt-nav-dropdown-arrow-hover-resolved,var(--mt-nav-dropdown-arrow-hover,var(--mt-nav-hover,#0d6efd)))!important;
    pointer-events:none;
    transition:
        transform calc(var(--mt-hover-speed,250) * 1ms) ease,
        right calc(var(--mt-hover-speed,250) * 1ms) ease,
        left calc(var(--mt-hover-speed,250) * 1ms) ease;
}
body.cms-nav-arrow-hover-underline>nav.navbar .cms-nav-toggle::before{
    transform:scaleX(0);
    transform-origin:center;
}
body.cms-nav-arrow-hover-underline>nav.navbar .cms-nav-toggle:hover::before,
body.cms-nav-arrow-hover-underline>nav.navbar .cms-nav-toggle:focus-visible::before{
    transform:scaleX(1);
}
body.cms-nav-arrow-hover-line-grow>nav.navbar .cms-nav-toggle::before{
    right:calc(100% - .15rem);
}
body.cms-nav-arrow-hover-line-grow>nav.navbar .cms-nav-toggle:hover::before,
body.cms-nav-arrow-hover-line-grow>nav.navbar .cms-nav-toggle:focus-visible::before{
    right:.15rem;
}
body.cms-nav-arrow-hover-line-center>nav.navbar .cms-nav-toggle::before{
    left:50%;
    right:50%;
}
body.cms-nav-arrow-hover-line-center>nav.navbar .cms-nav-toggle:hover::before,
body.cms-nav-arrow-hover-line-center>nav.navbar .cms-nav-toggle:focus-visible::before{
    left:.15rem;
    right:.15rem;
}

/* Pfeil: Hintergrund hervorheben */
body.cms-nav-arrow-hover-bg>nav.navbar .cms-nav-toggle:hover,
body.cms-nav-arrow-hover-bg>nav.navbar .cms-nav-toggle:focus-visible{
    background:color-mix(in srgb,var(--mt-nav-dropdown-arrow-hover-resolved,var(--mt-nav-hover,#0d6efd)) 14%,transparent)!important;
    border-radius:var(--mt-nav-link-radius,6px)!important;
}
body.cms-nav-arrow-hover-bg>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-bg>nav.navbar .cms-nav-toggle:focus-visible::after{
    color:var(--mt-nav-dropdown-arrow-hover-resolved,var(--mt-nav-hover,#0d6efd))!important;
}

/* Pfeil: Leicht anheben */
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:hover,
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:focus-visible{
    transform:translateY(-2px);
}
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:hover::after,
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle:focus-visible::after{
    color:var(--mt-nav-dropdown-arrow-hover-resolved,var(--mt-nav-hover,#0d6efd))!important;
}

/* Offen zeigt der Pfeil weiterhin nach oben. */
body>nav.navbar .cms-nav-toggle[aria-expanded="true"]::after{
    transform:rotate(180deg);
}
body.cms-nav-arrow-hover-lift>nav.navbar .cms-nav-toggle[aria-expanded="true"]:hover::after{
    transform:rotate(180deg);
}

@media(max-width:991.98px){
    body>nav.navbar .cms-nav-toggle{transform:none!important}
}


/* Hauptlinks mit Untermenü bekommen wieder exakt den normalen
   Navigations-Hovereffekt. Eine ältere Regel ("Chevron statt normalem Nav-Hover")
   hatte diese Effekte für .cms-nav-parent-link absichtlich unterdrückt. */

/* Linien-Effekte wieder freigeben */
body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link::after,
body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link::after,
body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link::after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:.5rem;
    right:.5rem;
    bottom:.25rem;
    height:2px;
    border:0!important;
    border-radius:999px;
    background:var(--mt-nav-hover,#0d6efd)!important;
    pointer-events:none;
    transition:
        transform calc(var(--mt-hover-speed,250) * 1ms) ease,
        right calc(var(--mt-hover-speed,250) * 1ms) ease,
        left calc(var(--mt-hover-speed,250) * 1ms) ease;
}

/* Akzentlinie · Mitte */
body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link::after{
    transform:scaleX(0)!important;
    transform-origin:center;
}
body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link:hover::after,
body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link:focus-visible::after,
body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link.active::after{
    transform:scaleX(1)!important;
}

/* Linie einfahren · links nach rechts */
body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link::after{
    left:.5rem!important;
    right:calc(100% - .5rem)!important;
    transform:none!important;
}
body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link:hover::after,
body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link:focus-visible::after,
body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link.active::after{
    right:.5rem!important;
}

/* Linie · Mitte nach außen */
body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link::after{
    left:50%!important;
    right:50%!important;
    transform:none!important;
}
body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link:hover::after,
body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link:focus-visible::after,
body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link.active::after{
    left:.5rem!important;
    right:.5rem!important;
}

/* Hintergrund hervorheben */
body.cms-nav-hover-bg>nav.navbar .cms-nav-parent-link:hover,
body.cms-nav-hover-bg>nav.navbar .cms-nav-parent-link:focus,
body.cms-nav-hover-bg>nav.navbar .cms-nav-parent-link.active{
    background:color-mix(in srgb,var(--mt-nav-hover,#0d6efd) 14%,transparent)!important;
    border-radius:var(--mt-nav-link-radius,6px)!important;
}

/* Leicht anheben */
body.cms-nav-hover-lift>nav.navbar .cms-nav-parent-link:hover,
body.cms-nav-hover-lift>nav.navbar .cms-nav-parent-link:focus{
    transform:translateY(-2px)!important;
}

/* Der separate Pfeil-Button behält weiterhin nur seine eigenen Pfeil-Effekte. */
body.cms-nav-hover-bg>nav.navbar .cms-nav-toggle:hover,
body.cms-nav-hover-bg>nav.navbar .cms-nav-toggle:focus{
    background:transparent!important;
}
body.cms-nav-hover-lift>nav.navbar .cms-nav-toggle:hover,
body.cms-nav-hover-lift>nav.navbar .cms-nav-toggle:focus{
    transform:none!important;
}


/* Aktive Dropdown-Links nutzen die globale/individuelle Linkbasis,
   nie Bootstrap-Blau. Farben und Effekte werden serverseitig aufgelöst. */
body>nav.navbar .dropdown-menu .dropdown-item.active,
body>nav.navbar .dropdown-menu .dropdown-item:active{
    color:var(--mt-nav-dropdown-active,var(--mt-link-active,#0d6efd))!important;
    background:transparent!important;
}


/* Dropdown-Hoverfarbe muss neben dem gewählten Effekt auch
   zuverlässig die Textfarbe des Dropdown-Links übernehmen. Die explizite
   Dropdown-Regel steht bewusst über der allgemeinen Navigations-Linkfarbe. */
body>nav.navbar .dropdown-menu .dropdown-item:hover,
body>nav.navbar .dropdown-menu .dropdown-item:focus,
body .cms-imported-navigation .dropdown-menu .dropdown-item:hover,
body .cms-imported-navigation .dropdown-menu .dropdown-item:focus{
    color:var(--mt-nav-dropdown-hover,var(--mt-link-hover,var(--mt-nav-hover,#0d6efd)))!important;
}

/* Mobile Dropdowns sind Teil der aufgeklappten Navigation und
   dürfen nicht wie schwebende Desktop-Cards erscheinen. Farben bleiben aus
   dem Designsystem erhalten; nur Geometrie, Rahmen und Mobile-Hoverlinie
   werden für die Touch-Navigation beruhigt. */
@media(max-width:991.98px){
    body>nav.navbar .cms-nav-parent{
        width:100%;
        align-items:center;
    }
    body>nav.navbar .cms-nav-parent-link{
        min-width:0;
        max-width:calc(100% - 2rem);
    }
    body>nav.navbar .cms-nav-parent>.dropdown-menu{
        position:static!important;
        inset:auto!important;
        transform:none!important;
        flex:0 0 100%;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        margin:.15rem 0 .35rem!important;
        padding:.1rem 0 .1rem 1.25rem!important;
        background:transparent!important;
        border:0!important;
        border-radius:0!important;
        box-shadow:none!important;
    }
    body>nav.navbar .cms-nav-parent>.dropdown-menu::before,
    body>nav.navbar .cms-nav-parent>.dropdown-menu::after{
        content:none!important;
        display:none!important;
    }
    body>nav.navbar .cms-nav-parent>.dropdown-menu .dropdown-item{
        width:max-content!important;
        max-width:100%;
        margin:0!important;
        padding:.45rem .65rem!important;
        border:0!important;
        border-radius:var(--mt-nav-link-radius,6px);
        background:transparent!important;
        white-space:normal;
        overflow-wrap:anywhere;
    }
}


/* Kontaktlinks: Telefonnummer im Ruhezustand ohne Browser-Unterstreichung.
   Der globale Link-Hovereffekt bleibt bewusst aktiv. */
main a[href^="tel:"]{
  text-decoration:none;
}


@media(max-width:991.98px){
    body.cms-nav-hover-underline>nav.navbar .nav-link.active::after,
    body.cms-nav-hover-line-grow>nav.navbar .nav-link.active::after,
    body.cms-nav-hover-line-center>nav.navbar .nav-link.active::after{
        transition:none!important;
    }
    body.cms-nav-hover-underline>nav.navbar .nav-link.active::after{
        transform:scaleX(1)!important;
    }
    body.cms-nav-hover-line-grow>nav.navbar .nav-link.active::after{
        left:.5rem!important;
        right:.5rem!important;
        transform:none!important;
    }
    body.cms-nav-hover-line-center>nav.navbar .nav-link.active::after{
        left:.5rem!important;
        right:.5rem!important;
        transform:none!important;
    }
}



@media(max-width:991.98px){
    body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link::after,
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link:hover::after,
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link:focus-visible::after,
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link.active::after,
    body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link:hover::after,
    body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link:focus-visible::after,
    body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link.active::after{
        right:.2rem!important;
    }
}



body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item::after,
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item::after,
body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item::after{
    left:1rem;
    right:1rem;
    height:3px;
}

body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item::after{
    right:calc(100% - 1rem);
}
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:hover::after,
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
    right:1rem;
}

body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:hover::after,
body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
    left:1rem;
    right:1rem;
}

@media(max-width:991.98px){
    body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item::after,
    body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item::after,
    body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item::after{
        left:.65rem;
        right:.65rem;
    }

    body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item::after{
        left:.65rem;
        right:calc(100% - .65rem);
    }
    body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:hover::after,
    body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
        right:.65rem;
    }

    body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:hover::after,
    body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:focus-visible::after{
        left:.65rem;
        right:.65rem;
    }
}



@media(max-width:991.98px){
    body.cms-nav-hover-underline>nav.navbar .navbar-nav>.nav-item>.nav-link::after,
    body.cms-nav-hover-line-center>nav.navbar .navbar-nav>.nav-item>.nav-link:hover::after,
    body.cms-nav-hover-line-center>nav.navbar .navbar-nav>.nav-item>.nav-link:focus-visible::after,
    body.cms-nav-hover-line-center>nav.navbar .navbar-nav>.nav-item>.nav-link.active::after{
        left:0!important;
        right:0!important;
    }

    body.cms-nav-hover-line-grow>nav.navbar .navbar-nav>.nav-item>.nav-link::after{
        left:0!important;
        right:100%!important;
    }
    body.cms-nav-hover-line-grow>nav.navbar .navbar-nav>.nav-item>.nav-link:hover::after,
    body.cms-nav-hover-line-grow>nav.navbar .navbar-nav>.nav-item>.nav-link:focus-visible::after,
    body.cms-nav-hover-line-grow>nav.navbar .navbar-nav>.nav-item>.nav-link.active::after{
        right:0!important;
    }

    body.cms-nav-hover-underline>nav.navbar .cms-nav-parent-link::after{
        left:0!important;
        right:.25rem!important;
    }
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link::after{
        left:0!important;
        right:100%!important;
    }
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link:hover::after,
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link:focus-visible::after,
    body.cms-nav-hover-line-grow>nav.navbar .cms-nav-parent-link.active::after,
    body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link:hover::after,
    body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link:focus-visible::after,
    body.cms-nav-hover-line-center>nav.navbar .cms-nav-parent-link.active::after{
        left:0!important;
        right:.25rem!important;
    }
}

@media(min-width:992px){
    body>nav.navbar .dropdown-menu .dropdown-item{
        width:max-content;
        max-width:100%;
    }
}



html.cms-builder-live-preview{
    scrollbar-color:var(--mt-global-border,var(--mt-muted,#6c757d)) var(--mt-body-bg,#111);
    scrollbar-width:thin;
}
html.cms-builder-live-preview::-webkit-scrollbar,
html.cms-builder-live-preview body::-webkit-scrollbar{
    width:10px;
    height:10px;
}
html.cms-builder-live-preview::-webkit-scrollbar-track,
html.cms-builder-live-preview body::-webkit-scrollbar-track{
    background:var(--mt-body-bg,#111);
}
html.cms-builder-live-preview::-webkit-scrollbar-thumb,
html.cms-builder-live-preview body::-webkit-scrollbar-thumb{
    background:var(--mt-global-border,var(--mt-muted,#6c757d));
    border:2px solid var(--mt-body-bg,#111);
    border-radius:999px;
}
html.cms-builder-live-preview::-webkit-scrollbar-button,
html.cms-builder-live-preview body::-webkit-scrollbar-button{
    display:none;
    width:0;
    height:0;
}

/* Live-Status-Badge ("Derzeit geoeffnet - Schliesst um 17:00 Uhr") im
   Hero-/Seitenkopf-Bereich. <details>/<summary> statt JS: klappt nativ auf,
   auch ohne zusaetzliches Skript und bei deaktiviertem JS bedienbar. */
.cms-hero-hours{
    position:absolute;
    z-index:3;
    max-width:min(480px,calc(100% - 1.5rem));
    background:var(--mt-hero-hours-bg,#ffffff);
    color:var(--mt-hero-hours-text,#212529);
    border-radius:.6rem;
    border-style:solid;
    border-color:var(--mt-hero-hours-border-color,transparent);
    border-width:var(--mt-hero-hours-border-width,0px);
    box-shadow:0 6px 20px rgba(0,0,0,.18);
    font-size:.875rem;
    line-height:1.3;
}
.cms-hero-hours-pos-top-left{top:1rem;left:1rem}
.cms-hero-hours-pos-top-right{top:1rem;right:1rem}
.cms-hero-hours-pos-bottom-left{bottom:1rem;left:1rem}
.cms-hero-hours-pos-bottom-right{bottom:1rem;right:1rem}
.cms-hero-hours-pos-center{top:50%;left:50%;transform:translate(-50%,-50%)}
.cms-hero-hours-summary{
    display:flex;
    align-items:center;
    gap:.5rem;
    padding:.6rem .75rem;
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.cms-hero-hours-summary::-webkit-details-marker{display:none}
.cms-hero-hours-summary::marker{content:""}
.cms-hero-hours-dot{
    flex:0 0 auto;
    width:.55rem;
    height:.55rem;
    border-radius:50%;
    background:var(--mt-hero-hours-closed,#dc3545);
}
.cms-hero-hours.is-open .cms-hero-hours-dot{background:var(--mt-hero-hours-open,#198754)}
.cms-hero-hours-label{flex:1 1 auto;font-weight:600}
.cms-hero-hours-caret{
    flex:0 0 auto;
    font-size:.7rem;
    opacity:.65;
    transition:transform .15s ease;
}
.cms-hero-hours[open] .cms-hero-hours-caret{transform:rotate(180deg)}
.cms-hero-hours-week{
    list-style:none;
    margin:0;
    padding:.25rem .75rem .65rem;
    border-top:1px solid rgba(0,0,0,.08);
}
.cms-hero-hours-week-row{
    display:flex;
    justify-content:space-between;
    gap:.75rem;
    padding:.2rem 0;
}
.cms-hero-hours-week-row.is-today{font-weight:inherit;color:var(--mt-hero-hours-today,var(--mt-secondary,#6c757d))}
.cms-hero-hours-week-row.is-closed .cms-hero-hours-week-time{opacity:.65}
@media(max-width:575.98px){
    .cms-hero-hours{font-size:.8125rem}
}


/* Linklinie: Dropdown-Items duerfen ausserhalb Hover/Keyboard-Fokus nur aktiv dauerhaft markiert sein. */
body.cms-nav-dropdown-item-hover-underline>nav.navbar .dropdown-menu .dropdown-item:not(.active):not(:hover):not(:focus-visible)::after,
body.cms-nav-dropdown-item-hover-line-grow>nav.navbar .dropdown-menu .dropdown-item:not(.active):not(:hover):not(:focus-visible)::after,
body.cms-nav-dropdown-item-hover-line-center>nav.navbar .dropdown-menu .dropdown-item:not(.active):not(:hover):not(:focus-visible)::after{
    left:50%!important;
    right:50%!important;
    transform:scaleX(0)!important;
}

/* === Systemseiten: 404 + Wartung ======================================= */
.cms-system-404,
.cms-maintenance-page{
    background:var(--cms-system-page-bg,var(--mt-body-bg,#fff));
    color:var(--cms-system-page-text,var(--mt-text,#212529));
}
.cms-system-404 a,
.cms-maintenance-page a{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}
.cms-system-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    margin-bottom:1rem;
    color:var(--cms-system-accent,var(--mt-primary,#0d6efd));
    font-size:.78rem;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
}
.cms-system-eyebrow::before{content:"";width:2.2rem;height:2px;background:currentColor;border-radius:999px}
.cms-system-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.8rem}
.cms-system-actions .btn{min-height:3.15rem;display:inline-flex;align-items:center;justify-content:center;padding-inline:1.45rem}
.cms-system-404-main{background:var(--cms-system-page-bg,var(--mt-body-bg,#fff));overflow:hidden;position:relative}
.cms-system-404-shell{
    min-height:clamp(520px,68vh,760px);
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);
    align-items:center;
    gap:clamp(2rem,6vw,6rem);
    padding-top:clamp(3rem,7vw,6rem);
    padding-bottom:clamp(3rem,7vw,6rem);
}
.cms-system-404-copy{position:relative;z-index:2;max-width:650px}
.cms-system-404-code{display:flex;align-items:center;gap:.02em;font-size:clamp(6.2rem,13vw,11rem);line-height:.78;font-weight:700;letter-spacing:-.075em;margin-bottom:1.8rem;color:var(--cms-system-page-text,var(--mt-text,#212529))}
.cms-system-404-zero{color:var(--cms-system-accent,var(--mt-primary,#0d6efd));position:relative}
.cms-system-404-zero::after{content:"";position:absolute;left:27%;right:20%;bottom:12%;height:5px;border-radius:999px;background:var(--cms-system-accent,var(--mt-primary,#0d6efd));opacity:.32}
.cms-system-404-copy h1{color:var(--cms-system-page-text,var(--mt-text,#212529));font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.02;letter-spacing:-.045em;margin:0 0 1rem;max-width:630px}
.cms-system-404-copy p{color:var(--cms-system-page-muted,var(--mt-muted,#6c757d));font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.65;max-width:620px;margin:0}
.cms-system-404-visual{position:relative;min-height:500px;isolation:isolate}
.cms-system-404-visual::before{content:"";position:absolute;width:78%;aspect-ratio:1;left:5%;top:6%;border-radius:50%;background:color-mix(in srgb,var(--cms-system-accent) 8%,transparent);filter:blur(.1px);z-index:-2}
.cms-system-signpost{position:absolute;left:48%;top:7%;width:9px;height:385px;transform:translateX(-50%);background:linear-gradient(90deg,#708097,#a8b4c4 45%,#68778d);border-radius:8px;box-shadow:0 14px 28px rgba(31,49,75,.14)}
.cms-system-signpost-item{
    position:absolute;
    left:50%;
    width:clamp(176px,19vw,218px);
    min-height:47px;
    display:flex;
    align-items:center;
    gap:.62rem;
    padding:.56rem .84rem;
    color:#101827!important;
    text-decoration:none!important;
    font-size:clamp(.88rem,1.08vw,1.02rem);
    background:linear-gradient(180deg,#f9fbfd,#edf1f6);
    border:1px solid rgba(99,115,137,.16);
    border-radius:calc(var(--mt-global-radius,12px) * .72);
    box-shadow:0 9px 22px rgba(57,74,98,.12);
    transform-origin:center;
    z-index:2;
}
/* Gerade Schilder zeigen nach rechts, ungerade nach links. So bleibt die
   Stange als ein zusammenhängendes Objekt sichtbar. */
.cms-system-signpost-item::before{content:""!important;position:absolute!important;left:0!important;top:10px!important;bottom:10px!important;width:4px!important;height:auto!important;background:var(--cms-system-accent,var(--mt-primary,#0d6efd))!important;border:0!important;border-radius:0 999px 999px 0!important;transform:none!important;pointer-events:none!important}
.cms-system-signpost-item::after{content:""!important;position:absolute!important;right:-13px!important;left:auto!important;top:50%!important;bottom:auto!important;width:0!important;height:0!important;background:transparent!important;border-top:11px solid transparent!important;border-bottom:11px solid transparent!important;border-left:13px solid #edf1f6!important;border-right:0!important;border-radius:0!important;transform:translateY(-50%)!important;pointer-events:none!important}
.cms-system-signpost-item--1::before,.cms-system-signpost-item--3::before{left:auto!important;right:0!important;border-radius:999px 0 0 999px!important}
.cms-system-signpost-item--1::after,.cms-system-signpost-item--3::after{left:-13px!important;right:auto!important;border-left:0!important;border-right:13px solid #edf1f6!important}
.cms-system-signpost-item:hover{background:linear-gradient(180deg,#fff,#eef2f6)!important;box-shadow:0 13px 28px rgba(57,74,98,.16)}
.cms-system-signpost-item i{width:1.1rem;text-align:center;color:var(--cms-system-accent,var(--mt-primary,#0d6efd));font-size:.88em}
.cms-system-signpost-item--0{top:24px;transform:translateX(-8%) rotate(-.45deg)}
.cms-system-signpost-item--1{top:88px;transform:translateX(-92%) rotate(.4deg)}
.cms-system-signpost-item--2{top:152px;transform:translateX(-8%) rotate(-.35deg)}
.cms-system-signpost-item--3{top:216px;transform:translateX(-92%) rotate(.45deg)}
.cms-system-signpost-item--0:hover{transform:translateX(-8%) translateY(-2px) rotate(-.45deg)}
.cms-system-signpost-item--1:hover{transform:translateX(-92%) translateY(-2px) rotate(.4deg)}
.cms-system-signpost-item--2:hover{transform:translateX(-8%) translateY(-2px) rotate(-.35deg)}
.cms-system-signpost-item--3:hover{transform:translateX(-92%) translateY(-2px) rotate(.45deg)}
.cms-system-handnote{position:absolute;right:5%;top:35%;font-size:1.05rem;line-height:1.28;font-style:italic;color:var(--cms-system-page-muted);transform:rotate(-5deg)}
.cms-system-handnote span{display:block;width:70px;height:40px;margin:10px 0 0 -30px;border-bottom:2px solid var(--cms-system-accent);border-radius:50%;transform:rotate(28deg)}
.cms-system-404-landscape span{position:absolute;border-radius:50% 50% 0 0;background:color-mix(in srgb,var(--cms-system-accent) 8%,var(--cms-system-page-bg));z-index:-3}
.cms-system-404-landscape span:nth-child(1){width:280px;height:120px;right:-20px;bottom:0}.cms-system-404-landscape span:nth-child(2){width:230px;height:90px;left:0;bottom:0;opacity:.7}.cms-system-404-landscape span:nth-child(3){width:130px;height:65px;right:40%;bottom:0;opacity:.45}
.cms-system-404--dark .cms-system-signpost-item{background:linear-gradient(180deg,#182433,#101a27);color:#f7f9fc!important;border-color:rgba(255,255,255,.08);box-shadow:0 14px 36px rgba(0,0,0,.28)}
.cms-system-404--dark .cms-system-signpost-item::after{border-left-color:#14202e!important}.cms-system-404--dark .cms-system-signpost-item--1::after,.cms-system-signpost-item--3::after{border-left-color:transparent!important;border-right-color:#14202e!important}
.cms-system-404--dark .cms-system-404-main{background:radial-gradient(circle at 75% 30%,color-mix(in srgb,var(--cms-system-accent) 13%,transparent),transparent 34%),var(--cms-system-page-bg)}

.cms-maintenance-page{min-height:100vh;background:var(--cms-system-page-bg);color:var(--cms-system-page-text);overflow-x:hidden}
.cms-maintenance-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 74% 38%,color-mix(in srgb,var(--cms-system-accent) 15%,transparent),transparent 30%),var(--cms-system-page-bg)}
.cms-maintenance-topbar{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-top:1.8rem;padding-bottom:1.2rem;position:relative;z-index:4}
.cms-maintenance-brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--cms-system-page-text)!important;text-decoration:none!important;font-size:1.4rem}
.cms-maintenance-brand img{display:block;width:auto;height:clamp(120px,10vw,180px);max-width:min(760px,78vw);max-height:none;object-fit:contain;object-position:left center}
.cms-maintenance-brand i{color:var(--cms-system-accent);font-size:1.35rem}.cms-maintenance-brand-accent{color:var(--cms-system-accent);margin-left:.16em}
.cms-maintenance-topline{display:flex;align-items:center;gap:.7rem;color:var(--cms-system-page-muted);font-size:.9rem}.cms-maintenance-topline i{display:block;width:2.2rem;height:2px;background:var(--cms-system-accent);border-radius:999px}
.cms-maintenance-main{display:grid;grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr);gap:clamp(3rem,6vw,7rem);align-items:center;flex:1;padding-top:clamp(2.5rem,5vw,5rem);padding-bottom:clamp(2rem,4vw,4rem)}
.cms-maintenance-copy{position:relative;z-index:3;max-width:660px}.cms-maintenance-copy h1{font-size:clamp(3.2rem,6vw,5.8rem);line-height:.95;letter-spacing:-.055em;margin:0 0 1.5rem;color:var(--cms-system-page-text)}.cms-maintenance-copy h1 span{color:var(--cms-system-accent)}
.cms-maintenance-text{color:var(--cms-system-page-muted);font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.6}.cms-maintenance-text p:last-child{margin-bottom:0}.cms-maintenance-text .text-secondary{color:inherit!important}
.cms-maintenance-progressbox{margin-top:1.8rem;border:1px solid color-mix(in srgb,var(--cms-system-page-text) 18%,transparent);border-radius:var(--mt-global-radius,12px);padding:1.1rem 1.25rem;background:color-mix(in srgb,var(--cms-system-page-text) 4%,transparent);box-shadow:var(--mt-card-shadow,none)}
.cms-maintenance-progresshead{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--cms-system-page-text);margin-bottom:.8rem}.cms-maintenance-progresshead span{font-weight:600}.cms-maintenance-progressbar{height:7px;border-radius:999px;background:color-mix(in srgb,var(--cms-system-page-text) 14%,transparent);overflow:hidden}.cms-maintenance-progressbar span{display:block;height:100%;width:var(--cms-maintenance-progress,68%);background:linear-gradient(90deg,var(--cms-system-accent),color-mix(in srgb,var(--cms-system-accent) 65%,white));border-radius:inherit;box-shadow:0 0 18px color-mix(in srgb,var(--cms-system-accent) 55%,transparent)}
.cms-maintenance-scene{position:relative;min-height:480px;isolation:isolate}.cms-maintenance-glow{position:absolute;width:80%;height:60%;right:4%;top:15%;background:radial-gradient(circle,color-mix(in srgb,var(--cms-system-accent) 30%,transparent),transparent 68%);filter:blur(10px);z-index:-2}.cms-maintenance-desk{position:absolute;left:1%;right:-12%;height:120px;bottom:30px;background:linear-gradient(180deg,#17212d,#0a111b);border-radius:18px;box-shadow:0 22px 50px rgba(0,0,0,.38)}
.cms-maintenance-laptop{position:absolute;width:58%;left:22%;bottom:108px}.cms-maintenance-laptop-screen{aspect-ratio:1.55;background:linear-gradient(145deg,#111d2b,#050b13);border:10px solid #1c2a3a;border-radius:18px;box-shadow:0 28px 55px rgba(0,0,0,.36),0 0 35px color-mix(in srgb,var(--cms-system-accent) 16%,transparent);display:grid;place-items:stretch;padding:clamp(10px,1.4vw,16px);overflow:hidden}.cms-maintenance-terminal{width:100%;height:100%;min-height:0;border:1px solid color-mix(in srgb,var(--cms-system-accent) 30%,rgba(255,255,255,.08));border-radius:9px;background:linear-gradient(180deg,rgba(1,7,12,.9),rgba(1,5,9,.97));box-shadow:inset 0 0 28px color-mix(in srgb,var(--cms-system-accent) 7%,transparent);overflow:hidden;display:flex;flex-direction:column}.cms-maintenance-terminal-head{height:26px;flex:0 0 26px;display:flex;align-items:center;gap:6px;padding:0 9px;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025)}.cms-maintenance-terminal-head span{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--cms-system-accent) 72%,#52606d)}.cms-maintenance-terminal-head span:nth-child(2){opacity:.72}.cms-maintenance-terminal-head span:nth-child(3){opacity:.48}.cms-maintenance-terminal-head b{margin-left:auto;color:rgba(255,255,255,.42);font:500 8px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;letter-spacing:.02em}.cms-maintenance-terminal-stream{flex:1;min-height:0;padding:10px 11px;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;overflow:hidden;font:500 clamp(7px,.78vw,11px)/1.38 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;color:var(--cms-system-accent);text-shadow:0 0 10px color-mix(in srgb,var(--cms-system-accent) 32%,transparent)}.cms-maintenance-terminal-line{display:flex;gap:.55em;white-space:nowrap;min-width:0;opacity:.92}.cms-maintenance-terminal-prompt{color:color-mix(in srgb,var(--cms-system-accent) 64%,white);font-weight:700}.cms-maintenance-terminal-output{overflow:hidden;text-overflow:clip}.cms-maintenance-terminal-cursor{animation:cmsMaintenanceCursor .82s steps(1,end) infinite;color:#fff}.cms-maintenance-laptop-base{height:16px;width:115%;margin-left:-7.5%;background:linear-gradient(#2c3848,#101823);clip-path:polygon(5% 0,95% 0,100% 100%,0 100%);border-radius:0 0 12px 12px}@keyframes cmsMaintenanceCursor{0%,48%{opacity:1}49%,100%{opacity:0}}@media(prefers-reduced-motion:reduce){.cms-maintenance-terminal-cursor{animation:none}}
.cms-maintenance-mug{position:absolute;width:118px;height:142px;right:1%;bottom:95px;border-radius:10px 10px 20px 20px;background:linear-gradient(145deg,#172333,#090f18);border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 35px rgba(0,0,0,.35);display:grid;place-items:center;text-align:center;color:#fff;font-size:.9rem;line-height:1.25}.cms-maintenance-mug::after{content:"";position:absolute;right:-36px;top:28px;width:48px;height:62px;border:10px solid #121d2a;border-left:0;border-radius:0 40px 40px 0}.cms-maintenance-mug::before{content:"";position:absolute;left:27px;right:27px;bottom:16px;height:2px;background:var(--cms-system-accent)}
.cms-maintenance-lamp{position:absolute;right:-4%;top:0;width:150px;height:210px}.cms-maintenance-lamp::before{content:"";position:absolute;right:32px;top:0;width:16px;height:120px;background:#1a2634;border-radius:10px;transform:rotate(25deg);transform-origin:top}.cms-maintenance-lamp span{position:absolute;right:0;top:86px;width:110px;height:66px;background:#142131;border-radius:60% 60% 24% 24%;transform:rotate(12deg);box-shadow:0 10px 35px color-mix(in srgb,var(--cms-system-accent) 25%,transparent)}
.cms-maintenance-plant{position:absolute;left:3%;bottom:115px;width:120px;height:220px}.cms-maintenance-plant b{position:absolute;bottom:0;left:28px;width:72px;height:80px;background:#172433;border-radius:8px 8px 20px 20px}.cms-maintenance-plant i{position:absolute;bottom:66px;left:55px;width:34px;height:92px;background:color-mix(in srgb,var(--cms-system-accent) 42%,#276a4f);border-radius:100% 0 100% 0;transform-origin:bottom}.cms-maintenance-plant i:nth-child(1){transform:rotate(-46deg)}.cms-maintenance-plant i:nth-child(2){transform:rotate(-18deg);height:120px}.cms-maintenance-plant i:nth-child(3){transform:rotate(20deg);height:110px}.cms-maintenance-plant i:nth-child(4){transform:rotate(48deg);height:86px}
.cms-maintenance-benefits{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid color-mix(in srgb,var(--cms-system-page-text) 13%,transparent);border-bottom:1px solid color-mix(in srgb,var(--cms-system-page-text) 13%,transparent);margin-top:1rem}.cms-maintenance-benefits>div{display:grid;grid-template-columns:auto 1fr;column-gap:.9rem;row-gap:.15rem;align-items:center;padding:1.4rem 2rem}.cms-maintenance-benefits>div+div{border-left:1px solid color-mix(in srgb,var(--cms-system-page-text) 13%,transparent)}.cms-maintenance-benefits i{grid-row:1/3;color:var(--cms-system-accent);font-size:1.7rem}.cms-maintenance-benefits strong{color:var(--cms-system-page-text)}.cms-maintenance-benefits span{color:var(--cms-system-page-muted);font-size:.88rem}
.cms-maintenance-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.3rem;padding-bottom:1.5rem;color:var(--cms-system-page-muted);font-size:.88rem}
.cms-maintenance-page--light .cms-maintenance-scene{filter:saturate(.85)}.cms-maintenance-page--light .cms-maintenance-desk{background:linear-gradient(#dfe6ef,#cbd6e2)}.cms-maintenance-page--light .cms-maintenance-laptop-screen{border-color:#65758a}.cms-maintenance-page--light .cms-maintenance-mug{background:#1a2430}

@media(max-width:991.98px){
    .cms-system-404-shell{grid-template-columns:1fr;min-height:auto}.cms-system-404-copy{max-width:760px}.cms-system-404-visual{min-height:430px;max-width:650px;width:100%;margin-inline:auto}.cms-system-handnote{right:3%}
    .cms-maintenance-main{grid-template-columns:1fr}.cms-maintenance-copy{max-width:760px}.cms-maintenance-scene{min-height:390px;max-width:720px;width:100%;margin-inline:auto}.cms-maintenance-benefits>div{padding-inline:1.2rem}
}
@media(max-width:767.98px){
    .cms-system-404-code{font-size:7rem}.cms-system-404-copy h1{font-size:2.45rem}.cms-system-404-visual{min-height:350px}.cms-system-signpost{left:50%;top:5%;height:330px}.cms-system-signpost-item{width:182px;min-height:45px;padding:.52rem .72rem;font-size:.9rem}.cms-system-signpost-item::before{top:9px!important;bottom:9px!important}.cms-system-signpost-item::after{border-top-width:12px!important;border-bottom-width:12px!important}.cms-system-signpost-item--0{top:20px}.cms-system-signpost-item--1{top:78px}.cms-system-signpost-item--2{top:136px}.cms-system-signpost-item--3{top:194px}.cms-system-handnote{display:none}
    .cms-maintenance-topline{display:none}.cms-maintenance-brand img{width:auto;height:clamp(110px,14vw,160px);max-width:78vw;max-height:none}.cms-maintenance-copy h1{font-size:3.45rem}.cms-maintenance-scene{min-height:330px}.cms-maintenance-laptop{width:68%;left:13%;bottom:90px}.cms-maintenance-mug{transform:scale(.82);transform-origin:bottom right}.cms-maintenance-plant{transform:scale(.82);transform-origin:bottom left}.cms-maintenance-lamp{transform:scale(.8);transform-origin:top right}.cms-maintenance-benefits{grid-template-columns:1fr}.cms-maintenance-benefits>div+div{border-left:0;border-top:1px solid color-mix(in srgb,var(--cms-system-page-text) 13%,transparent)}.cms-maintenance-footer{flex-direction:column;align-items:flex-start}
}
@media(max-width:575.98px){
    .cms-system-actions{flex-direction:column}.cms-system-actions .btn{width:100%}.cms-system-404-shell{padding-top:2.5rem;padding-bottom:2.5rem}.cms-system-404-code{font-size:5.8rem}.cms-system-404-visual{min-height:315px}.cms-system-signpost-item{width:166px}.cms-system-signpost-item--0,.cms-system-signpost-item--2{transform:translateX(-7%)}.cms-system-signpost-item--1,.cms-system-signpost-item--3{transform:translateX(-93%)}
    .cms-maintenance-topbar{padding-top:1.1rem}.cms-maintenance-brand img{width:auto;height:clamp(92px,18vw,132px);max-width:84vw;max-height:none}.cms-maintenance-main{padding-top:2rem}.cms-maintenance-copy h1{font-size:3rem}.cms-maintenance-progressbox{padding:1rem}.cms-maintenance-scene{min-height:285px}.cms-maintenance-desk{height:88px;bottom:18px}.cms-maintenance-laptop{bottom:74px}.cms-maintenance-mug{right:-6%;bottom:57px;transform:scale(.68)}.cms-maintenance-plant{left:-5%;bottom:78px;transform:scale(.68)}.cms-maintenance-lamp{right:-13%;transform:scale(.65)}
}


/* Systemseite: das globale main-Hintergrundtoken darf die Studiofläche nicht als
   weißen Container übermalen. */
.cms-maintenance-page .cms-maintenance-main{background:transparent!important}
/* === Wartungsseite 1.15.2: ruhiger Dark-Studio-Look ===================== */
.cms-maintenance-page--dark{
    background:#030812!important;
}
.cms-maintenance-page--dark .cms-maintenance-shell{
    background:
        radial-gradient(circle at 78% 36%,color-mix(in srgb,var(--cms-system-accent) 20%,transparent),transparent 24%),
        radial-gradient(circle at 62% 84%,rgba(26,57,88,.22),transparent 34%),
        linear-gradient(135deg,#020711 0%,#07101b 48%,#030811 100%)!important;
}
.cms-maintenance-page--dark .cms-maintenance-topbar{
    padding-top:clamp(1.35rem,2.8vw,2.4rem);
    padding-bottom:.75rem;
}
.cms-maintenance-page--dark .cms-maintenance-brand img{
    width:auto;
    height:clamp(145px,12vw,230px);
    max-width:min(820px,80vw);
    max-height:none;
}
.cms-maintenance-page--dark .cms-maintenance-main{
    background:transparent!important;
    grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);
    gap:clamp(2.5rem,5vw,6rem);
    padding-top:clamp(2rem,4vw,4.25rem);
    padding-bottom:clamp(2.5rem,5vw,4.5rem);
}
.cms-maintenance-page--dark .cms-maintenance-copy{
    max-width:690px;
}
.cms-maintenance-page--dark .cms-maintenance-copy h1{
    color:#f8fafc!important;
    text-shadow:0 8px 30px rgba(0,0,0,.28);
}
.cms-maintenance-page--dark .cms-maintenance-text{
    color:rgba(248,250,252,.74)!important;
}
.cms-maintenance-page--dark .cms-maintenance-progressbox{
    background:rgba(7,15,25,.72);
    border-color:rgba(255,255,255,.13);
    box-shadow:0 20px 55px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.025);
    backdrop-filter:blur(6px);
}
.cms-maintenance-page--dark .cms-maintenance-progresshead{
    color:#f8fafc;
}
.cms-maintenance-page--dark .cms-system-actions .btn-primary{
    --bs-btn-bg:var(--cms-system-accent)!important;
    --bs-btn-border-color:var(--cms-system-accent)!important;
    --bs-btn-hover-bg:color-mix(in srgb,var(--cms-system-accent) 82%,white)!important;
    --bs-btn-hover-border-color:color-mix(in srgb,var(--cms-system-accent) 82%,white)!important;
    --bs-btn-color:#fff!important;
    box-shadow:0 14px 30px color-mix(in srgb,var(--cms-system-accent) 24%,transparent);
}
.cms-maintenance-page--dark .cms-maintenance-retry{
    color:#f8fafc!important;
    background:rgba(255,255,255,.025)!important;
    border-color:rgba(255,255,255,.28)!important;
}
.cms-maintenance-page--dark .cms-maintenance-retry:hover,
.cms-maintenance-page--dark .cms-maintenance-retry:focus-visible{
    color:#fff!important;
    background:rgba(255,255,255,.085)!important;
    border-color:rgba(255,255,255,.48)!important;
}
.cms-maintenance-page--dark .cms-maintenance-scene{
    min-height:520px;
}
.cms-maintenance-page--dark .cms-maintenance-glow{
    width:88%;
    height:72%;
    right:-1%;
    top:9%;
    background:radial-gradient(circle,color-mix(in srgb,var(--cms-system-accent) 34%,transparent),transparent 64%);
    filter:blur(18px);
    opacity:.82;
}
.cms-maintenance-page--dark .cms-maintenance-desk{
    left:-2%;
    right:-7%;
    bottom:22px;
    background:linear-gradient(180deg,#17212d 0%,#09111b 68%,#050b12 100%);
    box-shadow:0 32px 70px rgba(0,0,0,.46),inset 0 1px rgba(255,255,255,.035);
}
.cms-maintenance-page--dark .cms-maintenance-laptop{
    width:56%;
    left:24%;
    bottom:104px;
}
.cms-maintenance-page--dark .cms-maintenance-mug{
    right:2%;
    bottom:87px;
}
.cms-maintenance-page--dark .cms-maintenance-plant{
    left:1%;
    bottom:108px;
}
.cms-maintenance-page--dark .cms-maintenance-lamp{
    right:-1%;
    top:4%;
}
.cms-maintenance-page--dark .cms-maintenance-benefits{
    margin-top:0;
    background:rgba(2,7,14,.28);
    border-color:rgba(255,255,255,.09);
}
.cms-maintenance-page--dark .cms-maintenance-benefits>div+div{
    border-color:rgba(255,255,255,.09);
}
.cms-maintenance-page--dark .cms-maintenance-footer{
    color:rgba(248,250,252,.54);
}
@media(max-width:991.98px){
    .cms-maintenance-page--dark .cms-maintenance-main{grid-template-columns:1fr}
    .cms-maintenance-page--dark .cms-maintenance-scene{min-height:400px}
}
@media(max-width:575.98px){
    .cms-maintenance-page--dark .cms-maintenance-brand img{width:auto;height:clamp(105px,19vw,150px);max-width:86vw;max-height:none}
    .cms-maintenance-page--dark .cms-maintenance-scene{min-height:300px}
}


/* === Wartungslogo 1.15.10: sichtbaren Logo-Inhalt skalieren + 75px tiefer setzen === */
.cms-maintenance-brand-logo-frame{
    display:block;
    position:relative;
    width:clamp(300px,34vw,520px);
    height:clamp(96px,9vw,145px);
    margin-top:75px;
    overflow:visible;
    flex:0 0 auto;
}
.cms-maintenance-brand-logo-frame img{
    display:block!important;
    width:auto!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:left center!important;
    transform:scale(1.72);
    transform-origin:left center;
}
.cms-maintenance-page--dark .cms-maintenance-brand-logo-frame img{
    transform:scale(1.82);
}
.cms-maintenance-topbar{
    min-height:clamp(150px,14vw,225px);
}
@media(max-width:991.98px){
    .cms-maintenance-brand-logo-frame{width:clamp(260px,48vw,430px);height:clamp(86px,12vw,126px);margin-top:44px}
    .cms-maintenance-brand-logo-frame img,
    .cms-maintenance-page--dark .cms-maintenance-brand-logo-frame img{transform:scale(1.48)}
    .cms-maintenance-topbar{min-height:clamp(125px,18vw,180px)}
}
@media(max-width:575.98px){
    .cms-maintenance-brand-logo-frame{width:min(72vw,330px);height:clamp(72px,17vw,102px);margin-top:24px}
    .cms-maintenance-brand-logo-frame img,
    .cms-maintenance-page--dark .cms-maintenance-brand-logo-frame img{transform:scale(1.30)}
    .cms-maintenance-topbar{min-height:clamp(104px,24vw,138px)}
}
