/* Shared styling for the policy pages (/privacy, /terms).
   Tokens copied from index.html so these read as part of the site rather than
   bolted on. Served under the site CSP: inline styles and Google Fonts are
   allowed, nothing else is. */
:root{
  --leaf:#63A950; --leaf-text:#3D7A31; --leaf-soft:#E7F1E2;
  --paper:#F7F6F1; --paper-2:#FFFFFF; --sand:#EFEDE4;
  --ink:#14201B; --ink-2:#2C3B33; --muted:#5E6D63;
  --rule:#E2E3D9; --rule-strong:#CFD2C5;
  --pine-800:#12382B; --pine-700:#1B4A38;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --maxw:720px;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font:400 17px/1.65 'Instrument Sans',system-ui,-apple-system,Segoe UI,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px}

header.bar{border-bottom:1px solid var(--rule); background:var(--paper-2)}
header.bar .wrap{display:flex; align-items:center; justify-content:space-between;
  padding-top:18px; padding-bottom:18px}
.logo{display:inline-flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink)}
.logo .word{font-size:19px; letter-spacing:-.01em}
.logo .word b{font-weight:700}
.back{font-size:14px; color:var(--muted); text-decoration:none}
.back:hover{color:var(--leaf-text)}

main{padding:56px 0 80px}
h1{font:400 clamp(34px,5vw,46px)/1.1 'Instrument Serif',Georgia,serif;
  margin:0 0 10px; letter-spacing:-.01em; text-wrap:balance}
.updated{font:500 12px/1 var(--mono); letter-spacing:.08em; text-transform:uppercase;
  color:var(--muted); margin:0 0 34px}
.lede{font-size:19px; color:var(--ink-2); margin:0 0 40px; text-wrap:pretty}

h2{font:600 20px/1.3 'Instrument Sans',sans-serif; margin:40px 0 12px;
  letter-spacing:-.01em; text-wrap:balance}
h2::before{content:""; display:block; width:26px; height:3px; border-radius:2px;
  background:var(--leaf); margin-bottom:14px}
h3{font:600 16px/1.4 'Instrument Sans',sans-serif; margin:24px 0 6px; color:var(--ink-2)}
p{margin:0 0 14px; text-wrap:pretty}
ul{margin:0 0 16px; padding-left:20px}
li{margin:0 0 8px}
a{color:var(--leaf-text)}
strong{font-weight:600}
code{font:500 14px/1 var(--mono); background:var(--sand); padding:2px 6px; border-radius:4px}

.callout{background:var(--leaf-soft); border:1px solid #CFE3C6; border-radius:12px;
  padding:18px 20px; margin:24px 0}
.callout p:last-child{margin-bottom:0}

.plain{background:var(--paper-2); border:1px solid var(--rule); border-radius:12px;
  padding:20px 22px; margin:24px 0}
.plain p:last-child, .plain ul:last-child{margin-bottom:0}

footer{border-top:1px solid var(--rule); margin-top:64px; padding:28px 0 48px;
  color:var(--muted); font-size:14px}
footer a{color:var(--muted)}
footer a:hover{color:var(--leaf-text)}

@media (max-width:520px){ main{padding:36px 0 56px} }
