/* Shared styling for Khumo legal pages (Impressum / Datenschutz / Terms) */
:root {
  --ink:   #262216;
  --cream: #F2F1EC;
  --paper: #FBFAF6;
  --mute:  #8A847B;
  --body:  #555049;
  --line:  #D6D1C7;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  background: var(--cream); color: var(--ink); line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { font-family: 'Poppins', 'Inter', sans-serif; letter-spacing: -0.01em; }
a { color: inherit; }
.accent-bar { height: 4px; width: 100%; background: var(--ink); }

.nav-inner { display: flex; align-items: center; justify-content: space-between; padding: 16px 28px; max-width: 880px; margin: 0 auto; }
.brand { display: inline-block; }
.brand .name { display: block; font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 20px; line-height: 1; }
.brand .sub { display: block; font-size: 10px; letter-spacing: 0.3em; color: var(--mute); margin-top: 3px; }
.brand-logo { display: block; height: 30px; width: auto; }
.nav-inner a.back { font-size: 14px; color: var(--mute); }
.nav-inner a.back:hover { color: var(--ink); }

main { max-width: 880px; margin: 0 auto; padding: 48px 28px 80px; }
main .eyebrow { font-size: 12px; font-weight: 600; letter-spacing: 0.28em; color: var(--mute); text-transform: uppercase; }
main h1 { font-size: clamp(30px, 5vw, 44px); font-weight: 700; margin: 12px 0 8px; }
main .updated { font-size: 13.5px; color: var(--mute); margin-bottom: 36px; }

main h2 { font-size: 20px; font-weight: 600; margin: 36px 0 12px; }
main h3 { font-size: 16px; font-weight: 600; margin: 22px 0 8px; }
main p { color: var(--body); margin-bottom: 12px; font-size: 15.5px; }
main ul { margin: 0 0 14px 22px; color: var(--body); font-size: 15.5px; }
main li { margin-bottom: 7px; }
main strong { color: var(--ink); }
main a { color: var(--ink); text-decoration: underline; text-underline-offset: 2px; }

.todo { background: #FBEFD6; border: 1px solid #E4C97A; border-radius: 8px; padding: 2px 8px; font-size: 14px; color: #6b5310; font-weight: 600; }
.card-block { background: var(--paper); border: 1px solid var(--line); border-radius: 14px; padding: 24px 28px; margin: 8px 0 8px; }
.disclaimer { margin-top: 48px; padding-top: 20px; border-top: 1px solid var(--line); font-size: 13px; color: var(--mute); }

footer { border-top: 1px solid var(--line); }
.foot-inner { max-width: 880px; margin: 0 auto; padding: 28px; display: flex; flex-wrap: wrap; gap: 16px; justify-content: space-between; font-size: 13px; color: var(--mute); }
.foot-inner a:hover { color: var(--ink); }
