@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&display=swap');
/* Shared visual language for the preserved case studies, field notes and tools. */
:root{--bg:#f7f7f0;--bg-raise:#edf0e5;--bg-card:#fcfcf6;--bg-hover:#f0f3e8;--bg-rgb:247,247,240;--ink:#193c34;--ink-soft:#526459;--ink-faint:#657266;--line:#d9ddd2;--line-soft:#e3e6dc;--acc:#c0874e;--acc-line:#a57642;--acc-text:#93512f;--acc-soft:#b8874610;--acc-tint:#eeeadd;--panel:#f7f7f0;--panel-grid:#1e42320a;--plot-cu:#a28349;--plot-ol:#73876a;--plot-hatch:#8c9981;--plot-dim:#71816b;--font-display:'DM Sans',Arial,sans-serif;--font-body:'DM Sans',Arial,sans-serif;--maxw:1160px;--shadow:0 8px 25px #203b3010;--shadow-lift:0 14px 30px #203b3010;--good:#326144;--good-bg:#e8eee1;--good-border:#a7bc9c;--warn:#93512f;--warn-bg:#f0e9dc;--warn-border:#d6be98;--bad:#a13e36;--bad-bg:#f5e8e0;--bad-border:#d3a79a}
body{font-family:var(--font-body)}h1,h2,h3{font-weight:500;letter-spacing:-.035em;text-transform:none}.nav{background:#f7f7f0ee;backdrop-filter:blur(14px);border-top:0;border-bottom:1px solid var(--line)}.nav .wrap{min-height:82px}.nav .brand{font-family:var(--font-body);font-size:16px;font-weight:600;letter-spacing:-.3px;text-transform:none}.nav .brand b{color:var(--ink);font-weight:600}.nav .brand:before{background:var(--acc);width:6px;height:6px;border-radius:50%}.nav-links{gap:25px}.nav-links a{font:12px var(--font-body);letter-spacing:0;text-transform:none}.nav-toggle{font-size:25px;color:var(--ink)}.detail-hero{padding:70px 0;background:#e9eddf}.detail-hero h1{font-size:clamp(38px,4.5vw,62px);line-height:1.08;max-width:19ch;letter-spacing:-.045em;margin:23px 0}.detail-hero .lede{font-size:17px;line-height:1.65;max-width:60ch}.detail-hero .illo{opacity:.7}.back-link{font-size:10px;letter-spacing:.6px}.detail-meta{margin-top:25px;gap:38px}.detail-meta .k{font-size:8px!important}.detail-meta .v{font-size:13px!important}.detail-body{max-width:760px}.detail-body h2{font-size:30px;letter-spacing:-1px}.detail-body h3{font-size:17px;font-weight:500}.detail-body p,.detail-body li{font-size:16px;line-height:1.8}.detail-body blockquote{font-size:26px;line-height:1.4}.metrics{border-radius:4px}.metrics .m{padding:28px}.metrics .m .big{font-size:39px;letter-spacing:-1px}.metrics .m::before{background:#7e9366}.btn{font:12px var(--font-body);letter-spacing:0;text-transform:none;border-radius:3px}.btn.solid{background:#193c34;border-color:#193c34;color:#f7f7f0}.btn.solid:hover{background:#315746;border-color:#315746;color:#fff}.foot{background:#e9eddf;padding:30px 0}.foot small{font-size:8px}.hub-card{border-radius:4px}.hub-card h2,.hub-card h3{font-size:23px}.hub-card .kicker{font-size:9px}.sec-head h2{font-size:38px}.sec-head:after{height:1px;background:var(--line)}.scroll-progress{height:2px;background:#7c946a}.reveal{opacity:1;transform:none}.nav-links a:focus-visible,.nav-toggle:focus-visible{outline:2px solid #b27445;outline-offset:4px}
@media(max-width:820px){.nav-links{inset:82px 0 auto 0;background:var(--bg);gap:0}.nav-links a{padding:15px 25px}.detail-hero{padding:44px 0}.detail-hero h1{font-size:43px}.detail-meta{gap:20px}.detail-body p,.detail-body li{font-size:15px}.metrics .m .big{font-size:34px}.metrics .m{padding:24px}.detail-body{max-width:100%}.metrics{margin:28px 0}.nav .wrap{min-height:76px}.nav-links{top:76px}}
@media(prefers-reduced-motion:reduce){.illo .pitch,.illo .beams{animation:none}.hub-card{transform:none!important}}
