@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('/theme/fonts/dm-sans-latin-wght-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('/theme/fonts/dm-sans-latin-ext-wght-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'DM Sans Fallback';src:local('Arial');size-adjust:101%;ascent-override:98%;descent-override:30%;line-gap-override:0%}
:root{
  --tinte:#231f20;          
  --tinte-2:#3a3436;        
  --rot:#ed1d24;            
  --rot-text:#cf1219;       
  --rot-dunkel:#a50d13;     
  --rot-hell:#fde7e8;       
  --flaeche:#f1f1f2;        
  --linie:#d9d9db;
  --feldrand:#9b9799;
  --text2:#5f5b5a;          
  --auf-dunkel:#eceaea;
  --auf-dunkel-2:#b5b0b1;
  --weiss:#fff;
  --breite:1200px;
  --schrift:'DM Sans','DM Sans Fallback','Helvetica Neue',Arial,sans-serif;
  --glut:linear-gradient(90deg,#4f0a0d 0%,#8f1116 14%,#c8161d 28%,#ed1d24 42%,#f26522 57%,#f7941d 70%,#ffd23f 86%,#fff3c4 100%);
  --keil:polygon(0 0,100% 0,50% 100%);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;font-family:var(--schrift);font-size:1.0625rem;line-height:1.6;color:var(--tinte);background:var(--weiss);font-optical-sizing:auto}
img,svg{max-width:100%;height:auto}
img{display:block}
a{color:var(--rot-text);text-underline-offset:.16em;text-decoration-thickness:.07em}
a:hover{color:var(--rot-dunkel)}
:focus-visible{outline:3px solid var(--rot);outline-offset:3px}
.band-dunkel :focus-visible,.buehne :focus-visible,.fuss :focus-visible,.kontaktkarte :focus-visible{outline-color:#ffd23f}
h1,h2,h3,h4{font-weight:800;line-height:1.1;margin:0 0 .5em;letter-spacing:-.02em;text-wrap:balance}
h1{font-size:clamp(2.2rem,5vw,3.75rem)}
h2{font-size:clamp(1.7rem,3.3vw,2.5rem)}
h3{font-size:clamp(1.2rem,1.9vw,1.4rem);letter-spacing:-.01em;line-height:1.2}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.2em}
strong{font-weight:700}
address{font-style:normal}
figure{margin:0}
[hidden]{display:none!important}
.sr,.invisible{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--tinte);color:#fff;padding:.7em 1em;z-index:200}
.skip:focus{left:8px;top:8px}
.wrap{width:min(100% - 40px,var(--breite));margin-inline:auto}
.wrap.schmal{width:min(100% - 40px,800px)}
.icon{width:1.2em;height:1.2em;flex:none;vertical-align:-.22em}
.kicker{display:flex;align-items:center;gap:.7em;margin:0 0 .9em;font-size:.82rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--rot-text)}
.kicker::before{content:"";flex:none;width:.62em;height:1.15em;background:var(--rot);clip-path:var(--keil)}
.lead{font-size:clamp(1.1rem,1.5vw,1.25rem);line-height:1.55}
.stand,.klein{font-size:.9rem;color:var(--text2)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:50px;padding:.6em 1.35em;border:2px solid transparent;border-radius:2px;font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn .icon{transition:transform .15s}
.btn:hover .icon{transform:translateX(4px)}
.btn-primaer{background:var(--rot-text);color:#fff}
.btn-primaer:hover{background:var(--rot-dunkel);color:#fff}
.btn-rand{border-color:var(--tinte);color:var(--tinte);background:transparent}
.btn-rand:hover{background:var(--tinte);color:#fff}
.btn-rand-hell{border-color:rgba(255,255,255,.7);color:#fff;background:transparent}
.btn-rand-hell:hover{background:#fff;color:var(--tinte);border-color:#fff}
.btn-weiss{background:#fff;color:var(--tinte)}
.btn-weiss:hover{background:var(--tinte);color:#fff}
.btn-gross{min-height:56px;font-size:1.1rem;padding-inline:1.6em}
.textlink{font-weight:700}
.knoepfe,.raster.raster-knoepfe{display:flex;flex-wrap:wrap;gap:12px}
.kopf{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--linie)}
.kopf .wrap{display:flex;align-items:center;gap:clamp(12px,1.6vw,22px);min-height:78px}
.logo{display:block;flex:none;line-height:0}
.logo img{width:clamp(132px,13vw,172px);height:auto}
.nav{margin-left:auto}
.nav ul{list-style:none;margin:0;padding:0}
.nav .level_1{display:flex;align-items:center;gap:2px}
.nav a{display:block;padding:.6em .7em;color:var(--tinte);text-decoration:none;font-weight:700;font-size:1rem;white-space:nowrap}
.nav .level_1>li>a{position:relative}
.nav .level_1>li>a::after{content:"";position:absolute;left:.7em;right:.7em;bottom:.25em;height:3px;background:var(--rot);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.nav .level_1>li>a:hover::after,.nav .level_1>li>a[aria-current]::after{transform:scaleX(1)}
.nav .hat-sub{position:relative}
.nav .level_2{position:absolute;left:0;top:100%;min-width:260px;padding:8px;background:#fff;border:1px solid var(--linie);border-top:3px solid var(--rot);box-shadow:0 14px 30px rgba(35,31,32,.14);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s;z-index:5}
.nav .hat-sub:hover>.level_2,.nav .hat-sub:focus-within>.level_2{opacity:1;visibility:visible;transform:none}
.nav .level_2 a{font-weight:500}
.nav .level_2 a:hover{background:var(--flaeche)}
.nav-cta{display:none}
.sprachwahl{display:flex;list-style:none;margin:0;padding:0;border:1px solid var(--linie);border-radius:2px;flex:none}
.sprachwahl a{display:grid;place-items:center;min-width:40px;min-height:36px;padding:0 .5em;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-decoration:none;color:var(--text2)}
.sprachwahl a[aria-current]{background:var(--tinte);color:#fff}
.sprachwahl a:not([aria-current]):hover{background:var(--flaeche);color:var(--tinte)}
.kopf-tel{display:inline-flex;align-items:center;gap:.5em;flex:none;color:var(--tinte);text-decoration:none;font-weight:700;font-size:.98rem;white-space:nowrap}
.kopf-tel .icon{color:var(--rot-text)}
.kopf-cta{flex:none}
.kopf-cta .btn{min-height:44px;padding-inline:1.1em;font-size:.98rem}
.menue-knopf{display:none;align-items:center;gap:.45em;min-height:44px;padding:.3em .8em;border:2px solid var(--tinte);border-radius:2px;background:#fff;font:inherit;font-weight:700;color:var(--tinte);cursor:pointer}
@media (max-width:1439px){.kopf-tel span{display:none}.kopf-tel{width:44px;height:44px;justify-content:center;border:1px solid var(--linie);border-radius:2px}}
@media (max-width:1099px){
  .menue-knopf{display:inline-flex}
  .kopf-cta{display:none}
  .sprachwahl{margin-left:auto}
  .nav{position:absolute;left:0;right:0;top:100%;margin:0;background:#fff;border-bottom:3px solid var(--rot);box-shadow:0 16px 28px rgba(35,31,32,.16);max-height:calc(100vh - 78px);overflow:auto}
  .js .nav{display:none}
  .js .nav.offen{display:block}
  .nav .level_1{flex-direction:column;align-items:stretch;gap:0;padding:8px 20px}
  .nav a{font-size:1.1rem;padding:.8em .2em;border-bottom:1px solid var(--flaeche);white-space:normal}
  .nav .level_1>li>a::after{display:none}
  .nav .level_2{position:static;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;padding:0 0 0 16px;min-width:0}
  .nav-cta{display:block;padding:10px 20px 20px}
  .nav-cta .btn{width:100%}
  .nav .nav-cta a{color:#fff;border-bottom:0;padding:.6em 1.35em}
}
@media (max-width:479px){.kopf-tel{display:none}}
.buehne{position:relative;background:var(--tinte);color:#fff;overflow:hidden;isolation:isolate}
.buehne::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--glut)}
.hero .wrap{position:relative;z-index:1}
.hero h1{color:#fff;margin:0 0 .45em;hyphens:manual;overflow-wrap:break-word}
.hero-bild h1{font-size:clamp(1.9rem,3.4vw,2.6rem)}
.hero .kicker{color:#ff9a9e}
.hero .lead{color:var(--auf-dunkel);max-width:36em;margin:0 0 1.3em}
.hero .haken{list-style:none;margin:0 0 1.7em;padding:0;display:grid;gap:.5em;color:var(--auf-dunkel)}
.hero .haken li{display:flex;gap:.8em;align-items:baseline}
.hero .haken li::before{content:"";flex:none;width:.55em;height:1em;background:var(--rot);clip-path:var(--keil);transform:translateY(.12em)}
.hero .haken strong{color:#fff}
.hero .direkt{margin:1.2em 0 0}
.hero .direkt a{display:inline-flex;align-items:center;gap:.5em;color:#fff;text-decoration:none;font-weight:800;font-size:1.3rem}
.hero .direkt a:hover{color:#ffd23f}
.hero .direkt .icon{color:var(--rot)}
.hero-bild .wrap{padding-block:clamp(48px,7vw,104px) clamp(56px,8vw,112px)}
.hero-ohne .wrap{padding-block:clamp(44px,6vw,80px) clamp(48px,6.5vw,84px)}
.hero-ohne h1{font-size:clamp(2.1rem,4.6vw,3.4rem)}
.hero-ohne::before{content:"";position:absolute;right:max(20px,calc((100vw - var(--breite))/2));top:0;width:clamp(90px,14vw,190px);height:clamp(170px,27vw,370px);background:var(--rot);clip-path:var(--keil);opacity:.92;z-index:0}
.hero-ohne .hero-text{max-width:min(46em,78%)}
.hero-foto{position:relative;aspect-ratio:16/9}
.hero-foto figure,.hero-foto picture,.hero-foto img{width:100%;height:100%}
.hero-foto img{object-fit:cover}
.hero-hinweis{position:relative;z-index:1;margin:0;padding:0 20px 18px;font-size:.78rem;color:var(--auf-dunkel-2);text-align:right}
@media (min-width:960px){
  .hero-bild{display:grid;min-height:min(74vh,660px);align-items:center}
  .hero-bild>*{grid-area:1/1}
  .hero-bild .hero-text{max-width:min(600px,49%)}
  .hero-foto{position:absolute;inset:0 0 0 47%;aspect-ratio:auto;clip-path:polygon(0 0,100% 0,100% 100%,21% 100%)}
  .hero-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(35,31,32,.55) 0,rgba(35,31,32,0) 34%)}
  .hero-hinweis{position:absolute;right:16px;bottom:12px;padding:0;color:rgba(255,255,255,.75);text-shadow:0 1px 2px rgba(0,0,0,.6)}
}
.band{padding-block:clamp(56px,8vw,104px)}
.band-grau{background:var(--flaeche)}
.band-dunkel{background:var(--tinte);color:var(--auf-dunkel)}
.band-dunkel h2,.band-dunkel h3{color:#fff}
.band-dunkel a:not(.btn){color:#fff}
.band-dunkel .kicker{color:#ff9a9e}
.band-dunkel .btn-rand{border-color:rgba(255,255,255,.7);color:#fff}
.band-dunkel .btn-rand:hover{background:#fff;color:var(--tinte)}
.band>.wrap>*+*{margin-top:clamp(24px,3.4vw,40px)}
.band .content-text,.band .content-headline{max-width:46em}
.band .wrap.schmal .content-text,.band .content-text.media{max-width:none}
.rte>:last-child{margin-bottom:0}
.rte h2:not(:first-child){margin-top:1.5em;font-size:clamp(1.35rem,2.4vw,1.75rem)}
.rte h3{margin-top:1.4em}
.rte ul{list-style:none;padding:0;display:grid;gap:.5em}
.rte ul li{position:relative;padding-left:1.5em}
.rte ul li::before{content:"";position:absolute;left:.15em;top:.42em;width:.5em;height:.9em;background:var(--rot);clip-path:var(--keil)}
td code,p code,li code{font-size:.9em;background:var(--flaeche);padding:.1em .35em}
.media{display:grid;grid-template-columns:minmax(0,1fr);column-gap:clamp(24px,4vw,56px);row-gap:0;align-items:start}
.media>figure{margin-block:6px 24px}
@media (min-width:900px){.media>figure{margin-block:0}}
.media figure{position:relative}
.media figure img{width:100%;aspect-ratio:3/2;object-fit:cover}
.media figcaption,.content-image figcaption{font-size:.85rem;color:var(--text2);padding-top:8px}
@media (min-width:900px){
  .media{row-gap:0;align-items:start;grid-template-rows:auto auto 1fr}
  .media--right{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
  .media--left{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
  .media--right>figure{grid-column:2;grid-row:1/span 3}
  .media--right>:not(figure){grid-column:1}
  .media--left>figure{grid-column:1;grid-row:1/span 3}
  .media--left>:not(figure){grid-column:2}
  .media>h2{margin-bottom:.6em}
  .media--right figure::before,.media--left figure::before{content:"";position:absolute;top:-14px;width:34px;height:64px;background:var(--rot);clip-path:var(--keil);z-index:1}
  .media--right figure::before{right:26px}
  .media--left figure::before{left:26px}
}
.content-image img{width:100%}
.raster{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(16px,2vw,24px)}
.raster>h2,.raster>h3{grid-column:1/-1;margin:0}
.raster>*+*{margin-top:0}
@media (min-width:900px){.raster-spalten{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,5vw,64px);align-items:start}}
.raster.raster-knoepfe>*{margin:0}
@media (min-width:640px){.raster-karten{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.raster-karten{grid-template-columns:repeat(3,minmax(0,1fr))}}
.karte{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--linie);color:var(--tinte);text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}
.karte::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:var(--rot);transform:scaleX(0);transform-origin:left;transition:transform .25s}
a.karte:hover{border-color:var(--tinte);color:var(--tinte);box-shadow:0 14px 30px rgba(35,31,32,.12)}
a.karte:hover::before,a.karte:focus-visible::before{transform:scaleX(1)}
.karte figure{overflow:hidden}
.karte figure img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s}
a.karte:hover figure img{transform:scale(1.04)}
.karte .inhalt{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1}
.karte h3{display:flex;gap:.55em;align-items:flex-start;margin-bottom:.4em}
.karte h3 .icon{color:var(--rot-text);margin-top:.08em}
.karte p{color:var(--text2);margin-bottom:1em}
.karte .marken{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--rot-text);margin-bottom:.5em}
.karte .mehr{margin-top:auto;display:inline-flex;align-items:center;gap:.45em;font-weight:700;color:var(--rot-text)}
.karte .mehr .icon{transition:transform .15s}
a.karte:hover .mehr .icon{transform:translateX(4px)}
.band-dunkel .karte{border-color:transparent}
@media (min-width:700px){.raster-vorteile{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.raster-vorteile{grid-template-columns:repeat(3,minmax(0,1fr))}}
.raster-vorteile .punkt{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;padding-top:20px;border-top:2px solid var(--tinte)}
.raster-vorteile .punkt>.icon{width:30px;height:30px;color:var(--rot-text)}
.raster-vorteile .punkt h3{font-size:1.2rem;margin-bottom:.3em}
.raster-vorteile .punkt p{margin:0;color:var(--text2)}
.band-dunkel .raster-vorteile .punkt{border-color:rgba(255,255,255,.35)}
.band-dunkel .raster-vorteile .punkt>.icon{color:var(--rot)}
.band-dunkel .punkt p{color:var(--auf-dunkel)}
.raster-schritte{counter-reset:schritt;gap:0}
.raster-schritte .punkt{counter-increment:schritt;display:grid;grid-template-columns:clamp(56px,8vw,96px) minmax(0,1fr);gap:clamp(12px,2.4vw,28px);align-items:baseline;padding-block:clamp(18px,2.4vw,26px);border-top:1px solid var(--linie)}
.raster-schritte .punkt:last-child{border-bottom:1px solid var(--linie)}
.raster-schritte .punkt::before{content:counter(schritt,decimal-leading-zero);font-size:clamp(2rem,4.4vw,3.1rem);font-weight:800;line-height:1;color:var(--rot);font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.raster-schritte .punkt>.icon{display:none}
.raster-schritte .punkt h3{font-size:1.25rem;margin-bottom:.3em}
.raster-schritte .punkt p{margin:0;color:var(--text2)}
.band-dunkel .raster-schritte .punkt{border-color:rgba(255,255,255,.2)}
.band-dunkel .raster-schritte .punkt p,.band-dunkel .raster-vorteile .punkt p{color:var(--auf-dunkel)}
.raster-untereinander .punkt{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}
.raster-untereinander .punkt>.icon{width:44px;height:44px;padding:10px;background:var(--tinte);color:#fff}
.raster-untereinander .punkt h3{margin-bottom:.2em}
.raster-untereinander .punkt p{margin:0;color:var(--text2)}
.cta{position:relative;overflow:hidden;display:grid;gap:24px;align-items:center;background:var(--rot-text);color:#fff;padding:clamp(28px,4.4vw,56px)}
@media (min-width:860px){.cta{grid-template-columns:minmax(0,1.3fr) auto}}
.cta::after{content:"";position:absolute;right:-30px;top:0;width:150px;height:290px;background:rgba(35,31,32,.16);clip-path:var(--keil);pointer-events:none}
.cta>*{position:relative;z-index:1}
.cta h2{color:#fff;margin-bottom:.35em}
.cta p{margin:0;max-width:38em;font-size:1.1rem}
.cta .knoepfe{margin-bottom:12px}
.cta .direkt a{display:inline-flex;gap:.5em;align-items:center;color:#fff;font-weight:800;font-size:1.2rem;text-decoration:none}
.band-dunkel .cta{background:var(--tinte-2)}
.kontaktkarte{background:var(--tinte);color:var(--auf-dunkel);padding:clamp(24px,3vw,34px);border-top:6px solid var(--rot)}
.kontaktkarte h2{color:#fff;font-size:1.6rem}
.kontaktkarte ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.kontaktkarte li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}
.kontaktkarte li .icon{color:var(--rot);margin-top:.22em}
.kontaktkarte a{color:#fff;font-weight:700;text-decoration:none}
.kontaktkarte a:hover{color:#ffd23f}
.kontaktkarte a.gross{font-size:1.4rem;font-weight:800}
.kontaktkarte small{display:block;color:var(--auf-dunkel-2);font-size:.88rem}
@media (min-width:960px){.raster-spalten .kontaktkarte{position:sticky;top:104px}}
.faq-liste{display:grid;gap:0}
.faq-liste>h2{margin-bottom:.8em}
.faq{border-top:1px solid var(--tinte)}
.faq:last-of-type{border-bottom:1px solid var(--tinte)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-weight:700;font-size:1.15rem;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:.7em;height:1.25em;background:var(--rot);clip-path:var(--keil);transition:transform .2s}
.faq[open] summary::after{transform:rotate(180deg)}
.faq .antwort{padding:0 0 20px;max-width:46em;color:var(--text2)}
.faq .antwort p:last-child{margin-bottom:0}
.content-table{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
.content-table table{min-width:560px}
th,td{text-align:left;padding:.75em 1em .75em 0;border-bottom:1px solid var(--linie);vertical-align:top}
thead th{border-bottom:2px solid var(--tinte);font-weight:700}
.content-list ul{list-style:none;padding:0;display:grid;gap:.55em}
.content-list li{position:relative;padding-left:1.5em}
.content-list li::before{content:"";position:absolute;left:.15em;top:.42em;width:.5em;height:.9em;background:var(--rot);clip-path:var(--keil)}
@media (min-width:700px){.band .content-list ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6em 40px}}
.offen-hinweis{display:inline;background:#fff3c4;color:#5c4400;padding:.1em .4em;font-size:.92em}
.formular{min-width:0;background:#fff;border:1px solid var(--linie);padding:clamp(20px,3vw,34px)}
.formular form{margin:0}
.formular .widget{display:grid;gap:6px;margin-bottom:18px}
.formular .widget>label,.formular legend{font-weight:700;padding:0}
.formular fieldset{border:0;margin:0;padding:0;min-width:0}
.formular input[type=text],.formular input[type=email],.formular input[type=tel],.formular input[type=url],.formular textarea,.formular select{width:100%;min-height:50px;padding:.6em .8em;border:1.5px solid var(--feldrand);border-radius:2px;background:#fff;font:inherit;color:var(--tinte)}
.formular textarea{min-height:140px;resize:vertical}
.formular input:focus-visible,.formular textarea:focus-visible{outline:3px solid var(--rot);outline-offset:1px;border-color:var(--tinte)}
.formular span.mandatory{color:var(--rot-text);margin-left:.15em}
.formular .error{color:#8c1118;font-size:.92rem;font-weight:700;margin:0}
.formular .widget.error input,.formular .widget.error textarea{border-color:#8c1118}
.formular .widget-checkbox fieldset{display:flex;flex-wrap:wrap;gap:8px}
.formular .widget-checkbox legend{margin-bottom:8px;flex-basis:100%}
.formular .widget-checkbox fieldset>span{position:relative;display:inline-flex}
.formular .widget-checkbox fieldset>span input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;width:100%;height:100%}
.formular .widget-checkbox fieldset>span label{display:inline-flex;align-items:center;min-height:44px;padding:.4em 1em;border:1.5px solid var(--feldrand);border-radius:2px;font-weight:500;cursor:pointer;background:#fff;transition:background .12s,color .12s,border-color .12s}
.formular .widget-checkbox fieldset>span input:checked+label{background:var(--tinte);border-color:var(--tinte);color:#fff}
.formular .widget-checkbox fieldset>span input:focus-visible+label{outline:3px solid var(--rot);outline-offset:2px}
.formular input[type=file]{width:100%;padding:16px;border:2px dashed var(--feldrand);background:var(--flaeche);font:inherit;cursor:pointer}
.vorschau{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-top:10px}
.vorschau figure{font-size:.8rem;overflow:hidden}
.vorschau img{width:100%;aspect-ratio:1;object-fit:cover}
.hp,.formular .hp,.formular .widget.hp{position:absolute!important;left:-5000px!important;width:1px;height:1px;overflow:hidden}
.formular .widget-explanation p{font-size:.9rem;color:var(--text2);margin:0}
.formular .widget-submit button,.formular button[type=submit]{width:100%;display:inline-flex;align-items:center;justify-content:center;min-height:56px;border:0;border-radius:2px;background:var(--rot-text);color:#fff;font:inherit;font-weight:700;font-size:1.1rem;cursor:pointer}
.formular .widget-submit button:hover{background:var(--rot-dunkel)}
.formular altcha-widget{--altcha-max-width:100%;--altcha-border-radius:2px;--altcha-color-border:var(--feldrand)}
@media (min-width:960px){.raster-spalten:has(.formular){grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr)}}
.fuss{background:var(--tinte);color:var(--auf-dunkel-2);font-size:.97rem;padding-bottom:28px}
.gluehskala{background:var(--glut);padding-top:8px;margin-bottom:clamp(40px,6vw,64px)}
.gluehskala .wrap{display:flex;justify-content:space-between;background:var(--tinte);width:100%;max-width:none;padding:8px max(20px,calc((100% - var(--breite))/2)) 0;font-size:.72rem;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--auf-dunkel-2)}
.gluehskala span{position:relative;padding-top:8px;margin:0}
.gluehskala span::before{content:"";position:absolute;left:50%;top:-8px;width:1px;height:12px;background:var(--auf-dunkel-2)}
.gluehskala span:first-child::before{left:0}.gluehskala span:last-child::before{left:auto;right:0}
@media (max-width:599px){.gluehskala span:nth-child(even):not(:last-child){display:none}}
.fuss .raster{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:36px}
.fuss h2{color:#fff;font-size:.8rem;text-transform:uppercase;letter-spacing:.18em;font-weight:700;margin-bottom:1em}
.fuss ul{list-style:none;padding:0;margin:0;display:grid;gap:.5em}
.fuss a{color:var(--auf-dunkel);text-decoration:none}
.fuss a:hover{color:#fff;text-decoration:underline}
.fuss-logo{width:168px;height:auto;margin-bottom:18px}
.fuss-firma p{max-width:30em}
.fuss address{line-height:1.6}
.fuss .kontakt-zeile{display:flex;gap:.6em;align-items:center}
.fuss .icon{color:var(--rot)}
.fuss .unten{margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:.88rem}
.aktionsleiste{display:none}
@media (max-width:899px){
  .aktionsleiste{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid var(--linie);box-shadow:0 -6px 18px rgba(35,31,32,.12)}
  .aktionsleiste a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;border-radius:2px;text-decoration:none;font-weight:700;font-size:.92rem;line-height:1.1}
  .aktionsleiste .icon{width:1.3em;height:1.3em}
  .aktionsleiste .a-tel,.aktionsleiste .a-mail{background:var(--tinte);color:#fff}
  .aktionsleiste .a-angebot{background:var(--rot-text);color:#fff}
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}
}
@media print{.kopf,.aktionsleiste,.gluehskala{display:none!important}}
