@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.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:Archivo;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.1gyfqm5yhhzs7.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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.357dd_6abeqge.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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.17-aodiw50953.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:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_9d0e86e1-module__T1JmNW__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_9d0e86e1-module__T1JmNW__variable{--font-display:"Archivo", "Archivo Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1u30mmyq6lnsd.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.1i-sca43-qwng.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_f3fa0376-module__DiErIa__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_f3fa0376-module__DiErIa__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--ink:#0c0b0a;--orange:#ff6737;--bone:#f5ede6;--bone-on-dark:#f6ede7;--peach:#fff3ed;--hair-20:#ff673733;--hair-22:#ff673738;--hair-40:#ff673766;--hair-45:#ff673773;--hair-50:#ff673780;--hair-60:#ff673799;--chip-border-dark:#f6ede752;--hair-ink-25:#0c0b0a40;--pad-x:56px;--display:var(--font-display), Archivo, Helvetica, sans-serif;--mono:var(--font-mono), "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--ink);font-family:var(--display);overflow-x:clip}::selection{background:var(--ink);color:var(--orange)}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}img,svg{max-width:100%}:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.skip-link{z-index:100;background:var(--orange);color:var(--ink);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;font-size:12px;transition:top .12s linear;position:absolute;top:-48px;left:12px}.skip-link:focus{top:12px}.btn{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:15px 26px 14px;font-size:13px;font-weight:500;display:inline-flex}.btn .arrow{font-family:var(--display)}.btn-ink{background:var(--ink);color:var(--orange)}.btn-ink:hover{background:var(--peach);color:var(--ink)}.btn-ink-outline{border:1px solid var(--ink);background:var(--bone);padding:14px 25px 13px}.btn-ink-outline:hover{background:var(--ink);color:var(--orange)}.btn-orange{background:var(--orange);color:var(--ink);padding:16px 26px 15px}.btn-orange:hover{background:var(--ink);color:var(--orange)}.btn-orange-outline{border:1px solid var(--orange);background:var(--bone);color:var(--ink);padding:15px 25px 14px}.btn-orange-outline:hover{background:var(--orange);color:var(--ink)}.btn-bone-outline{border:1px solid var(--ink);color:var(--ink);padding:11px 18px 10px;font-size:13px;font-weight:400}.btn-bone-outline:hover{background:var(--ink);color:var(--bone)}.site-header{z-index:50;background:var(--ink);color:var(--bone-on-dark);border-bottom:1px solid var(--hair-60);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:14px 28px;display:grid;position:sticky;top:0}.brand{justify-self:start;align-items:center;gap:10px;display:flex}.brand .logo{border:1px solid var(--orange);flex:none;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.brand .logo span{background:var(--orange);width:10px;height:10px;display:block;transform:rotate(45deg)}.brand .wordmark{letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;align-items:baseline;gap:7px;font-size:14px;font-weight:500;display:flex}.brand .wordmark em{color:var(--orange);font-style:normal}.site-nav{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;gap:28px;font-size:12px;display:flex}.site-nav a{border-bottom:1px solid #0000;padding:4px 2px}.site-nav a:hover{border-bottom-color:var(--orange)}.header-cta{justify-self:end;align-items:center;gap:14px;display:flex}.cta-pill{background:var(--orange);color:var(--ink);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;padding:9px 16px 8px;font-size:12px;font-weight:500}.cta-pill:hover{background:var(--peach)}.cta-pill-outline{border:1px solid var(--orange);color:var(--bone-on-dark);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:0 0;padding:8px 16px 7px;font-size:12px;font-weight:500}.cta-pill-outline:hover{background:var(--orange);color:var(--ink)}.mobilemenu{justify-self:end;display:none}.mobilemenu summary{cursor:pointer;padding:8px 4px;list-style:none}.mobilemenu summary::-webkit-details-marker{display:none}.mobilemenu .bars{background:var(--orange);width:24px;height:2px;display:block;position:relative}.mobilemenu .bars:before,.mobilemenu .bars:after{content:"";background:var(--orange);width:24px;height:2px;position:absolute;left:0}.mobilemenu .bars:before{top:-7px}.mobilemenu .bars:after{top:7px}.mobilemenu-panel{background:var(--ink);border-bottom:1px solid var(--hair-60);flex-direction:column;padding:8px 28px 20px;display:flex;position:absolute;top:100%;left:0;right:0}.mobilemenu-panel a{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--hair-22);cursor:pointer;padding:13px 0;font-size:13px}.mobilemenu-panel a:last-child{color:var(--orange);border-bottom:0}.hero{background:var(--bone);color:var(--ink);border-bottom:1px solid var(--ink);position:relative;overflow:clip}.hero:before{content:"";pointer-events:none;opacity:.16;background-image:linear-gradient(to right, var(--ink) 1px, transparent 1px), linear-gradient(to bottom, var(--ink) 1px, transparent 1px);background-size:96px 96px;position:absolute;inset:0}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:66vh;display:grid}.hero-copy{padding:72px 40px 44px var(--pad-x);z-index:2;flex-direction:column;justify-content:space-between;gap:48px;display:flex;position:relative}.hero-top{flex-direction:column;gap:30px;display:flex}.hero-eyebrow{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:14px}.hero h1{letter-spacing:-.045em;text-wrap:balance;font-size:clamp(56px,8.4vw,132px);font-weight:500;line-height:.88}.hero-intro{border-left:1px solid var(--ink);max-width:620px;margin-top:32px;padding-left:22px}.hero-intro p{font-family:var(--mono);font-size:18px;line-height:1.62}.hero-acts{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.hero-plate{justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.plate-art{position:absolute;inset:0}.hero-emblem{z-index:3;background:var(--bone);border:1px solid var(--ink);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:188px;height:188px;display:flex;position:relative}.hero-emblem .diamond{background:var(--orange);width:18px;height:18px;display:block;transform:rotate(45deg)}.hero-emblem .legend{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;font-size:11px;line-height:1.7}.rosette-web,.rosette-ticks{transform-box:view-box;transform-origin:50%}.rosette-web{animation:150s linear infinite rosette-drift}.rosette-ticks{animation:210s linear infinite reverse rosette-drift}@keyframes rosette-drift{to{transform:rotate(360deg)}}.spiral-orbit,.nested-turn{transform-box:view-box;transform-origin:50%}.spiral-orbit{animation:36s linear infinite rosette-drift}.nested-turn{animation:48s linear infinite reverse rosette-drift}.lattice-warp{animation:5s ease-in-out infinite alternate lattice-weave}.lattice-weft{animation:5s ease-in-out infinite alternate-reverse lattice-weave}@keyframes lattice-weave{0%{transform:translateY(-12px)}to{transform:translateY(12px)}}.wave-path{animation:3.5s ease-in-out infinite wave-pulse}@keyframes wave-pulse{0%,to{opacity:var(--wave-o)}50%{opacity:calc(var(--wave-o) * .1)}}.hero-plate .plate-caption{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:right;opacity:.75;font-size:11px;position:absolute;bottom:22px;right:26px}.section-dark{background:var(--ink);color:var(--bone-on-dark);padding:96px var(--pad-x) 104px;border-bottom:1px solid var(--hair-60)}.section-light{background:var(--bone);color:var(--ink);padding:96px var(--pad-x) 104px;border-bottom:1px solid var(--ink)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.section-head h2{letter-spacing:-.04em;font-size:clamp(38px,4.6vw,72px);font-weight:500;line-height:.92}.section-head .caption{font-family:var(--mono);letter-spacing:.06em;font-size:13px;line-height:1.6}.section-dark .section-head .caption{color:var(--orange)}.section-light .section-head{border-bottom:1px solid var(--ink);padding-bottom:26px}.toolkit{background:var(--ink);color:var(--bone-on-dark);padding:56px var(--pad-x) 60px;border-bottom:1px solid var(--hair-60)}.toolkit-inner{max-width:1980px}.toolkit-head{border-bottom:1px solid var(--hair-45);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:4px;padding-bottom:16px;display:flex}.toolkit-head h2{letter-spacing:-.035em;font-size:clamp(26px,2.6vw,40px);font-weight:500;line-height:.95}.toolkit-head .caption{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--orange);font-size:11px}.tk-row{border-bottom:1px solid var(--hair-20);grid-template-columns:190px minmax(0,1fr);align-items:start;gap:24px;padding:14px 2px;display:grid}.toolkit .tk-row:last-of-type{border-bottom-color:var(--hair-45)}.tk-cat{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--orange);align-items:baseline;gap:10px;font-size:11px;display:flex}.tk-cat .dash{background:var(--hair-60);width:14px;height:1px;transform:translateY(-4px)}.tk-cat .name{color:var(--bone-on-dark)}.tk-chips{flex-wrap:wrap;gap:6px;display:flex}.tk-chips span{font-family:var(--mono);border:1px solid var(--chip-border-dark);padding:5px 10px 4px;font-size:12px}.tk-chips span:hover{background:var(--orange);color:var(--ink);border-color:var(--orange)}.disciplines .section-head{margin-bottom:56px}.disciplines .section-head h2{letter-spacing:-.04em;white-space:nowrap;font-size:clamp(28px,3.6vw,58px)}.disciplines .section-head .caption{white-space:nowrap}.disc-grid{border:1px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.disc-grid article{border-right:1px solid var(--ink)}.disc-grid article:last-child{border-right:0}.disc-art{border-bottom:1px solid var(--ink);height:240px;position:relative;overflow:hidden}.disc-art .tag{font-family:var(--mono);letter-spacing:.12em;background:var(--bone);padding:4px 8px 3px;font-size:11px;position:absolute;top:14px;left:16px}.disc-body{flex-direction:column;gap:14px;padding:26px 24px 32px;display:flex}.disc-body h3{letter-spacing:-.02em;font-size:26px;font-weight:500}.disc-body p{font-family:var(--mono);font-size:13px;line-height:1.65}.pill-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.pill-chips span{border:1px solid var(--ink);font-family:var(--mono);border-radius:999px;padding:4px 10px 3px;font-size:11px}.work .section-head{margin-bottom:44px}.work-cols{grid-template-columns:52px minmax(0,1.15fr) minmax(0,1.5fr) 108px minmax(0,.8fr) 92px;align-items:center;gap:18px;display:grid}.work-thead{border-bottom:1px solid var(--hair-40);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--orange);padding:10px 8px;font-size:11px}.work-thead .year{text-align:right}.work-row{border-bottom:1px solid var(--hair-22);padding:20px 8px}.work-row:hover{background:var(--orange);color:var(--ink);padding-left:18px}.work-row .no{font-family:var(--mono);opacity:.65;font-size:12px}.work-row .client{letter-spacing:-.02em;font-size:27px}.work-row .scope{font-family:var(--mono);opacity:.85;font-size:13px}.work-row .type{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:999px;justify-self:start;padding:4px 9px 3px;font-size:11px}.work-row .stack{font-family:var(--mono);opacity:.85;font-size:12px}.work-row .year{font-family:var(--mono);text-align:right;opacity:.85;font-size:12px}.work-prev{border-top:1px solid var(--hair-40);flex-direction:column;gap:16px;margin-top:44px;padding-top:22px;display:flex}.work-prev .label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--orange);font-size:11px}.work-prev .chips{font-family:var(--mono);letter-spacing:.06em;flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.work-prev .chips span{border:1px solid var(--hair-50);border-radius:999px;padding:6px 12px 5px}.writing .section-head{margin-bottom:32px}.writing .section-head h2{font-size:clamp(34px,4.2vw,66px)}.writing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.writing-card{border:1px solid var(--ink);flex-direction:column;justify-content:space-between;gap:26px;min-height:320px;padding:24px 24px 22px;display:flex}a.writing-card:hover{background:var(--ink);color:var(--bone)}.writing-card .card-top{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:11px;display:flex}.writing-card .ring{border:1px solid;border-radius:50%;width:12px;height:12px}.writing-card .card-mid{flex-direction:column;gap:14px;display:flex}.writing-card .title{letter-spacing:-.028em;font-size:27px;line-height:1.06}.writing-card .dek{font-family:var(--mono);font-size:13px;line-height:1.6}.writing-card .card-foot{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;border-top:1px solid;justify-content:space-between;align-items:center;padding-top:14px;font-size:11px;display:flex}.writing-soon{grid-column:1/-1;min-height:220px}.method{border-bottom:1px solid var(--orange)}.method .section-head{margin-bottom:56px}.method-grid{border-top:1px solid var(--hair-45);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.method-stage{border-right:1px solid var(--hair-45);flex-direction:column;gap:18px;padding:28px 24px 34px;display:flex}.method-stage:first-child{padding-left:0}.method-stage:last-child{border-right:0;padding-right:0}.method-node{align-items:center;gap:10px;display:flex}.method-node .dot{border:1px solid var(--orange);border-radius:50%;flex:none;width:11px;height:11px}.method-stage:first-child .method-node .dot{background:var(--orange)}.method-node .wire{background:var(--hair-50);flex:1;height:1px}.method-node .numeral{font-family:var(--mono);letter-spacing:.14em;font-size:11px}.method-stage h3{letter-spacing:-.03em;font-size:30px;font-weight:500}.method-stage p{font-family:var(--mono);opacity:.9;font-size:13px;line-height:1.65}.method-band{height:150px;margin-top:48px;position:relative;overflow:hidden}.refs .section-head{margin-bottom:48px}.refs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.ref-card{border:1px solid var(--ink);flex-direction:column;justify-content:space-between;gap:22px;padding:28px 24px 22px;display:flex}.ref-card:hover{background:var(--ink);color:var(--bone)}.ref-mark{align-items:center;gap:8px;display:flex}.ref-mark .sq{background:currentColor;border-radius:3px;width:14px;height:14px}.ref-mark .ci{background:currentColor;border-radius:50%;width:14px;height:14px;margin-left:-6px}.ref-card blockquote{letter-spacing:-.015em;font-size:19px;line-height:1.45}.ref-card figcaption{font-family:var(--mono);border-top:1px solid;padding-top:14px;font-size:12px;line-height:1.6}.ref-card figcaption span{opacity:.7}.contact{background:var(--ink);color:var(--bone-on-dark);padding:104px var(--pad-x) 40px;position:relative;overflow:hidden}.contact .backdrop{opacity:.5;pointer-events:none;position:absolute;inset:0}.contact-grid{z-index:2;border-bottom:1px solid var(--hair-45);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end;gap:56px;padding-bottom:72px;display:grid;position:relative}.contact-copy{flex-direction:column;gap:30px;display:flex}.contact-copy .label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-size:12px}.contact-copy h2{letter-spacing:-.045em;font-size:clamp(48px,7.4vw,116px);font-weight:500;line-height:.87}.contact-acts{flex-wrap:wrap;gap:14px;display:flex}.contact-list{font-family:var(--mono);border-left:1px solid var(--hair-45);grid-template-columns:auto 1fr;gap:12px 22px;padding-left:24px;font-size:13px;display:grid}.contact-list dt{opacity:.6}.footer-strip{z-index:2;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-top:26px;font-size:11px;display:flex;position:relative}.footer-strip .copyright{opacity:.65}.footer-strip .links{gap:22px;display:flex}.footer-strip .links a{border-bottom:1px solid #0000}.footer-strip .links a:hover{border-bottom-color:var(--orange)}.page-hero{background:var(--bone);color:var(--ink);padding:88px var(--pad-x) 56px;border-bottom:1px solid var(--ink);position:relative;overflow:clip}.page-hero:before{content:"";pointer-events:none;opacity:.16;background-image:linear-gradient(to right, var(--ink) 1px, transparent 1px), linear-gradient(to bottom, var(--ink) 1px, transparent 1px);background-size:96px 96px;position:absolute;inset:0}.page-hero>*{z-index:2;position:relative}.page-hero .eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px;font-size:12px;display:block}.page-hero h1{letter-spacing:-.045em;font-size:clamp(44px,6.4vw,104px);font-weight:500;line-height:.9}.page-hero .caption{font-family:var(--mono);letter-spacing:.06em;max-width:640px;margin-top:24px;font-size:13px;line-height:1.6}.page-body{background:var(--bone);color:var(--ink);padding:72px var(--pad-x) 96px;border-bottom:1px solid var(--ink)}.about-grid{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:56px;display:grid}.about-portrait{border:1px solid var(--ink)}.about-portrait img{width:100%;height:auto;display:block}.about-portrait .cap{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;border-top:1px solid var(--ink);padding:10px 12px 9px;font-size:11px}.about-text{flex-direction:column;gap:22px;max-width:720px;display:flex}.about-text p{font-family:var(--mono);font-size:14px;line-height:1.7}.about-text b{font-weight:500}.values-grid{border:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;display:grid}.values-grid .value{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;gap:10px;padding:20px 22px 24px;display:flex}.values-grid .value:nth-child(2n){border-right:0}.values-grid .value:nth-last-child(-n+2){border-bottom:0}.values-grid h3{letter-spacing:-.02em;font-size:19px;font-weight:500}.values-grid p{font-family:var(--mono);font-size:12px;line-height:1.6}.about-cta{margin-top:16px}.cv-download{margin-top:32px}.cv-intro{font-family:var(--mono);border-left:1px solid var(--ink);max-width:760px;padding-left:22px;font-size:14px;line-height:1.7}.cv-section{margin-top:64px}.cv-section-head{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid var(--ink);align-items:baseline;gap:10px;padding-bottom:12px;font-size:11px;display:flex}.cv-section-head .idx{color:var(--orange)}.cv-section-head .dash{background:var(--ink);width:14px;height:1px;transform:translateY(-4px)}.cv-role{border-bottom:1px solid var(--hair-ink-25);grid-template-columns:190px minmax(0,1fr);gap:24px;padding:26px 2px 30px;display:grid}.cv-role:last-child{border-bottom:0}.cv-role .when{font-family:var(--mono);font-size:12px;line-height:1.6}.cv-role h3{letter-spacing:-.02em;font-size:24px;font-weight:500}.cv-role .org{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--orange);margin-top:6px;font-size:12px}.cv-role .role-body{font-family:var(--mono);margin-top:14px;font-size:13px;line-height:1.65}.cv-role ul{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.cv-role li{font-family:var(--mono);padding-left:18px;font-size:13px;line-height:1.65;position:relative}.cv-role li:before{content:"";background:var(--orange);width:8px;height:1px;position:absolute;top:.72em;left:0}.cv-edu{border-bottom:1px solid var(--hair-ink-25);grid-template-columns:190px minmax(0,1fr);gap:24px;padding:26px 2px 30px;display:grid}.cv-edu:last-child{border-bottom:0}.cv-edu h3{letter-spacing:-.02em;font-size:19px;font-weight:500}.cv-edu .place{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--orange);margin-top:6px;font-size:12px}.cv-edu .when{font-family:var(--mono);font-size:12px;line-height:1.6}.cv-edu .detail{font-family:var(--mono);margin-top:12px;font-size:13px;line-height:1.65}.cv-skills .tk-row{border-bottom-color:var(--hair-ink-25)}.cv-skills .tk-cat .dash{background:var(--ink)}.cv-skills .tk-cat .name{color:var(--ink)}.cv-skills .tk-chips span{border-color:var(--ink)}.cv-skills .tk-chips span:hover{background:var(--ink);color:var(--bone);border-color:var(--ink)}.notes-list .entry{border-bottom:1px solid var(--hair-ink-25);grid-template-columns:52px minmax(0,1.6fr) minmax(0,1fr) 120px;align-items:center;gap:18px;padding:20px 8px;display:grid}.notes-list a.entry:hover{background:var(--ink);color:var(--bone);padding-left:18px}.notes-list .entry .no{font-family:var(--mono);opacity:.65;font-size:12px}.notes-list .entry .title{letter-spacing:-.02em;font-size:24px}.notes-list .entry .cat{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.notes-list .entry .date{font-family:var(--mono);text-align:right;opacity:.85;font-size:12px}.notes-empty{border:1px solid var(--ink);flex-direction:column;gap:18px;max-width:720px;padding:40px 32px;display:flex}.notes-empty .card-mid{flex-direction:column;gap:14px;display:flex}.notes-empty .card-top{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:11px;display:flex}.notes-empty .ring{border:1px solid;border-radius:50%;width:12px;height:12px}.notes-empty .title{letter-spacing:-.028em;font-size:27px;line-height:1.06}.notes-empty .dek{font-family:var(--mono);font-size:13px;line-height:1.6}.article-back{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid #0000;font-size:12px;display:inline-block}.article-back:hover{border-bottom-color:var(--ink)}.article-prose{max-width:720px;margin-top:40px}.article-prose p,.article-prose li{font-family:var(--mono);font-size:14px;line-height:1.75}.article-prose p{margin:0 0 20px}.article-prose h2{letter-spacing:-.03em;margin:44px 0 16px;font-size:28px;font-weight:500}.article-prose h3{letter-spacing:-.02em;margin:36px 0 14px;font-size:21px;font-weight:500}.article-prose ul{flex-direction:column;gap:10px;margin:0 0 20px;padding:0;list-style:none;display:flex}.article-prose li{padding-left:18px;position:relative}.article-prose li:before{content:"";background:var(--orange);width:8px;height:1px;position:absolute;top:.78em;left:0}.article-prose a{border-bottom:1px solid var(--orange)}.article-prose code{font-family:var(--mono);background:#0c0b0a12;padding:1px 5px;font-size:.92em}.article-prose pre{background:var(--ink);color:var(--bone-on-dark);padding:20px;font-size:13px;line-height:1.6;overflow-x:auto}.article-prose pre code{background:0 0;padding:0}.article-prose blockquote{border-left:1px solid var(--ink);margin:0 0 20px;padding-left:22px}.notfound{background:var(--ink);color:var(--bone-on-dark);padding:120px var(--pad-x) 140px;border-bottom:1px solid var(--hair-60)}.notfound .code{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:22px;font-size:12px;display:block}.notfound h1{letter-spacing:-.045em;font-size:clamp(48px,7.4vw,116px);font-weight:500;line-height:.87}.notfound p{font-family:var(--mono);border-left:1px solid var(--hair-45);max-width:560px;margin-top:28px;padding-left:22px;font-size:14px;line-height:1.7}.notfound .acts{margin-top:40px}@media (max-width:1100px){.disciplines .section-head h2,.disciplines .section-head .caption{white-space:normal}}@media (max-width:900px){:root{--pad-x:24px}.site-header{grid-template-columns:1fr auto;padding:12px 20px}.site-nav,.header-cta{display:none}.mobilemenu{display:block}.hero-grid{grid-template-columns:1fr;min-height:0}.hero-plate{display:none}.hero-copy{padding:56px var(--pad-x) 44px;gap:40px}.section-dark,.section-light{padding:64px var(--pad-x) 72px}.toolkit{padding:44px var(--pad-x) 48px}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.method-stage{border-bottom:1px solid var(--hair-45);padding:24px 20px 28px}.method-stage:first-child{padding-left:20px}.method-stage:last-child{padding-right:20px}.method-stage:nth-child(2n){border-right:0}.method-stage:nth-last-child(-n+2){border-bottom:0}.contact{padding:72px var(--pad-x) 32px}.contact-grid{grid-template-columns:1fr;align-items:start;gap:40px;padding-bottom:56px}.about-grid{grid-template-columns:1fr;gap:40px}.about-portrait{max-width:320px}.page-hero{padding:64px var(--pad-x) 44px}.page-body{padding:56px var(--pad-x) 72px}}@media (max-width:780px){.toolkit .tk-row{grid-template-columns:1fr;gap:10px}.disc-grid{grid-template-columns:1fr}.disc-grid article{border-right:0;border-bottom:1px solid var(--ink)}.disc-grid article:last-child{border-bottom:0}.writing-grid,.refs-grid{grid-template-columns:1fr}.work-thead{display:none}.work-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"client year""scope scope""type type""stack stack";align-items:start;gap:8px 18px;padding:18px 8px}.work-row:hover{padding-left:8px}.work-row .no{display:none}.work-row .client{grid-area:client;font-size:23px}.work-row .year{text-align:right;white-space:nowrap;grid-area:year;padding-top:8px}.work-row .scope{grid-area:scope}.work-row .type{grid-area:type}.work-row .stack{grid-area:stack}.method-grid{grid-template-columns:1fr}.method-stage{border-right:0;border-bottom:1px solid var(--hair-45)}.method-stage:nth-last-child(-n+2){border-bottom:1px solid var(--hair-45)}.method-stage:last-child{border-bottom:0}.cv-role,.cv-edu,.cv-skills .tk-row{grid-template-columns:1fr;gap:10px}.notes-list .entry{grid-template-columns:minmax(0,1fr) auto;gap:6px 18px}.notes-list .entry .no{display:none}.notes-list .entry .title{grid-column:1/-1;font-size:20px}.values-grid{grid-template-columns:1fr}.values-grid .value{border-right:0}.values-grid .value:nth-last-child(-n+2){border-bottom:1px solid var(--ink)}.values-grid .value:last-child{border-bottom:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.skip-link{transition:none}.rosette-web,.rosette-ticks,.spiral-orbit,.nested-turn,.lattice-warp,.lattice-weft,.wave-path{animation:none}}
