@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Instrument+Serif&display=swap');
:root{color-scheme:light;--green:#173f34;--deep:#103128;--paper:#f6f4eb;--white:#fffdf7;--line:#d3dbcf;--soft:#e9eee3;--ink:#172923;--muted:#475b51;--lime:#d5e998}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.55 'DM Sans',Arial,sans-serif}
.wrap{width:min(70rem,calc(100% - 2rem));margin-inline:auto}
a{color:var(--green);text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid #a34b00;outline-offset:4px}
.skip{position:absolute;top:1rem;left:1rem;transform:translateY(-200%);padding:.7rem;background:var(--white)}
.skip:focus{transform:none}
header{background:var(--white);border-bottom:1px solid var(--line)}
.top,.top a,nav{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.top{justify-content:space-between;padding:.55rem 0}
.top img{object-fit:contain}
.hero{background:var(--deep);color:var(--white);padding:clamp(2.5rem,6vw,5.5rem) 0}
h1,h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;line-height:1.06;margin:0 0 .65rem}
h1{font-size:clamp(2.7rem,8vw,5.7rem)}
h2{font-size:clamp(2rem,5vw,3.05rem)}
.hero p{margin:0;color:var(--lime);font-size:clamp(1.15rem,3vw,1.5rem)}
nav{padding:1.15rem 0;border-bottom:1px solid var(--line);gap:.45rem 1.3rem}
section{padding:1.8rem 0;border-bottom:1px solid var(--line);scroll-margin-top:.8rem}
p{max-width:75ch}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.8rem}
.stat,details{background:var(--white);border:1px solid var(--line);border-radius:.65rem;padding:.9rem 1rem}
.stat strong{display:block;font-size:1.55rem;color:var(--green)}
.controls{display:flex;flex-wrap:wrap;gap:.8rem;margin:1rem 0}
label{display:grid;gap:.25rem;font-weight:700;max-width:100%}
select,input,button{font:inherit;color:var(--ink);background:var(--white);border:1px solid #748579;border-radius:.35rem;padding:.48rem .65rem;max-width:100%}
button,summary{cursor:pointer}
button{margin-top:.85rem}
.table-box{overflow:auto;background:var(--white);border:1px solid var(--line);border-radius:.55rem}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
caption{text-align:left;padding:.65rem .8rem;font-weight:700}
th,td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--line)}
thead{background:var(--soft)}
td{white-space:nowrap}
td:first-child,td:last-child{white-space:normal}
tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}
details+details{margin-top:.55rem}
summary{font-weight:700}
.detail-note{color:var(--muted);font-size:.94rem}
footer{padding:1.4rem 0 3rem}

.source-note{border-left:4px solid #8b4d14;background:var(--white);padding:.7rem 1rem;margin:1rem 0}
.source-note p{margin:0 0 .45rem}
.project-history > li{margin-bottom:.75rem;overflow-wrap:anywhere}
