@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_22e2a02c-module__MwEO2a__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_22e2a02c-module__MwEO2a__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_42eec60-module__Gb1_vG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_42eec60-module__Gb1_vG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f6f8fb;--surface:#fff;--ink:#0b1220;--muted:#5d687a;--line:#d8dee8;--signal:#315cff;--signal-soft:#edf1ff;--font-sans:var(--font-geist-sans), "Helvetica Neue", Arial, sans-serif;--font-mono:var(--font-geist-mono), "SFMono-Regular", Consolas, monospace;--page-max:1280px;--page-gutter:clamp(20px, 4vw, 56px)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--canvas)}body{background:var(--canvas);color:var(--ink);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.5}main,section,article,aside,div{min-width:0}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a{color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:#315cff2e;text-underline-offset:.28em;text-decoration-thickness:1px}a:focus-visible{outline:3px solid var(--signal);outline-offset:4px}::selection{background:var(--signal);color:var(--surface)}.skip-link{z-index:100;background:var(--ink);color:var(--surface);font-family:var(--font-mono);padding:10px 14px;font-size:.75rem;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-frame{width:min(100%, var(--page-max));padding:0 var(--page-gutter);margin:0 auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;min-height:88px;display:flex}.wordmark{letter-spacing:-.02em;font-size:.94rem;font-weight:650;text-decoration:none}.site-nav{font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:clamp(18px,3vw,36px);font-size:.69rem;display:flex}.site-nav a{padding:10px 0;text-decoration:none;position:relative}.site-nav a:after{transform-origin:100%;background:var(--signal);content:"";height:1px;transition:transform .16s;position:absolute;bottom:6px;left:0;right:0;transform:scaleX(0)}.eyebrow,.proof-label,.project-topline,.project-media figcaption,.project-facts dt,.site-footer,.back-link,.case-links,.status-line{font-family:var(--font-mono)}.eyebrow{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:0;font-size:.68rem;font-weight:550;line-height:1.4}.status-line{color:var(--ink);letter-spacing:.02em;align-items:center;gap:9px;margin:0;font-size:.72rem;display:flex}.status-dot,.signal-node,.signal-entry span{border:2px solid var(--canvas);background:var(--signal);width:9px;height:9px;box-shadow:0 0 0 1px var(--signal);border-radius:50%;flex:none;display:block}.home-hero{grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding:clamp(76px,10vw,132px) 0 clamp(88px,11vw,148px);display:grid}.hero-thesis{grid-column:1/span 8}.hero-thesis h1{letter-spacing:-.075em;max-width:920px;margin:22px 0 0;font-size:clamp(3.8rem,7.6vw,7.25rem);font-weight:560;line-height:.93}.hero-thesis h1 span{color:var(--signal)}.availability{border-top:1px solid var(--signal);grid-column:9/13;align-self:end;padding-top:18px}.availability>p:not(.status-line){max-width:390px;color:var(--muted);margin:30px 0 24px;font-size:.98rem;line-height:1.65}.availability>a,.project-link,.not-found-links a,.case-links a,.next-project a,.contact-section a{font-size:.9rem;font-weight:600}.availability>a,.contact-section a,.collaboration-note a,.not-found-links a{overflow-wrap:anywhere}@keyframes signal-rail-advance{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes signal-node-pulse{0%{box-shadow:0 0 0 1px var(--signal), 0 0 0 0 #315cff2e}70%,to{box-shadow:0 0 0 1px var(--signal), 0 0 0 8px #315cff00}}.signal-system{--rail-left:13px;padding-left:52px;position:relative}.signal-system:before{top:0;bottom:0;left:var(--rail-left);background:var(--signal);content:"";width:1px;position:absolute}.signal-entry{border-top:1px solid var(--signal);height:84px;margin-left:-52px;position:relative}.signal-entry span{top:-5px;left:calc(var(--rail-left) - 4px);position:absolute}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.signal-system{view-timeline:--signal-rail block}.signal-system:before{background:var(--line)}.signal-system:after{z-index:1;top:0;bottom:0;left:var(--rail-left);transform-origin:top;background:var(--signal);content:"";width:1px;animation:linear both signal-rail-advance;animation-timeline:--signal-rail;animation-range:entry exit;position:absolute;transform:scaleY(0)}.signal-node{animation:linear both signal-node-pulse;animation-timeline:view();animation-range:entry cover 50%}}}.selected-work{padding-bottom:clamp(88px,10vw,140px);scroll-margin-top:24px}.section-heading-row{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:24px;display:grid}.section-heading-row>.eyebrow{grid-column:1/span 3;padding-top:7px}.section-heading-row>h2{letter-spacing:-.055em;grid-column:5/13;max-width:780px;margin:0;font-size:clamp(2.1rem,4.5vw,4.35rem);font-weight:560;line-height:1}.work-heading{padding:0 0 clamp(52px,7vw,88px)}.project-list{border-bottom:1px solid var(--line)}.home-project{border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:24px;padding:clamp(54px,7vw,88px) 0;display:grid;position:relative}.home-project>.signal-node,.about-section>.signal-node,.now-section>.signal-node,.contact-section>.signal-node{z-index:2;top:50%;left:calc(-52px + var(--rail-left) - 4px);position:absolute;transform:translateY(-50%)}.home-project-media{aspect-ratio:16/10;border:1px solid var(--line);background:var(--surface);grid-column:1/span 7;justify-content:center;align-items:center;min-height:0;text-decoration:none;transition:border-color .16s;display:flex;overflow:hidden}.home-project-media img{object-fit:contain;width:100%;height:100%}.home-project-copy{grid-column:9/13}.project-topline{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;padding-bottom:15px;font-size:.64rem;display:flex}.project-topline p{margin:0}.home-project h3{letter-spacing:-.055em;margin:28px 0 18px;font-size:clamp(2.5rem,4.2vw,4.2rem);font-weight:560;line-height:.98}.home-project h3 a{text-decoration:none}.project-summary{color:var(--muted);margin-bottom:24px;font-size:1rem;line-height:1.65}.project-proof{border-left:2px solid var(--signal);margin:0 0 28px;padding-left:16px;font-size:.86rem;line-height:1.55}.project-link{display:inline-block}.about-section,.contact-section{border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;display:grid;position:relative}.about-section{padding:clamp(80px,10vw,132px) 0;scroll-margin-top:24px}.capabilities{grid-column:1/span 4}.capabilities ul{margin:26px 0 0;padding:0;list-style:none}.capabilities li{border-top:1px solid var(--line);color:var(--muted);padding:13px 0;font-size:.9rem}.capabilities li:last-child{border-bottom:1px solid var(--line)}.biography{grid-column:6/13}.biography h2{letter-spacing:-.06em;max-width:680px;margin:20px 0 34px;font-size:clamp(2.4rem,4.8vw,4.7rem);font-weight:560;line-height:.98}.biography>p:not(.eyebrow){max-width:670px;color:var(--muted);margin-bottom:18px;font-size:1.04rem;line-height:1.7}.now-section{border-top:1px solid var(--line);padding:clamp(80px,10vw,132px) 0;scroll-margin-top:24px;position:relative}.now-heading{margin-bottom:clamp(48px,7vw,82px)}.now-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.now-grid>div{min-height:210px;padding:28px 28px 32px 0}.now-grid>div+div{border-left:1px solid var(--line);padding-left:28px}.now-grid .eyebrow{color:var(--signal);margin-bottom:56px}.now-grid dd{max-width:330px;color:var(--muted);margin:0;line-height:1.65}.contact-section{align-items:start;padding:clamp(82px,11vw,150px) 0}.contact-section>.eyebrow{grid-column:1/span 3;padding-top:8px}.contact-section>div{grid-column:5/13}.contact-section h2{letter-spacing:-.07em;max-width:820px;margin:0 0 28px;font-size:clamp(2.7rem,6vw,6rem);font-weight:560;line-height:.94}.contact-section div>p{color:var(--muted);margin-bottom:28px}.contact-section a{font-size:clamp(1rem,2vw,1.3rem);display:inline-block}.site-footer{border-top:1px solid var(--line);min-height:96px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:24px;font-size:.64rem;display:flex}.site-footer p{margin:0}.case-study{padding-top:clamp(58px,8vw,104px)}.case-intro{padding-bottom:clamp(58px,8vw,96px)}.case-kicker{justify-content:space-between;align-items:center;gap:24px;margin-bottom:clamp(72px,10vw,138px);display:flex}.back-link{font-size:.72rem}.case-title-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;display:grid}.case-title-grid>.eyebrow{grid-column:1/span 3;padding-top:16px}.case-title-grid>div{grid-column:4/13}.case-title-grid h1{letter-spacing:-.085em;margin:0 0 34px;font-size:clamp(4.8rem,11vw,10rem);font-weight:560;line-height:.82}.case-thesis{max-width:820px;color:var(--muted);letter-spacing:-.025em;margin-bottom:0;font-size:clamp(1.25rem,2.3vw,2rem);line-height:1.4}.case-links{flex-wrap:wrap;gap:24px;margin-top:36px;font-size:.78rem;display:flex}.project-media{margin:0}.project-media-frame{border:1px solid var(--line);background:var(--surface);justify-content:center;align-items:center;display:flex;overflow:hidden}.project-media img{object-fit:contain;width:100%;height:auto}.project-media figcaption{color:var(--muted);letter-spacing:.03em;justify-content:space-between;gap:20px;margin-top:12px;font-size:.64rem;line-height:1.5;display:flex}.case-hero-media .project-media-frame{min-height:240px}.project-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(60px,8vw,104px) 0 0;padding:0;display:grid}.project-facts>div{min-height:150px;padding:30px 24px 30px 0}.project-facts>div+div{border-left:1px solid var(--line);padding-left:24px}.project-facts dt{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin-bottom:24px;font-size:.64rem}.project-facts dd{margin:0;font-size:.9rem;line-height:1.55}.case-narrative{padding:clamp(76px,10vw,148px) 0 0}.narrative-section{border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding:clamp(56px,7vw,88px) 0;display:grid}.narrative-section>.eyebrow{grid-column:1/span 3;padding-top:8px}.narrative-section>div{grid-column:5/12}.narrative-section h2{letter-spacing:-.05em;max-width:760px;margin:0 0 34px;font-size:clamp(2rem,4vw,3.9rem);font-weight:560;line-height:1.02}.narrative-section div>p{max-width:690px;color:var(--muted);margin-bottom:18px;font-size:1rem;line-height:1.75}.proof-section,.gallery-section{border-top:1px solid var(--line);padding:clamp(78px,10vw,132px) 0}.proof-section .section-heading-row,.gallery-section .section-heading-row{margin-bottom:clamp(48px,7vw,82px)}.proof-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.proof-list article{min-height:250px;padding:28px 28px 34px 0}.proof-list article+article{border-left:1px solid var(--line);padding-left:28px}.proof-label{color:var(--signal);letter-spacing:.09em;text-transform:uppercase;margin-bottom:54px;font-size:.64rem}.proof-list h3{letter-spacing:-.045em;margin:0 0 15px;font-size:clamp(1.45rem,2.5vw,2.3rem);font-weight:580;line-height:1.05}.proof-list article>p:last-child{max-width:330px;color:var(--muted);margin-bottom:0;font-size:.88rem;line-height:1.65}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:40px 24px;display:grid}.gallery-grid .project-media-frame{min-height:320px;max-height:920px}.gallery-grid .project-media img{max-height:920px}.next-project{border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding:clamp(82px,11vw,148px) 0;display:grid}.next-project>div:first-child{grid-column:1/span 7}.next-project h2{letter-spacing:-.07em;margin:18px 0 24px;font-size:clamp(3rem,6vw,6rem);font-weight:560;line-height:.95}.next-project>div:first-child>p:not(.eyebrow){max-width:620px;color:var(--muted);margin-bottom:28px;line-height:1.65}.collaboration-note{border-top:1px solid var(--signal);grid-column:9/13;align-self:end;padding-top:18px}.collaboration-note>p:not(.eyebrow){color:var(--muted);margin:24px 0 18px}.not-found{flex-direction:column;justify-content:center;min-height:min(76vh,760px);padding:72px 0;display:flex}.not-found h1{letter-spacing:-.075em;max-width:920px;margin:22px 0 32px;font-size:clamp(3.2rem,8vw,7.4rem);font-weight:560;line-height:.94}.not-found>p:not(.eyebrow){color:var(--muted)}.not-found-links{flex-wrap:wrap;gap:24px;margin-top:28px;display:flex}@media (hover:hover){.site-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.home-project-media:hover{border-color:var(--signal)}.home-project h3 a:hover,.wordmark:hover,.back-link:hover,.project-link:hover,.availability>a:hover,.contact-section a:hover,.case-links a:hover,.next-project a:hover,.not-found-links a:hover{color:var(--signal)}}@media (max-width:1040px){.hero-thesis{grid-column:1/span 9}.availability{grid-column:9/13}.home-project-media{grid-column:1/span 7}.home-project-copy{grid-column:8/13}.case-title-grid>div{grid-column:4/13}.narrative-section>div{grid-column:5/13}}@media (max-width:820px){.home-hero{row-gap:68px}.hero-thesis,.availability{grid-column:1/13}.availability{justify-self:end;width:min(100%,480px)}.hero-thesis h1{max-width:760px}.section-heading-row>.eyebrow,.section-heading-row>h2{grid-column:1/13}.section-heading-row>h2{margin-top:20px}.home-project{row-gap:38px}.home-project-media,.home-project-copy{grid-column:1/13}.home-project-copy{grid-template-columns:repeat(12,minmax(0,1fr));gap:0 20px;display:grid}.project-topline,.home-project-copy h3,.project-summary,.project-proof,.project-link{grid-column:1/13}.project-summary,.project-proof{max-width:620px}.capabilities{grid-column:1/span 5}.biography{grid-column:6/13}.case-title-grid>.eyebrow,.case-title-grid>div,.narrative-section>.eyebrow,.narrative-section>div{grid-column:1/13}.case-title-grid>div,.narrative-section>div{margin-top:24px}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.project-facts>div:nth-child(3){border-top:1px solid var(--line);border-left:0;padding-left:0}.project-facts>div:nth-child(4){border-top:1px solid var(--line)}.proof-list{grid-template-columns:1fr}.proof-list article{min-height:0;padding:30px 0}.proof-list article+article{border-top:1px solid var(--line);border-left:0;padding-left:0}.proof-label{margin-bottom:30px}.next-project>div:first-child{grid-column:1/span 7}.collaboration-note{grid-column:8/13}}@media (max-width:620px){:root{--page-gutter:20px}.site-header{gap:18px;min-height:76px}.site-nav{gap:14px;font-size:.61rem}.home-hero{padding:68px 0 84px}.hero-thesis h1{letter-spacing:-.07em;margin-top:18px;font-size:clamp(3.45rem,15vw,5rem)}.availability{justify-self:start}.signal-system{--rail-left:8px;padding-left:30px}.signal-entry{height:64px;margin-left:-30px}.home-project>.signal-node,.about-section>.signal-node,.now-section>.signal-node,.contact-section>.signal-node{left:calc(-30px + var(--rail-left) - 4px)}.home-project{padding:48px 0 58px}.home-project-media{aspect-ratio:16/11}.project-topline{align-items:flex-start}.home-project h3{margin-top:24px}.about-section,.contact-section{row-gap:58px}.now-grid{grid-template-columns:1fr}.now-grid>div{min-height:0;padding:28px 0}.now-grid>div+div{border-top:1px solid var(--line);border-left:0;padding-left:0}.now-grid .eyebrow{margin-bottom:24px}.capabilities,.biography,.contact-section>.eyebrow,.contact-section>div{grid-column:1/13}.contact-section>.eyebrow{padding-top:0}.site-footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;min-height:116px}.case-study{padding-top:48px}.case-kicker{align-items:flex-start;margin-bottom:74px}.case-kicker .status-line{text-align:right;justify-content:flex-end;max-width:160px}.case-title-grid h1{font-size:clamp(3.8rem,19vw,6rem)}.case-thesis{font-size:1.25rem}.project-facts{grid-template-columns:1fr}.project-facts>div,.project-facts>div+div,.project-facts>div:nth-child(3),.project-facts>div:nth-child(4){border-top:1px solid var(--line);border-left:0;min-height:0;padding:24px 0}.project-facts>div:first-child{border-top:0}.project-facts dt{margin-bottom:12px}.narrative-section{padding:52px 0}.gallery-grid .project-media-frame{min-height:220px}.next-project{row-gap:72px}.next-project>div:first-child,.collaboration-note{grid-column:1/13}.collaboration-note{width:min(100%,420px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
