/* Gemeinsamer Stil für Impressum und Datenschutz (gleicher Look wie die Startseite) */
@font-face{
  font-family:"Archivo";src:url("fonts/archivo.woff2") format("woff2");
  font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Archivo Ersatz";src:local("Arial"),local("ArialMT"),local("Helvetica Neue"),local("Roboto");
  size-adjust:98.7%;ascent-override:88.96%;descent-override:21.28%;line-gap-override:0%;
}
@font-face{
  font-family:"Archivo Schmal Ersatz";src:local("Arial Bold"),local("Arial-BoldMT"),local("Helvetica Neue Bold"),local("Roboto Bold");
  font-weight:500 900;size-adjust:81%;ascent-override:108.4%;descent-override:25.93%;line-gap-override:0%;
}
:root{
  --weiss:#FFFFFF;--grau:#EEEEEC;--schwarz:#0B0B0B;--schwarz-2:#5A5A5A;--blau:#0A3FD1;
  --linie:rgba(11,11,11,.07);
  --rand:clamp(16px,3vw,48px);--gap:clamp(12px,1.6vw,24px);--abstand:clamp(48px,12vw,72px);
  --spalten:4;--ease:cubic-bezier(.16,1,.3,1);
  --schrift:"Archivo","Archivo Ersatz","Helvetica Neue",Arial,sans-serif;
  --schrift-schmal:"Archivo","Archivo Schmal Ersatz","Helvetica Neue",Arial,sans-serif;
}
@media (min-width:900px){:root{--spalten:12;--abstand:clamp(72px,6.4vw,112px)}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scrollbar-color:var(--schwarz) var(--grau)}
body{margin:0;background:var(--weiss);color:var(--schwarz);font-family:var(--schrift);font-size:1rem;line-height:1.55;font-kerning:normal}
::selection{background:var(--blau);color:#fff}
a{color:inherit}
:focus-visible{outline:2px solid var(--blau);outline-offset:3px}
p,ul{margin:0}
h1,h2{margin:0;font-weight:inherit}

.raster{display:grid;grid-template-columns:repeat(var(--spalten),minmax(0,1fr));column-gap:var(--gap);padding:0 var(--rand);max-width:1920px;margin:0 auto}
.linien{position:fixed;inset:0;pointer-events:none;z-index:50;height:100%}
.linien span{border-left:1px solid var(--linie);height:100%}
.linien span:last-child{border-right:1px solid var(--linie)}
.linien span:nth-child(n+5){display:none}
@media (min-width:900px){.linien span:nth-child(n+5){display:block}}

.meta{font-size:.875rem;line-height:1.35;font-weight:500}
@media (min-width:900px){.meta{font-size:.8125rem}}

.kopf{padding-top:clamp(6px,1.2vw,14px);align-items:center}
.kopf .zurueck{grid-column:1 / -1;justify-self:start;display:inline-flex;align-items:center;gap:.5em;min-height:44px;text-decoration:none}
.kopf .zurueck:hover{color:var(--blau)}
.kopf .zurueck svg{width:14px;height:14px;transition:transform .3s var(--ease)}
.kopf .zurueck:hover svg{transform:translateX(-3px)}

.titel{padding-top:clamp(40px,8vw,96px)}
.titel h1{
  grid-column:1 / -1;font-family:var(--schrift-schmal);font-size:clamp(3rem,10vw,9rem);font-weight:640;font-stretch:78%;
  line-height:.86;letter-spacing:-.04em;overflow-wrap:anywhere;
}
.titel .vorspann{grid-column:1 / -1;margin-top:clamp(20px,2.4vw,32px);font-size:clamp(1.125rem,1.7vw,1.5rem);line-height:1.32;font-weight:500;max-width:36ch}
@media (min-width:900px){.titel .vorspann{grid-column:5 / span 8}}

.text{padding-top:var(--abstand)}
.block{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr);row-gap:.7rem;padding:1.1rem 0 1.6rem;border-top:1px solid var(--schwarz)}
.block h2{font-family:var(--schrift-schmal);font-size:clamp(1.375rem,2vw,1.875rem);font-weight:620;font-stretch:85%;line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.block .inhalt{max-width:65ch;font-size:clamp(1rem,1.1vw,1.0625rem)}
.block .inhalt p + p{margin-top:.8em}
.block .inhalt a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.block .inhalt a:hover{color:var(--blau)}
@media (min-width:900px){
  .block{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);align-items:baseline}
  .block h2{grid-column:1 / span 4;padding-right:var(--gap)}
  .block .inhalt{grid-column:5 / span 8}
}
.stand{grid-column:1 / -1;margin-top:1.2rem;color:var(--schwarz-2)}
@media (min-width:900px){.stand{grid-column:5 / span 8}}

.fuss{
  grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 1.4rem;
  border-top:1px solid var(--schwarz);margin-top:var(--abstand);padding:.35rem 0 clamp(12px,2vw,24px)
}
.fuss nav{display:flex;flex-wrap:wrap;column-gap:1.4rem}
.fuss a{text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.fuss a:hover,.fuss a[aria-current]{color:var(--blau)}

@media (prefers-reduced-motion:reduce){.kopf .zurueck svg{transition:none}}
