/* Rechtstexte: Impressum und Datenschutz. Teilt sich die Farbwelt mit der Startseite,
   ist aber auf Lesbarkeit gesetzt - lange Fliesstexte, keine Bildflaechen. */
:root{
  --sage:#646b5c; --sage-deep:#474d41; --sage-soft:#969c8c; --sage-mist:#e2e5dd;
  --cream:#f3eadb; --cream-light:#faf6ef; --rose:#c99a9a; --rose-deep:#a8706f;
  --white:#fff; --ink:#2f382b; --muted:#5c6557;
  --f-head:"Garet","Outfit","Liberation Sans",Arial,sans-serif;
  --f-body:"Liberation Sans","Arimo",Arial,sans-serif;
  --f-script:"Parisienne","Brush Script MT",cursive;
  --pad:clamp(20px,4vw,48px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream-light);color:var(--ink);
  font-family:var(--f-body);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--sage)}
:focus-visible{outline:2px solid var(--rose-deep);outline-offset:3px;border-radius:4px}

.lg-head{background:var(--cream-light);border-bottom:1px solid var(--sage-mist)}
.lg-head .inner{max-width:1200px;margin:0 auto;padding:18px var(--pad);
  display:flex;align-items:center;justify-content:space-between;gap:20px}
.lg-head a.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--sage)}
.lg-head a.brand img{height:76px;width:76px;border-radius:50%;box-shadow:0 4px 14px rgba(71,77,65,.18)}
.lg-head .wordmark{font-family:var(--f-script);font-size:34px;line-height:1}
.lg-head a.back{font-family:var(--f-head);font-size:15.5px;text-decoration:none;color:var(--sage-deep);
  border:1.5px solid var(--sage);border-radius:999px;padding:11px 22px;white-space:nowrap;
  transition:background .25s,color .25s}
.lg-head a.back:hover{background:var(--sage);color:var(--cream-light)}

main.lg{max-width:760px;margin:0 auto;padding:clamp(44px,7vw,84px) var(--pad) clamp(60px,8vw,110px)}
main.lg h1{font-family:var(--f-head);font-weight:400;color:var(--sage-deep);
  font-size:clamp(2rem,4.4vw,2.9rem);line-height:1.12;letter-spacing:-.01em;margin:0 0 12px}
main.lg h1 + .stand{color:var(--muted);font-size:14.5px;margin:0 0 40px}
main.lg h1::after{content:"";display:block;width:44px;height:2px;background:var(--rose);
  margin-top:20px;border-radius:2px}
main.lg h2{font-family:var(--f-head);font-weight:500;color:var(--sage-deep);
  font-size:clamp(1.3rem,2.4vw,1.6rem);line-height:1.25;margin:46px 0 14px}
main.lg h3{font-family:var(--f-head);font-weight:500;color:var(--sage);
  font-size:1.1rem;line-height:1.3;margin:32px 0 10px}
main.lg p{margin:0 0 1.1em;max-width:68ch}
main.lg ul{margin:0 0 1.2em;padding-left:22px}
main.lg li{margin-bottom:6px}
main.lg .adr{background:var(--white);border:1px solid var(--sage-mist);border-radius:16px;
  padding:22px 26px;margin:0 0 1.4em}
main.lg .adr p{margin:0}
main.lg .adr p + p{margin-top:.9em}
main.lg .caps{font-size:15px;color:var(--muted);text-transform:none}
main.lg .quelle{margin-top:52px;padding-top:22px;border-top:1px solid var(--sage-mist);
  font-size:14.5px;color:var(--muted)}

.lg-foot{background:var(--sage-deep);color:rgba(250,246,239,.8);font-size:14px;padding:34px 0}
.lg-foot .inner{max-width:1200px;margin:0 auto;padding:0 var(--pad);
  display:flex;flex-wrap:wrap;gap:16px 30px;align-items:center;justify-content:space-between}
.lg-foot .wordmark{font-family:var(--f-script);font-size:30px;color:var(--cream-light)}
.lg-foot nav{display:flex;gap:24px}
.lg-foot a{text-decoration:none;color:inherit}
.lg-foot a:hover{color:#efddda}

@media (max-width:640px){
  .lg-head .inner{padding:14px var(--pad)}
  .lg-head a.brand img{height:58px;width:58px}
  .lg-head .wordmark{display:none}
  .lg-head a.back{padding:9px 16px;font-size:14px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important}}
