/* Shared styling for the Impressum and Datenschutzerklärung pages.
   Same palette and type as the landing page, laid out for long-form reading. */

:root{
  --ink:#0a1c22;
  --ink-soft:#3d525b;
  --ink-faint:#7d939c;
  --bg:#fbfbfd;
  --card:#ffffff;
  --line:rgba(10,28,34,.09);
  --teal:#14617e;
  --teal-deep:#0c4258;
  --teal-bright:#1f86ac;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --serif:'Source Serif 4',Georgia,'Times New Roman',serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--teal);color:#fff}
a{color:var(--teal);text-underline-offset:2px}
a:hover{color:var(--teal-bright)}

/* ---------- Header ---------- */
.lg-nav{position:sticky;top:0;z-index:50;background:rgba(251,251,253,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.lg-nav-inner{max-width:940px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:18px}
.lg-nav img{height:26px;width:auto}
.lg-back{margin-right:auto;font-size:14px;font-weight:600;color:var(--teal-deep);text-decoration:none;display:inline-flex;align-items:center;gap:7px}
.lg-back:hover{color:var(--teal-bright)}
.lg-back svg{flex:none}

.lg-langs{position:relative}
.lg-langs summary{list-style:none;display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--teal-deep);background:#fff;border:1px solid rgba(12,66,88,.16);border-radius:980px;padding:7px 14px;cursor:pointer}
.lg-langs summary::-webkit-details-marker{display:none}
.lg-langs summary::after{content:"";width:7px;height:7px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.lg-langs[open] summary::after{transform:rotate(225deg) translateY(-1px)}
.lg-langs ul{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;list-style:none;background:#fff;border:1px solid rgba(12,66,88,.12);border-radius:16px;box-shadow:0 18px 50px rgba(8,36,48,.18);padding:6px;z-index:60}
.lg-langs li a{display:block;font-size:13.5px;color:#1c3f4f;border-radius:10px;padding:9px 12px;text-decoration:none}
.lg-langs li a:hover{background:#f0f6f8}
.lg-langs li a[aria-current=page]{font-weight:700;color:var(--teal-deep);background:#eaf3f6}

/* ---------- Document ---------- */
.lg-main{max-width:760px;margin:0 auto;padding:64px 24px 88px}
.lg-main h1{font-family:var(--serif);font-size:clamp(32px,5vw,44px);font-weight:700;letter-spacing:-.02em;line-height:1.12}
.lg-stand{margin-top:12px;font-size:13.5px;color:var(--ink-faint)}
.lg-main .lead{margin-top:26px;font-size:17.5px;line-height:1.62;color:var(--ink-soft)}
.lg-main h2{font-family:var(--serif);font-size:24px;font-weight:700;letter-spacing:-.012em;line-height:1.25;margin-top:52px;padding-top:26px;border-top:1px solid var(--line)}
.lg-main h3{font-size:17px;font-weight:700;margin-top:32px}
.lg-main p{margin-top:15px;font-size:15.5px;line-height:1.68;color:var(--ink-soft)}
.lg-main strong{color:var(--ink);font-weight:650}
.lg-main ul{margin-top:15px;padding-left:22px}
.lg-main li{margin-top:8px;font-size:15.5px;line-height:1.65;color:var(--ink-soft)}
.lg-main code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;background:#eef3f5;border-radius:6px;padding:2px 6px;color:var(--teal-deep);overflow-wrap:anywhere}
.lg-main em{font-style:italic}

.lg-main dl{margin-top:15px;display:grid;grid-template-columns:minmax(150px,auto) 1fr;gap:9px 22px}
.lg-main dt{font-size:14.5px;font-weight:650;color:var(--ink)}
.lg-main dd{font-size:15.5px;line-height:1.6;color:var(--ink-soft)}

/* Tables scroll on their own so the page body never scrolls sideways. */
.lg-table{margin-top:20px;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.lg-main table{width:100%;border-collapse:collapse;min-width:520px}
.lg-main th,.lg-main td{text-align:left;vertical-align:top;padding:13px 16px;font-size:14.5px;line-height:1.55;border-bottom:1px solid var(--line)}
.lg-main th{font-weight:650;color:var(--ink);background:#f3f7f8;white-space:nowrap}
.lg-main td{color:var(--ink-soft)}
.lg-main tbody tr:last-child td{border-bottom:none}

/* ---------- Footer ---------- */
.lg-foot{background:var(--teal-deep);color:rgba(255,255,255,.72)}
.lg-foot-inner{max-width:940px;margin:0 auto;padding:44px 24px}
.lg-foot img{height:24px;width:auto}
.lg-foot p{margin-top:14px;font-size:13.5px;line-height:1.6;max-width:420px}
.lg-foot nav{margin-top:22px;display:flex;flex-wrap:wrap;gap:20px}
.lg-foot a,.lg-foot button{font-family:inherit;font-size:13.5px;color:rgba(255,255,255,.86);text-decoration:none;background:none;border:none;padding:0;cursor:pointer}
.lg-foot a:hover,.lg-foot button:hover{color:#fff;text-decoration:underline}
.lg-copy{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);font-size:12.5px;color:rgba(255,255,255,.55)}

@media(max-width:560px){
  .lg-main{padding:44px 20px 64px}
  .lg-main dl{grid-template-columns:1fr;gap:3px 0}
  .lg-main dd{margin-bottom:11px}
  .lg-nav img{height:22px}
}
