/* Shared style for Impressum, Datenschutz and 404: the main site's tokens, quiet paper layout. */
:root{--ink:#0B0C10;--paper:#F2F3F6;--line:#E1E3EA;--txt:#0E0F14;--mute:#5D6070;--mute-d:#9A9CAB;--accent:#4D5FE8;--accent-2:#A9B4FF;
  --display:"Funnel Sans","Hanken Grotesk",system-ui,sans-serif;--body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;--gut:clamp(16px,4vw,40px);--ease-out:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--body);background:var(--paper);color:var(--txt);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;caret-color:var(--accent)}
::selection{background:var(--accent-2);color:var(--ink)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
a{color:inherit}
.wrap{max-width:780px;margin:0 auto;padding-left:max(var(--gut),env(safe-area-inset-left));padding-right:max(var(--gut),env(safe-area-inset-right))}
header{background:var(--ink);color:#fff}
header .wrap{max-width:1200px;display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.logo-word{font-family:"Funnel Display",var(--display);font-weight:600;font-size:22px;letter-spacing:-.02em;line-height:1}
.logo-word span{color:var(--mute-d);font-weight:400}
main{padding:72px 0 96px}
h1{font-family:var(--display);font-weight:450;font-size:clamp(40px,6vw,64px);line-height:1.02;letter-spacing:-.03em;margin-bottom:28px;text-wrap:balance}
h2{font-family:var(--display);font-weight:500;font-size:22px;letter-spacing:-.01em;margin:44px 0 10px}
p,ul{margin-bottom:14px;max-width:68ch}
ul{padding-left:20px}
.mute{color:var(--mute)}
.todo{background:#FFF4CC;border-radius:4px;padding:0 4px}
.back{display:inline-flex;margin-top:40px;font-weight:600;color:var(--accent);text-decoration:none}
.back:hover{text-decoration:underline}
footer{border-top:1px solid var(--line);padding:28px 0 40px;font-size:14px;color:var(--mute)}
footer .wrap{max-width:1200px;display:flex;gap:24px;flex-wrap:wrap}
footer a{text-decoration:none}
footer a:hover{color:var(--txt)}
.facts{width:100%;max-width:68ch;border-collapse:collapse;margin:6px 0 16px}
.facts th,.facts td{padding:10px 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400;vertical-align:top}
.facts th{color:var(--mute);width:38%}
ol{padding-left:20px;margin-bottom:14px;max-width:68ch}
li{margin-bottom:6px}
