:root{
  --paper:#fcfcfa;
  --ink:#242723;
  --muted:#656b65;
  --line:#d9ddd6;
  --green:#3f7044;
  --green-dark:#2f5535;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--green-dark);text-decoration-thickness:1px;text-underline-offset:4px}
a:hover{color:var(--green);text-decoration-thickness:2px}
:focus-visible{outline:3px solid #9a6a25;outline-offset:4px}
.skip{position:absolute;left:-9999px;top:0;background:var(--paper);padding:.6rem 1rem;z-index:20}
.skip:focus{left:1rem;top:1rem}
.wrap{width:min(1160px,calc(100% - 56px));margin-inline:auto}
.topbar{border-bottom:1px solid var(--line)}
.header{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand{display:inline-flex;align-items:center;flex:none}
.brand img{display:block;width:158px;height:auto}
.nav{display:flex;align-items:center;gap:clamp(.8rem,1.65vw,1.6rem)}
.nav a{padding:.5rem 0;color:var(--muted);font-size:.84rem;text-decoration:none;white-space:nowrap;border-bottom:1px solid transparent}
.nav a:hover,.nav a[aria-current=page]{color:var(--ink);border-color:var(--green)}
.mobile-nav{display:none}
.eyebrow{margin:0 0 1rem;color:var(--green-dark);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(3rem,8vw,8rem);align-items:end;padding:62px 0 68px}
.hero h1,.page-head h1{margin:0;font:400 clamp(3.4rem,6.2vw,5rem)/1.02 var(--serif);letter-spacing:-.04em}
.hero-statement{max-width:600px;margin:1.1rem 0 0;color:var(--muted);font:400 clamp(1.35rem,2.25vw,1.8rem)/1.3 var(--serif)}
.hero-copy{max-width:475px;padding:0 0 .15rem;color:var(--muted);font-size:.98rem}
.hero-copy p{margin:0 0 1rem}
.text-link{display:inline-block;margin-top:.15rem;font-size:.88rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--green);padding-bottom:2px}
.text-link span{margin-left:.2rem}
.section{padding:55px 0;border-top:1px solid var(--line)}
.section-head{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);align-items:start;margin-bottom:2.35rem}
.section h2,.page-head h2{margin:0;font:400 clamp(1.85rem,3.15vw,2.6rem)/1.15 var(--serif);letter-spacing:-.025em}
.interaction-section h2,.research-band .section-head h2{margin:0;font:400 clamp(1.85rem,3.15vw,2.6rem)/1.15 var(--serif);letter-spacing:-.025em}
.section-intro{max-width:720px;margin:0;color:var(--muted);font-size:1rem}
.history{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.history h2{max-width:380px}
.history-copy{max-width:720px;color:var(--muted)}
.history-copy p{margin:0 0 1rem}
.system-teaser .section-head{margin-bottom:0}
.system-teaser .section-head>div:last-child{padding-top:2.2rem}
.system-teaser .text-link{margin-top:.35rem}
.project-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:1.5rem 0}
.project-pillars article{padding:.8rem 0 .15rem;border-top:1px solid var(--line)}
.project-pillars h3{margin:0 0 .3rem;font:400 1.12rem/1.35 var(--serif)}
.project-pillars p{margin:0;color:var(--muted);font-size:.91rem;line-height:1.6}
.project-system-conclusion{padding-top:.8rem;border-top:1px solid var(--green)}
.project-system .interaction-credit{max-width:none;margin:1.3rem 0 0;padding:.65rem 0 0;border-top:1px solid var(--line);font-size:.79rem;line-height:1.55;color:var(--muted)}
.project-page h2{margin:0;font:400 clamp(1.9rem,3.2vw,2.65rem)/1.15 var(--serif);letter-spacing:-.025em}
.project-hero{padding:60px 0 46px}
.project-hero-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(3rem,8vw,8rem);align-items:end}
.project-hero h1{max-width:700px;margin:0;font:400 clamp(3rem,5.7vw,4.6rem)/1.04 var(--serif);letter-spacing:-.04em}
.project-hero .lead{max-width:530px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.75}
.project-index{display:flex;gap:.5rem 1.8rem;flex-wrap:wrap;padding-top:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.project-index a{font-size:.82rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--green);padding:.25rem 0;color:var(--green-dark)}
.project-origin{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);padding-top:4.1rem;padding-bottom:4.3rem}
.project-section-heading .eyebrow{margin-bottom:.7rem}
.project-section-heading h2{max-width:450px}
.project-origin-copy,.project-scope-intro,.project-now-copy{max-width:770px;padding-top:1.9rem;color:var(--muted)}
.project-origin-copy p:first-child,.project-now-copy p:first-child{margin-top:0}
.project-origin-copy p{margin:.2rem 0 1rem}
.project-history{padding:3.4rem 0 4rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f2f5ef}
.project-history-heading{display:block;margin:0 0 1.6rem 170px}
.project-history-heading .eyebrow{margin-bottom:.5rem}
.project-timeline{list-style:none;margin:0;padding:0;border-top:1px solid rgba(47,85,53,.22)}
.project-timeline li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:1.25rem;padding:1.1rem 0;border-bottom:1px solid rgba(47,85,53,.22)}
.timeline-year{color:var(--green-dark);font:400 1.55rem/1.25 var(--serif)}
.project-timeline h3{margin:0 0 .25rem;font:400 1.2rem/1.35 var(--serif)}
.project-timeline p{margin:0;color:var(--muted);font-size:.92rem}
.project-documents{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);padding-top:2.8rem;padding-bottom:3rem;border-bottom:1px solid var(--line)}
.project-documents-heading .eyebrow{margin-bottom:.65rem}
.project-documents-heading>p:last-child{max-width:420px;margin:.75rem 0 0;color:var(--muted);font-size:.88rem}
.project-documents-heading h2{font-size:clamp(1.7rem,2.8vw,2.2rem)}
.project-document-list{padding-top:1.9rem;border-top:1px solid var(--line)}
.project-document-list article{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
.project-document-list h3{margin:0;font:400 1.2rem/1.35 var(--serif)}
.project-document-list p{margin:.15rem 0 0;color:var(--muted);font-size:.82rem}
.document-status{flex:none;color:var(--muted);font-size:.75rem}
.project-scope{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:1.6rem clamp(2rem,6vw,6rem);padding-top:4.2rem;padding-bottom:4.5rem}
.project-scope-intro p{margin:0}
.project-scope-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem 2rem;margin-top:1.1rem}
.project-scope-grid article{padding:1rem 0 0;border-top:1px solid var(--green)}
.scope-number{display:block;margin-bottom:.6rem;color:var(--green-dark);font-size:.72rem;font-weight:700;letter-spacing:.1em}
.project-scope-grid h3,.project-phases h3{margin:0 0 .4rem;font:400 1.25rem/1.35 var(--serif)}
.project-scope-grid p,.project-phases p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.65}
.project-actors{padding-top:4.2rem;padding-bottom:4.5rem;border-top:1px solid var(--line);scroll-margin-top:1rem}
.project-actors-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.project-actors-intro .eyebrow{margin-bottom:.7rem}
.project-actors-intro>p{max-width:680px;margin:0;padding-top:1.9rem;color:var(--muted)}
.project-actors-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 2rem;margin-top:2rem}
.project-actors-list article{padding:.85rem 0 0;border-top:1px solid var(--green)}
.project-actors-list h3{margin:0 0 .4rem;font:400 1.18rem/1.35 var(--serif)}
.project-actors-list p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.65}
.project-system-section{padding:4.3rem 0 4.7rem;border-top:1px solid var(--line);background:#f2f5ef;scroll-margin-top:1rem}
.project-system-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,6rem);align-items:start;margin-bottom:2.1rem}
.project-system-intro .eyebrow{margin-bottom:.7rem}
.project-system-intro>p{max-width:680px;margin:0;padding-top:1.9rem;color:var(--muted)}
.project-phases{list-style:none;margin:0;padding:0;border-top:1px solid rgba(47,85,53,.25)}
.project-phases li{display:grid;grid-template-columns:70px minmax(0,1fr);gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(47,85,53,.25)}
.project-phases li>span{color:var(--green-dark);font:400 1.35rem/1.35 var(--serif)}
.project-model-note{max-width:780px;margin:1.1rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.6}
.project-now{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);padding-top:4.2rem;padding-bottom:4.4rem;scroll-margin-top:1rem}
.project-now-heading .eyebrow{margin-bottom:.7rem}
.project-now-copy p{margin:.2rem 0 1rem}
.project-appeal{padding:3.1rem 0 3.4rem;border-top:1px solid var(--line);background:#eaf0e8}
.project-appeal-inner{max-width:900px}
.project-appeal .eyebrow{margin-bottom:.65rem}
.project-appeal h2{max-width:760px}
.project-appeal p:not(.eyebrow){max-width:700px;margin:.85rem 0;color:var(--muted)}
.research-band{padding:50px 0 54px;border-top:1px solid var(--line);background:#f2f5ef}
.research-band .section-head{margin-bottom:0}
.research-band .eyebrow{margin-bottom:.55rem}
.research-band .section-intro{max-width:720px}
.research-band .section-head>div:last-child{padding-top:1.75rem}
.research-band .section-head .section-intro+.section-intro{margin-top:1rem}
.research-band .text-link{grid-column:2;justify-self:start;margin-top:.85rem}
.motto{padding:48px 0 62px;border-top:1px solid var(--line)}
.motto-copy{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:1rem clamp(2rem,6vw,6rem);align-items:start}
.motto h2{margin:0;font:400 clamp(1.85rem,3.15vw,2.6rem)/1.15 var(--serif);letter-spacing:-.025em}
.motto p{max-width:720px;margin:0;color:var(--muted);font-size:.96rem}
.motto .text-link{grid-column:2;margin-top:.15rem}
.motto-line{padding:27px 0;border-top:1px solid var(--line);color:var(--green-dark);font:400 clamp(1.15rem,2vw,1.45rem)/1.4 var(--serif);text-align:left}
.footer{padding:22px 0 26px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}
.footer-inner{display:flex;justify-content:space-between;gap:.75rem 2rem;flex-wrap:wrap}
.page-head{padding:60px 0 38px;border-bottom:1px solid var(--line)}
.page-head h1{max-width:820px;font-size:clamp(2.8rem,5.4vw,4.3rem)}
.page-head .lead{max-width:700px;margin:1rem 0 0;color:var(--muted);font-size:1rem}
.page-head .eyebrow a{color:inherit;text-decoration:none}
.prose{max-width:790px;padding:40px 0 78px;margin-left:max(calc((100vw - 1160px)/2 + 31%), 28px);margin-right:auto}
.prose h2{margin:2.25rem 0 .65rem;font:400 1.8rem/1.23 var(--serif);letter-spacing:-.015em}
.prose>h2:first-child{margin-top:0}
.prose p{margin:.7rem 0;color:var(--muted)}
.prose ul{color:var(--muted);padding-left:1.2rem}
.callout{margin:2rem 0;padding:.85rem 0 .85rem 1.1rem;border-left:2px solid var(--green);color:var(--muted)}
.timeline{border-top:1px solid var(--line);margin-top:1.7rem}
.timeline-row{display:grid;grid-template-columns:120px 1fr;gap:1.25rem;padding:1rem 0;border-bottom:1px solid var(--line);color:var(--muted)}
.timeline-row strong{color:var(--green-dark);font-size:.84rem;font-weight:700}
.research-card{padding:1.2rem 0 1.3rem;margin:1.4rem 0 2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.research-card h2{margin:.1rem 0 .7rem}
.research-card p{margin:.45rem 0}
.status{display:inline-block;padding:.15rem 0;color:var(--green-dark);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--green)}
.contact-note{max-width:660px;margin:1.25rem 0 0;padding:0;border:0}
.contact-note p{margin:.4rem 0}
.contact-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(2.5rem,7vw,7rem);padding-top:3.5rem;padding-bottom:4.5rem}
.contact-guidance h2,.contact-form-panel h2{margin:0;font:400 clamp(1.8rem,3vw,2.35rem)/1.2 var(--serif);letter-spacing:-.02em}
.contact-guidance>p:not(.eyebrow){max-width:520px;margin:1rem 0;color:var(--muted)}
.contact-guidance .contact-note{max-width:520px;margin:2rem 0 0;padding:1rem 0 0;border-top:1px solid var(--line)}
.contact-note h3{margin:0;font:400 1.2rem/1.35 var(--serif)}
.contact-note p{color:var(--muted);font-size:.9rem}
.contact-form-panel{padding:clamp(1.35rem,3vw,2.3rem);background:#f2f5ef;border-top:2px solid var(--green)}
.contact-form-panel .eyebrow{margin-bottom:.55rem}
.contact-form-panel h2{font-size:clamp(1.6rem,2.5vw,2rem)}
.contact-form-status{margin:1rem 0 1.25rem;padding:.8rem 1rem;background:var(--paper);border-left:2px solid var(--green);color:var(--muted);font-size:.84rem;line-height:1.55}
.contact-form-status strong{color:var(--ink)}
.contact-form fieldset{min-width:0;margin:0;padding:0;border:0}
.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem 1rem}
.contact-fields label{display:block;color:var(--ink);font-size:.78rem;font-weight:700}
.contact-fields .contact-full{grid-column:1/-1}
.contact-fields input,.contact-fields select,.contact-fields textarea{display:block;width:100%;margin-top:.35rem;padding:.68rem .72rem;border:1px solid #c9d0c8;border-radius:0;background:var(--paper);color:var(--muted);font:400 .88rem/1.4 var(--sans)}
.contact-fields textarea{resize:vertical}
.contact-fields input:disabled,.contact-fields select:disabled,.contact-fields textarea:disabled{opacity:1;color:#656b65;-webkit-text-fill-color:#656b65;background:#fcfcfa}
.contact-submit{margin-top:1rem;padding:.7rem 1rem;border:1px solid var(--green-dark);background:var(--green-dark);color:#fff;font:700 .82rem/1.3 var(--sans);opacity:.55;cursor:not-allowed}
.research-index{display:flex;gap:.5rem 1.8rem;flex-wrap:wrap;padding-top:1.15rem;padding-bottom:1.15rem;border-bottom:1px solid var(--line)}
.research-index a{font-size:.82rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--green);padding:.25rem 0}
.research-entry{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);padding-top:3.4rem;padding-bottom:4rem;border-bottom:1px solid var(--line);scroll-margin-top:1rem}
.research-entry-meta{display:flex;align-items:flex-start;gap:.75rem;flex-direction:column;color:var(--muted);font-size:.78rem}
.research-entry-body{max-width:790px}
.research-entry-body>.eyebrow{margin-bottom:.7rem}
.research-entry h2,.research-future h2,.research-method h2{margin:0;font:400 clamp(1.9rem,3.3vw,2.7rem)/1.15 var(--serif);letter-spacing:-.025em}
.research-entry-body>p:not(.eyebrow),.research-method-copy p,.future-card p{color:var(--muted)}
.research-lead{margin:1rem 0;font:400 1.2rem/1.55 var(--serif);color:var(--ink)!important}
.research-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2.5rem;margin:2rem 0}
.research-details section{border-top:1px solid var(--line);padding-top:.85rem}
.research-details h3,.future-card h3{margin:0 0 .45rem;font:400 1.25rem/1.35 var(--serif)}
.research-details p{margin:.3rem 0;color:var(--muted);font-size:.92rem}
.research-update{margin-top:2rem;padding:1rem 0 0;border-top:1px solid var(--green)}
.research-update strong{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--green-dark)}
.research-update p{margin:.45rem 0 0;color:var(--muted)}
.research-future{padding:3.2rem 0 3.6rem;background:#f5f6f2;border-bottom:1px solid var(--line);scroll-margin-top:1rem}
.research-future-inner{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem)}
.future-card{max-width:740px;padding:1.15rem 0 0;border-top:1px solid var(--line)}
.future-label{display:inline-block;margin-bottom:.8rem;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.future-card p{margin:.55rem 0}
.research-method{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);padding-top:3.2rem;padding-bottom:4rem;scroll-margin-top:1rem}
.research-method-heading .eyebrow{margin-bottom:.75rem}
.research-method-copy{max-width:760px}
.research-method-copy p:first-child{margin-top:0}
.research-method-copy p:last-child{margin-bottom:0}
.author-intro{display:grid;grid-template-columns:minmax(180px,245px) minmax(0,1fr);gap:clamp(2rem,6vw,5.5rem);align-items:center}
.author-figure{max-width:245px;margin:0}
.author-photo{display:block;width:100%;max-width:245px;height:auto;object-fit:contain}
.author-figure figcaption{margin-top:.6rem;color:var(--muted);font-size:.76rem;line-height:1.5}
.author-intro-copy{min-width:0}
.author-intro-copy h1{font-size:clamp(2.8rem,5vw,4.2rem)}
.author-intro-copy .lead{font:400 1.25rem/1.4 var(--serif);color:var(--muted)}
.author-prose{width:min(790px,calc(100vw - max((100vw - 1160px)/2,28px) - 245px - clamp(2rem,6vw,5.5rem) - 28px));max-width:none;margin-left:calc(max((100vw - 1160px)/2,28px) + 245px + clamp(2rem,6vw,5.5rem));margin-right:auto}
@media(max-width:980px){
 .wrap{width:min(100% - 42px,760px)}
 .header{min-height:76px}
 .brand img{width:146px}
 .nav{gap:.8rem}
 .nav a{font-size:.77rem}
 .hero{grid-template-columns:1fr;gap:2rem;padding:58px 0 62px}
 .hero-copy{max-width:680px}
 .section-head,.history,.motto-copy{grid-template-columns:1fr;gap:1.15rem}
 .project-hero-inner,.project-origin,.project-documents,.project-scope,.project-actors-intro,.project-system-intro,.project-now{grid-template-columns:1fr;gap:1.3rem}
 .contact-layout{grid-template-columns:1fr;gap:2rem;padding-top:2.7rem;padding-bottom:3.2rem}
 .project-origin-copy,.project-scope-intro,.project-now-copy,.project-document-list,.project-actors-intro>p,.project-system-intro>p{padding-top:0}
 .system-teaser .section-head>div:last-child,.research-band .section-head>div:last-child{padding-top:0}
 .project-scope-grid{grid-template-columns:1fr;gap:1rem}
 .project-actors-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem}
 .project-history-heading{margin-left:170px}
 .research-entry,.research-future-inner,.research-method{grid-template-columns:1fr;gap:1.35rem}
 .research-entry{padding-top:2.6rem;padding-bottom:3rem}
 .research-entry-meta{flex-direction:row;align-items:center}
 .research-band .text-link{grid-column:1}
 .motto .text-link{grid-column:1}
 .prose{margin:0 auto;padding:36px 0 68px}
 .author-prose{width:min(790px,calc(100vw - 42px));max-width:790px}
}
@media(max-width:760px){
 .wrap{width:calc(100% - 36px)}
 .nav{display:none}
 .mobile-nav{display:block;position:relative}
 .mobile-nav summary{cursor:pointer;list-style:none;padding:.5rem 0;color:var(--ink);font-size:.84rem}
 .mobile-nav summary::-webkit-details-marker{display:none}
 .mobile-nav summary:after{content:"☰";margin-left:.55rem;font-size:1rem}
 .mobile-nav[open] summary:after{content:"×"}
 .mobile-nav .menu{position:absolute;z-index:5;right:0;top:calc(100% + 12px);width:min(280px,85vw);padding:.35rem 1rem;background:var(--paper);border:1px solid var(--line);display:grid}
 .mobile-nav .menu a{padding:.62rem .05rem;border-bottom:1px solid var(--line);color:var(--ink);font-size:.9rem;text-decoration:none}
 .mobile-nav .menu a:last-child{border-bottom:0}
 .header{min-height:70px}
 .brand img{width:136px}
 .hero{padding:48px 0 52px;gap:1.5rem}
 .hero h1{font-size:clamp(3rem,12vw,4.2rem)}
 .hero-statement{font-size:1.35rem}
 .hero-copy{font-size:.94rem}
 .section,.system,.research-band{padding:39px 0 44px}
 .project-hero{padding:42px 0 34px}
 .project-hero h1{font-size:clamp(2.6rem,10vw,3.6rem)}
 .project-index{gap:.45rem 1.15rem;padding-top:.85rem;padding-bottom:.85rem}
 .project-index a{font-size:.77rem}
 .project-origin,.project-scope,.project-now{padding-top:2.7rem;padding-bottom:2.9rem}
 .project-documents{padding-top:2.3rem;padding-bottom:2.5rem}
 .project-actors{padding-top:2.8rem;padding-bottom:3rem}
 .project-actors-list{grid-template-columns:1fr;gap:.8rem}
 .project-history{padding:2.5rem 0 2.8rem}
 .project-history-heading{margin-left:86px}
 .project-timeline li{grid-template-columns:76px minmax(0,1fr);gap:.65rem}
 .timeline-year{font-size:1.25rem}
 .project-system-section{padding:2.8rem 0 3rem}
 .project-phases li{grid-template-columns:45px minmax(0,1fr);gap:.65rem}
 .project-appeal{padding:2.5rem 0 2.8rem}
 .section-head{margin-bottom:1.45rem}
 .research-index{gap:.45rem 1.15rem;padding-top:.85rem;padding-bottom:.85rem}
 .research-index a{font-size:.77rem}
 .research-details{grid-template-columns:1fr;gap:1rem;margin:1.5rem 0}
 .research-future,.research-method{padding-top:2.5rem;padding-bottom:2.8rem}
 .section h2,.page-head h2,.motto h2{font-size:1.85rem}
 .project-pillars{grid-template-columns:1fr;gap:.75rem}
 .page-head{padding:42px 0 29px}
 .page-head h1{font-size:clamp(2.6rem,11vw,3.6rem)}
 .page-head .lead{font-size:.95rem}
 .author-intro{grid-template-columns:1fr;gap:1.35rem;align-items:start}
 .author-figure{width:min(100%,230px)}
 .author-photo{width:min(100%,230px);max-width:230px}
 .author-intro-copy h1{font-size:clamp(2.5rem,10vw,3.5rem)}
 .prose{padding:30px 0 54px}
 .author-prose{width:calc(100vw - 36px)}
 .prose h2{font-size:1.55rem;margin-top:1.9rem}
 .timeline-row{grid-template-columns:1fr;gap:.15rem;padding:.75rem 0}
 .motto{padding:39px 0 46px}
 .footer-inner{display:grid;gap:.3rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Research report: shares the portal typography and spacing. */
.report-dateline{display:flex;flex-wrap:wrap;gap:.7rem 1.5rem;align-items:center;color:var(--muted);font-size:.82rem;margin-top:1.5rem}
.report-section{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);padding:3.6rem 0;border-bottom:1px solid var(--line);scroll-margin-top:1rem}
.report-heading h2{margin:0;font:400 clamp(1.8rem,3vw,2.45rem)/1.2 var(--serif);letter-spacing:-.025em}
.report-copy{min-width:0;color:var(--muted)}.report-copy>p:first-child{margin-top:0}.report-copy strong{color:var(--ink)}
.report-note{border-left:2px solid var(--green);padding:.2rem 0 .2rem 1.2rem;margin:1.8rem 0;font-size:.9rem}.report-note p{margin:.55rem 0}
.report-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:2.2rem}.report-metrics>div{border-top:1px solid var(--green);padding-top:.8rem}.report-metrics strong{display:block;font:400 2.9rem/1.1 var(--serif);color:var(--green-dark)}.report-metrics span{display:block;font-size:.8rem;line-height:1.5;margin-top:.6rem}
.report-chart{margin:0 0 2rem;padding:0 0 1.4rem;border-bottom:1px solid var(--line)}.report-chart figcaption{color:var(--ink);font:400 1.25rem/1.4 var(--serif);margin-bottom:1.2rem}.report-chart figcaption>span{display:block;color:var(--muted);font:400 .78rem/1.5 var(--sans);margin-top:.35rem}
.chart-row{margin:.85rem 0}.chart-label{display:flex;justify-content:space-between;align-items:baseline;gap:.8rem;font-size:.84rem;line-height:1.5;margin-bottom:.3rem}.chart-label strong{white-space:nowrap;font-size:.85rem}.chart-label small{font-weight:400;font-size:.8rem;color:var(--muted)}.chart-track{height:7px;background:#e7ebe4}.chart-track span{display:block;height:100%;background:var(--green)}.chart-note,.report-sources{font-size:.78rem;line-height:1.6;color:var(--muted)}.chart-note{margin-top:1rem}.report-reading p{margin:.85rem 0}.report-table{width:100%;border-collapse:collapse;font-size:.82rem;margin:1.5rem 0}.report-table caption{text-align:left;font:400 1.2rem/1.4 var(--serif);color:var(--ink);margin-bottom:.8rem}.report-table th,.report-table td{padding:.65rem .4rem;border-bottom:1px solid var(--line);text-align:right;vertical-align:top}.report-table th:first-child{text-align:left;font-weight:400}.report-table thead th{font-size:.75rem;font-weight:700!important;color:var(--ink)}.report-table tbody tr:last-child{color:var(--ink);font-weight:700}
@media(max-width:980px){.report-section{grid-template-columns:1fr;gap:1.4rem;padding:2.6rem 0}}@media(max-width:760px){.report-metrics{grid-template-columns:1fr;gap:1rem}.report-metrics>div{display:grid;grid-template-columns:95px 1fr;gap:1rem;align-items:start}.report-metrics strong{font-size:2.5rem}.report-metrics span{margin-top:.25rem}.chart-label{font-size:.8rem}.report-table{font-size:.75rem}.report-table th,.report-table td{padding:.6rem .2rem}}
