@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-ext-wght-normal.0x9ccydb91kkt.woff2)format("woff2-variations");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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-wght-normal.0fpdy-lufm69d.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-vietnamese-wght-normal.0r91virwwy7i7.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-ext-wght-normal.0b8fr24hsg_rp.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(../media/newsreader-latin-wght-normal.1tkuwlnjs9jrl.woff2)format("woff2-variations");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}
:root{--ink:#111110;--graphite:#1a1a18;--paper:#ebe7dc;--paper-dim:#d7d2c7;--steel:#8799a0;--line-dark:#eeebe029;--line-light:#1414122e;--ease:cubic-bezier(.32, .72, 0, 1);--sans:"DM Sans Variable", sans-serif;--serif:"Newsreader Variable", serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);overflow-x:clip}body{color:var(--paper);background:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;font-weight:430;line-height:1.4;overflow-x:clip}.skip-link{z-index:100;color:var(--ink);background:var(--paper);transition:transform .22s var(--ease);padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid var(--steel);outline-offset:5px}body:after{z-index:20;pointer-events:none;content:"";opacity:.032;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}::selection{color:var(--ink);background:var(--steel)}.site-header{z-index:12;grid-template-columns:1fr auto;align-items:center;padding:30px clamp(22px,3.4vw,56px);display:grid;position:absolute;inset:0 0 auto}.brand-lockup{letter-spacing:.18em;align-items:center;gap:12px;width:max-content;font-size:13px;font-weight:650;display:inline-flex}.mark{aspect-ratio:1;border:1px solid;width:44px;display:inline-block;position:relative;transform:rotate(45deg)}.mark span{background:currentColor;position:absolute}.mark span:first-child{width:66%;height:1px;top:50%;left:17%}.mark span:last-child{width:1px;height:66%;top:17%;left:50%}.mark--small{width:18px}.desktop-nav{letter-spacing:.06em;gap:clamp(24px,3.2vw,54px);font-size:12px;display:flex}.desktop-nav a,.footer a{position:relative}.desktop-nav a:after,.footer nav a:after{content:"";transform-origin:100%;height:1px;transition:transform .65s var(--ease);background:currentColor;position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.footer nav a:hover:after,.footer nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.menu-toggle{background:var(--paper);border:0;border-radius:50%;width:42px;height:42px;padding:0;display:none}.menu-toggle span{background:var(--ink);width:18px;height:1px;transition:transform .6s var(--ease);position:absolute;left:12px}.menu-toggle span:first-child{transform:translateY(-3px)}.menu-toggle span:last-child{transform:translateY(3px)}.menu-toggle.is-open span:first-child{transform:rotate(45deg)}.menu-toggle.is-open span:last-child{transform:rotate(-45deg)}.menu-overlay{z-index:11;visibility:hidden;opacity:0;transition:opacity .65s var(--ease), transform .65s var(--ease), visibility .65s;background:#111110f5;grid-template-rows:auto 1fr auto;padding:110px 24px 34px;display:grid;position:fixed;inset:0;transform:translateY(-18px)}.menu-overlay.is-open{visibility:visible;opacity:1;transform:translateY(0)}.menu-meta,.menu-parent{letter-spacing:.13em;text-transform:uppercase;font-size:11px}.menu-overlay nav{align-self:center}.menu-overlay nav a{opacity:0;transition:opacity .72s var(--ease), transform .72s var(--ease);transition-delay:calc(.12s + (var(--i) * 80ms));align-items:baseline;gap:18px;padding:6px 0;font-size:clamp(54px,18vw,88px);line-height:.95;display:flex;transform:translateY(38px)}.menu-overlay.is-open nav a{opacity:1;transform:translateY(0)}.menu-overlay nav a span{letter-spacing:.1em;width:22px;font-size:10px}.menu-parent{border-top:1px solid var(--line-dark);justify-content:space-between;padding-top:20px;display:flex}.hero{--pointer-x:0px;--pointer-y:0px;background:var(--ink);grid-template-rows:auto 1fr auto;min-height:100dvh;padding:108px clamp(22px,3.4vw,56px) 32px;display:grid;position:relative;overflow:hidden}.hero-grid,.visual-grid{pointer-events:none;background-image:linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px);opacity:.23;background-size:8.33333% 72px,8.33333% 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 28% 78%,#0000);mask-image:linear-gradient(#0000,#000 28% 78%,#0000)}.hero-topline{z-index:2;letter-spacing:.17em;text-transform:uppercase;color:#ebe7dc8c;justify-content:space-between;padding-top:10px;font-size:9px;display:flex}.hero-word{z-index:2;letter-spacing:-.105em;grid-template-columns:repeat(5,1fr);align-self:center;width:calc(100% + .05em);margin:0;font-size:clamp(86px,20.7vw,390px);font-weight:590;line-height:.7;display:grid;position:relative;transform:translate(-.025em)}.hero-word>span{opacity:0;animation:letter-in 1.25s var(--ease) forwards;animation-delay:calc(.1s + (var(--i) * 90ms));display:block;transform:translate(-32px)}.hero-word>span:nth-child(2),.hero-word>span:nth-child(4){color:#0000;-webkit-text-stroke:1px #ebe7dc9e}@keyframes letter-in{to{opacity:1;transform:translate(0)}}.hero-instrument{z-index:3;aspect-ratio:1;width:clamp(180px,25vw,390px);color:var(--steel);transform:translate3d(var(--pointer-x), var(--pointer-y), 0);transition:transform .9s var(--ease);position:absolute;top:19%;right:12.5%}.instrument-orbit,.instrument-axis{position:absolute}.instrument-orbit{border:1px solid;border-radius:50%}.orbit-a{opacity:.5;animation:orbit 24s var(--ease) infinite alternate;inset:0}.orbit-b{opacity:.38;animation:orbit 18s var(--ease) infinite alternate-reverse;border-style:dashed;inset:17%}@keyframes orbit{0%{transform:rotate(0)scale(.96)}to{transform:rotate(120deg)scale(1)}}.instrument-axis{opacity:.28;background:currentColor}.axis-x{width:116%;height:1px;top:50%;left:-8%}.axis-y{width:1px;height:116%;top:-8%;left:50%}.instrument-core{color:var(--ink);background:var(--steel);border-radius:50%;place-items:center;display:grid;position:absolute;inset:35%}.instrument-core .mark{width:34%}.instrument-index{letter-spacing:.18em;font-size:9px;position:absolute;bottom:9%;right:5%}.hero-copy{z-index:4;justify-content:space-between;align-items:end;width:min(680px,60vw);display:flex;position:relative}.hero-copy p{letter-spacing:-.045em;margin:0;font-size:clamp(24px,3vw,46px);line-height:.98}em{font-family:var(--serif);font-weight:430}.hero-copy em{color:var(--steel)}.text-link{letter-spacing:.06em;border-bottom:1px solid;align-items:center;gap:22px;padding-bottom:7px;font-size:11px;display:inline-flex}.text-link span{transition:transform .55s var(--ease)}.text-link:hover span{transform:translateY(4px)}.hero-coordinate{text-align:right;letter-spacing:.17em;color:#ebe7dc73;gap:2px;font-size:8px;display:grid;position:absolute;bottom:32px;right:3.4vw}.section-light{color:var(--ink);background:var(--paper)}.approach{min-height:130dvh;padding:clamp(90px,11vw,170px) clamp(22px,3.4vw,56px)}.section-label{letter-spacing:.14em;text-transform:uppercase;grid-template-columns:54px auto;align-items:center;font-size:10px;display:grid}.section-label span:first-child{color:#11111073}.section-label--dark span:first-child{color:#ebe7dc66}.approach-statement{width:min(1180px,89vw);margin:clamp(130px,17vw,250px) 0 clamp(130px,16vw,240px) auto}.approach-statement p{letter-spacing:-.065em;margin:0;font-size:clamp(52px,8.1vw,130px);line-height:.91}.approach-statement em{color:var(--steel);padding-right:.08em;display:inline-block}.principles{width:min(100%,1120px);margin-left:auto}.principle{grid-template-columns:80px 1fr 1fr;align-items:baseline;gap:24px;padding:30px 0 42px;display:grid;position:relative}.principle-letter{font-family:var(--serif);font-size:12px;font-style:italic}.principle h3{letter-spacing:-.045em;margin:0;font-size:clamp(32px,4.2vw,64px);font-weight:500}.principle p{max-width:310px;margin:0;font-size:14px}.principle-line{background:var(--line-light);transform-origin:0;height:1px;transition:transform 1.1s var(--ease) .22s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.principle.is-visible .principle-line{transform:scaleX(1)}[data-reveal]{opacity:0;transition:opacity .9s var(--ease) var(--delay,0s), transform .9s var(--ease) var(--delay,0s);transform:translateY(52px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.work{background:var(--ink);padding:clamp(100px,13vw,190px) clamp(22px,3.4vw,56px)}.work-intro{grid-template-columns:1fr 2fr;align-items:start;gap:40px;margin-bottom:clamp(100px,15vw,220px);display:grid}.work-intro h2{letter-spacing:-.065em;margin:-.12em 0 0;font-size:clamp(50px,7.5vw,116px);font-weight:480;line-height:.9}.work-intro h2 em{color:var(--steel)}.work-layout{grid-template-columns:minmax(300px,.82fr) minmax(480px,1.18fr);align-items:start;gap:clamp(50px,8vw,130px);display:grid}.visual-shell{background:#ebe7dc09;border:1px solid #ebe7dc1f;padding:8px;position:sticky;top:32px}.project-visual{aspect-ratio:4/5;background:#20221f;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f}.project-visual:after{content:"";border:1px solid #ebe7dc1a;position:absolute;inset:5%}.visual-grid{opacity:.34;background-size:20% 20%;-webkit-mask-image:none;mask-image:none}.visual-shape{transition:transform .9s var(--ease), opacity .9s var(--ease);position:absolute}.shape-one{aspect-ratio:1;border:1px solid var(--steel);border-radius:50%;width:61%;top:19%;left:20%}.shape-two{aspect-ratio:1;background:var(--steel);mix-blend-mode:screen;opacity:.66;width:36%;bottom:18%;right:14%}.visual-2 .shape-one{border-radius:0;transform:scale(.7)translate(-24%,32%)}.visual-2 .shape-two{border:1px solid var(--steel);background:0 0;transform:rotate(45deg)scale(1.15)}.visual-3 .shape-one{border-radius:0;transform:scale(1.15)translate(12%,-12%)}.visual-3 .shape-two{border-radius:50%;transform:scale(.68)translate(-120%,-62%)}.visual-cross{aspect-ratio:1;width:17%;color:var(--ink);background:var(--paper);transition:transform .9s var(--ease);place-items:center;display:grid;position:absolute;top:46%;left:45%}.visual-cross .mark{width:31%}.visual-2 .visual-cross{transform:translate(72%,-180%)rotate(45deg)}.visual-3 .visual-cross{transform:translate(-160%,160%)}.visual-code,.visual-state{z-index:2;letter-spacing:.16em;font-size:8px;position:absolute}.visual-code{top:8%;left:8%}.visual-state{bottom:8%;right:8%}.project-list{border-top:1px solid var(--line-dark)}.project-row{border:0;border-bottom:1px solid var(--line-dark);text-align:left;cursor:pointer;background:0 0;grid-template-columns:54px minmax(210px,1fr) 105px 78px;align-items:start;gap:18px;width:100%;padding:32px 0 35px;text-decoration:none;display:grid;position:relative}.project-row:before{content:"";background:var(--paper);transform-origin:bottom;transition:transform .65s var(--ease);position:absolute;inset:0;transform:scaleY(0)}.project-row>span{z-index:1;transition:color .5s var(--ease), transform .65s var(--ease);position:relative}.project-row:hover:before,.project-row:focus-visible:before,.project-row.is-active:before{transform:scaleY(1)}.project-row:hover>span,.project-row:focus-visible>span,.project-row.is-active>span{color:var(--ink)}.project-row:hover .project-main,.project-row:focus-visible .project-main,.project-row.is-active .project-main{transform:translate(10px)}.project-number,.project-meta,.project-status{letter-spacing:.11em;text-transform:uppercase;color:#ebe7dc7a;padding-top:8px;font-size:9px;line-height:1.5}.project-main{gap:12px;display:grid}.project-title-line{align-items:center;gap:14px;display:flex}.project-icon{object-fit:contain;background:#ebe7dc14;border-radius:8px;flex:none;width:42px;height:42px;display:block}.project-icon--fallback{color:var(--paper);font-family:var(--serif);border:1px solid #ebe7dc42;place-items:center;font-size:21px;font-style:italic;display:grid}.project-row:hover .project-icon--fallback,.project-row:focus-visible .project-icon--fallback,.project-row.is-active .project-icon--fallback{color:var(--ink);border-color:#1111104d}.visual-cross .project-icon{border-radius:4px;width:58%;height:58%}.visual-cover{opacity:.52;filter:saturate(.65)contrast(1.08);background-position:50%;background-size:cover;position:absolute;inset:0}.work-empty{border-bottom:1px solid var(--line-dark);grid-template-rows:auto 1fr auto;min-height:360px;padding:30px 0;display:grid}.work-empty>span,.work-empty small{letter-spacing:.14em;text-transform:uppercase;color:#ebe7dc73;font-size:9px}.work-empty p{font-family:var(--serif);color:var(--steel);align-self:center;margin:0;font-size:clamp(38px,5vw,68px);font-style:italic;line-height:.98}.project-name{letter-spacing:-.045em;font-size:clamp(31px,3.2vw,50px);line-height:1}.project-note{color:#ebe7dc85;font-size:11px}.project-row:hover .project-note,.project-row:focus-visible .project-note,.project-row.is-active .project-note{color:#1111108c}.placeholder-note{color:#ebe7dc6b;width:min(310px,100%);margin:22px 0 0 auto;font-size:10px;line-height:1.5}.lab{color:var(--paper);background:#20231f;padding:clamp(100px,12vw,180px) clamp(22px,3.4vw,56px)}.lab-header{grid-template-columns:1fr 1fr;margin-bottom:70px;display:grid}.lab-header p{width:min(290px,100%);margin:0 0 0 auto;font-size:13px}.lab-field{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);min-height:75dvh;position:relative;overflow:hidden}.lab-field:before{content:"";background:repeating-linear-gradient(90deg,#0000 0 calc(10% - 1px),#ebe7dc14 10%);position:absolute;inset:0}.lab-type{letter-spacing:-.09em;align-content:center;font-size:clamp(80px,17vw,280px);font-weight:550;line-height:.55;display:grid;position:absolute;inset:8% 0}.lab-type span:nth-child(2){color:#0000;-webkit-text-stroke:1px #ebe7dc8c;transform:translate(29%)}.lab-type span:nth-child(3){transform:translate(52%)}.lab-arc{aspect-ratio:1;border:1px solid var(--steel);opacity:.5;width:67%;animation:orbit 22s var(--ease) infinite alternate;border-radius:50%;position:absolute;top:-40%;right:10%}.lab-axis{z-index:2;background:var(--steel);opacity:.65;position:absolute}.lab-axis-a{width:100%;height:1px;top:50%;left:0}.lab-axis-b{width:1px;height:100%;top:0;left:65%}.lab-annotation{z-index:3;letter-spacing:.14em;text-transform:uppercase;font-size:8px;position:absolute}.annotation-a{top:6%;left:1%}.annotation-b{text-align:right;bottom:6%;right:1%}.lab-point{z-index:3;aspect-ratio:1;background:var(--steel);border-radius:50%;width:9px;position:absolute;box-shadow:0 0 0 5px #8799a01f}.point-a{top:calc(50% - 4px);left:calc(24% - 4px)}.point-b{top:24%;left:calc(65% - 4px)}.parent-brand{padding:clamp(100px,12vw,180px) clamp(22px,3.4vw,56px)}.parent-grid{grid-template-columns:.5fr 1.4fr .55fr;align-items:center;gap:50px;margin-top:clamp(100px,14vw,210px);display:grid}.parent-grid>.mark{width:clamp(90px,12vw,180px)}.parent-grid p{letter-spacing:-.055em;margin:0;font-size:clamp(36px,5.2vw,78px);line-height:.98}.parent-grid p span{font-family:var(--serif);font-style:italic}.circle-link{aspect-ratio:1;border:1px solid var(--ink);letter-spacing:.12em;width:min(100%,190px);transition:color .65s var(--ease), background-color .65s var(--ease), transform .65s var(--ease);border-radius:50%;justify-self:end;place-items:center;font-size:9px;display:grid}.circle-link b{opacity:0;transition:opacity .5s var(--ease), transform .65s var(--ease);position:absolute;transform:translate(-8px,8px)}.circle-link:hover,.circle-link:focus-visible{color:var(--paper);background:var(--ink);transform:rotate(-6deg)}.circle-link:hover span,.circle-link:focus-visible span{opacity:0}.circle-link:hover b,.circle-link:focus-visible b{opacity:1;transform:translate(0)}.contact{border-top:1px solid var(--line-light);grid-template-rows:auto 1fr;min-height:100dvh;padding:38px clamp(22px,3.4vw,56px) clamp(55px,7vw,100px);display:grid}.contact-index{letter-spacing:.14em;text-transform:uppercase;justify-self:end;font-size:10px}.contact-copy{align-self:end}.contact h2{letter-spacing:-.075em;margin:0 0 clamp(60px,9vw,130px);font-size:clamp(60px,10.5vw,164px);font-weight:500;line-height:.84}.contact h2 em{color:var(--steel)}.mail-link{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);letter-spacing:-.045em;grid-template-columns:1fr auto;align-items:center;padding:25px 0;font-size:clamp(26px,5vw,74px);display:grid}.mail-link b{font-family:var(--sans);transition:transform .6s var(--ease);font-size:.7em;font-weight:400}.mail-link:hover b,.mail-link:focus-visible b{transform:translate(7px,-7px)}.footer{background:var(--ink);padding:clamp(90px,12vw,180px) clamp(22px,3.4vw,56px) 32px;overflow:hidden}.footer-word{letter-spacing:-.105em;margin-bottom:clamp(90px,12vw,170px);font-size:clamp(90px,24vw,430px);font-weight:590;line-height:.62;transform:translate(-.04em)}.footer-bottom{border-top:1px solid var(--line-dark);letter-spacing:.08em;grid-template-columns:1fr 2fr auto;align-items:end;gap:30px;padding-top:30px;font-size:10px;display:grid}.footer-bottom p{margin:0}.footer-bottom nav{flex-wrap:wrap;gap:12px 30px;display:flex}.legal-page{min-height:100dvh;color:var(--ink);background:var(--paper);padding:34px clamp(22px,5vw,82px) 80px}.legal-heading{grid-template-columns:1fr 2fr;margin:clamp(100px,15vw,220px) 0 clamp(70px,10vw,140px);display:grid}.legal-heading>span{letter-spacing:.14em;text-transform:uppercase;font-size:10px}.legal-heading h1{letter-spacing:-.07em;margin:0;font-size:clamp(60px,10vw,150px);font-weight:500;line-height:.85}.legal-content{width:min(690px,100%);margin-left:auto}.legal-content h2{border-top:1px solid var(--line-light);margin:65px 0 15px;padding-top:16px;font-size:19px;font-weight:520}.legal-content p{color:#111110b8}.legal-content a{text-underline-offset:4px;text-decoration:underline}.legal-return{border-bottom:1px solid;margin-top:100px;display:inline-block}.legal-content strong{color:var(--ink);font-weight:600}.page-spacer{background:var(--ink);height:96px}.work--page{padding-top:clamp(160px,17vw,240px)}.contact--page{min-height:calc(100dvh - 96px)}.project-page{background:var(--ink)}.project-hero{background-image:linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px);background-size:8.33333% 72px,8.33333% 72px;grid-template-rows:auto 1fr auto;min-height:100dvh;padding:120px clamp(22px,3.4vw,56px) 55px;display:grid}.project-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#ebe7dc85;justify-content:space-between;font-size:9px;display:flex}.project-heading{align-self:center;align-items:center;gap:clamp(22px,4vw,65px);display:flex}.project-heading .project-icon{border-radius:18%;width:clamp(68px,9vw,140px);height:clamp(68px,9vw,140px)}.project-heading h1{letter-spacing:-.085em;margin:0;font-size:clamp(72px,14vw,230px);font-weight:560;line-height:.75}.project-hero>p{letter-spacing:-.035em;width:min(640px,78vw);color:var(--steel);margin:0 0 0 auto;font-size:clamp(20px,2.6vw,38px);line-height:1.05}.project-instrument{aspect-ratio:16/10;background:#20221f;width:min(820px,100% - 44px);margin:clamp(90px,12vw,180px) auto;position:relative;overflow:hidden}.project-instrument .shape-one{aspect-ratio:1;border:1px solid var(--steel);border-radius:50%;width:48%;position:absolute;top:16%;left:24%}.project-instrument .shape-two{aspect-ratio:1;background:var(--steel);opacity:.55;width:28%;position:absolute;bottom:14%;right:15%}.project-instrument .visual-cross{width:13%}.project-details{grid-template-columns:.7fr 1.3fr;gap:clamp(50px,9vw,150px);padding:clamp(90px,12vw,180px) clamp(22px,3.4vw,56px);display:grid}.project-details dl{margin:0}.project-details dl div{border-top:1px solid var(--line-light);grid-template-columns:1fr 1fr;padding:15px 0;display:grid}.project-details dt{letter-spacing:.14em;text-transform:uppercase;color:#11111085;font-size:9px}.project-details dd{margin:0;font-size:13px}.project-long-description{letter-spacing:-.055em;margin:0;font-size:clamp(35px,5vw,76px);line-height:.98}.technology-list{border-top:1px solid var(--line-light);grid-column:2;padding-top:35px}.technology-list>span{letter-spacing:.14em;text-transform:uppercase;font-size:9px}.technology-list ul{flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none;display:flex}.technology-list li{border:1px solid var(--line-light);border-radius:999px;padding:8px 12px;font-size:11px}.project-actions{flex-wrap:wrap;grid-column:2;gap:15px;display:flex}.project-actions a{border:1px solid var(--ink);transition:color .4s var(--ease), background .4s var(--ease);padding:14px 18px}.project-actions a:hover,.project-actions a:focus-visible{color:var(--paper);background:var(--ink)}.project-screenshots{gap:clamp(20px,4vw,60px);padding:clamp(90px,10vw,150px) clamp(22px,3.4vw,56px);display:grid}.project-screenshots img{background:#20221f;width:100%;height:auto;display:block}.project-pagination{border-top:1px solid var(--line-dark);grid-template-columns:1fr 1fr;display:grid}.project-pagination a{letter-spacing:-.04em;align-content:center;gap:20px;min-height:250px;padding:40px clamp(22px,3.4vw,56px);font-size:clamp(30px,4vw,62px);display:grid}.project-pagination a+a{text-align:right;border-left:1px solid var(--line-dark)}.project-pagination a span{letter-spacing:.14em;text-transform:uppercase;color:#ebe7dc73;font-size:9px}.not-found{background:var(--ink);grid-template-rows:auto 1fr;min-height:100dvh;padding:32px clamp(22px,3.4vw,56px) 55px;display:grid;position:relative;overflow:hidden}.not-found-grid{opacity:.2;background-image:linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px);background-size:8.33% 72px;position:absolute;inset:0}.not-found>:not(.not-found-grid){z-index:1;position:relative}.not-found>div:nth-child(3){align-self:center}.not-found>div>span{letter-spacing:.16em;text-transform:uppercase;font-size:9px}.not-found h1{letter-spacing:-.085em;margin:30px 0 65px;font-size:clamp(88px,18vw,290px);font-weight:540;line-height:.76}.not-found h1 em{color:var(--steel)}.not-found>.mark{width:clamp(90px,12vw,180px);color:var(--steel);position:absolute;bottom:13%;right:10%}@media (max-width:900px){.work-layout{grid-template-columns:1fr}.visual-shell{width:min(520px,100%);position:relative;top:auto}.project-row{grid-template-columns:42px minmax(160px,1fr) 78px}.project-status{display:none}.parent-grid{grid-template-columns:.35fr 1fr}.circle-link{grid-column:2;justify-self:start;width:145px}}@media (max-width:767px){.site-header{padding:22px 18px}.desktop-nav{display:none}.menu-toggle{display:block;position:relative}.menu-open{overflow:hidden}.hero{min-height:100dvh;padding:92px 18px 25px}.hero-topline span:first-child{max-width:160px}.hero-word{letter-spacing:-.08em;grid-template-columns:1fr;align-self:start;width:auto;margin-top:8dvh;font-size:clamp(92px,31vw,160px);line-height:.47}.hero-word>span:nth-child(2){transform:translate(22vw)}.hero-word>span:nth-child(3){transform:translate(5vw)}.hero-word>span:nth-child(4){transform:translate(29vw)}.hero-word>span:nth-child(5){transform:translate(12vw)}.hero-instrument{opacity:.82;width:52vw;top:40%;right:-12%}.hero-copy{align-items:end;width:100%}.hero-copy p{font-size:24px}.hero-copy .text-link{gap:10px;font-size:9px}.hero-coordinate{display:none}.approach{min-height:auto;padding:90px 18px 110px}.approach-statement{width:100%;margin:120px 0 130px}.approach-statement p{font-size:clamp(47px,14vw,68px)}.principle{grid-template-columns:38px 1fr;gap:8px;padding:24px 0 30px}.principle p{grid-column:2;padding-top:5px}.work{padding:100px 18px}.work-intro{grid-template-columns:1fr;gap:70px;margin-bottom:100px}.work-intro h2{font-size:clamp(49px,14vw,70px)}.work-layout{gap:70px}.visual-shell{padding:6px}.project-row{grid-template-columns:30px 1fr auto;gap:10px;padding:24px 0 27px}.project-name{font-size:28px}.project-note{font-size:10px}.project-meta{font-size:8px}.lab{padding:90px 18px}.lab-header{grid-template-columns:1fr;gap:40px}.lab-header p{margin:0}.lab-field{min-height:58dvh}.lab-type{font-size:24vw;line-height:.64}.lab-type span:nth-child(2){transform:translate(12%)}.lab-type span:nth-child(3){transform:translate(22%)}.lab-axis-b{left:72%}.parent-brand{padding:90px 18px 120px}.parent-grid{grid-template-columns:1fr;gap:70px;margin-top:110px}.parent-grid>.mark{width:82px}.parent-grid p{font-size:43px}.circle-link{grid-column:1;justify-self:end;width:128px}.contact{min-height:100dvh;padding:25px 18px 45px}.contact h2{font-size:clamp(58px,18vw,86px)}.mail-link{padding:18px 0;font-size:clamp(24px,7.5vw,34px)}.footer{padding:110px 18px 25px}.footer-word{margin-bottom:110px;font-size:27vw}.footer-bottom{grid-template-columns:1fr auto}.footer-bottom nav{grid-area:1/1/auto/-1}.back-top{grid-column:2}.legal-page{padding:24px 18px 60px}.legal-heading{grid-template-columns:1fr;gap:60px;margin:110px 0 80px}.legal-heading h1{font-size:19vw}.page-spacer{height:82px}.work--page{padding-top:140px}.project-title-line{gap:9px}.project-icon{width:32px;height:32px}.work-empty{min-height:280px}.project-hero{padding:100px 18px 35px}.project-eyebrow{gap:15px}.project-heading{flex-direction:column;align-items:flex-start}.project-heading h1{font-size:21vw;line-height:.82}.project-hero>p{width:100%}.project-details{grid-template-columns:1fr;padding:90px 18px}.technology-list,.project-actions{grid-column:1}.project-pagination a{min-height:180px;padding:30px 18px}.not-found{padding:24px 18px 40px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}:root{--ink:#111310;--graphite:#1b2119;--paper:#e8e9de;--paper-dim:#b8bfb2;--steel:#b1c3a8;--line-dark:#d1decf33;--line-light:#d1decf33}.secondary-shell{min-height:100dvh;color:var(--paper);background:var(--ink);isolation:isolate}.secondary-shell:before{z-index:-1;pointer-events:none;content:"";background:radial-gradient(circle at 76% 18%,#52634c29,#0000 27rem),linear-gradient(90deg,#0c0f0c2e,#0000 62%);position:fixed;inset:0}.secondary-shell .site-header{z-index:12;background:linear-gradient(#111310e6 20%,#11131000);justify-content:space-between;align-items:center;height:100px;padding:0 3.7vw;display:flex;position:fixed;inset:0 0 auto}.secondary-shell .brand-lockup{letter-spacing:.035em;gap:8px;font-size:19px;font-weight:650}.secondary-shell .brand-glyph{color:#a9bcae;margin-right:4px;font-size:29px;font-weight:300;line-height:1}.site-header-note{color:#b0b4aa;margin-left:7vw;margin-right:auto;font-size:11px}.secondary-shell .desktop-nav{letter-spacing:0;gap:37px;font-size:12px}.secondary-shell .desktop-nav a{color:#d6ddd0;align-items:baseline;gap:7px;transition:color .25s;display:flex}.secondary-shell .desktop-nav a span{color:#9aa697;font-size:9px}.secondary-shell .desktop-nav a[aria-current=page]{color:var(--paper)}.secondary-shell .desktop-nav a:after{display:none}.secondary-shell .desktop-nav a:hover{color:#b1c6b8}.secondary-shell .menu-toggle{width:auto;height:auto;color:var(--paper);background:0 0;border:0;border-radius:0;padding:12px 0 12px 20px;font-size:11px}.secondary-shell .menu-overlay{background:#111310fb;padding:110px 6vw 40px}.secondary-shell .menu-overlay nav a{letter-spacing:-.055em;font-size:clamp(54px,15vw,92px);font-weight:430}.secondary-shell .menu-parent{border-color:var(--line-dark)}.secondary-shell .section-light,.secondary-shell .approach,.secondary-shell .contact{color:var(--paper);background:0 0}.secondary-shell .section-label,.secondary-shell .contact-index,.secondary-shell .project-eyebrow{color:#a9b1a5;font-weight:500}.secondary-shell .section-label span:first-child,.secondary-shell .section-label--dark span:first-child{color:#879281}.approach--page{min-height:0;padding:clamp(150px,16vw,230px) 5.2vw clamp(110px,13vw,190px)}.approach--page .approach-statement{width:min(1120px,90vw);margin:clamp(110px,13vw,190px) 0 clamp(65px,8vw,110px)}.approach--page .approach-statement p{color:#edf0e3;letter-spacing:-.07em;font-size:clamp(68px,10.2vw,156px);font-weight:500;line-height:.85}.approach--page .approach-statement em{color:#b9c6b4}.approach-intro{width:min(430px,100%);color:var(--paper-dim);margin:0 0 clamp(100px,14vw,190px) auto;font-size:15px;line-height:1.65}.secondary-shell .principles{width:100%}.secondary-shell .principle{grid-template-columns:70px minmax(180px,.8fr) 1fr;padding:28px 0 36px}.secondary-shell .principle-letter{color:#8b9a84}.secondary-shell .principle h3{color:#edf0e3;font-weight:430}.secondary-shell .principle h3:after{content:".";color:var(--steel)}.secondary-shell .principle p{color:var(--paper-dim);line-height:1.65}.secondary-shell .principle-line{background:var(--line-dark)}.secondary-shell .work{background:0 0;min-height:100dvh;padding:clamp(160px,17vw,240px) 5.2vw clamp(110px,13vw,190px)}.secondary-shell .work-intro{grid-template-columns:.55fr 1.45fr;margin-bottom:clamp(95px,12vw,170px)}.secondary-shell .work-intro h2{color:#edf0e3;font-size:clamp(58px,8.4vw,132px);font-weight:430;line-height:.9}.secondary-shell .work-intro h2 em{color:#b9c6b4}.secondary-shell .work-layout{grid-template-columns:minmax(280px,.72fr) minmax(520px,1.28fr);gap:clamp(50px,8vw,125px)}.secondary-shell .visual-shell{background:0 0;border:0;padding:0;top:120px}.secondary-shell .project-visual{aspect-ratio:4/5;box-shadow:inset 0 0 0 1px var(--line-dark);background:#20271e}.secondary-shell .project-visual:before{z-index:1;content:"";border:1px solid #d1decf24;position:absolute;inset:6%}.secondary-shell .project-visual:after{border-color:#d1decf14;inset:12%}.secondary-shell .visual-shape{z-index:1}.secondary-shell .shape-one{border-color:#9eb294}.secondary-shell .shape-two{mix-blend-mode:normal;opacity:.46;background:#8da184}.secondary-shell .visual-cross{z-index:2;color:var(--ink);background:#dfe7d8}.secondary-shell .visual-code,.secondary-shell .visual-state{z-index:3;color:#c4cfbd}.secondary-shell .project-row{border-color:var(--line-dark)}.secondary-shell .project-row:before{background:#dce4d5}.secondary-shell .project-row.is-active:before{background:#20271e}.secondary-shell .project-row:hover>span,.secondary-shell .project-row:focus-visible>span,.secondary-shell .project-row.is-active>span{color:#151914}.secondary-shell .project-number,.secondary-shell .project-meta,.secondary-shell .project-status{color:#8f9b8b}.secondary-shell .project-name{color:#edf0e3;font-weight:430}.secondary-shell .project-note{color:#aeb8a8}.secondary-shell .project-row:hover .project-name,.secondary-shell .project-row:focus-visible .project-name,.secondary-shell .project-row.is-active .project-name{color:#151914}.secondary-shell .project-row:hover .project-note,.secondary-shell .project-row:focus-visible .project-note,.secondary-shell .project-row.is-active .project-note{color:#4e594b}.secondary-shell .project-row.is-active>span{color:#dce4d5}.secondary-shell .project-row.is-active .project-name{color:#edf0e3}.secondary-shell .project-row.is-active .project-note{color:#aeb8a8}.contact--page{border:0;min-height:100dvh;padding:clamp(150px,16vw,230px) 5.2vw clamp(65px,8vw,110px)}.contact--page .contact-index{justify-self:start}.contact--page .contact-copy{padding-top:clamp(120px,16vw,230px)}.secondary-shell .contact h2{color:#edf0e3;font-weight:430;line-height:.9}.secondary-shell .contact h2 em{color:#b9c6b4}.secondary-shell .mail-link{color:#e6eddf;transition:color .25s ease, padding .5s var(--ease);border-color:#8b9a82;font-size:clamp(24px,3.5vw,54px)}.secondary-shell .mail-link:hover{color:#b1c6b8;padding-left:12px;padding-right:12px}.secondary-shell .project-page{background:0 0}.secondary-shell .project-hero{background-image:linear-gradient(#d1decf13 1px,#0000 1px),linear-gradient(90deg,#d1decf13 1px,#0000 1px);background-size:8.333% 76px;min-height:100dvh;padding:145px 5.2vw 65px}.secondary-shell .project-heading h1{color:#edf0e3;font-weight:500}.secondary-shell .project-hero>p{color:#b8bfb2;line-height:1.2}.secondary-shell .project-heading .project-icon{background:#20271e;border-radius:8px}.secondary-shell .project-instrument{width:min(900px,100% - 10.4vw);box-shadow:inset 0 0 0 1px var(--line-dark);background:#20271e;margin:clamp(100px,13vw,190px) auto}.secondary-shell .project-instrument .shape-one{border-color:#9eb294}.secondary-shell .project-instrument .shape-two{background:#8da184}.secondary-shell .project-details{color:var(--paper);background:#1a2018}.secondary-shell .project-details dl div,.secondary-shell .technology-list{border-color:var(--line-dark)}.secondary-shell .project-details dt{color:#8f9b8b}.secondary-shell .project-details dd{color:#dbe2d4}.secondary-shell .project-long-description{color:#edf0e3;font-weight:430}.secondary-shell .technology-list>span{color:#9aa697}.secondary-shell .technology-list li{color:#c7d0c1;border:0;border-bottom:1px solid #71806b;border-radius:0;padding:7px 0}.secondary-shell .project-actions a{color:#dfe7d8;border:0;border-bottom:1px solid #82927d;padding:12px 0}.secondary-shell .project-actions a:hover{color:#b1c6b8;background:0 0}.secondary-shell .project-screenshots{background:#151814}.secondary-shell .project-pagination a{transition:color .25s ease, background .5s var(--ease)}.secondary-shell .project-pagination a:hover{color:#111310;background:#dce4d5}.secondary-shell .legal-page{min-height:100dvh;color:var(--paper);background:0 0;padding:clamp(150px,16vw,230px) 5.2vw clamp(100px,12vw,170px)}.secondary-shell .legal-heading{grid-template-columns:.55fr 1.45fr;margin:0 0 clamp(100px,13vw,180px)}.secondary-shell .legal-heading>span{color:#a9b1a5}.secondary-shell .legal-heading h1{color:#edf0e3;font-size:clamp(68px,10vw,154px);font-weight:500;line-height:.84}.secondary-shell .legal-heading h1 em{color:#b9c6b4}.secondary-shell .legal-content{width:min(760px,100%)}.secondary-shell .legal-content h2{border-color:var(--line-dark);color:#edf0e3;margin-top:72px;font-size:20px;font-weight:500}.secondary-shell .legal-content p{color:#b8bfb2;max-width:65ch;line-height:1.7}.secondary-shell .legal-content strong{color:#dce4d5}.secondary-shell .legal-content a{color:#dce4d5;text-decoration-color:#71806b}.secondary-shell .footer{border-top:1px solid var(--line-dark);background:#10120f;padding:clamp(95px,12vw,175px) 5.2vw 34px}.footer-kicker{color:#8f9b8b;letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;margin-bottom:clamp(85px,12vw,165px);font-size:9px;display:flex}.secondary-shell .footer-word{color:#e8eee0;letter-spacing:-.075em;margin-bottom:clamp(80px,10vw,140px);font-size:clamp(88px,20vw,330px);font-weight:500;line-height:.7}.secondary-shell .footer-word span{color:#a9bcae;font-weight:300}.secondary-shell .footer-bottom{border-color:var(--line-dark);color:#b1bca6}.secondary-shell .footer-bottom p span{color:#7f8b7b;margin-top:6px;display:block}.secondary-shell .footer nav a:after{display:none}.secondary-shell .footer a{transition:color .25s}.secondary-shell .footer a:hover{color:#e8eee0}.secondary-shell .not-found{background:0 0}.secondary-shell .not-found-grid{border-color:var(--line-dark)}.secondary-shell .not-found>div:nth-child(2){align-self:center}.secondary-shell .not-found h1 em{color:#b9c6b4}@media (max-width:900px){.secondary-shell .work-layout{grid-template-columns:1fr}.secondary-shell .visual-shell{width:min(570px,100%);position:relative;top:auto}}@media (max-width:767px){.secondary-shell .site-header{height:78px;padding:0 6vw}.secondary-shell .brand-lockup{font-size:17px}.site-header-note,.secondary-shell .desktop-nav{display:none}.secondary-shell .menu-toggle{display:block}.secondary-shell .menu-overlay{padding-top:100px}.approach--page,.secondary-shell .work,.contact--page,.secondary-shell .legal-page{padding-left:6vw;padding-right:6vw}.approach--page{padding-top:130px}.approach--page .approach-statement{margin:100px 0 70px}.approach--page .approach-statement p{font-size:clamp(58px,17vw,84px)}.approach-intro{margin-bottom:110px}.secondary-shell .principle{grid-template-columns:32px 1fr}.secondary-shell .principle p{grid-column:2}.secondary-shell .work{padding-top:135px}.secondary-shell .work-intro{grid-template-columns:1fr;gap:70px}.secondary-shell .work-intro h2{font-size:clamp(54px,15vw,75px)}.contact--page{padding-top:130px;padding-bottom:42px}.contact--page .contact-copy{padding-top:0}.contact--page h2{margin-bottom:42px;font-size:clamp(53px,16.5vw,76px)}.contact--page .mail-link{padding:13px 0;font-size:clamp(21px,6.8vw,29px)}.secondary-shell .project-hero{padding:110px 6vw 45px}.secondary-shell .project-instrument{width:88%}.secondary-shell .project-details{padding-left:6vw;padding-right:6vw}.secondary-shell .legal-page{padding-top:130px}.secondary-shell .legal-heading{grid-template-columns:1fr;gap:70px}.secondary-shell .legal-heading h1{font-size:18vw}.secondary-shell .footer{padding-left:6vw;padding-right:6vw}.footer-kicker span:last-child{display:none}.secondary-shell .footer-word{font-size:25vw}}
