:root{--ink:#101010;--paper:#f4f4f1;--grey:#a7a7a3;--rule:#c9c9c4;--off:#e9e9e5}*{box-sizing:border-box;margin:0}html{background:var(--paper);scroll-behavior:auto}body{background:var(--paper);color:var(--ink);font-family:DM Sans,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.label,.section-index{letter-spacing:.09em;font:500 10px DM Mono,monospace}.label{color:#686863}.section-index{color:#777772}.site-header{border-bottom:1px solid var(--rule);z-index:2;justify-content:space-between;align-items:center;height:82px;padding:0 4.4vw;display:flex;position:relative}.site-name{letter-spacing:.08em;font:500 10px DM Mono,monospace}.site-header nav{letter-spacing:.08em;gap:30px;font:500 10px DM Mono,monospace;display:flex}.site-header nav a{border-bottom:1px solid #0000;padding:7px 0;transition:border-color .2s}.intro{flex-direction:column;justify-content:space-between;min-height:calc(100svh - 82px);padding:30px 4.4vw 34px;display:flex}.intro-top,.intro-foot{justify-content:space-between;align-items:flex-start;display:flex}.intro-body{margin:auto 0 7vh;padding-left:13.2vw}.intro h1{letter-spacing:-.095em;max-width:1100px;font-size:clamp(64px,9vw,154px);font-weight:500;line-height:.8}.intro h1 em,.profile h2 em,.work h2 em,footer h2 em{font-family:Playfair Display,serif;font-weight:500}.intro-foot{padding-left:13.2vw}.intro-foot>p{color:#41413f;max-width:355px;font-size:14px;line-height:1.55}.text-link{letter-spacing:.08em;border-bottom:1px solid var(--ink);padding-bottom:8px;font:500 10px DM Mono,monospace}.text-link span{margin-left:18px}.intro{isolation:isolate;position:relative}.intro-top,.intro-body,.intro-foot{z-index:1;position:relative}.particle-field{opacity:.38;z-index:0;mix-blend-mode:multiply;pointer-events:none;width:100%;height:100%;inset:0;position:absolute!important}.profile{border-top:1px solid var(--rule);grid-template-columns:13.2% 1.25fr .7fr;gap:36px;padding:115px 4.4vw;display:grid}.profile h2,.work h2,footer h2{letter-spacing:-.078em;margin-top:32px;font-size:clamp(45px,5.6vw,92px);font-weight:500;line-height:.88}.profile-copy{color:#4f4f4b;align-self:end;max-width:335px;font-size:14px;line-height:1.65}.work{background:var(--ink);color:var(--paper);padding:34px 4.4vw 0}.work .section-index,.work .label{color:#a8a8a2}.work-head{grid-template-columns:13.2% 1fr;padding-bottom:100px;display:grid}.work-list{margin:0 -4.4vw}.work-item{border-top:1px solid #363636;padding:22px 4.4vw 26px;transition:background .35s}.work-meta{letter-spacing:.08em;color:#aaa9a5;justify-content:space-between;font:500 9px DM Mono,monospace;display:flex}.work-main{grid-template-columns:1.17fr .83fr;align-items:end;gap:10%;padding:48px 0 36px;display:grid}.work-main h3{letter-spacing:-.09em;flex-direction:column;font-size:clamp(46px,6.4vw,105px);font-weight:500;line-height:.8;display:flex}.work-main>p{color:#c0c0bc;max-width:380px;font-size:15px;line-height:1.55}.work-bottom{color:#949490;letter-spacing:.065em;grid-template-columns:1.1fr 1fr auto;align-items:end;gap:18px;font:500 9px/1.55 DM Mono,monospace;display:grid}.work-bottom a{font-size:23px;line-height:1;transition:transform .2s}.work-item:hover .work-bottom a{transform:translate(4px,-4px)}.principles{grid-template-columns:13.2% 1fr;gap:36px;padding:110px 4.4vw;display:grid}.principle-list{grid-template-columns:1fr 1fr;gap:0 36px;display:grid}.principle-list>.label{padding-bottom:38px}.principle-list>div{border-top:1px solid var(--rule);grid-column:span 2;grid-template-columns:50px 1fr;padding:21px 0 35px;display:grid}.principle-list span{color:#777772;font:500 10px DM Mono,monospace}.principle-list h3{letter-spacing:-.06em;font-size:clamp(28px,3.4vw,52px);font-weight:500}footer{background:var(--off);border-top:1px solid var(--rule);grid-template-columns:13.2% 1fr;gap:36px;padding:110px 4.4vw 25px;display:grid}footer h2{margin:34px 0 72px}.email{letter-spacing:-.045em;border-bottom:1px solid var(--ink);padding-bottom:7px;font-size:clamp(18px,2.8vw,38px)}.footer-meta{border-top:1px solid var(--rule);letter-spacing:.08em;color:#6e6e69;grid-column:2;justify-content:space-between;margin-top:135px;padding-top:17px;font:500 9px DM Mono,monospace;display:flex}.footer-meta div{gap:22px;display:flex}.intro-transition{z-index:30;pointer-events:none;background:var(--ink);color:var(--paper);position:fixed;inset:0;overflow:hidden}.intro-fallback{background:var(--ink);clip-path:inset(0);animation:1.15s cubic-bezier(.77,0,.18,1) .52s forwards noise-out;position:absolute;inset:0}.intro-shader{opacity:.5;mix-blend-mode:screen;width:100%;height:100%;inset:0;position:absolute!important}.intro-name{letter-spacing:-.11em;font-size:clamp(72px,14vw,250px);font-weight:500;line-height:.72;position:absolute}.intro-name-first{top:17vh;left:4vw}.intro-name-last{bottom:18vh;right:4vw}.intro-rule{background:#d5d5d0;height:1px;display:block;position:absolute;top:51%;left:4vw;right:4vw}.intro-annotation{letter-spacing:.09em;color:#b5b5b0;font:500 9px DM Mono,monospace;position:absolute;top:4.5vh;right:4vw}.is-complete{visibility:hidden}.site-header,.intro{opacity:0}.intro-complete .site-header,.intro-complete .intro{animation:.74s 40ms both hero-arrive}@keyframes noise-out{to{clip-path:inset(0 0 100%)}}@keyframes hero-arrive{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.intro-transition{display:none}.site-header,.intro{opacity:1}.intro-complete .site-header,.intro-complete .intro{animation:none}}@media (max-width:720px){.site-header{height:68px;padding:0 6.5vw}.site-header nav{gap:17px}.intro{min-height:calc(100svh - 68px);padding:25px 6.5vw}.intro-top p:last-child{display:none}.intro-body{margin:auto 0 9vh;padding-left:0}.intro h1{font-size:clamp(57px,16vw,88px)}.intro-foot{flex-direction:column;gap:28px;padding-left:0}.profile,.work-head,.principles,footer{grid-template-columns:1fr;padding-left:6.5vw;padding-right:6.5vw}.profile{gap:30px;padding-top:76px;padding-bottom:82px}.work{padding-left:6.5vw;padding-right:6.5vw}.work-head{gap:30px;padding-bottom:70px}.work-list{margin:0 -6.5vw}.work-item{padding-left:6.5vw;padding-right:6.5vw}.work-main{grid-template-columns:1fr;gap:28px;padding:36px 0}.work-main h3{font-size:clamp(45px,12vw,67px)}.work-bottom{grid-template-columns:1fr auto;gap:15px}.work-bottom p:nth-child(2){grid-row:2}.work-bottom a{grid-area:1/2}.principles{gap:30px;padding-top:76px;padding-bottom:76px}.principle-list{display:block}.principle-list>div{grid-template-columns:34px 1fr}.principle-list h3{font-size:31px}footer{gap:30px;padding-top:76px}.footer-meta{flex-direction:column;grid-column:1;gap:18px;margin-top:100px}.footer-meta>span:last-child{display:none}.intro-name{font-size:clamp(74px,20vw,128px)}.intro-name-first{top:25vh;left:6.5vw}.intro-name-last{bottom:28vh;right:6.5vw}.intro-rule{left:6.5vw;right:6.5vw}.intro-annotation{text-align:right;max-width:130px;font-size:8px;top:5vh;right:6.5vw}}.site-header,.intro{background:var(--ink);color:var(--paper)}.site-header{border-color:#30302e}.site-header nav a:hover{border-color:var(--paper)}.intro{border-bottom:1px solid #30302e}.intro .label{color:#aaa9a4}.intro-foot>p{color:#c5c4be}.intro h1 em{color:#e7e7e2}.intro .text-link{border-color:var(--paper)}.particle-layer{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.particle-field{opacity:.92;mix-blend-mode:normal;pointer-events:none;width:100%;height:100%;inset:0;position:absolute!important}.particle-fallback{opacity:.65;position:absolute;inset:0}.particle-fallback i{width:3px;height:3px;animation:float-particle var(--duration,9s) var(--delay,0s) linear infinite;background:#f4f4f1;border-radius:50%;position:absolute;box-shadow:0 0 12px #f4f4f18c}.particle-fallback i:nth-child(4n){width:1px;height:1px}.particle-fallback i:first-child{--duration:12s;top:82%;left:8%}.particle-fallback i:nth-child(2){--duration:9s;--delay:-4s;top:63%;left:15%}.particle-fallback i:nth-child(3){--duration:14s;--delay:-7s;top:91%;left:25%}.particle-fallback i:nth-child(4){--duration:11s;top:48%;left:33%}.particle-fallback i:nth-child(5){--duration:13s;--delay:-2s;top:80%;left:40%}.particle-fallback i:nth-child(6){--duration:8s;--delay:-3s;top:70%;left:52%}.particle-fallback i:nth-child(7){--duration:10s;top:88%;left:61%}.particle-fallback i:nth-child(8){--duration:15s;--delay:-6s;top:52%;left:72%}.particle-fallback i:nth-child(9){--duration:10s;top:78%;left:84%}.particle-fallback i:nth-child(10){--duration:13s;--delay:-5s;top:43%;left:91%}.particle-fallback i:nth-child(n+11){left:calc((var(--n,1) * 7%) + 3%);top:calc((var(--n,1) * 11%) + 12%)}.particle-fallback i:nth-child(11){--n:1}.particle-fallback i:nth-child(12){--n:2}.particle-fallback i:nth-child(13){--n:3}.particle-fallback i:nth-child(14){--n:4}.particle-fallback i:nth-child(15){--n:5}.particle-fallback i:nth-child(16){--n:6}.particle-fallback i:nth-child(17){--n:7}.particle-fallback i:nth-child(18){--n:8}.particle-fallback i:nth-child(19){--n:9}.particle-fallback i:nth-child(20){--n:10}.particle-fallback i:nth-child(21){--n:11}.particle-fallback i:nth-child(22){--n:12}.particle-fallback i:nth-child(23){--n:13}.particle-fallback i:nth-child(24){--n:4}.particle-fallback i:nth-child(25){--n:8}.particle-fallback i:nth-child(26){--n:10}.particle-fallback i:nth-child(27){--n:5}.particle-fallback i:nth-child(28){--n:12}@keyframes float-particle{to{opacity:0;transform:translate(8vw,-110vh)}}.intro-flow{z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.intro-flow path{fill:none;stroke:#f4f4f1;stroke-width:.7px;stroke-dasharray:10 22;opacity:.22;animation:1.5s linear .2s forwards flow-line}.intro-flow circle{fill:#f4f4f1;filter:drop-shadow(0 0 8px #f4f4f1cc)}.intro-transition .intro-name,.intro-transition .intro-rule,.intro-transition .intro-annotation{z-index:1}@keyframes flow-line{to{stroke-dashoffset:-140px;opacity:0}}@media (prefers-reduced-motion:reduce){.particle-fallback i,.intro-flow path{animation:none}.intro-flow{display:none}}body,html{background:var(--ink)}main{isolation:isolate;color:var(--paper);position:relative}.particle-layer{z-index:0;pointer-events:none;inset:0;overflow:hidden;position:fixed!important}.particle-field{opacity:.72;mix-blend-mode:normal;width:100%;height:100%;inset:0;position:absolute!important}.site-header,.intro,.profile,.work,.principles,footer,.color-shift{z-index:1;background:0 0;position:relative}.profile,.principles,footer{border-color:#30302e}.profile-copy{color:#c5c4be}.profile h2,.principle-list h3,footer h2{color:var(--paper)}.principle-list>div,.footer-meta{border-color:#30302e}.principle-list span,.section-index,.label{color:#aaa9a4}footer{color:var(--paper)}footer .email{border-color:var(--paper)}.footer-meta{color:#aaa9a4}.footer-meta a{color:var(--paper)}.particle-fallback i{animation-duration:var(--particle-rate,8s)}.particle-fallback.is-fast i{border-radius:0;transform:scale(1.8);box-shadow:0 0 14px #f4f4f1e6}.color-shift{z-index:1;height:250vh}.color-shift-stage{background:#101010b8;border-top:1px solid #30302e;border-bottom:1px solid #30302e;align-items:center;height:100svh;padding:0 13.2vw;display:flex;position:sticky;top:0;overflow:hidden}.color-shift-copy{letter-spacing:-.095em;max-width:920px;font-size:clamp(54px,8.4vw,142px);font-weight:500;line-height:.8}.color-shift-copy em{font-family:Playfair Display,serif;font-weight:500}.color-shift-stage:after{content:"SCROLL / TO / CONTINUE";letter-spacing:.09em;color:#f4f4f1b3;font:500 9px DM Mono,monospace;position:absolute;bottom:30px;right:4.4vw}@media (max-width:720px){.color-shift-stage{padding:0 6.5vw}.color-shift-stage:after{right:6.5vw}.color-shift{height:210vh}}.intro{min-height:118svh;padding-top:9vh;padding-bottom:8vh}.intro-body{margin:auto 0 12vh}.profile{padding-top:18vh;padding-bottom:19vh}.work{padding-top:7vh}.work-head{padding-bottom:16vh}.work-item{padding-top:38px;padding-bottom:42px}.work-main{padding-top:72px;padding-bottom:62px}.principles{padding-top:18vh;padding-bottom:19vh}footer{background:#686864;min-height:118svh;padding-top:18vh;padding-bottom:7vh}.color-shift{height:360vh}.color-shift-stage{background:#101010b8}.particle-fallback.is-fast i{border-radius:50%;transform:none}@media (max-width:720px){.intro{min-height:105svh;padding-top:7vh}.profile,.principles{padding-top:15vh;padding-bottom:15vh}.work-head{padding-bottom:12vh}.work-main{padding-top:48px;padding-bottom:46px}.color-shift{height:280vh}footer{min-height:100svh;padding-top:14vh}}.intro{padding-left:clamp(24px,4.4vw,72px);padding-right:clamp(24px,4.4vw,72px)}.intro-body,.intro-foot{padding-left:clamp(0px,8vw,118px)}.profile,.principles,footer{grid-template-columns:9% minmax(0,1.25fr) minmax(250px,.7fr);padding-left:clamp(24px,4.4vw,72px);padding-right:clamp(24px,4.4vw,72px)}.work{padding-left:clamp(24px,4.4vw,72px);padding-right:clamp(24px,4.4vw,72px)}.work-list{margin-left:clamp(-72px,-4.4vw,-24px);margin-right:clamp(-72px,-4.4vw,-24px)}.work-item{padding-left:clamp(24px,4.4vw,72px);padding-right:clamp(24px,4.4vw,72px)}.work-main{grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr);gap:6vw}.work-main>p{max-width:33ch}.work-bottom{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) auto}footer{background:0 0;min-height:96svh}.profile h2,.work h2,footer h2{max-width:11ch}.profile-copy{max-width:34ch}.principle-list{max-width:1200px}@media (max-width:720px){.intro-body,.intro-foot{padding-left:0}.profile,.principles,footer,.work-main{grid-template-columns:1fr}.work-list{margin-left:-6.5vw;margin-right:-6.5vw}}.work-list{gap:0;display:grid}.work-item{background:#ffffff06;grid-template-columns:72px minmax(0,1.35fr) minmax(250px,.65fr);align-items:start;gap:0 38px;padding-top:46px;padding-bottom:48px;display:grid}.work-item:hover{background:#fff1}.work-number,.work-kind,.work-detail{letter-spacing:.075em;font:500 9px/1.55 DM Mono,monospace}.work-number,.work-kind{color:#a9a9a3}.work-kind{margin-bottom:28px}.work-primary h3{letter-spacing:-.085em;flex-direction:column;max-width:11ch;font-size:clamp(42px,5.15vw,84px);font-weight:500;line-height:.83;display:flex}.work-statement{color:#cdcdc8;max-width:38ch;margin-top:30px;font-size:15px;line-height:1.6}.work-detail{color:#b7b7b1;flex-direction:column;align-items:flex-start;min-height:100%;padding-top:4px;display:flex}.work-detail>p{max-width:30ch}.work-detail>p+p{color:#888883;margin-top:17px}.project-link{color:var(--paper);letter-spacing:.075em;border-bottom:1px solid #b7b7b1;margin-top:auto;padding:10px 0 8px;font:500 10px DM Mono,monospace;transition:gap .2s}.project-link span{margin-left:18px;transition:margin .2s}.work-item:hover .project-link span{margin-left:25px}footer{grid-template-columns:9% minmax(0,1fr) 230px;gap:36px;min-height:100svh;padding-top:15vh;padding-bottom:5vh;display:grid}.contact-main h2{max-width:12ch;margin:30px 0}.contact-main>p:not(.label){color:#c6c6c0;max-width:34ch;margin-bottom:36px;font-size:15px;line-height:1.6}.email{align-items:baseline;gap:16px;font-size:clamp(20px,2.4vw,34px);display:inline-flex}.email span{margin-left:0}.contact-links{flex-direction:column;align-self:start;gap:12px;padding-top:3px;display:flex}.contact-links .label{margin-bottom:18px}.contact-links a{border-bottom:1px solid #464642;justify-content:space-between;padding:11px 0;font-size:15px;transition:border-color .2s;display:flex}.contact-links a:hover{border-color:var(--paper)}.contact-links a span{font-family:DM Mono,monospace;font-size:11px}.footer-meta{grid-column:2/4;justify-content:space-between;margin-top:auto;display:flex}@media (max-width:720px){.work-item{grid-template-columns:38px minmax(0,1fr);gap:0 14px;padding-top:34px;padding-bottom:37px}.work-primary{grid-column:2}.work-detail{grid-column:2;gap:0;margin-top:28px}.work-detail .project-link{margin-top:26px}.work-primary h3{font-size:clamp(44px,11.5vw,66px)}.work-statement{margin-top:24px;font-size:14px}.work-kind{margin-bottom:19px}footer{grid-template-columns:1fr;gap:38px;padding-top:13vh}.contact-links{max-width:280px}.footer-meta{flex-direction:column;grid-column:1;gap:15px;margin-top:64px}.particle-layer{display:none}.email{letter-spacing:-.055em;max-width:100%;font-size:clamp(19px,6.4vw,28px);display:inline-block}.email span{display:none}}.profile{grid-template-columns:minmax(0,1.25fr) minmax(250px,.7fr)}.work-head{grid-template-columns:1fr}.work-item{grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr)}.principles,.principle-list>div{grid-template-columns:1fr}.principle-list h3{grid-column:1}footer{grid-template-columns:minmax(0,1fr) 230px}.footer-meta{grid-column:1/3}@media (max-width:720px){.profile,.principles,footer,.work-item{grid-template-columns:1fr}.work-primary,.work-detail{grid-column:auto}.work-detail{margin-top:28px}.footer-meta{grid-column:1}}
