/* Shared styling for the policy pages. Same tokens as the landing page; text is
   always ink on tan, never white (white on card measures 1.72:1). */
:root {
  --card-light:#E4D2B2; --card:#D8C3A0;
  --ink:#2E1A47; --ink-soft:#574170;
  --violet:#6C3BD9;
  --ground:var(--card); --surface:var(--card-light); --text:var(--ink);
  --text-muted:var(--ink-soft); --accent:var(--violet);
  --rule:color-mix(in srgb, var(--ink) 14%, transparent);
  --sans:ui-sans-serif,-apple-system,"Segoe UI",system-ui,sans-serif;
  --mono:ui-monospace,"Cascadia Mono",Consolas,monospace;
}
*,*::before,*::after { box-sizing:border-box; }
body { margin:0; background:var(--ground); color:var(--text);
       font-family:var(--sans); line-height:1.65; -webkit-font-smoothing:antialiased; }
.wrap { max-width:760px; margin:0 auto; padding:0 24px; }
header { border-bottom:1px solid var(--rule); padding:16px 0; margin-bottom:44px; }
header .wrap { max-width:1040px; }
a { color:var(--text); text-decoration-color:var(--accent); text-underline-offset:3px; }
h1 { font-size:clamp(30px,4.5vw,44px); letter-spacing:-0.02em; margin:0 0 8px; }
h2 { font-size:20px; margin:38px 0 10px; letter-spacing:-0.01em; }
p, li { margin:0 0 14px; }
ul { padding-left:22px; }
.updated { font-family:var(--mono); font-size:13px; color:var(--text-muted);
           letter-spacing:.06em; margin-bottom:32px; }
.lede { font-size:18px; color:var(--text-muted); }
.box { background:var(--surface); border:1px solid var(--rule);
       border-radius:14px; padding:20px 22px; margin:26px 0; }
.box p:last-child { margin-bottom:0; }
footer { border-top:1px solid var(--rule); margin-top:60px; padding:32px 0;
         font-size:14px; color:var(--text-muted); }
footer a { color:var(--text-muted); }
footer .links { display:flex; flex-wrap:wrap; gap:18px; margin-top:8px; }
.back { font-size:15px; text-decoration:none; color:var(--text-muted); }
