:root{--rain:#2f5d73;--mist:#eef4f6;--leaf:#5b7f63;--ink:#1f2b30;--soft:#62747b;--rule:#d6e3e7}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.75 "Avenir Next","Segoe UI","Helvetica Neue",Arial,sans-serif}
a{color:var(--rain);text-underline-offset:3px}
.canopy{max-width:960px;margin:0 auto;padding:22px 16px 18px;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px}
.mark{font-size:26px;letter-spacing:.18em;text-transform:uppercase;color:var(--rain);text-decoration:none;font-weight:300}
.streams{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:14px;letter-spacing:.04em}
.streams a{color:var(--ink);text-decoration:none;border-bottom:1px solid transparent}
.streams a:hover{border-color:var(--leaf)}
.flow{max-width:720px;margin:0 auto;padding:12px 16px 72px}
.lineage{font-size:13px;color:var(--soft);margin:8px 0 22px}
.lineage a{color:var(--soft)}
h1{font-weight:300;font-size:2.2rem;line-height:1.25;margin:.3em 0 .7em;color:var(--rain)}
h2{font-weight:500;font-size:1.3rem;margin:2.2em 0 .5em;color:var(--leaf);letter-spacing:.02em}
h3{font-weight:600;font-size:1.02rem;margin:1.5em 0 .3em}
p{margin:0 0 1.05em}
ul{padding-left:1.2em;margin:0 0 1.2em}
li{margin:.25em 0}
.pane{margin:0 0 28px}
.pane img{display:block;width:100%;height:auto;border-radius:22px}
.droplets{list-style:none;padding:0;margin:1.4em 0 2em;display:grid;gap:14px}
.droplet{border:1px solid var(--rule);border-radius:16px;padding:16px 18px;background:linear-gradient(180deg,#fff,var(--mist))}
.droplet a{font-weight:600;text-decoration:none}
.droplet span{display:block;color:var(--soft);font-size:14px;margin-top:4px}
.ledger{border-top:1px solid var(--rule);margin-top:24px}
.ledger div{max-width:960px;margin:0 auto;padding:22px 16px 34px;font-size:13px;color:var(--soft);display:flex;flex-wrap:wrap;gap:8px 22px}
.ledger a{color:var(--soft)}
@media(min-width:720px){.droplets{grid-template-columns:repeat(3,1fr)}}
