:root{--ink:#17211c;--forest:#0e1713;--paper:#f4f0e7;--card:#fffdf8;--gold:#c49b2f;--sage:#6c7b70;--line:#d9d2c4;--rust:#a95432}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Arial,Helvetica,sans-serif}a{color:inherit}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.hero{background:var(--forest);color:#f9f5ea;padding-bottom:84px}nav{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid #28342e}nav a{text-decoration:none}.brand{color:#d7b64e;text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:700}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:8vw;align-items:end;padding-top:84px}.eyebrow{color:#a38229;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700;margin:0 0 12px}h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.92;letter-spacing:-.06em;margin:0 0 28px;max-width:800px}.lede{font-size:clamp(1rem,1.5vw,1.28rem);color:#c6cec9;max-width:700px}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:32px}.button,.text-button{border:0;font:inherit;cursor:pointer}.button{display:inline-block;background:var(--gold);color:#10150f;text-decoration:none;padding:14px 20px;font-weight:700;border-radius:3px}.text-button,.text-link{background:transparent;color:inherit;text-decoration:underline;text-underline-offset:4px;padding:0}.as-of{color:#8e9a92;font-size:.8rem;margin-top:26px}.visual{border:1px solid #2c3932;background:#121d18;padding:28px;border-radius:8px;box-shadow:0 30px 70px #0004}.visual-label{display:block;color:#99a59d;font-size:.78rem}.visual strong{display:block;font-size:clamp(2.6rem,5vw,4.8rem);line-height:1;margin:12px 0 30px;color:#f7f1e4}.state-bars{display:grid;gap:12px}.bar-row{display:grid;grid-template-columns:90px 1fr auto;gap:10px;align-items:center;font-size:.74rem;color:#b5c0b9}.bar-track{height:7px;background:#27342d;border-radius:8px;overflow:hidden}.bar-fill{display:block;height:100%;background:linear-gradient(90deg,#a9872c,#e0bf5b)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);margin:-34px 0 70px;background:var(--card);border:1px solid var(--line);border-radius:7px;box-shadow:0 16px 50px #2a241716}.metrics article{padding:27px 30px;border-right:1px solid var(--line)}.metrics article:last-child{border-right:0}.metrics strong{display:block;font-size:2.15rem;line-height:1}.metrics span{display:block;color:var(--sage);margin-top:8px;font-size:.82rem}.view-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:55px}.view-tabs button{border:0;background:transparent;padding:15px 18px;font:700 .86rem Arial;cursor:pointer;color:#647067;border-bottom:3px solid transparent}.view-tabs button.active{color:var(--ink);border-bottom-color:var(--gold)}.view{display:none}.view.active{display:block}.section-head{display:grid;grid-template-columns:1fr minmax(260px,.75fr);gap:7vw;align-items:end;margin-bottom:38px}.section-head h2,.boundary h2,.next-step h2{font-size:clamp(2.1rem,4vw,4.3rem);letter-spacing:-.045em;line-height:.98;margin:0}.section-head>p{color:#566259;font-size:1.04rem}.filters{display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:16px;background:#ebe5d9;padding:18px;border-radius:6px}.filters label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#5f695f}.filters input,.filters select{width:100%;margin-top:8px;padding:12px;border:1px solid #cbc3b4;border-radius:4px;background:#fffdf8;font:inherit;color:var(--ink)}.result-count{color:#6a756c;font-size:.82rem;margin:20px 0}.project-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding-bottom:90px}.project-card{background:var(--card);border:1px solid var(--line);padding:25px;border-radius:6px}.project-meta{display:flex;justify-content:space-between;gap:16px;color:#788179;font-size:.74rem}.project-card h3{font-size:1.35rem;line-height:1.15;margin:16px 0 6px}.recipient{color:#5d685f;margin:0 0 14px}.scope{color:#3d4840}.award{font-size:1.35rem;font-weight:700;color:#775f1b;margin-top:18px}.source-link{font-size:.8rem;color:#6c5620}.tag{display:inline-block;margin:4px 5px 0 0;padding:5px 8px;background:#ece6d8;color:#4f5b52;font-size:.7rem;border-radius:20px}.term-list,.source-list{display:grid;gap:14px;padding-bottom:90px}.term-card,.source-card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:24px}.term-card h3,.source-card h3{font-size:1.3rem;margin:0 0 8px}.term-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:18px}.term-grid p{margin:5px 0;color:#465147}.label{display:block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#927522;font-weight:700}.warning{margin-top:18px;padding:13px 15px;border-left:3px solid var(--rust);background:#f4e8e1;color:#673b2b}.source-card p{margin:7px 0;color:#59645b}.source-card a{color:#755e1e}.boundary{background:#16221b;color:#f4f0e7;margin:0 calc((100vw - min(1180px,calc(100vw - 48px)))/-2);padding:80px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.boundary>p{color:#c7d0ca;font-size:1.05rem}.next-step{display:flex;justify-content:space-between;gap:40px;align-items:end;padding:85px 0}.next-step .actions{margin:0;justify-content:flex-end}footer{background:#e8e2d5;border-top:1px solid var(--line);padding:34px 0;color:#657067;font-size:.82rem}footer .wrap{display:flex;justify-content:space-between;gap:30px}footer p{margin:0}.empty{padding:40px;background:#ebe5d9;color:#5f695f;border-radius:6px}@media(max-width:800px){.wrap{width:min(100% - 30px,1180px)}.hero-grid,.section-head,.boundary{grid-template-columns:1fr}.hero-grid{padding-top:60px}.visual{margin-top:10px}.metrics{grid-template-columns:1fr;margin-top:-28px}.metrics article{border-right:0;border-bottom:1px solid var(--line)}.metrics article:last-child{border-bottom:0}.filters,.project-list,.term-grid{grid-template-columns:1fr}.boundary{margin-inline:-15px;padding-inline:15px}.next-step,footer .wrap{align-items:flex-start;flex-direction:column}.next-step .actions{justify-content:flex-start}h1{font-size:3.6rem}}
