/* Veracis Website-System: ein Design für alle Kundenseiten. Weiss, Manrope, schwarze Knöpfe, EINE Akzentfarbe (--akzent aus site.json). */
:root{--tinte:#0a0a0a;--text:#2a2a2a;--leise:#6b6b6b;--rand:#e4e4e4;--boden:#fff;--sanft:#f5f5f3;--akzent:#1f4bff;--breite:min(1360px,100% - 48px);--r:14px;--schrift:"Manrope",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--schrift);color:var(--text);background:var(--boden);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.2em}
h1,h2,h3{color:var(--tinte);font-weight:700;letter-spacing:-.025em;line-height:1.08;margin:0 0 .5em}
h1{font-size:clamp(40px,5.6vw,76px);font-weight:800}h2{font-size:clamp(28px,3.4vw,46px)}h3{font-size:22px;letter-spacing:-.01em}
p{margin:0 0 1em}.gross{font-size:clamp(18px,1.5vw,22px);line-height:1.5;max-width:46ch}.klein{font-size:14px;color:var(--leise)}
.wrap{width:var(--breite);margin-inline:auto}
.versteckt{position:absolute;left:-9999px}
/* Bänder */
.band{font-size:15px;padding:10px 0;border-bottom:1px solid var(--rand)}.band a{text-decoration:underline;text-underline-offset:.2em}
.band-demo{background:var(--tinte);color:#fff;border:0}.band-hinweis{background:var(--akzent);color:#fff;border:0;font-weight:600}
/* Kopf */
.kopf{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--rand)}
.kopf-zeile{display:flex;align-items:center;gap:32px;height:76px}
.marke{font-weight:800;font-size:21px;color:var(--tinte);letter-spacing:-.02em;white-space:nowrap}
.nav{display:flex;gap:28px;margin-left:16px}.nav a{font-weight:600;color:var(--text);padding:6px 0;border-bottom:2px solid transparent}.nav a:hover{text-decoration:none;color:var(--tinte)}.nav a[aria-current]{color:var(--tinte);border-color:var(--akzent)}
.kopf-rechts{margin-left:auto;display:flex;align-items:center;gap:22px}.tel{font-weight:600}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--tinte);border-radius:999px;padding:8px 16px;font:inherit;font-weight:600;cursor:pointer}
.menu{border-top:1px solid var(--rand);background:#fff}.menu nav{width:var(--breite);margin-inline:auto;display:flex;flex-direction:column;padding:12px 0 20px}.menu a{padding:12px 0;font-size:22px;font-weight:700;color:var(--tinte);border-bottom:1px solid var(--rand)}.menu .knopf{margin-top:16px;border:0;justify-content:center}
/* Knöpfe */
.knopf{display:inline-flex;align-items:center;gap:10px;background:var(--tinte);color:#fff;font-weight:700;padding:14px 24px;border-radius:999px;border:1px solid var(--tinte);transition:background .2s,color .2s;cursor:pointer;font:inherit;font-weight:700}
.knopf:hover{text-decoration:none;background:var(--akzent);border-color:var(--akzent)}.knopf.hell{background:#fff;color:var(--tinte);border-color:#fff}.knopf.hell:hover{background:var(--akzent);color:#fff;border-color:var(--akzent)}
.knopf-leise{display:inline-flex;align-items:center;padding:13px 22px;border-radius:999px;border:1px solid var(--tinte);font-weight:700;color:var(--tinte);transition:background .2s,color .2s}.knopf-leise:hover{text-decoration:none;background:var(--tinte);color:#fff}
.knoepfe{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
/* Abschnitte */
.held{padding:clamp(56px,8vw,120px) 0 clamp(40px,6vw,88px)}
.held-raster{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:end}
.punkte{list-style:none;margin:0;padding:0;border-top:1px solid var(--rand)}.punkte li{padding:18px 0;border-bottom:1px solid var(--rand);font-weight:600;color:var(--tinte);display:flex;gap:14px}.punkte li::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--akzent);flex:none;margin-top:9px}
.abschnitt{padding:clamp(56px,7vw,112px) 0}.sanft{background:var(--sanft)}.dunkel{background:var(--tinte);color:#d9d9d9}.dunkel h2,.dunkel h3,.dunkel th{color:#fff}
.abschnitt-kopf{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:36px}.abschnitt-kopf a{font-weight:700;color:var(--tinte);text-decoration:underline;text-underline-offset:.25em}
.zwei{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(32px,5vw,96px);align-items:start}
.seitenkopf{padding:clamp(48px,7vw,104px) 0 clamp(24px,3vw,40px)}
/* Karten */
.karten{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}
.karte{display:flex;flex-direction:column;background:#fff;border:1px solid var(--rand);border-radius:var(--r);padding:28px;transition:border-color .2s,transform .2s}.karte:hover{text-decoration:none;border-color:var(--tinte);transform:translateY(-2px)}.karte p{color:var(--text);flex:1}.weiter{font-weight:700;color:var(--tinte)}.karte:hover .weiter{color:var(--akzent)}
/* Meldungen */
.meldungen{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.meldungen.spalte{grid-template-columns:1fr;max-width:820px}
.meldung{background:#fff;border:1px solid var(--rand);border-radius:var(--r);padding:28px}.meldung time{display:block;font-size:14px;color:var(--leise);margin-bottom:10px;font-weight:600}
/* Schritte */
.schritte{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;gap:0}.schritte li{counter-increment:s;display:grid;grid-template-columns:64px 1fr;gap:16px;padding:24px 0;border-top:1px solid var(--rand)}.schritte li::before{grid-row:1/3;content:counter(s,decimal-leading-zero);font-weight:800;font-size:28px;color:var(--akzent);line-height:1}.schritte h3,.schritte p{grid-column:2}.schritte h3{margin-bottom:.25em}.schritte p{margin:0;max-width:60ch}
/* Liste Leistungen */
.liste{display:grid;gap:0}.eintrag{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:24px;align-items:start;padding:40px 0;border-top:1px solid var(--rand);scroll-margin-top:100px}.eintrag:last-child{border-bottom:1px solid var(--rand)}.nr{font-weight:800;font-size:28px;color:var(--akzent);line-height:1.1}.eintrag h2{font-size:30px}.eintrag p{max-width:62ch}
/* Tabellen */
.zeiten{border-collapse:collapse;width:100%;max-width:520px}.zeiten th,.zeiten td{text-align:left;padding:9px 0;border-bottom:1px solid var(--rand);font-weight:500}.zeiten th{font-weight:700;width:38%}.zeiten .heute th,.zeiten .heute td{color:var(--akzent);font-weight:700}.dunkel .zeiten th,.dunkel .zeiten td{border-color:#333}.dunkel .zeiten td{color:#fff}.dunkel .zeiten .heute th,.dunkel .zeiten .heute td{color:#fff;text-decoration:underline;text-decoration-color:var(--akzent);text-underline-offset:.3em}
.fuss .zeiten{font-size:14px}.fuss .zeiten th,.fuss .zeiten td{padding:5px 0}
.pruef{border-collapse:collapse;width:100%;background:#fff;border:1px solid var(--rand);border-radius:var(--r);overflow:hidden}.pruef th,.pruef td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--rand);font-weight:500;vertical-align:top}.pruef th{font-weight:700;color:var(--tinte);width:34%}.pruef td:last-child{font-weight:700;white-space:nowrap}.pruef tr.ok td:last-child{color:var(--tinte)}.pruef tr.offen td:last-child{color:var(--akzent)}
.drei-zahlen{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.drei-zahlen div{border:1px solid var(--rand);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:6px}.zahl{font-weight:800;font-size:clamp(24px,2.6vw,36px);color:var(--tinte);letter-spacing:-.02em}
.verlauf{list-style:none;margin:0;padding:0}.verlauf li{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--rand)}.verlauf time{font-weight:700;color:var(--tinte)}
/* FAQ, Team, Text */
.faq details{border-top:1px solid var(--rand);padding:18px 0}.faq details:last-child{border-bottom:1px solid var(--rand)}.faq summary{cursor:pointer;font-weight:700;color:var(--tinte);font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:16px}.faq summary::after{content:"+";font-weight:400;font-size:26px;line-height:1;color:var(--akzent)}.faq details[open] summary::after{content:"−"}.faq details p{margin:12px 0 0;max-width:62ch}
.team{list-style:none;margin:0;padding:0;display:grid;gap:0}.team li{display:flex;flex-direction:column;padding:16px 0;border-bottom:1px solid var(--rand)}.team strong{color:var(--tinte);font-size:19px}.team span{color:var(--leise)}
.text{max-width:72ch}.text h2{font-size:28px;margin-top:1.4em}
/* Formular */
.formular{display:grid;gap:18px;background:#fff;border:1px solid var(--rand);border-radius:var(--r);padding:32px}.formular label{display:grid;gap:6px;font-weight:700;color:var(--tinte);font-size:15px}
.formular input,.formular select,.formular textarea{font:inherit;font-weight:500;padding:12px 14px;border:1px solid #cfcfcf;border-radius:10px;background:#fff;color:var(--tinte);width:100%}.formular input:focus,.formular select:focus,.formular textarea:focus{outline:2px solid var(--akzent);outline-offset:1px;border-color:var(--akzent)}
.formular .knopf{justify-self:start}.erfolg{font-weight:700;color:var(--tinte);background:var(--sanft);padding:14px 16px;border-radius:10px}.dunkel .formular.hell{color:var(--text)}.dunkel .formular.hell .klein{color:var(--leise)}
/* Fuss */
.fuss{background:var(--sanft);border-top:1px solid var(--rand);padding:56px 0 24px;font-size:15px}
.fuss-raster{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:32px}.fuss-titel{font-size:14px;text-transform:none;letter-spacing:0;color:var(--leise);margin-bottom:10px;font-weight:700}
.fuss address{font-style:normal}.fuss-zeile{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:40px;padding-top:20px;border-top:1px solid var(--rand);color:var(--leise)}.fuss-zeile a{margin-left:18px}
@media (max-width:960px){.nav,.kopf-rechts{display:none}.burger{display:block}.held-raster,.zwei{grid-template-columns:1fr}.fuss-raster{grid-template-columns:1fr 1fr}.drei-zahlen{grid-template-columns:1fr}.eintrag{grid-template-columns:48px 1fr}.eintrag .knopf-leise{grid-column:2}}
@media (max-width:600px){.fuss-raster{grid-template-columns:1fr}.kopf-zeile{height:64px}.fuss-zeile a{margin:0 14px 0 0}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
