/* Shared styles for legal pages (Impressum, Datenschutz) — matches index.html branding */
:root{
  --bg-0:#05070d;
  --bg-1:#0a0f1c;
  --ink-0:#f4f6fb;
  --ink-1:#c3cadd;
  --ink-2:#8891ab;
  --accent:#5ee6d0;
  --accent-2:#7c9bff;
  --accent-warn:#ffb768;
  --line:rgba(255,255,255,0.09);
  --card:rgba(255,255,255,0.035);
}
*{box-sizing:border-box; margin:0; padding:0;}
body{
  background:var(--bg-0);
  color:var(--ink-0);
  font-family:'Sora', system-ui, -apple-system, sans-serif;
  line-height:1.65;
}
.mono{font-family:'JetBrains Mono', monospace;}
a{color:var(--accent); text-decoration:none;}
a:hover{text-decoration:underline;}
.wrap{max-width:760px; margin:0 auto; padding:0 28px;}

header.nav{
  position:sticky; top:0; z-index:50;
  backdrop-filter:blur(10px);
  background:rgba(5,7,13,0.7);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  max-width:1120px; margin:0 auto; padding:16px 28px;
  display:flex; align-items:center; justify-content:space-between;
}
.brand{font-weight:700; letter-spacing:.06em; font-size:15px; display:flex; align-items:center; gap:10px;}
.brand .dot{width:9px; height:9px; border-radius:50%; background:var(--accent); box-shadow:0 0 12px 2px var(--accent);}
.back-link{font-size:13.5px; color:var(--ink-1);}

main{padding:64px 0 100px;}
.eyebrow{font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); margin-bottom:14px;}
h1{font-size:clamp(26px,4vw,38px); font-weight:800; letter-spacing:-0.02em; margin-bottom:8px;}
.updated{color:var(--ink-2); font-size:13px; margin-bottom:44px;}
h2{font-size:19px; font-weight:700; margin:38px 0 12px; color:var(--ink-0);}
h2:first-of-type{margin-top:0;}
p{color:var(--ink-1); font-size:15.5px; margin-bottom:14px;}
ul{color:var(--ink-1); font-size:15.5px; margin:0 0 14px 22px;}
li{margin-bottom:6px;}
.field{color:var(--ink-2); font-size:13px; text-transform:uppercase; letter-spacing:.06em;}
.card{
  border:1px solid var(--line); background:var(--card); border-radius:14px;
  padding:22px 24px; margin-bottom:22px;
}
.placeholder{
  color:var(--accent-warn); background:rgba(255,183,104,0.08);
  border:1px dashed rgba(255,183,104,0.4); border-radius:6px;
  padding:1px 8px; font-family:'JetBrains Mono', monospace; font-size:13.5px;
}
.notice{
  border:1px dashed rgba(255,183,104,0.4); background:rgba(255,183,104,0.05);
  border-radius:14px; padding:18px 22px; font-size:14px; color:var(--ink-1); margin-bottom:36px;
}
.notice strong{color:var(--accent-warn);}

footer{border-top:1px solid var(--line); padding:36px 0; text-align:center; color:var(--ink-2); font-size:13px;}
.footer-links{display:flex; gap:18px; justify-content:center; margin-bottom:14px; flex-wrap:wrap;}
.footer-links a{color:var(--ink-1); font-size:13.5px;}
