@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}:root{font-family:DM Sans Variable,sans-serif;color:#e6e7df;background:#111310;font-synthesis:none;font-weight:400;--bg: #111310;--surface: #191c17;--line: #30352b;--muted: #969d8c;--accent: #d9b887;--mono: "IBM Plex Mono", monospace;scroll-behavior:smooth;scroll-padding-top:90px}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,input{font:inherit}button{cursor:pointer;color:inherit;border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::-moz-selection{background:#d9b887;color:#111310}::selection{background:#d9b887;color:#111310}svg{display:block}p,h1,h2,h3{margin:0}button,a{transition:color .18s,background .18s,border-color .18s,transform .18s}a:hover{color:var(--accent)}.muted{color:var(--muted)}.eyebrow{font:10px/1.6 var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}.header{height:96px;margin:0 4.7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:12px;font-weight:650;letter-spacing:2px;font-size:17px}.brand svg{color:#bfc5ae}.brand-edition{font:10px var(--mono);color:var(--muted);letter-spacing:0;margin-left:25px;padding-left:25px;border-left:1px solid var(--line)}nav{display:flex;align-items:center;gap:36px;font-size:12px}nav a{display:flex;align-items:center;gap:8px}nav a span{font:9px var(--mono);color:var(--muted)}.hero{position:relative;min-height:730px;display:grid;grid-template-columns:1fr 1.18fr;padding:15px 4.7% 72px;max-width:1920px;margin:auto;overflow:hidden}.hero-copy{padding-top:110px;position:relative;z-index:1}.hero-copy .eyebrow{display:flex;align-items:center;gap:13px}.small-cross{color:var(--accent);font-size:20px;font-weight:400}h1{font-size:clamp(66px,6.3vw,116px);line-height:1.035;letter-spacing:-5px;font-weight:450;margin-top:30px}h1 em{font-style:normal;color:#bec6ad}.hero-description{font-size:15px;line-height:1.85;color:#a5ab9c;max-width:345px;margin-top:28px}.primary-link{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;padding:17px 22px;background:#d9b887;color:#20231b;font-size:12px;font-weight:600;border:1px solid #d9b887}.primary-link:hover{background:#ead1aa;color:#111310;transform:translateY(-2px)}.hero-copy>.primary-link{margin-top:30px}.hero-footnote{display:flex;gap:14px;align-items:center;margin-top:48px;font:10px/1.8 var(--mono);color:#bec4b5}.footnote-line{width:28px;height:1px;background:#6c745f}.hero-structure{align-self:center;position:relative;margin-left:-30px}.collector{position:relative;width:100%;aspect-ratio:700 / 660;max-height:650px;overflow:visible}.collector-fallback-wrap,.collector-canvas{position:absolute;inset:0;width:100%;height:100%}.collector-fallback{width:100%;height:100%}.collector-canvas{opacity:0;pointer-events:none}.collector[data-renderer=ready] .collector-canvas{opacity:1}.collector[data-renderer=ready] .collector-fallback-wrap{visibility:hidden}.renderer-note{position:absolute;left:50%;bottom:15px;transform:translate(-50%);font:10px var(--mono);color:var(--muted);white-space:nowrap}.shell,.ribs,.framework{transition:opacity .7s ease}.framework{opacity:.35}.collector-structure .shell{opacity:.06}.collector-structure .framework{opacity:.9}.collector-core .shell{opacity:.025}.collector-core .ribs{opacity:.15}.collector-core .framework{opacity:.12}.structure-caption{display:flex;justify-content:space-between;gap:10px;margin:0 11% 22px;font:8px var(--mono);letter-spacing:1px;color:#828a75}.structure-caption>span:first-child{display:flex;align-items:center;gap:8px;color:#b4baa5}.accent-dot{width:4px;height:4px;background:var(--accent);border-radius:50%}.hero-bottom{position:absolute;left:4.7%;right:4.7%;bottom:0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0;font:9px var(--mono);letter-spacing:1px;color:#8f9882}.hero-bottom a{font-size:22px}.projects-section{padding:92px 4.7% 0;max-width:1920px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px;gap:30px}h2{font-size:clamp(32px,3.4vw,54px);letter-spacing:-1.8px;font-weight:450;line-height:1.15}.section-heading h2{margin-top:16px}.title-count{font:12px var(--mono);letter-spacing:0;color:#78816a;margin-left:23px;vertical-align:middle}.section-heading>p{font-size:12px;line-height:1.8;max-width:300px}.project-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:31% 1fr 160px;align-items:center;gap:42px;padding:28px 0;border-bottom:1px solid var(--line)}.project-visual{position:relative;background:#1b2118;border:1px solid #303b29;overflow:hidden}.project-visual:has(.art-city){background:#19201b;border-color:#2c392f}.project-number,.visual-caption{position:absolute;left:15px;font:8px var(--mono);letter-spacing:1px;color:#9da58f}.project-number{top:13px}.visual-caption{bottom:12px;font-size:7px}.project-art{width:100%;height:205px;transition:transform .6s}.project-row:hover .project-art{transform:scale(1.035)}.project-copy h3{font-size:30px;letter-spacing:-.8px;font-weight:450;margin:14px 0 10px}.project-copy>p{color:#a9b09f;font-size:13px;line-height:1.6}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:23px}.tags span{border:1px solid #343c2d;padding:5px 8px;font:8px var(--mono);color:#a0aa91}.project-actions{display:flex;height:160px;align-items:flex-end;justify-content:space-between;flex-direction:column}.project-open{width:46px;height:46px;border:1px solid #454d3c;display:grid;place-items:center;font-size:24px}.project-open:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.detail-button{background:transparent;padding:10px 0;font-size:11px;color:#a5ad99}.detail-button span{margin-left:18px;font-size:17px}.detail-button:hover{color:var(--accent)}.approach{display:grid;grid-template-columns:31% 1fr;gap:42px;padding:120px 4.7%;max-width:1920px;margin:auto}.approach-marker{font:9px var(--mono);color:var(--muted);letter-spacing:1px}.approach-marker svg{width:170px;margin:38px 0 20px;fill:none;stroke:#46513b;stroke-width:.8}.approach-marker .diagram-core{fill:var(--accent);stroke:none}.approach-marker>span:last-child{font-size:8px;letter-spacing:0}.approach-copy>.eyebrow{margin-bottom:19px}.approach-copy h2{font-size:clamp(30px,3.2vw,48px)}.approach-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#a8af9c;max-width:600px;margin-top:27px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:36px 0}.principles>div{border-top:1px solid var(--line);padding-top:21px}.principles span{font:9px var(--mono);color:#a7b090}.principles h3{font-size:13px;font-weight:500;margin:15px 0 9px}.principles p{font-size:12px;color:var(--muted);line-height:1.8;max-width:240px}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:12px;border-bottom:1px solid #606c4e;padding-bottom:10px}.closing{padding:64px 4.7%;background:#1a2016;border-top:1px solid #343e29;border-bottom:1px solid #343e29;position:relative;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.closing>.eyebrow{grid-column:1/-1}.closing h2{font-size:38px}.closing .primary-link{grid-column:2;grid-row:2}footer{display:flex;align-items:center;gap:35px;margin:0 4.7%;padding:35px 0;font:9px var(--mono);color:var(--muted)}.footer-brand{font:600 12px DM Sans,sans-serif;letter-spacing:2px;color:#c8ceba}footer>a:nth-last-child(2){margin-left:auto;display:flex;align-items:center;gap:8px}footer svg{width:12px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--accent);color:var(--bg);padding:12px}.skip-link:focus{top:15px}.project-dialog{background:#1a2016;color:#e6e7df;border:1px solid #515d44;padding:0;width:min(540px,calc(100% - 32px));max-height:90dvh;box-shadow:0 30px 120px #0008}.project-dialog::backdrop{background:#050704d9}.dialog-inner{padding:35px;position:relative}.dialog-close{position:absolute;right:16px;top:12px;background:transparent;font-size:28px;color:#c1c9b2;padding:5px 10px}.dialog-inner>.eyebrow{padding-right:30px}.dialog-inner .project-art{height:230px;margin:10px 0}.dialog-inner h2{font-size:35px}.dialog-inner>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#b3bca5;margin-top:20px}.dialog-inner .primary-link{margin-top:30px}.project-dialog[open]{animation:dialog-in .2s ease-out}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.hero{min-height:850px}.hero-copy{padding-top:140px}.hero-structure{max-width:800px;width:100%;justify-self:center}.collector{max-height:700px}.project-art{height:250px}.hero-description{font-size:17px;max-width:380px}.project-row{gap:60px}.project-copy h3{font-size:36px}.approach{gap:60px}}@media(max-width:1050px){.brand-edition{display:none}.hero{min-height:680px;grid-template-columns:1fr 1fr}.hero-copy{padding-top:95px}h1{font-size:65px;letter-spacing:-3.5px}.hero-structure{margin-left:-40px;margin-right:-50px}.hero-description{max-width:300px}.project-row{gap:25px;grid-template-columns:32% 1fr 110px}.project-copy h3{font-size:25px}.project-actions{height:150px}.project-art{height:190px}.tags{gap:4px}.tags span{font-size:7px}.approach{gap:25px}.structure-caption{font-size:7px}}@media(max-width:720px){.header{height:76px;margin:0 6%}.brand{font-size:14px;gap:9px}.brand svg{width:23px}nav{gap:18px;font-size:11px}nav>a:nth-child(2){display:none}nav a span{display:none}.hero{grid-template-columns:1fr;padding:0 6% 65px;min-height:auto}.hero-copy{padding-top:60px}h1{font-size:clamp(58px,11.5vw,85px);letter-spacing:-3px;margin-top:23px}.hero-description{font-size:14px;max-width:350px;margin-top:22px}.hero-copy>.primary-link{margin-top:25px}.hero-footnote{display:none}.hero-structure{margin:5px -6% 25px;max-width:550px;justify-self:center;width:112%}.collector{max-height:490px}.structure-caption{margin-top:-10px;margin-bottom:20px}.hero-bottom{left:6%;right:6%;font-size:8px}.hero-bottom>span:nth-child(2){display:none}.projects-section{padding:60px 6% 0}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:20px;font-size:12px}.section-heading h2{font-size:37px}.eyebrow{font-size:9px;letter-spacing:1px}.project-row{grid-template-columns:minmax(0,1fr);gap:22px;padding:25px 0}.project-visual{grid-column:1/-1}.project-art{height:210px}.project-copy h3{font-size:28px}.project-actions{height:auto;flex-direction:row-reverse;align-items:center;gap:20px}.detail-button{font-size:12px;min-height:44px;text-align:left;white-space:nowrap}.detail-button span{margin-left:4px}.tags span{font-size:8px}.project-copy .tags{margin-top:16px}.approach{grid-template-columns:1fr;padding:65px 6%;gap:32px}.approach-marker svg,.approach-marker>span:last-child{display:none}.approach-copy h2{font-size:35px}.principles{gap:20px}.closing{padding:45px 6%;display:block}.closing h2{font-size:33px;margin:18px 0 25px}.closing .primary-link{font-size:11px}footer{margin:0 6%;flex-wrap:wrap;gap:22px;font-size:8px}.footer-brand{font-size:11px}footer>a:nth-last-child(2){margin-left:0}footer>span{margin-left:auto}footer>a:last-child{margin-left:auto}.dialog-inner{padding:28px}.dialog-inner h2{font-size:30px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
