/* Impressum und Datenschutz im selben Haus.
   Dieselben Rollen wie in vorlage.html; die Werte stehen hier ein zweites Mal,
   weil die Visitenkarte ihre Fassung inline traegt. Verhaeltnisse und
   Begruendung dort, gerechnet mit `pruefe-kontrast.py`. */
:root{
  --grund:#F4F6EC; --flaeche:#FFFFFF; --band:#EDE8D3;
  --tinte:#0A0B08; --leise:#454B3A;
  --petrol:#1F6F6B; --tief:#175350;
  --petrol1f:rgba(31,111,107,.20); --petrol33:rgba(31,111,107,.33);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--grund);color:var(--tinte);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  line-height:1.6;letter-spacing:-0.006em;-webkit-font-smoothing:antialiased;
}
.bahn{width:100%;max-width:760px;margin:0 auto;padding:0 clamp(20px,5vw,64px)}
:focus-visible{outline:3px solid var(--tief);outline-offset:3px}
.kopf{padding:clamp(36px,6vh,72px) 0 clamp(24px,3.5vh,40px)}
.zurueck{
  font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:400;
  font-size:clamp(10.5px,.2vw + 10px,12.5px);letter-spacing:.14em;
  text-transform:uppercase;color:var(--tief);text-decoration:none;
}
.zurueck:hover,.zurueck:focus-visible{text-decoration:underline;
  text-underline-offset:4px}
h1{
  font-weight:800;font-size:clamp(34px,4.6vw,58px);letter-spacing:-0.032em;
  margin:clamp(18px,2.5vh,28px) 0 0;line-height:1.06;
}
main{padding:0 0 clamp(48px,8vh,96px)}
h2{
  font-weight:800;font-size:clamp(17px,.7vw + 14px,19.5px);
  letter-spacing:-0.016em;margin:clamp(34px,5vh,52px) 0 clamp(8px,1.2vh,12px);
}
p{margin:0 0 clamp(12px,1.6vh,18px);max-width:62ch;color:var(--leise)}
address p{color:var(--tinte)}
address{font-style:normal}
a{color:var(--tief);text-decoration-line:underline;text-underline-offset:4px;
  text-decoration-thickness:1.2px;text-decoration-color:var(--petrol33);
  overflow-wrap:anywhere}
a:hover,a:focus-visible{text-decoration-color:var(--tief)}
.offen{
  display:inline-block;font-family:'JetBrains Mono',ui-monospace,monospace;
  font-weight:400;font-size:clamp(10.5px,.2vw + 10px,12.5px);
  letter-spacing:.1em;background:var(--flaeche);color:var(--tinte);
  border:1.6px solid var(--tief);border-radius:999px;padding:9px 18px;
}
footer{background:var(--band);border-top:1.4px solid var(--petrol33)}
.fuss{
  display:flex;flex-wrap:wrap;gap:8px clamp(16px,2.5vw,32px);
  font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:400;
  font-size:clamp(10.5px,.2vw + 10px,12.5px);letter-spacing:.14em;
  text-transform:uppercase;color:var(--tief);
  margin:0;padding:clamp(20px,3vh,30px) 0;
}
.fuss + .fuss{padding-top:0}
.fuss a{color:var(--tief)}
