/* ==========================================================================
   UNTERSEITEN – Impressum, Datenschutz, Mietbedingungen
   Look wie Fahrzeugbeschriftung (schwarze Variante): Anthrazit, Knochenweiß,
   Baumreihe als Silhouette in Steingrau, breite kondensierte Wortmarke "DEIN HANDWERKER".
   Kein Orange, kein Grün – Akzente nur in Grautönen.
   Variablennamen (--tanne usw.) sind geblieben, damit die Unterseiten unverändert passen.
   ========================================================================== */
@font-face{font-family:"Bricolage Grotesque";src:url("fonts/bricolage-var.woff2") format("woff2");font-weight:200 800;font-stretch:75% 100%;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url("fonts/atkinson-next-var.woff2") format("woff2");font-weight:200 800;font-display:swap}

:root{
  --tanne:#1c1c1a;--tanne-tief:#0f0f0e;--tanne-hell:#2c2c29;
  --knochen:#efede7;--kalk:#f5f4f0;--moos:#e4e2db;
  --salbei:#b9b6ad;--salbei-tief:#4e4d48;--stein:#5e5d58;--nebel:#a8a69f;--hell-gedaempft:#cfccc4;
  --silhouette:rgba(168,166,159,.28);
  --gelb:#f0bd1f;--gelb-tief:#a97d06;
  --linie:rgba(28,28,26,.2);--linie-hell:rgba(245,244,240,.16);
  --schrift-gross:"Bricolage Grotesque","Arial Narrow",Arial,sans-serif;
  --schrift:"Atkinson Hyperlegible Next",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --rand:clamp(1.25rem,5vw,5rem);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:6rem;-webkit-text-size-adjust:100%}
body{font-family:var(--schrift);font-size:1.125rem;line-height:1.65;color:var(--tanne);background:var(--kalk);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration-color:var(--gelb-tief);text-decoration-thickness:2px;text-underline-offset:4px}
:focus-visible{outline:3px solid var(--gelb-tief);outline-offset:3px}
p,li,dd{hyphens:auto;overflow-wrap:break-word}

.rahmen{width:100%;max-width:1480px;margin-inline:auto;padding-inline:var(--rand)}

/* Wortmarke – wie auf dem Fahrzeug: schmal, fett, Versalien, Trennstrich dazwischen */
.marke{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;font-family:var(--schrift-gross);font-stretch:75%;font-weight:800;font-size:1.65rem;letter-spacing:.08em;text-transform:uppercase;line-height:1}
.marke b{font-weight:800}
.marke i{font-style:normal;width:3px;height:1.05em;background:var(--gelb)}
.marke span{font-weight:700}
.marke small{display:block;font-family:var(--schrift);font-stretch:100%;font-weight:600;font-size:.62rem;letter-spacing:.22em;color:var(--hell-gedaempft);margin-top:.35rem}

/* Kopf */
.kopf{position:sticky;top:0;z-index:20;background:rgba(241,239,232,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--tanne);border-bottom:1px solid var(--linie)}
.kopf .rahmen{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:4.4rem}
.kopf__zurueck{font-weight:700;text-decoration:none;color:var(--stein);letter-spacing:.02em}
.kopf__zurueck:hover{color:var(--tanne)}

/* Titelband mit Bergen und Baumreihe als Silhouette (wie auf Heck und Visitenkarte) */
.titel{position:relative;isolation:isolate;overflow:hidden;background:var(--tanne);color:var(--knochen);padding:clamp(3.5rem,8vw,7rem) 0 clamp(4.5rem,8vw,7.5rem)}
.titel::before{content:"";position:absolute;inset:auto 0 0 0;height:clamp(5rem,14vw,11rem);z-index:-1;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 220' preserveAspectRatio='none'><path fill='%23a8a69f' fill-opacity='.14' d='M0 220V150l140-70 110 50 120-90 150 80 130-60 110 60 160-110 150 90 120-50 130 70 140-80 140 70v110z'/><path fill='%23a8a69f' fill-opacity='.28' d='M0 220v-40l22-8 10-30 12 30 20-12 16-50 16 50 12-20 10 20 24-10 14-60 14 60 10-14 14 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 10-12 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 12-14 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 10-12 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 12-14 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 10-12 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 12-14 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 10-12 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 12-14 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 10-12 12 24 22-10 14-52 14 52 12-18 10 24 20-8 18-70 18 70 10-10 12 20 22-12 12-44 14 44 12-16 10 24 20-6 16-62 16 62 12-14 12 24 22-10 14-52 14 52 12-18 10 24v28z'/></svg>") bottom/100% 100% no-repeat}
.titel__ueber{display:block;font-weight:700;font-size:.8rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gelb);margin-bottom:1.1rem}
.titel h1{font-family:var(--schrift-gross);font-stretch:75%;font-weight:800;font-size:clamp(3rem,8vw,7rem);line-height:.95;letter-spacing:.01em;text-transform:uppercase}
.titel p{margin-top:1.25rem;max-width:56ch;color:var(--hell-gedaempft);font-size:1.15rem}

/* Inhalt */
.seite{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(2rem,5vw,6rem);padding-block:clamp(3rem,7vw,6rem)}
.verzeichnis{position:sticky;top:6.5rem;align-self:start;border-top:3px solid var(--tanne);padding-top:1rem}
.verzeichnis strong{display:block;font-family:var(--schrift-gross);font-stretch:78%;font-weight:800;font-size:1rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.8rem}
.verzeichnis ol{list-style:none;counter-reset:v}
.verzeichnis li{counter-increment:v}
.verzeichnis a{display:flex;gap:.7rem;padding:.35rem 0;text-decoration:none;color:var(--stein);font-weight:600;font-size:1rem;line-height:1.35}
.verzeichnis a::before{content:counter(v,decimal-leading-zero);min-width:1.8rem;font-variant-numeric:tabular-nums;color:var(--salbei-tief);font-weight:800}
.verzeichnis a:hover{color:var(--tanne)}

.text{max-width:68ch}
.text section + section{margin-top:clamp(2.5rem,5vw,3.5rem)}
.text h2{font-family:var(--schrift-gross);font-stretch:78%;font-weight:800;font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1.08;text-transform:uppercase;letter-spacing:.02em;padding-top:1rem;border-top:3px solid var(--tanne);margin-bottom:1rem}
.text h3{font-family:var(--schrift-gross);font-stretch:82%;font-weight:700;font-size:1.3rem;margin:1.6rem 0 .5rem}
.text p + p,.text p + ul,.text ul + p,.text ol + p{margin-top:.9rem}
.text ul,.text ol{padding-left:1.3rem;margin-top:.6rem}
.text li{margin:.3rem 0}
.text li::marker{color:var(--salbei-tief)}
.text dl{border-top:1px solid var(--linie);margin-top:.5rem}
.text dl > div{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr);gap:1.25rem;padding:.75rem 0;border-bottom:1px solid var(--linie)}
.text dt{font-weight:700}
.klein{font-size:.98rem;color:var(--stein)}

/* Noch auszufüllende Stellen – vor dem Livegang ersetzen, dann verschwindet die Markierung */
.platzhalter{background:#fff3c4;color:var(--tanne-tief);padding:0 .25em;border-bottom:2px solid #c9a227;font-weight:700}
.hinweis-entwurf{background:repeating-linear-gradient(135deg,#f2d35b 0 18px,#e6c24a 18px 36px);color:var(--tanne-tief);font-weight:700;padding:.9rem var(--rand)}

/* Fuß */
.fuss{background:var(--tanne-tief);color:var(--nebel);font-size:1rem;border-top:1px solid var(--linie-hell)}
.fuss .rahmen{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;padding-block:1.75rem 2.25rem}
.fuss nav{display:flex;flex-wrap:wrap;gap:.5rem 1.75rem}
.fuss a{text-decoration:none}
.fuss a:hover,.fuss a[aria-current="page"]{color:var(--knochen);text-decoration:underline}
.fuss__verwaltung{display:inline-flex;align-items:center;gap:.45rem;color:var(--salbei)}
.fuss__verwaltung::before{content:"";width:.55rem;height:.55rem;border:2px solid currentColor;border-radius:1px}

@media (max-width:900px){
  .seite{grid-template-columns:1fr}
  .verzeichnis{position:static}
  .text dl > div{grid-template-columns:1fr;gap:.2rem}
  .kopf__zurueck span{display:none}
  .marke{font-size:1.35rem}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{
  .kopf,.verzeichnis,.fuss,.hinweis-entwurf{display:none}
  .titel{background:none;color:#000;padding:0 0 1rem}.titel::before{display:none}
  .seite{display:block;padding:0}
  body{background:#fff}
}
