/* Gemeinsames Aussehen für Impressum und Datenschutz.
   Nutzt dieselben Tokens wie die Startseite, aber nur den benötigten Teil. */
:root{
  --stone:#E8E9E3; --paper:#F6F6F2; --line:#C9CBC0; --line-soft:#D9DAD1;
  --ink:#0C1E2B; --on-ink:#E6EBE9; --on-ink-mute:#94A9B3;
  --text:#12222B; --muted:#52616A;
  --saffron:#D9902A; --saffron-ink:#7E5210;
  --disp:"Archivo","Helvetica Neue",Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{--stone:#0E1A20;--paper:#17262E;--line:#2C3D45;--line-soft:#233138;
        --text:#E2E8E7;--muted:#93A6AC;--saffron-ink:#E5A340;--ink:#051016;color-scheme:dark}
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--stone);color:var(--text);font-family:var(--disp);
     font-size:17px;line-height:1.68;-webkit-font-smoothing:antialiased}
.wrap{max-width:820px;margin-inline:auto;
      padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
:where(a,button):focus-visible{outline:2px solid var(--saffron);outline-offset:3px}
:where(a){touch-action:manipulation}

header{background:var(--ink);color:var(--on-ink)}
header .bar{display:flex;align-items:center;gap:14px;height:74px}
header .brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#F3F6F4;
     font-weight:800;font-stretch:112%;letter-spacing:-.03em;font-size:23px}
header .brand svg{width:41px;height:48px;flex:none;overflow:visible}
header .back{margin-inline-start:auto;font-size:14px;color:var(--on-ink-mute);text-decoration:none}
header .back:hover{color:#F3F6F4}

main{padding-block:clamp(48px,7vw,88px)}
h1{font-size:clamp(30px,4.4vw,50px);font-weight:700;font-stretch:110%;letter-spacing:-.026em;
   line-height:1.05;margin:0 0 10px;text-wrap:balance}
.stand{font-family:var(--mono);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;
   color:var(--saffron-ink);display:flex;align-items:center;gap:10px;margin-bottom:38px}
.stand::before{content:"";width:22px;height:1px;background:currentColor}
h2{font-size:clamp(19px,2vw,24px);font-weight:700;font-stretch:106%;letter-spacing:-.018em;
   line-height:1.25;margin:44px 0 12px;text-wrap:balance}
h3{font-size:17px;font-weight:600;margin:26px 0 6px}
p,ul,ol{margin:0 0 14px}
ul,ol{padding-inline-start:22px}
li{margin-bottom:6px}
a{color:var(--saffron-ink)}
strong{font-weight:600}
address{font-style:normal;white-space:pre-line}
hr{border:0;border-top:1px solid var(--line);margin:44px 0}

/* Auszufüllende Stellen — unübersehbar */
.tbd{background:color-mix(in srgb,var(--saffron) 22%,transparent);
     border-bottom:2px solid var(--saffron);padding:1px 6px;border-radius:2px;
     font-family:var(--mono);font-size:.86em;font-weight:500;white-space:nowrap}

.hinweis{border-inline-start:2px solid var(--saffron);background:var(--paper);
     padding:18px 22px;margin:22px 0;border-radius:0 3px 3px 0}
.hinweis p:last-child{margin-bottom:0}
.hinweis b{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.13em;
     text-transform:uppercase;color:var(--saffron-ink);margin-bottom:8px}

footer{background:var(--ink);color:var(--on-ink-mute);margin-top:60px}
footer .bar{display:flex;flex-wrap:wrap;gap:10px 26px;padding-block:28px;
     font-family:var(--mono);font-size:12px}
footer a{color:var(--on-ink);text-decoration:none;border-bottom:1px solid transparent}
footer a:hover{border-bottom-color:var(--saffron)}
footer .push{margin-inline-start:auto}
@media (max-width:640px){footer .push{margin-inline-start:0}}
