:root { --paper:#F9F7F2; --ink:#1C1917; --pencil:#4B4540; --muted:#7A7069;
  --rule:rgba(0,0,0,0.08); --sage:#3F5E39; --warn-bg:rgba(201,150,42,0.07); --warn-br:rgba(201,150,42,0.22); --warn-ink:#7A5010; }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--pencil);
  font-family:'DM Sans',system-ui,-apple-system,sans-serif; line-height:1.7; }
.legal-head { padding:18px 20px; border-bottom:1px solid var(--rule); }
.brand { font-family:'Fraunces',Georgia,serif; font-weight:500; font-size:20px; color:var(--ink); text-decoration:none; }
.legal-main { max-width:56ch; margin:0 auto; padding:28px 20px 64px; }
.legal-title { font-family:'Fraunces',Georgia,serif; font-weight:500; font-size:30px; color:var(--ink); margin:8px 0 20px; line-height:1.2; }
.legal-main h2 { font-size:16px; font-weight:700; color:var(--ink); margin:26px 0 8px; }
.legal-main p { font-size:14px; margin:0 0 10px; }
.legal-main p.small { font-size:12px; color:var(--muted); }
.legal-main ul { margin:0 0 12px; padding-left:20px; }
.legal-main li { font-size:14px; margin-bottom:6px; }
.legal-main strong { color:var(--ink); }
.legal-main .warning { background:var(--warn-bg); border:1px solid var(--warn-br); border-radius:10px; padding:10px 14px; margin:0 0 14px; }
.legal-main .warning p { color:var(--warn-ink); margin:0; font-size:13px; }
.legal-main a { color:var(--sage); }
.site-foot { border-top:1px solid var(--rule); padding:22px 20px; text-align:center; }
.legal-foot-nav { display:flex; gap:16px; flex-wrap:wrap; justify-content:center; }
.legal-foot-nav a { color:var(--sage); text-decoration:none; font-size:13px; }
.legal-foot-copy { color:var(--muted); font-size:12px; margin-top:12px; }
