/* Gemeinsame Gestaltung der Rechtsseiten · Impressum und Datenschutz */
@font-face{ font-family:"Lauf"; src:url("/assets/fonts/montserrat.woff2") format("woff2"); font-weight:300 700; font-display:swap; }

:root{ --papier:#f4f1ef; --tinte:#0b0b0b; --sand:#dad3ce; --grau:#4b4b4b; --linie:rgba(11,11,11,.14); }
*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{ display:flex; flex-direction:column; min-height:100vh; background:var(--papier); color:var(--tinte);
      font-family:"Lauf",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif; font-weight:300; line-height:1.72;
      -webkit-font-smoothing:antialiased; }
a{ color:inherit; }
::selection{ background:var(--tinte); color:var(--papier); }

/* Kopfleiste wie auf der Hauptseite: Wortmarke links, Menü rechts */
nav{ position:sticky; top:0; z-index:50; display:flex; align-items:center; justify-content:space-between;
     gap:20px; padding:16px clamp(20px,5vw,72px); background:var(--papier); border-bottom:1px solid var(--linie); }
nav a{ text-decoration:none; }
nav .marke img{ display:block; height:71px; width:auto; }
.nav-links{ list-style:none; display:flex; align-items:center; gap:clamp(18px,2.6vw,38px); margin:0; }
.nav-links li{ padding:0; }
.nav-links li::before{ content:none; }
.nav-links a{ position:relative; display:inline-flex; align-items:baseline; gap:8px; padding:6px 0;
              font-size:15px; font-weight:500; letter-spacing:.04em; color:var(--tinte); }
.nav-links a i{ font-style:normal; font-size:11px; font-weight:500; letter-spacing:.14em; color:var(--tinte);
                opacity:.75; font-variant-numeric:tabular-nums; }
.nav-links a::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:var(--tinte);
                     transform:scaleX(0); transform-origin:left; transition:transform .3s ease; }
.nav-links a:hover::after{ transform:scaleX(1); }
.nav-links .nav-kontakt a{ padding:11px 22px; border:1px solid currentColor; font-size:12.5px; font-weight:600;
                           letter-spacing:.2em; text-transform:uppercase; transition:background .25s, color .25s; }
.nav-links .nav-kontakt a i{ display:none; }
.nav-links .nav-kontakt a::after{ display:none; }
.nav-links .nav-kontakt a:hover{ background:var(--tinte); color:var(--papier); }
@media (max-width:900px){ nav .marke img{ height:50px; } }
@media (max-width:620px){ nav{ padding:12px clamp(16px,5vw,72px); } nav .marke img{ height:37px; }
  .nav-links a i{ display:none; } .nav-links a{ font-size:13px; } }
@media (max-width:460px){ .nav-links .nav-weit{ display:none; } }

.wrap{ width:100%; max-width:1180px; margin:0 auto; padding:0 clamp(20px,5vw,72px); }

/* Kopfbereich: Bild rechts oben, darunter links die große Überschrift */
.kopf{ padding:clamp(44px,8vh,92px) 0 clamp(18px,3vh,34px); }
.kopf h1{ font-family:"Lauf",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif; font-weight:400;
          letter-spacing:-.035em; font-size:clamp(44px,7.4vw,92px); line-height:1.02; }
.kopf .einleitung{ margin-top:18px; max-width:88ch; font-size:14.5px; color:var(--grau); }

main{ flex:1 0 auto; padding-bottom:clamp(60px,10vh,120px); }

section{ padding:clamp(26px,4vh,40px) 0; border-top:1px solid var(--linie); }
/* Abschnittsüberschriften in der Standardschrift, wie im Vorbild */
h2{ font-family:"Lauf",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif; font-weight:400; letter-spacing:-.01em;
    font-size:clamp(20px,2.2vw,28px); line-height:1.25; margin-bottom:16px; color:var(--tinte); }
h3{ font-family:"Lauf",Helvetica,Arial,sans-serif; font-weight:500; font-size:15.5px; letter-spacing:-.005em;
    margin:22px 0 8px; }
p, li{ font-size:14.5px; color:var(--grau); max-width:92ch; }
p + p{ margin-top:12px; }
strong{ font-weight:600; color:var(--tinte); }
.anschrift{ font-size:15px; color:var(--tinte); line-height:1.65; }
.merkmal{ font-size:11.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--tinte); font-weight:500; margin-bottom:6px; }
main a{ color:var(--tinte); text-decoration:none; border-bottom:1px solid rgba(11,11,11,.3); }
main a:hover{ border-bottom-color:var(--tinte); }

/* Listen: Strich als Marke, Text fließt als ein Block weiter */
ul{ list-style:none; display:grid; gap:7px; margin-top:10px; }
li{ position:relative; padding-left:20px; }
li::before{ content:""; position:absolute; left:0; top:.85em; width:9px; height:1px; background:rgba(11,11,11,.4); }

.stand{ margin-top:clamp(26px,4vh,40px); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#8a8a8a; }

footer{ background:var(--tinte); color:var(--papier); padding:clamp(28px,5vh,46px) 0; }
footer .wrap{ display:flex; justify-content:space-between; gap:12px 28px; flex-wrap:wrap; align-items:center;
              font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:rgba(244,241,239,.7); }
footer a{ text-decoration:none; color:rgba(244,241,239,.7); }
footer a:hover{ color:var(--papier); }
footer .links{ display:flex; gap:22px; flex-wrap:wrap; }
