:root {
    --bg:#0a0d0b; --text:#f3f1e8; --dim:rgba(235,232,215,.72); --muted:rgba(235,232,215,.46);
    --accent:#9fca56; --lichen:#d1e88b; --amber:#f0b45c; --border:rgba(207,224,166,.16);
    --panel:rgba(182,205,130,.055);
}
* { box-sizing:border-box; }
html { background:var(--bg); scroll-behavior:smooth; }
body {
    margin:0; color:var(--text); font:16px/1.72 Inter,-apple-system,BlinkMacSystemFont,sans-serif;
    background:radial-gradient(circle at 78% 2%,rgba(125,159,73,.22),transparent 27%),linear-gradient(180deg,#111711,var(--bg) 34%);
    -webkit-font-smoothing:antialiased;
}
a { color:var(--lichen); text-underline-offset:3px; }
img { max-width:100%; }
.wrap { width:min(920px,calc(100% - 40px)); margin:0 auto; }
nav { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:26px 0; }
.brand { display:flex; align-items:center; gap:11px; color:var(--text); text-decoration:none; font-weight:600; }
.brand img { width:38px; height:38px; border-radius:10px; }
.nav-links { display:flex; flex-wrap:wrap; gap:18px; font-size:13px; }
.nav-links a { color:var(--dim); text-decoration:none; }
main { padding:76px 0 110px; }
.eyebrow,.meta { color:var(--lichen); font:500 11px/1.5 'JetBrains Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }
h1,h2,h3 { font-family:'Instrument Serif',Georgia,serif; font-weight:400; line-height:1.03; }
h1 { max-width:850px; margin:20px 0 25px; font-size:clamp(50px,8vw,84px); letter-spacing:-.03em; }
.lead { max-width:760px; color:var(--dim); font-size:20px; font-weight:300; }
.summary { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:42px 0 64px; }
.summary div { padding:20px; border:1px solid var(--border); border-radius:12px; background:var(--panel); }
.summary strong { display:block; margin-bottom:7px; color:var(--lichen); }
article { max-width:760px; }
article h2 { margin:58px 0 16px; font-size:42px; }
article h3 { margin:34px 0 12px; font-size:28px; }
article p,article li { color:var(--dim); }
article ul,article ol { display:grid; gap:10px; padding-left:23px; }
.callout { margin:28px 0; padding:20px 22px; border-left:3px solid var(--amber); background:rgba(240,180,92,.07); color:var(--dim); }
.safe { border-left-color:var(--accent); background:rgba(159,202,86,.07); }
code { padding:.15em .4em; border:1px solid var(--border); border-radius:5px; color:var(--text); background:rgba(255,255,255,.045); font-family:'JetBrains Mono',monospace; font-size:.88em; }
.sources { margin-top:60px; padding-top:26px; border-top:1px solid var(--border); }
.sources h2 { margin-top:0; }
.cta { margin-top:72px; padding:32px; border:1px solid rgba(159,202,86,.38); border-radius:16px; background:linear-gradient(135deg,rgba(116,151,67,.18),rgba(240,180,92,.05)); }
.cta h2 { margin:0 0 12px; }
.buttons { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.button { display:inline-flex; min-height:44px; align-items:center; padding:0 17px; border:1px solid var(--border); border-radius:9px; color:var(--text); text-decoration:none; }
.button.primary { border-color:var(--accent); background:var(--accent); color:#10130d; font-weight:600; }
footer { padding:30px 0; border-top:1px solid var(--border); color:var(--muted); font-size:13px; }
@media(max-width:700px) {
    .summary { grid-template-columns:1fr; }
    .nav-links a:not(:last-child) { display:none; }
    main { padding-top:45px; }
}
