@font-face{font-family:Commissioner;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/commissioner-latin.woff2)format("woff2")}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin.woff2)format("woff2")}:root{color:#2f3532;font-synthesis:none;--ground:#fcfaf7;--ink:#2f3532;--secondary:#5d6862;--rule:#dde0d8;--teal:#456c66;--motion-ease:cubic-bezier(.22, 1, .36, 1);background:#fcfaf7;font-family:Commissioner,Arial,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0}body:has(dialog[open]){overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:5px;border-radius:2px}button:focus:not(:focus-visible){outline:none}::selection{color:#2f3532;background:#d9e4dd}.skip-link{z-index:5;background:var(--ground);padding:12px 18px;position:fixed;top:10px;left:20px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.prototype-bar{border-bottom:1px solid var(--rule);color:var(--secondary);justify-content:space-between;gap:12px;padding:10px max(24px,50vw - 648px);font-size:11px;display:flex}.page{max-width:1440px;margin:0 auto;padding:0 72px}.site-header{justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.wordmark{letter-spacing:-.8px;white-space:nowrap;font-size:20px;font-weight:500;text-decoration:none}.wordmark span{color:#766486;margin-left:2px}.site-header nav{gap:36px;font-size:14px;display:flex}.site-header :where(nav a){align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.site-header :where(nav a:hover){text-decoration:underline}.shared-figure{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.shared-figure path{stroke:var(--figure-color,#7e8d80);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:var(--trace-length,none);stroke-dashoffset:0;transition:stroke .32s var(--motion-ease)}.shared-figure:where([style]) path{animation:1.8s cubic-bezier(.45,0,.2,1) trace-figure}@keyframes trace-figure{0%{stroke-dashoffset:var(--trace-length)}to{stroke-dashoffset:0}}.project-dot:after{content:"";border:1px solid var(--project-color);opacity:0;transition:opacity .18s ease, transform .32s var(--motion-ease);border-radius:50%;position:absolute;inset:-7px;transform:scale(.7)}.is-active .project-dot:after{opacity:1;transform:scale(1)}.introduction{grid-template-columns:1fr auto;align-items:end;gap:48px;padding:12px 56px 28px;display:grid}h1,h2,h3,p{margin:0}h1,.philosophy h2,.project-panel h2{font-family:Newsreader,Georgia,serif;font-weight:400}h1{letter-spacing:-3.5px;font-size:clamp(60px,5.2vw,76px);line-height:.94}.intro-aside{color:var(--secondary);padding:0 0 10px}.dimension-mark{color:var(--teal);margin-bottom:23px;font-family:Georgia,serif;font-size:28px;display:block}.dimension-mark span{margin:0 12px;font-family:Commissioner,Arial,sans-serif;font-size:20px;font-weight:400}.intro-aside p{font-size:16px;line-height:1.65}.exploration{scroll-margin-top:28px}.field-toolbar{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.field-toolbar h2{color:var(--secondary);font-size:14px;font-weight:400}.view-controls{border:0;gap:22px;margin:0;padding:0;display:flex}.view-controls button{min-width:44px;min-height:44px;color:var(--secondary);background:0 0;border:none;padding:12px 2px;font-size:13px;position:relative}.view-controls button[aria-pressed=true]{color:var(--ink)}.view-controls button[aria-pressed=true]:after{content:"";background:currentColor;height:1px;position:absolute;bottom:8px;left:10px;right:10px}.field-study-note{color:var(--secondary);margin-top:0;font-size:11px}.field-content{padding:56px 28px 64px 64px;position:relative}.plot{border-bottom:1px solid #819084;border-left:1px solid #819084;height:clamp(340px,100svh - 430px,620px);position:relative}.plot-grid{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.plot-grid path{fill:none;stroke:#c8ccc4;stroke-opacity:.34;stroke-width:1px;vector-effect:non-scaling-stroke}.axis-label{color:var(--teal);align-items:center;gap:13px;font-size:16px;display:flex;position:absolute}.axis-symbol{font-family:Georgia,serif;font-size:34px;line-height:1}.axis-label small{color:var(--secondary);margin-top:6px;font-size:11px;line-height:1.45;display:block}.axis-y{top:25px;left:42px}.axis-x{bottom:20px;right:28px}.project-list{margin:0;padding:0;list-style:none}.project{--label-offset:44px;width:44px;height:44px;color:var(--project-color);position:absolute;transform:translate(-50%,-50%)}.project-button{background:0 0;border:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:relative}.project-dot{background:var(--project-color);z-index:1;border-radius:50%;width:7px;height:7px;display:block;position:relative}.project-name{left:var(--label-offset);white-space:nowrap;font-size:16px;line-height:1.5;position:absolute;top:10px}.is-map .project-name{background:var(--ground);padding:1px 5px}.is-map :where(.label-left) .project-name{left:auto;right:var(--label-offset)}.field-caption{color:var(--secondary);justify-content:space-between;gap:30px;padding:1px 0 16px 64px;font-size:12px;line-height:1.65;display:flex}.field-invitation{white-space:nowrap;align-self:end;align-items:center;gap:20px;display:flex}.field-invitation span{color:var(--teal);font-size:19px}.is-list{padding-top:44px}.is-list .plot{border:0;height:auto;min-height:400px}.is-list .project-list{display:grid}.is-list .project{width:100%;height:auto;position:relative;transform:none}.is-list .project-button{border-bottom:1px solid var(--rule);justify-content:flex-start;gap:30px;width:100%;min-height:116px}.is-list .project-name{font-family:Newsreader,Georgia,serif;font-size:38px;position:static}.list-action{color:var(--secondary);align-items:center;gap:24px;margin-left:auto;font-size:13px;display:flex}.list-action span{color:var(--project-color);font-size:20px}.unplaced-projects{color:var(--secondary);align-items:center;gap:24px;padding:24px 0 36px 64px;font-size:14px;display:flex}.unplaced-projects button{text-underline-offset:4px;background:0 0;border:0;min-height:44px;text-decoration:underline}.philosophy{border-top:1px solid var(--rule);grid-template-columns:1fr 1.7fr;gap:72px;padding:96px 56px 110px;display:grid}.section-label{color:var(--teal);padding-top:8px;font-size:14px}.philosophy h2{letter-spacing:-1px;margin-bottom:32px;font-size:clamp(34px,3.3vw,48px);line-height:1.08}.philosophy :where(div>p){max-width:490px;color:var(--secondary);font-size:16px;line-height:1.8}.philosophy :where(div>p+p){margin-top:18px}.site-footer{border-top:1px solid var(--rule);color:var(--secondary);justify-content:space-between;align-items:center;gap:30px;padding:12px 0 20px;font-size:12px;display:flex}.footer-brand{color:var(--ink);letter-spacing:-.3px;font-size:15px}.footer-dimensions{color:var(--teal);font-family:Georgia,serif;font-size:22px}.site-footer a{align-items:center;gap:20px;min-height:44px;text-decoration:none;display:inline-flex}.site-footer a:hover{text-decoration:underline}.project-panel{--panel-shift-x:24px;--panel-shift-y:0px;background:var(--ground);width:min(480px,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--ink);opacity:0;transform:translate(var(--panel-shift-x), var(--panel-shift-y));transition:opacity .26s ease, transform .26s var(--motion-ease), display .26s allow-discrete, overlay .26s allow-discrete;border:0;margin:0;padding:0;position:fixed;inset:0 0 0 auto;overflow-y:auto;box-shadow:-12px 0 80px #2f35320a}.project-panel:where([open]){opacity:1;transition-duration:.38s;transform:translate(0)}.project-panel::backdrop{opacity:0;transition:opacity .26s ease, display .26s allow-discrete;background:#2f353214}.project-panel:where([open])::backdrop{opacity:1;transition-duration:.38s}@starting-style{.project-panel:where([open]){opacity:0;transform:translate(var(--panel-shift-x), var(--panel-shift-y))}.project-panel:where([open])::backdrop{opacity:0}}.panel-inner{padding:24px 40px 64px}.panel-topline{color:var(--secondary);z-index:2;background:var(--ground);justify-content:space-between;align-items:center;margin-bottom:53px;font-size:12px;display:flex;position:sticky;top:0}.close-button{border:1px solid var(--rule);background:0 0;border-radius:50%;width:44px;height:44px;font-size:28px;font-weight:400;line-height:1}.close-button:hover{background:#edf0e9}.project-panel h2{letter-spacing:-2px;outline:none;font-size:68px;line-height:1}.panel-subtitle{color:var(--teal);margin-top:14px;margin-bottom:24px;font-size:15px;line-height:1.6}.panel-description{padding-bottom:38px;font-size:18px;line-height:1.6}.project-details{border-top:1px solid var(--rule);padding-top:26px}.project-details h3{color:var(--secondary);margin-bottom:12px;font-size:12px;font-weight:400}.project-highlights{margin:0;padding-left:18px;font-size:16px;line-height:1.7}.project-highlights li+li{margin-top:8px}.project-note{color:var(--secondary);margin-top:28px;font-size:13px;line-height:1.8}.project-link{min-height:44px;color:var(--teal);align-items:center;gap:18px;margin-top:24px;display:inline-flex}.panel-note{color:var(--secondary);max-width:330px;margin-top:28px;font-size:12px;line-height:1.8}@media (width>=1200px){.introduction{gap:32px}.introduction h1{letter-spacing:-2.2px;font-size:clamp(48px,4.4vw,64px)}.introduction h1 br{display:none}.intro-aside{align-items:center;gap:24px;padding:0;display:flex}.dimension-mark{white-space:nowrap;margin:0}.intro-aside p{font-size:14px;line-height:1.6}}@media (width>=1600px){.page{max-width:1600px}}@media (width<=1000px){.page{padding:0 40px}.introduction{gap:36px;padding:12px 24px 28px}h1{font-size:64px}.intro-aside p{font-size:14px}.plot{height:380px}.philosophy{grid-template-columns:1fr 2.2fr;gap:32px;padding:76px 24px}}@media (width<=700px){html{scroll-padding-top:16px}.prototype-bar{justify-content:center;padding:9px 20px;font-size:10px}.prototype-bar :where(span+span){display:none}.page{padding:0 24px}.site-header{gap:16px;padding:18px 0}.wordmark{letter-spacing:-.7px;font-size:18px}.site-header nav{gap:18px;font-size:12px}.site-header :where(nav a:first-child){display:none}.introduction{padding:16px 0;display:block}h1{letter-spacing:-2.2px;font-size:clamp(46px,12vw,58px);line-height:.97}.intro-aside{align-items:center;gap:24px;margin-top:20px;padding:0;display:flex}.dimension-mark{white-space:nowrap;margin:0;font-size:25px}.dimension-mark span{margin:0 6px;font-size:16px}.intro-aside p{font-size:12px;line-height:1.65}.field-toolbar{padding-top:12px}.field-toolbar h2{font-size:12px}.view-controls{gap:12px}.field-study-note{margin-top:0;font-size:10px}.field-content{padding:64px 12px 91px 20px}.plot{height:clamp(270px,72vw,420px)}.axis-y{top:20px;left:5px}.axis-x{bottom:24px;right:12px}.axis-symbol{font-size:29px}.axis-label{gap:10px;font-size:14px}.axis-label small{margin-top:4px;font-size:10px}.project{--label-offset:36px}.project-name{font-size:14px;top:11px}.field-caption{padding:0 0 32px 20px;font-size:11px;display:block}.desktop-break{display:none}.field-invitation{justify-content:space-between;margin-top:14px}.is-list{padding-top:28px;padding-bottom:46px}.is-list .plot{min-height:270px}.is-list .project-button{gap:16px;min-height:100px}.is-list .project-name{font-size:clamp(24px,7vw,32px)}.list-action{gap:12px;font-size:11px}.unplaced-projects{flex-wrap:wrap;padding-left:20px}.philosophy{padding:50px 0 62px;display:block}.section-label{margin-bottom:26px;padding:0;font-size:12px}.philosophy h2{letter-spacing:-.6px;margin-bottom:25px;font-size:clamp(32px,8vw,42px)}.philosophy :where(div>p){font-size:16px;line-height:1.8}.site-footer{gap:16px;padding:20px 0 26px}.footer-brand{font-size:13px}.footer-dimensions{display:none}.site-footer a{gap:12px;font-size:10px}.project-panel{--panel-shift-x:0px;--panel-shift-y:24px;border-radius:20px 20px 0 0;width:100%;height:auto;max-height:88dvh;inset:auto 0 0;box-shadow:0 -12px 80px #2f35320a}.panel-inner{padding:18px 28px 44px}.panel-topline{margin-bottom:24px}.project-panel h2{font-size:clamp(40px,12.5vw,58px)}.panel-description{padding-bottom:28px;font-size:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shared-figure path,.project-dot:after,.project-panel,.project-panel::backdrop{transition:none}.shared-figure:where([style]) path{animation:none}}
