:root{
  --lg-maxw:1040px;
  --lg-gutter:22px;
  --lg-display:"Manrope",system-ui,sans-serif;
  --lg-body-font:"Manrope",system-ui,sans-serif;
  --lg-ink:#14181a;
  --lg-text:#3f4a4e;
  --lg-muted:#5d6a6f;
  --lg-accent:#3a535c;
  --lg-link:#3a535c;
  --lg-line:rgba(20,24,26,.13);
  --lg-head-bg:#ffffff;
  --lg-hero-bg:#f5f7f6;
  --lg-box-bg:#f5f7f6;
  --lg-code-bg:#e8edec;
  --lg-foot-bg:#f5f7f6;
  --lg-brand-col:#14181a;
  --lg-warn-bg:#fbf6e9;
  --lg-warn-line:#e2d5b4;
}
body.lg{background:#ffffff; margin:0}
.lg-brand__word{letter-spacing:.1em}

/* =========================================================================
   legal.css — Layout fuer Impressum und Datenschutzerklaerung
   Additiv. Aendert nichts an style.css.
   ========================================================================= */

.lg-head{
  position:sticky; top:0; z-index:50;
  background:var(--lg-head-bg);
  border-bottom:1px solid var(--lg-line);
}
.lg-head__in{
  max-width:var(--lg-maxw); margin:0 auto;
  padding:18px var(--lg-gutter);
  display:flex; align-items:center; justify-content:space-between; gap:20px;
}
.lg-brand{
  display:inline-flex; align-items:center; gap:11px;
  text-decoration:none; color:var(--lg-brand-col);
}
.lg-brand__word{
  font-family:var(--lg-display); font-weight:600;
  font-size:19px; letter-spacing:.14em; line-height:1; text-transform:uppercase;
}
.lg-brand img{display:block; height:26px; width:auto}
.lg-back{
  font-family:var(--lg-body-font);
  font-size:13px; letter-spacing:.1em; text-transform:uppercase;
  text-decoration:none; color:var(--lg-muted);
  display:inline-flex; align-items:center; gap:8px;
  padding:9px 2px; border-bottom:1px solid transparent;
  transition:color .18s ease, border-color .18s ease;
}
.lg-back:hover{color:var(--lg-accent); border-bottom-color:var(--lg-accent)}
.lg-back svg{width:15px; height:15px; flex:none}

.lg-hero{
  padding:clamp(56px,8vw,104px) var(--lg-gutter) clamp(30px,4vw,44px);
  background:var(--lg-hero-bg);
  border-bottom:1px solid var(--lg-line);
}
.lg-hero__in{max-width:var(--lg-maxw); margin:0 auto}
.lg-kicker{
  font-family:var(--lg-body-font);
  font-size:12px; letter-spacing:.24em; text-transform:uppercase;
  color:var(--lg-accent); margin:0 0 16px;
}
.lg-hero h1{
  font-family:var(--lg-display); font-weight:500;
  font-size:clamp(31px,5vw,52px); line-height:1.1;
  color:var(--lg-ink); margin:0; max-width:22ch;
}
.lg-hero__sub{
  font-family:var(--lg-body-font);
  margin:20px 0 0; max-width:62ch;
  font-size:16px; line-height:1.65; color:var(--lg-muted);
}

.lg-main{
  max-width:var(--lg-maxw); margin:0 auto;
  padding:clamp(40px,6vw,76px) var(--lg-gutter) clamp(56px,8vw,104px);
  display:grid; grid-template-columns:minmax(0,1fr) 236px; gap:clamp(30px,5vw,68px);
  align-items:start;
}
.lg-body{min-width:0; max-width:73ch; font-family:var(--lg-body-font)}
.lg-body h2{
  font-family:var(--lg-display); font-weight:600;
  font-size:clamp(19px,2.1vw,23px); line-height:1.3;
  color:var(--lg-ink);
  margin:46px 0 14px; padding-top:22px;
  border-top:1px solid var(--lg-line);
}
.lg-body h2:first-child{margin-top:0; padding-top:0; border-top:0}
.lg-body p, .lg-body li{
  font-size:16px; line-height:1.72; color:var(--lg-text); margin:0 0 15px;
}
.lg-body ul{margin:0 0 20px; padding-left:22px}
.lg-body li{margin-bottom:9px}
.lg-body li::marker{color:var(--lg-accent)}
.lg-body a{color:var(--lg-link); text-decoration:underline; text-underline-offset:3px}
.lg-body a:hover{color:var(--lg-accent)}
.lg-body strong{color:var(--lg-ink); font-weight:600}
.lg-body code{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:.9em; padding:2px 6px; border-radius:5px;
  background:var(--lg-code-bg); color:var(--lg-ink);
}
.lg-body .addr{
  padding:18px 20px; border-left:3px solid var(--lg-accent);
  background:var(--lg-box-bg); border-radius:0 8px 8px 0;
  line-height:1.75;
}
.lg-body .warn{
  padding:15px 18px; border-radius:8px;
  background:var(--lg-warn-bg); border:1px solid var(--lg-warn-line);
  font-size:15px;
}

/* Offene Angaben — bewusst auffaellig, damit nichts uebersehen wird */
mark.fill{
  display:inline-block;
  background:#ffe9a8; color:#5b4200;
  border:1px dashed #c99a10; border-radius:6px;
  padding:2px 9px; margin:2px 0;
  font-family:var(--lg-body-font);
  font-size:14px; font-weight:600; line-height:1.5;
  text-decoration:none;
}
mark.fill::before{content:"⚠ "}

/* Inhaltsverzeichnis */
.lg-toc{
  position:sticky; top:92px;
  font-family:var(--lg-body-font);
  padding:22px; border-radius:12px;
  background:var(--lg-box-bg); border:1px solid var(--lg-line);
}
.lg-toc h2{
  font-family:var(--lg-display); font-size:12px; font-weight:600;
  letter-spacing:.18em; text-transform:uppercase;
  color:var(--lg-muted); margin:0 0 13px;
}
.lg-toc ol{margin:0; padding:0; list-style:none; counter-reset:toc}
.lg-toc li{margin:0 0 3px}
.lg-toc a{
  display:block; padding:6px 0;
  font-size:14px; line-height:1.4;
  color:var(--lg-text); text-decoration:none;
  border-bottom:1px solid transparent;
}
.lg-toc a:hover{color:var(--lg-accent)}

.lg-stand{
  margin-top:46px; padding-top:22px; border-top:1px solid var(--lg-line);
  font-family:var(--lg-body-font); font-size:14px; color:var(--lg-muted);
}

.lg-foot{
  background:var(--lg-foot-bg); border-top:1px solid var(--lg-line);
  padding:34px var(--lg-gutter);
  font-family:var(--lg-body-font);
}
.lg-foot__in{
  max-width:var(--lg-maxw); margin:0 auto;
  display:flex; flex-wrap:wrap; gap:14px 30px;
  align-items:center; justify-content:space-between;
  font-size:14px; color:var(--lg-muted);
}
.lg-foot nav{display:flex; flex-wrap:wrap; gap:11px 24px}
.lg-foot a{color:var(--lg-muted); text-decoration:none; border-bottom:1px solid transparent}
.lg-foot a:hover{color:var(--lg-accent); border-bottom-color:var(--lg-accent)}
.lg-foot a[aria-current="page"]{color:var(--lg-ink); font-weight:600}

@media (max-width:920px){
  .lg-main{grid-template-columns:1fr}
  .lg-toc{position:static; order:-1}
}
@media (max-width:560px){
  .lg-hero h1{font-size:clamp(27px,7vw,34px)}
  .lg-body .addr{padding:15px 16px}
  .lg-foot__in{flex-direction:column; align-items:flex-start}
}
