/* Estilo de páginas legales de Ludania — reutiliza los tokens de marca. */
:root {
  --bg: #FFFBF6; --surface: #FFFFFF; --surface-alt: #FBF2E9; --border: #ECE0D2;
  --ink: #22190F; --ink-2: #6E6155; --hint: #877868; --action: #0B7A6D; --brand: #F0532C;
  --display: "Bricolage Grotesque", system-ui, sans-serif;
  --text: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root { --bg: #14100B; --surface: #1F1810; --surface-alt: #2A2117; --border: #3A2F21;
    --ink: #F4ECE2; --ink-2: #C6B7A6; --hint: #9B8B78; --action: #1FB7A3; --brand: #FF7A57; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font-family: var(--text); font-size: 16.5px; line-height: 1.62; -webkit-font-smoothing: antialiased; }
a { color: var(--action); }
.wrap { max-width: 760px; margin: 0 auto; padding: 0 24px; }
header { border-bottom: 1px solid var(--border); background: var(--bg); }
.nav { display: flex; align-items: center; justify-content: space-between; height: 66px; }
.logo { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; }
.logo .mark { width: 32px; height: 32px; border-radius: 9px; }
.logo .wordmark { font-family: var(--display); font-weight: 800; font-size: 1.4rem; color: var(--ink); }
.back { text-decoration: none; color: var(--ink-2); font-weight: 600; font-size: 0.92rem; }
.back:hover { color: var(--ink); }
main { padding: 48px 0 64px; }
.doc h1 { font-family: var(--display); font-weight: 800; letter-spacing: -0.02em; font-size: clamp(1.9rem, 5vw, 2.6rem); margin: 0 0 6px; }
.doc .updated { color: var(--hint); font-size: 0.9rem; margin: 0 0 8px; }
.doc .intro { color: var(--ink-2); font-size: 1.05rem; margin: 0 0 8px; }
.doc h2 { font-family: var(--display); font-weight: 700; letter-spacing: -0.01em; font-size: 1.25rem; margin: 34px 0 8px; }
.doc p { margin: 0 0 12px; }
.doc ul { margin: 0 0 12px; padding-left: 20px; }
.doc li { margin: 4px 0; }
.doc strong { color: var(--ink); }
.callout { background: var(--surface-alt); border: 1px solid var(--border); border-radius: 14px; padding: 14px 16px; color: var(--ink-2); font-size: 0.95rem; margin: 18px 0; }
footer { border-top: 1px solid var(--border); padding: 30px 0; color: var(--ink-2); font-size: 0.88rem; }
.foot-row { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.foot-links a { color: var(--ink-2); text-decoration: none; font-weight: 600; }
.foot-links a:hover { color: var(--ink); }
