/* SCHICHT-WERK — Legal Pages CSS */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#0b0a08;--s:#0e0e0e;--s2:#141414;
  --b:#1a1a1a;--b2:#222222;--gold:#c8952a;
  --gold-hell:#d4a03a;--gold-tief:#a67717;--gf:#161006;
  --gl:#3a2c10;--gd:rgba(200,149,42,.08);--gold-dim:rgba(200,149,42,.12);
  --gold-glow:rgba(200,149,42,.06);--t:#999999;--t2:#8a8a8a;
  --t3:#808080;--w:#d8d8d8;--br:#f0ede8;
  --warn:#c85050;--gut:#6aab85;--warn-f:#2a1408;
  --achtung-f:#2a1f08;--gut-f:#15291d;--focus:#c8952a;
  --sans:'Space Grotesk',system-ui,sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;
  /* Zweitnamen, gleicher Wert — einzelne Seiten benutzen diese Schreibweise */
  --surface:#0e0e0e;--surface2:#141414;--border:#1a1a1a;--border2:#222222;--text:#999999;--text2:#8a8a8a;--text3:#808080;--white:#d8d8d8;--bright:#f0ede8;
}
html{scroll-behavior:smooth;font-size:100%;}
body{background:var(--bg);color:var(--t);font-family:var(--sans);font-weight:300;min-height:100vh;line-height:1.75;}
body::after{content:'';position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 79px,var(--b) 80px),repeating-linear-gradient(90deg,transparent,transparent 79px,var(--b) 80px);opacity:.06;pointer-events:none;z-index:0;}
a{color:var(--gold);text-decoration:none;}
a:hover{opacity:.8;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:3px;}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;}html{scroll-behavior:auto;}}

.skip{position:fixed;top:-80px;left:16px;background:var(--gold);color:#000;padding:10px 20px;font-size:.85rem;font-weight:500;z-index:10000;transition:top .15s;}
.skip:focus{top:12px;color:#000;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;}

/* i18n */
.i18n-en{display:none!important;}
html[lang="en"] .i18n-de{display:none!important;}
html[lang="en"] .i18n-en{display:inline!important;}
html[lang="en"] p.i18n-en,html[lang="en"] div.i18n-en,html[lang="en"] li.i18n-en{display:block!important;}
html[lang="en"] p.i18n-de,html[lang="en"] div.i18n-de,html[lang="en"] li.i18n-de{display:none!important;}

.lang{position:fixed;top:12px;right:16px;z-index:200;display:flex;gap:2px;}
.lang button{background:transparent;border:1px solid var(--b);color:var(--t2);padding:4px 10px;font-size:.58rem;letter-spacing:.14em;font-family:var(--mono);cursor:pointer;transition:all .15s;}
.lang button:hover{border-color:var(--gold);color:var(--gold);}
.lang button.on{background:var(--gold);color:#000;border-color:var(--gold);}

.wrap{position:relative;z-index:1;max-width:720px;margin:0 auto;padding:0 24px;}
hr{border:none;height:1px;background:var(--b);margin:24px 0;}

/* Header */
.top{padding:32px 0 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--b);margin-bottom:32px;}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;}
.logo svg{width:32px;height:36px;}
.logo-name{font-family:var(--mono);font-size:.65rem;font-weight:400;letter-spacing:.22em;color:var(--gold);}
.logo-sub{font-family:var(--mono);font-size:.44rem;color:var(--t3);letter-spacing:.28em;display:block;margin-top:3px;}
.back{font-family:var(--mono);font-size:.6rem;color:var(--t2);letter-spacing:.1em;text-transform:uppercase;transition:color .15s;}
.back:hover{color:var(--gold);}

/* Typography */
h1{font-size:clamp(1.5rem,3.5vw,2.1rem);font-weight:400;color:var(--br);letter-spacing:-.01em;margin-bottom:8px;}
.h1-sub{font-family:var(--mono);font-size:.6rem;color:var(--t3);letter-spacing:.15em;text-transform:uppercase;margin-bottom:32px;}
h2{font-size:1.05rem;font-weight:500;color:var(--w);margin:32px 0 12px;padding-bottom:6px;border-bottom:1px solid var(--b);}
h3{font-size:.85rem;font-weight:500;color:var(--w);margin:20px 0 6px;}
p{font-size:.85rem;color:var(--t);margin-bottom:12px;line-height:1.85;}
ul,ol{margin:8px 0 16px 24px;font-size:.85rem;color:var(--t);}
li{margin-bottom:6px;line-height:1.75;}

/* Table */
table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.78rem;}
th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--b);}
th{color:var(--w);font-weight:500;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;}
td{color:var(--t);}

/* Footer */
footer{border-top:1px solid var(--b);padding:24px 0 40px;margin-top:48px;font-family:var(--mono);font-size:.55rem;color:var(--t3);letter-spacing:.06em;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;}
footer a{color:var(--t3);}
footer a:hover{color:var(--gold);}
.footer-links{display:flex;gap:16px;}

/* Special */
.tldr{background:var(--s);border:1px solid var(--b);border-left:3px solid var(--gold);padding:14px 18px;margin:16px 0 24px;font-size:.78rem;color:var(--t);}
.tldr b{color:var(--w);}
.tldr-label{font-family:var(--mono);font-size:.55rem;letter-spacing:.15em;color:var(--gold);margin-bottom:4px;}

.note{background:var(--s);border:1px solid var(--b);padding:12px 16px;margin:12px 0;font-size:.75rem;color:var(--t2);}

@media(max-width:640px){
  .wrap{padding:0 18px;}
  .top{flex-direction:column;align-items:flex-start;gap:16px;}
  footer{flex-direction:column;align-items:flex-start;}
}

/* Härtung 09.09.: nie Browser-lila */
main a:not([class]){color:var(--gold);}
main a:not([class]):visited{color:var(--gold);}
