/* Effenberger Fahrzeuge & Service, Cottbus — Grundlage
   Palette gemessen am Originallogo (quellen/Logo-altseite-2017.jpg):
   Navy #042F4A an der Wagentuer um die 78, Orange #FC6704 in den Ziffern 78.
   Schrift: Bitter 600/700 fuer Ueberschriften, Preise und Zahlen (Tims Wahl, 17.09.2026: "die schriftart
   fand ich davor besser"), Encode Sans Condensed fuer Listentitel, Encode Sans Semi Condensed fuer Text. */

@font-face{font-family:"Bitter";src:url(/assets/fonts/bitter-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Bitter";src:url(/assets/fonts/bitter-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Encode C";src:url(/assets/fonts/encode-sans-condensed-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Encode C";src:url(/assets/fonts/encode-sans-condensed-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Encode SC";src:url(/assets/fonts/encode-sans-semi-condensed-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Encode SC";src:url(/assets/fonts/encode-sans-semi-condensed-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Encode SC";src:url(/assets/fonts/encode-sans-semi-condensed-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}

:root{
  --navy:#042F4A;
  --navy-d:#021F32;
  --orange:#FC6704;
  --orange-h:#E55A00;
  --orange-t:#B24B00;     /* Orange als Text auf Weiss: 5,4:1 */
  --orange-z:#EA5A00;     /* grosse Ziffern auf Weiss: 3,5:1 */
  --asphalt:#EBEFF2;
  --linie:#D2D9DF;
  --linie-d:#1D4966;
  --tinte:#0A1C28;
  --text:#2D3943;
  --mut:#56636E;          /* 5,2:1 auf Asphalt */
  --hell:#C9D6E0;         /* Lesetext auf Navy: 9,6:1 */
  --titel:"Encode C","Arial Narrow",Arial,sans-serif;
  --slab:"Bitter","Roboto Slab","Rockwell",Georgia,serif;
  --grot:"Encode SC","Arial Narrow",Arial,sans-serif;
  --rahmen:1160px;
  --rand:clamp(18px,4vw,40px);
  --r:6px;
  --kopf-h:78px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--kopf-h) + 12px)}
body{margin:0;font:400 17px/1.6 var(--grot);color:var(--text);background:#fff;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
p,li,dd{hyphens:auto}
img{display:block;max-width:100%;height:auto}
a{color:var(--navy)}
h1,h2,h3{margin:0;color:var(--tinte);font-weight:700}
h1,h2{font-family:var(--slab);font-weight:700;letter-spacing:0;line-height:1.04}
h2{font-size:clamp(30px,3.6vw,50px);color:var(--navy);margin-bottom:18px}
h3{font-family:var(--grot);font-weight:800}
p{margin:0 0 14px}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.m-only{display:none}
.unsichtbar{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.sprung{position:absolute;left:12px;top:-60px;z-index:200;background:var(--navy);color:#fff;padding:10px 14px;border-radius:var(--r)}
.sprung:focus{top:12px}
.rahmen{width:100%;max-width:calc(var(--rahmen) + 2 * var(--rand));margin-inline:auto;padding-inline:var(--rand)}
.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Kicker: Orangestrich wie der Bogen im Logo ---------- */
.kicker{display:flex;align-items:center;gap:10px;margin:0 0 12px;font:600 15px/1.3 var(--grot);color:var(--mut)}
.kicker::before{content:"";width:22px;height:2px;background:var(--orange);flex:none}
.kicker-hell{color:var(--hell)}
.kicker-abstand{margin-top:34px}

/* ---------- Knoepfe: flach, 6px, kein Abheben ---------- */
.knopf{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:11px 20px;border:2px solid transparent;border-radius:4px;font:600 16px/1.2 var(--grot);text-decoration:none;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.knopf-o{background:var(--orange);color:var(--navy);font-weight:800}
.knopf-o:hover{background:var(--orange-h)}
.knopf-n{background:var(--navy);color:#fff}
.knopf-n:hover{background:var(--navy-d)}
.knopf-l{background:#fff;color:var(--navy);border-color:var(--navy)}
.knopf-l:hover{background:var(--navy);color:#fff}
.knopf-hl{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.knopf-hl:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.knopf-w{background:#fff;color:var(--navy)}
.knopf-w:hover{background:var(--asphalt)}
.knopf-gross{min-height:58px;padding:14px 24px;font-size:18px}
.pfeil{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--navy);text-decoration:none}
.pfeil:hover{text-decoration:underline}
.pfeil::after{content:"\2192"}
.textknopf{background:none;border:0;padding:10px 0;font:inherit;color:var(--navy);font-weight:600;text-decoration:underline;cursor:pointer}
.textknopf-hell{color:#fff}

/* ---------- Kopfleiste: weiss, fest, ohne Milchglas ---------- */
.kopf{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--linie)}
.kopf-zeile{display:flex;align-items:center;gap:20px;height:var(--kopf-h)}
.marke{display:block;flex:none}
.marke img{height:60px;width:auto}
.kopf-nav{display:flex;gap:2px;margin-left:auto}
.kopf-nav a{padding:10px 12px;font:600 16px/1 var(--grot);color:var(--tinte);text-decoration:none}
.kopf-nav a:hover{color:var(--navy);box-shadow:inset 0 -2px var(--orange)}
.kopf-nav a[aria-current]{color:var(--navy);box-shadow:inset 0 -2px var(--navy)}
.kopf-termin{min-height:44px;padding:9px 14px}
.kopf-tel{padding:10px 16px}
.kopf-kurz{display:none}
.kopf-menue{display:none;height:46px;padding:0 12px;gap:8px;align-items:center;justify-content:center;font:600 16px/1 var(--grot);border:2px solid var(--navy);border-radius:var(--r);background:#fff;color:var(--navy);cursor:pointer}
.kopf-menue .ic{width:24px;height:24px}


/* ---------- Held ---------- */
/* Erster Schirm: Kopf + Held + Aktuell-Leiste = genau die Schirmhoehe (--aktuell-h misst seite.js) */
.held{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:calc(100svh - var(--kopf-h) - var(--aktuell-h,64px));padding-block:clamp(28px,6.5svh,88px)}
.held-raster{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:clamp(28px,5vw,72px);align-items:end}
.held-text{container-type:inline-size;width:100%;min-width:0}
.held-kopf{margin:0;color:var(--navy)}
.held-titel{display:block}
.held-titel{font-size:clamp(32px,11.2cqi,210px);line-height:1;color:var(--navy);margin:0 0 clamp(18px,3svh,56px)}
.held .kicker{margin-bottom:clamp(12px,2svh,32px)}
.held-unter{font-size:18px;max-width:34em;margin-bottom:clamp(24px,3.6svh,64px)}
.held-knoepfe{display:flex;flex-wrap:wrap;gap:12px}
.held-raster{align-items:stretch}
.held-text{align-self:center}
.held-status{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:clamp(18px,2.6svh,40px) 0 0;font-size:15px;color:var(--mut)}
.held-status b{color:var(--tinte);font-weight:600}
.held-status a{display:inline-flex;align-items:center;min-height:44px;color:var(--navy);font-weight:600}
/* Oeffnungsstatus als kleines Tachozeichen. Bogenlaenge ist pi*11 = 34.6. */
.szeichen{width:1.75em;height:1.12em;flex:none;overflow:visible}
.sz-skala{stroke:var(--linie)}
.sz-fuell{stroke:#8FA3B3;stroke-dasharray:34.6;stroke-dashoffset:34.6}
.sz-nadel{stroke:#8FA3B3;transform-box:view-box;transform-origin:14px 15px;transform:rotate(-84deg)}
.sz-nabe{fill:#8FA3B3}
[data-status].auf .sz-fuell{stroke:#1F9D57;stroke-dashoffset:8.6;animation:sz-zeichnen 1s cubic-bezier(.32,.86,.3,1) both}
[data-status].auf .sz-nadel{stroke:#1F9D57;transform:rotate(48deg);animation:sz-schwenk 1.15s cubic-bezier(.26,1.14,.4,1) both}
[data-status].auf .sz-nabe{fill:#1F9D57}
[data-status].zu .sz-fuell{stroke:var(--orange);stroke-dashoffset:27.7;animation:sz-zeichnen 1s cubic-bezier(.32,.86,.3,1) both}
[data-status].zu .sz-nadel{stroke:var(--orange);transform:rotate(-48deg);animation:sz-schwenk 1.15s cubic-bezier(.26,1.14,.4,1) both}
[data-status].zu .sz-nabe{fill:var(--orange)}
@keyframes sz-zeichnen{from{stroke-dashoffset:34.6}}
@keyframes sz-schwenk{from{transform:rotate(-84deg)}}
.motivkarte{display:flex;flex-direction:column;justify-content:center;gap:clamp(14px,2svh,26px);padding:clamp(14px,1.4vw,22px);background:var(--asphalt);border-radius:var(--r);min-width:0}
.foto{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.bildkarte-bild{display:block;aspect-ratio:4/3}
.bildkarte-bild .foto{aspect-ratio:4/3}
.randbild{display:block;margin-top:26px;flex:1;min-height:220px}
.randbild .foto{height:100%;min-height:220px}
.bandbild,.gwbild{display:block;aspect-ratio:3/2}
.bandbild .foto,.gwbild .foto{aspect-ratio:3/2}
.bildkarte-bild,.bandbild,.gwbild,.randbild,.breitbild{max-width:1600px;margin-inline:auto}
.breitbild{display:block;grid-column:1/-1;margin-top:clamp(24px,3vw,44px);aspect-ratio:21/9}
.breitbild .foto{aspect-ratio:21/9}
.bildband{padding-block:clamp(28px,4vw,56px)}
.bildband .breitbild{margin-top:0}
.bildband.grau{background:var(--asphalt)}
.motiv-adresse{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;margin:0;padding:0 8px 4px;font-weight:600;color:var(--tinte)}
.motiv-adresse a{display:inline-flex;align-items:center;min-height:44px;color:var(--navy)}

.tafel{position:relative;background:var(--navy);color:var(--hell);border-radius:var(--r);padding:clamp(24px,3.4svh,60px) clamp(24px,2.4vw,60px)}
.tafel-status{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:800 20px/1.3 var(--grot);color:#fff}
.tafel-status{position:relative}
/* auf dunklem Grund heller, sonst verschwindet das Zeichen */
.tafel-status .sz-skala{stroke:rgba(255,255,255,.26)}
.tafel-status.auf .sz-fuell,.tafel-status.auf .sz-nadel{stroke:#3FD27F}
.tafel-status.auf .sz-nabe{fill:#3FD27F}
.tafel-zeiten{width:100%;border-collapse:collapse;font-size:16px}
.tafel-zeiten th{font-weight:400;text-align:left;padding:clamp(8px,1.2svh,20px) 12px clamp(8px,1.2svh,20px) 0;border-top:1px solid var(--linie-d)}
.tafel-zeiten td{text-align:right;font-weight:600;white-space:nowrap;border-top:1px solid var(--linie-d)}
.tafel-zeiten tr.heute th,.tafel-zeiten tr.heute td{color:#fff;font-weight:800}
.t-kurz{display:none}
.tafel-adr{display:block;margin-top:18px;padding-top:16px;border-top:2px solid var(--orange);color:#fff;font-weight:600;text-decoration:none}
.tafel-adr span{display:block;color:#FFB27A;font-weight:600}
.tafel-adr:hover span{text-decoration:underline}

/* ---------- Aktuell-Leiste ---------- */
.aktuell{background:var(--navy-d);color:var(--hell)}
.aktuell-zeile{display:flex;align-items:stretch}
.aktuell-titel{display:flex;align-items:center;margin:0;padding:18px 26px 18px 0;font:700 20px/1 var(--slab);color:var(--orange)}
.aktuell a{flex:1;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:18px 22px;border-left:1px solid var(--linie-d);color:var(--hell);text-decoration:none;transition:background-color .2s}
.aktuell a b{color:#fff}
.aktuell a:hover{background:var(--navy)}

/* ---------- Abschnitte ---------- */
.abschnitt{padding-block:clamp(56px,calc(4vw + 40px),120px)}
.grau{background:var(--asphalt)}

.leistungen-raster{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,96px);align-items:stretch}
.leistungen-kopf{display:flex;flex-direction:column}
.nicht{margin-top:22px;padding-top:14px;border-top:1px solid var(--linie);font-size:15px;color:var(--mut)}
.leistungsliste{list-style:none;margin:0;padding:0;border-top:2px solid var(--navy)}
.leistungsliste a{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:baseline;padding:22px 12px 22px 0;border-bottom:1px solid var(--linie);color:inherit;text-decoration:none;transition:background-color .2s}
.leistungsliste a:hover{background:var(--asphalt)}
.nr{font:700 24px/1.1 var(--slab);color:var(--orange-t)}
.lt b{display:inline;font:700 23px/1.2 var(--titel);color:var(--tinte);background:linear-gradient(var(--orange),var(--orange)) 0 100%/0 2px no-repeat;transition:background-size .35s ease}
.leistungsliste a:hover .lt b{background-size:100% 2px}
.lt b + span{display:block}
.lt span{display:block;margin-top:4px;font-size:16px;color:var(--mut)}

/* ---------- Farbige Baender ---------- */
.band{position:relative;overflow:hidden;padding-block:clamp(64px,9vw,120px)}
.band-navy{background:var(--navy);color:var(--hell)}
.band-navy h2,.band-navy h3{color:#fff}
.band .rahmen{position:relative}
.band-titel{max-width:14em}
.band-kopf{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.62fr);gap:24px 56px;align-items:center}
.ersatz-bild{display:block;width:clamp(200px,22vw,300px);height:auto}
.band-knoepfe{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.band-hinweis{margin:24px 0 0;font-size:15px}

.ablauf{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative}
.ablauf::before{content:"";position:absolute;left:0;right:0;top:21px;height:2px;background:rgba(255,255,255,.22)}
.ablauf li{position:relative;padding-right:36px}
.ablauf-nr{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:20px;border:2px solid var(--orange);border-radius:50%;background:var(--navy);color:#fff;font:700 19px/1 var(--slab)}
.ablauf h3{font:700 22px/1.2 var(--titel);margin-bottom:8px}
.ablauf p{margin:0;font-size:16px}

/* ---------- Preise ---------- */
.preise-kopf{margin-bottom:34px}
.preise-hinweis{margin:0;color:var(--mut)}
.preistafel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff;border:1px solid var(--linie);border-top:3px solid var(--navy);border-radius:var(--r)}
.preis{padding:30px 28px;border-left:1px solid var(--linie)}
.preis:first-child{border-left:0}
.preis h3{font-size:20px}
.preis p{margin:0;font-size:16px;color:var(--mut)}
.preis .betrag{margin:12px 0 12px;font:700 clamp(36px,3.6vw,52px)/1 var(--slab);color:var(--navy);font-variant-numeric:tabular-nums}
.preis .betrag-klein{font-size:clamp(24px,2.2vw,30px);padding-block:6px}
.preis-aktion{background:#FBF7F3}
.marke-aktion{display:inline-block;margin:0 0 10px;padding:2px 8px;border:1px solid var(--orange-t);border-radius:3px;color:var(--orange-t);font-weight:600;font-size:13px}
.preis .marke-aktion{color:var(--orange-t)}
.band-navy .preistafel h3{color:var(--tinte)}
.preistafel-dunkel{margin-top:40px;border-color:var(--navy-d);border-top-color:var(--orange)}

/* ---------- Stimmen ---------- */
.stimmen-titel{max-width:12em}
.stimmen-reihe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:36px}
.stimme{margin:0;padding:28px;background:#fff;border:1px solid var(--linie);border-radius:var(--r);min-width:0}
.stimme{display:flex;flex-direction:column}
.stimme blockquote{flex:1}
.stimme blockquote{margin:0}
.stimme blockquote p{margin:0;font-size:17px}
.stimme figcaption{margin-top:18px;font-weight:800;color:var(--tinte)}
.stimme figcaption span{display:block;font-weight:400;font-size:15px;color:var(--mut)}
.stimme-gross{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.32fr) minmax(0,1fr);grid-template-areas:"sterne zitat" "name zitat";column-gap:clamp(24px,4vw,72px);align-content:center;padding:clamp(28px,3.4vw,52px);background:var(--navy);border-color:var(--navy);color:#fff}
.stimme-gross .sterne{grid-area:sterne}
.stimme-gross blockquote{grid-area:zitat;align-self:center}
.stimme-gross figcaption{grid-area:name;margin-top:8px;align-self:start}
.stimme-gross blockquote p{font:600 clamp(20px,1.8vw,25px)/1.45 var(--grot);color:#fff}
.stimme-gross figcaption{color:#fff}
.stimme-gross figcaption span{color:var(--hell)}
.sterne{margin:0 0 12px;font-size:15px;letter-spacing:2px;color:var(--orange-t)}
.stimme-gross .sterne{color:var(--orange)}
.wisch-punkte{align-items:center;justify-content:space-between;gap:16px;margin-top:16px}
.wisch-spur{display:flex;gap:8px}
.wisch-spur i{width:10px;height:10px;border-radius:50%;background:var(--linie)}
.wisch-spur i.an{background:var(--orange)}
.wisch-zahl{font-size:15px;color:var(--mut);font-variant-numeric:tabular-nums}
.wisch-zahl b{color:var(--tinte)}

/* ---------- Gebrauchtwagen ---------- */
.gw-raster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center}
.gw-raster p{font-size:18px;max-width:30em}
.hotrod{display:block;width:100%;max-width:600px;justify-self:center}
.hotrod img{width:100%;height:auto}
.schluss{display:flex;flex-wrap:wrap;align-items:center;gap:24px 72px}
.schluss h2{max-width:16em}

/* ---------- Team ---------- */
.team-raster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}
.person{display:flex;align-items:center;gap:16px;margin-top:26px}
.person-zeichen{display:flex;align-items:center;justify-content:center;width:64px;height:64px;flex:none;border-radius:var(--r);background:var(--navy);color:#fff;font:700 23px/1 var(--slab)}
.person b{display:block;font-size:19px;font-weight:800;color:var(--tinte)}
.person b + span{display:block;color:var(--mut)}
.person-gross{margin:0;padding:28px;border:1px solid var(--linie);border-top:3px solid var(--navy);border-radius:var(--r)}
.person-gross .person-zeichen{width:96px;height:96px;font-size:36px}
.person-gross b{font-size:24px}
.stelle{display:block;padding:clamp(26px,3.4vw,44px);border:1px solid var(--linie);border-top:3px solid var(--orange);border-radius:var(--r);color:inherit;text-decoration:none;transition:background-color .2s}
.stelle:hover{background:var(--asphalt)}
.stelle-marke{display:inline-block;margin-bottom:14px;color:var(--orange-t);font-weight:600;font-size:15px}
.stelle h3{margin-bottom:12px;font:700 clamp(26px,2.7vw,36px)/1.08 var(--slab);color:var(--navy)}
.zahlen{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(20px,3vw,40px);border-top:2px solid var(--navy)}
.zahl-feld{padding:22px 20px 4px 0;border-right:1px solid var(--linie)}
.zahl-feld + .zahl-feld{padding-left:24px}
.zahl-feld:last-child{border-right:0}
.zahl{display:block;font:700 clamp(34px,3.6vw,52px)/1 var(--slab);color:var(--navy);font-variant-numeric:tabular-nums}
.zahl-text{display:block;margin-top:8px;font-size:15px;color:var(--mut);hyphens:auto;overflow-wrap:break-word}
.stelle-raster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start}

/* ---------- Kontakt ---------- */
.kontakt-raster{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,80px);align-items:center}
.wege{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wege a{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;align-items:center;height:100%;padding:18px;background:#fff;border:1px solid var(--linie);border-radius:var(--r);color:inherit;text-decoration:none;transition:border-color .2s}
.wege a:hover{border-color:var(--navy)}
.weg-ic{grid-row:1/3;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--linie);border-radius:var(--r);color:var(--navy)}
.wege a > span:not(.weg-ic){font-size:14px;color:var(--mut)}
.wege b{font-size:17px;color:var(--tinte);overflow-wrap:anywhere}
.schema{display:block;width:100%;max-width:400px;height:auto;margin-top:26px}

/* ---------- Seitenkopf der Unterseiten ---------- */
.seitenkopf{position:relative;overflow:hidden;background:var(--navy);color:var(--hell);padding-block:clamp(52px,8vw,110px)}
.seitenkopf .rahmen{position:relative}
.seitenkopf h1{font-size:clamp(38px,5vw,64px);color:#fff;margin:0 0 18px}
.seitenkopf-text{max-width:36em;margin:0;font-size:18px}
.seitenkopf h1 .kicker{margin-bottom:14px}
.brotkrumen{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:22px;font-size:14px;color:var(--hell)}
.brotkrumen a{color:#fff;text-decoration:underline;text-underline-offset:3px;padding-block:12px}
.brotkrumen span[aria-hidden]{color:#FFB27A}

.leistung-raster{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start}
.leistung-kopf .nr{display:block;margin-bottom:8px;font-size:34px}
.leistung-kopf h2{font-size:clamp(28px,3vw,40px)}
.haken{list-style:none;margin:0;padding:0;border-top:2px solid var(--navy)}
.haken li{position:relative;padding:14px 0 14px 36px;border-bottom:1px solid var(--linie);font-weight:600;color:var(--tinte)}
.haken-lang{column-count:2;column-gap:40px}
.haken-lang li,.haken-kacheln li{break-inside:avoid}
.plakette{display:block;width:120px;height:auto;margin-top:26px}
.stelle-intro,.kontakt-intro{font-size:18px;margin-bottom:30px}
.bewerben-raster{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px 64px;align-items:center}
.bewerben-raster .band-knoepfe{flex-direction:column;align-items:stretch;margin-top:0}
.haken li::before{content:"";position:absolute;left:4px;top:21px;width:13px;height:7px;border-left:2px solid var(--navy);border-bottom:2px solid var(--navy);transform:rotate(-45deg)}

/* ---------- Formular ---------- */
.fragen-raster{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.fragen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,64px);align-items:start;border-top:2px solid var(--navy)}
.frage{border-bottom:1px solid var(--linie)}
.frage summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:14px 0;cursor:pointer;list-style:none}
.frage summary::-webkit-details-marker{display:none}
.frage summary::after{content:"+";flex:none;font:700 26px/1 var(--slab);color:var(--orange-t);transition:transform .25s ease}
.frage[open] summary::after{transform:rotate(45deg)}
.frage h3{font:700 20px/1.3 var(--titel);color:var(--tinte)}
.frage p{margin:0 0 18px;max-width:40em}
.anfrage-raster{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:start}
.formular{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:clamp(22px,3vw,34px);background:#fff;border:1px solid var(--linie);border-radius:var(--r)}
.feld{display:flex;flex-direction:column;gap:6px;min-width:0}
.voll{grid-column:1/-1}
.feld label{font-weight:600;color:var(--tinte)}
.feld input,.feld select,.feld textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid #93A1AD;border-radius:5px;background:#fff;font:inherit;color:var(--tinte)}
.feld textarea{min-height:140px;resize:vertical}
.feld .falsch{border-color:#B3261E}
.form-meldung{margin:0;font-weight:600;color:var(--navy)}

/* ---------- Fusszeile ---------- */
.fuss{background:var(--navy);color:var(--hell);padding-top:clamp(52px,7vw,88px)}
.fuss-raster{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:36px}
.fuss-logo{display:inline-block;margin-bottom:16px;padding:10px 14px;background:#fff;border-radius:var(--r)}
.fuss-logo img{height:84px;width:auto}
.fuss-marke p{max-width:24em;font-size:16px}
.fuss h2{margin:0 0 14px;font:700 19px/1.2 var(--slab);color:#fff}
.fuss ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fuss a{color:var(--hell);text-decoration:none}
.fuss a:hover{color:#fff;text-decoration:underline}
.fuss-zeiten li{display:flex;justify-content:space-between;gap:12px}
.fuss-adr{margin-top:14px}
.fuss-ende{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-top:52px;padding-block:18px;border-top:1px solid var(--linie-d);font-size:14px;color:#A9BBC9}
.fuss-recht button{background:none;border:0;padding:8px 6px;font:inherit;color:#fff;text-decoration:underline;cursor:pointer}
.leiste{display:none}

/* ---------- Fenster ---------- */
.fenster{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(2,22,36,.66);opacity:0;visibility:hidden;transition:opacity .22s,visibility .22s}
.fenster.offen{opacity:1;visibility:visible}
.fenster-box{width:min(580px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:26px 28px 28px;background:#fff;border-top:6px solid var(--orange);border-radius:var(--r)}
.fenster-box.recht{width:min(760px,100%)}
.fenster-kopf{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.fenster-kopf h2{margin:0;font-size:28px}
.fenster-zu{display:flex;align-items:center;justify-content:center;width:46px;height:46px;flex:none;border:0;border-radius:var(--r);background:var(--asphalt);color:var(--navy);cursor:pointer}
.fenster-zu .ic{width:22px;height:22px}
.fenster-wege{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.fenster-klein{font-size:14px;color:var(--mut)}
.fenster-rubrik{margin:18px 0 6px;font-size:14px;font-weight:600;color:var(--mut)}
.menue-liste a{display:block;padding:12px 0;border-bottom:1px solid var(--linie);font:700 24px/1.2 var(--slab);color:var(--navy);text-decoration:none}
.kacheln{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 12px}
.kacheln a{display:flex;flex-direction:column;gap:2px;min-height:76px;padding:12px;border:1px solid var(--linie);border-radius:var(--r);color:inherit;text-decoration:none}
.kacheln a:hover{border-color:var(--navy)}
.kacheln .ic{color:var(--navy);margin-bottom:4px}
.kacheln span{font-size:13px;color:var(--mut)}
.kacheln b{font-size:15px;color:var(--tinte);overflow-wrap:anywhere}
.menue-liste a[aria-current]{color:var(--orange-t)}
.recht h3{margin:22px 0 6px;font-size:18px}
.recht p,.recht li{font-size:15.5px}
.recht ul{padding-left:20px}

/* ---------- Bewegung (CLAUDE.md §3.7) ---------- */
html.js .rv{opacity:0;transform:translateY(16px)}
html.js .rv.in{opacity:1;transform:none;transition:opacity .62s ease,transform .62s cubic-bezier(.22,.68,.34,1);transition-delay:var(--d,0ms)}
html.js .vz1{--d:80ms}
html.js .vz2{--d:190ms}
html.js .vz3{--d:300ms}
html.js .vz4{--d:410ms}
html.js .vz5{--d:520ms}
html.js .ln{display:block;overflow:hidden;padding:.14em .06em .22em;margin:-.14em -.06em -.22em}
html.js .ln>span{display:block;transform:translateY(112%)}
html.js .ln.in>span{transform:none;transition:transform .95s cubic-bezier(.22,.68,.34,1);transition-delay:var(--d,0ms)}
.ln{display:block}
html.js .zeichnung.rv{opacity:1;transform:none;clip-path:inset(0 100% 0 0)}
html.js .zeichnung.rv.in{clip-path:inset(0 0 0 0);transition:clip-path 1.5s cubic-bezier(.65,0,.35,1);transition-delay:var(--d,0ms)}
html.js .kicker.rv::before{width:0;transition:width .7s cubic-bezier(.22,.68,.34,1) .25s}
html.js .kicker.rv.in::before{width:22px}
html.js .ablauf.linie::before{transform:scaleX(0);transform-origin:0 50%;transition:transform 1.3s cubic-bezier(.65,0,.35,1) .15s}
html.js .ablauf.linie.in::before{transform:none}
html.js .tafel.rv tbody tr,html.js .tafel.rv .tafel-adr{opacity:0;transition:opacity .45s ease}
html.js .tafel.rv.in tbody tr,html.js .tafel.rv.in .tafel-adr{opacity:1}
html.js .tafel.rv.in tbody tr:nth-child(1){transition-delay:.55s}
html.js .tafel.rv.in tbody tr:nth-child(2){transition-delay:.65s}
html.js .tafel.rv.in tbody tr:nth-child(3){transition-delay:.75s}
html.js .tafel.rv.in tbody tr:nth-child(4){transition-delay:.85s}
html.js .tafel.rv.in .tafel-adr{transition-delay:.95s}
@media (prefers-reduced-motion:reduce){
  html.js .rv{opacity:1;transform:none}
  html.js .rv.in{transition:none}
  html.js .ln>span,html.js .ln.in>span{transform:none;transition:none}
  .fenster{transition:none}
  html.js .zeichnung.rv{clip-path:none}
  html.js .kicker.rv::before{width:22px;transition:none}
  html.js .ablauf.linie::before{transform:none;transition:none}
  html.js .tafel.rv tbody tr,html.js .tafel.rv .tafel-adr{opacity:1;transition:none}
  .sz-fuell,.sz-nadel{animation:none}
}
