
:root{--ground:#f4f5ec;--panel:#eaedda;--ink:#232a18;--soft:#5a6247;--green:#5c6e2f;--straw:#a8853a;--line:#d6dabf;--chip:#20261a;--chipink:#e9e6cf}
@media (prefers-color-scheme:dark){:root{--ground:#15180f;--panel:#1d2214;--ink:#e6e3cd;--soft:#a3a689;--green:#a9c069;--straw:#d3b269;--line:#333a24;--chip:#0f120a;--chipink:#d8d6ba}}
*{box-sizing:border-box}
body{margin:0;background:var(--ground);color:var(--ink);font-family:"Newsreader",Georgia,serif;font-size:1.05rem;line-height:1.6}
a{color:var(--green);text-decoration-color:var(--line);text-underline-offset:3px}
header{display:flex;align-items:baseline;gap:1.5rem;padding:1.2rem 5vw;border-bottom:1px solid var(--line)}
.wordmark{font-family:"Instrument Serif",serif;font-size:1.5rem;letter-spacing:.02em;color:var(--ink);text-decoration:none}
.wordmark em{color:var(--straw);font-style:normal}
nav{margin-left:auto;display:flex;gap:1.4rem;font-family:"IBM Plex Mono",monospace;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}
nav a{text-decoration:none;color:var(--soft)}
main{max-width:72rem;margin:0 auto;padding:2.5rem 5vw 5rem}
h1,h2{font-family:"Instrument Serif",serif;font-weight:400;line-height:1.08;text-wrap:balance;margin:0}
h1{font-size:clamp(2.2rem,6vw,3.6rem)}
h2{font-size:1.7rem;margin:2.8rem 0 .8rem}
.lede{font-size:1.2rem;color:var(--soft);font-style:italic;max-width:42rem;margin:.9rem 0 0}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin:0 0 .5rem}
.stats{display:flex;gap:2.8rem;flex-wrap:wrap;margin:2.2rem 0 .5rem;padding:1.1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats b{font-family:"Instrument Serif",serif;font-weight:400;font-size:1.9rem;display:block;line-height:1.1;font-variant-numeric:tabular-nums}
.stats small{font-family:"IBM Plex Mono",monospace;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--soft)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.6rem;margin-top:2rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(20,25,10,.18)}
.card svg{width:100%;height:auto;display:block}
.card-body{padding:.85rem 1rem 1.05rem;display:flex;flex-direction:column;gap:.15rem}
.card-body b{font-family:"Instrument Serif",serif;font-weight:400;font-size:1.25rem}
.card-body small{font-family:"IBM Plex Mono",monospace;font-size:.68rem;color:var(--soft);letter-spacing:.06em}
.detail{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:2.8rem;margin-top:2rem}
@media(max-width:800px){.detail{grid-template-columns:1fr}}
.detail svg{width:100%;height:auto;border-radius:6px}
dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.45rem 1rem;font-size:.95rem}
dt{font-family:"IBM Plex Mono",monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--soft);padding-top:.2rem}
dd{margin:0}
.notes{font-size:.92rem;color:var(--soft);margin:.2rem 0 0}
.sources{margin:.2rem 0 0;padding-left:1.1rem;font-size:.92rem}
.sources small{color:var(--soft);font-family:"IBM Plex Mono",monospace;font-size:.68rem}
.pager{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.2rem;border-top:1px solid var(--line);font-family:"IBM Plex Mono",monospace;font-size:.78rem}
.pager a{text-decoration:none}
.chipline{display:flex;gap:.5rem;flex-wrap:wrap;margin:.8rem 0}
.chip{font-family:"IBM Plex Mono",monospace;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;background:var(--chip);color:var(--chipink);border-radius:999px;padding:.25rem .7rem}
.note{background:var(--panel);border-left:3px solid var(--straw);padding:.8rem 1rem;font-size:.92rem;margin:1.4rem 0}
.cert{max-width:40rem;margin:2rem auto;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:2rem}
.cert .qr{width:11rem;height:11rem;float:right;margin:0 0 1rem 1.5rem;background:#fff;padding:.6rem;border-radius:6px}
.cert .qr svg{width:100%;height:100%}
.provenance{list-style:none;padding:0;margin:1rem 0 0}
.provenance li{padding:.55rem 0 .55rem 1.4rem;border-left:2px solid var(--green);position:relative;font-size:.95rem}
.provenance li::before{content:"";position:absolute;left:-5px;top:1rem;width:8px;height:8px;border-radius:50%;background:var(--green)}
.hash{font-family:"IBM Plex Mono",monospace;font-size:.68rem;word-break:break-all;color:var(--soft)}
footer{border-top:1px solid var(--line);padding:1.6rem 5vw;font-size:.85rem;color:var(--soft)}
