:root{font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;font-optical-sizing:auto;color:#1d1d1f;background:#fff;font-synthesis:none;--muted: #6e6e73;--surface: #f5f5f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{margin:0}h1,h2,h3,p,figure,blockquote{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}img{display:block;max-width:100%;filter:grayscale(1)}::selection{background:#dcdcdc}button:active,.button:active,.nav-contact:active{transform:scale(.97);transition:transform .1s ease-out}.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.site-header{height:64px;position:sticky;top:0;z-index:20;background:#ffffffdb;backdrop-filter:blur(22px) saturate(0);-webkit-backdrop-filter:blur(22px) saturate(0)}.nav{height:100%;display:flex;align-items:center;gap:40px}.wordmark{font-size:24px;letter-spacing:-1px;font-weight:650}.nav-links{display:flex;gap:32px;margin-left:auto;font-size:12px}.nav-links a{color:#515154;padding-block:15px}.nav-links a:hover{color:#000}.nav-contact{display:inline-flex;justify-content:center;align-items:center;min-height:32px;padding:8px 16px;border-radius:30px;background:#1d1d1f;color:#fff;font-size:11px;transition:transform .15s,background .15s}.nav-contact:hover,.button:hover{background:#333}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;text-align:left;padding-top:65px;min-height:420px}.hero-content{position:relative;z-index:1}.hero-portrait{position:absolute;z-index:0;top:0;left:calc(50% + 320px);width:min(520px,52vw);transform:translate(-50%);pointer-events:none;opacity:.12;mix-blend-mode:multiply;mask-image:linear-gradient(to bottom,#000 0%,#000 66%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 66%,transparent 100%)}.hero-portrait img{width:100%;filter:grayscale(1) contrast(1.12)}.hero-name{font-size:21px;font-weight:600;letter-spacing:-.4px}h1{font-size:clamp(52px,6.7vw,94px);font-weight:650;line-height:1.06;letter-spacing:-.055em;margin-top:18px}h2{font-size:clamp(36px,4.1vw,58px);font-weight:600;line-height:1.08;letter-spacing:-.045em;text-wrap:balance}.hero-description{font-size:25px;font-weight:450;line-height:1.4;letter-spacing:-.5px;margin-top:25px;color:var(--muted)}.hero-actions{display:flex;justify-content:flex-start;align-items:center;gap:28px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:#1d1d1f;color:#fff;padding:13px 24px;min-height:46px;border-radius:30px;font-size:14px;transition:transform .15s,background .15s}.text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;letter-spacing:-.1px}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.text-link>span{font-size:20px;text-decoration:none}.section-space{padding-block:120px}.section-label{font-size:16px;color:var(--muted);font-weight:500;margin-bottom:24px;letter-spacing:-.2px}.intro{max-width:960px}.intro h2{font-size:56px}.large-copy{font-size:25px;line-height:1.48;font-weight:450;letter-spacing:-.5px;color:var(--muted);max-width:780px;margin-top:32px}.capabilities{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px;padding-top:30px;border-top:1px solid #d2d2d7}.capabilities h3{font-size:20px;font-weight:600;letter-spacing:-.5px;margin-bottom:14px}.capabilities p{font-size:15px;line-height:1.6;color:var(--muted)}.experience{background:var(--surface)}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:65px}.section-top .text-link{white-space:nowrap}.section-top .section-label{margin-bottom:18px}.career-list{border-top:1px solid #d2d2d7}.career-list details{border-bottom:1px solid #d2d2d7}.career-list summary{list-style:none;display:grid;grid-template-columns:1fr 150px 44px;align-items:center;gap:30px;cursor:pointer;padding-block:30px}.career-list summary::-webkit-details-marker{display:none}.career-company{font-size:26px;font-weight:500;letter-spacing:-.7px}.career-company small{display:block;font-size:14px;color:var(--muted);font-weight:400;letter-spacing:0;margin-top:9px}.career-date{font-size:14px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.expand-icon{width:36px;height:36px;display:grid;place-items:center;font-size:25px;font-weight:300;border-radius:100%;background:#e8e8ed;color:#515154;transition:transform .2s,background .2s}.career-list summary:hover .expand-icon{background:#dddde2}.career-list details[open] .expand-icon{transform:rotate(45deg)}.career-detail{max-width:620px;padding:0 0 30px}.career-detail>p{font-size:17px;line-height:1.6;color:var(--muted)}.career-detail .stack{font-size:12px;margin-top:17px;color:#515154}.career-detail .text-link{margin-top:10px}.approach{background:#000;color:#f5f5f7}.approach .section-label{color:#a1a1a6}.approach h2{font-size:clamp(40px,5.3vw,72px);max-width:1000px}.approach-description{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:45px}.approach-description p{font-size:20px;line-height:1.6;letter-spacing:-.25px;color:#a1a1a6}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin-top:80px}.process article{border-top:1px solid #424245;padding-top:25px}.process-index{font-size:13px;color:#86868b;font-variant-numeric:tabular-nums}.process h3{font-size:28px;font-weight:500;letter-spacing:-.6px;margin:30px 0 16px}.process p{font-size:16px;line-height:1.7;color:#a1a1a6}.about-heading{margin-bottom:55px}.about-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.about-photo{height:390px;overflow:hidden;border-radius:4px}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:48% 50%}.about-copy>p{font-size:17px;line-height:1.65;color:var(--muted);margin-bottom:20px;letter-spacing:-.2px}.about-copy .text-link{margin-top:5px}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:70px;padding-top:40px;border-top:1px solid #d2d2d7}.credentials strong{display:block;font-size:54px;line-height:1.1;font-weight:550;letter-spacing:-2px}.credentials span{display:block;font-size:13px;color:var(--muted);margin-top:14px}.recommendation{background:var(--surface);padding:95px 0}.quote-wrap{max-width:850px;text-align:center}.quote-wrap .section-label{font-size:14px}.quote-wrap blockquote{font-size:35px;line-height:1.3;letter-spacing:-1px;font-weight:500;text-wrap:balance}.quote-author{font-size:14px;font-weight:500;margin-top:32px}.quote-author span{display:block;color:var(--muted);font-weight:400;margin-top:7px;font-size:12px}.quote-wrap .text-link{margin-top:19px;font-size:12px}.quote-wrap .text-link span{font-size:16px}.contact{text-align:center;padding-bottom:100px}.contact h2{font-size:clamp(42px,5vw,68px)}.contact>p:not(.section-label):not(.copy-status){font-size:20px;color:var(--muted);margin-top:24px;line-height:1.5}.contact>.button{margin-top:32px}.email-row{display:flex;align-items:center;justify-content:center;gap:3px;margin-top:18px;color:var(--muted);font-size:13px}.email-row>a:hover{text-decoration:underline}.email-row button{height:44px;width:44px;border:0;background:transparent;color:inherit;border-radius:100%}.email-row button:hover{background:var(--surface)}.email-row svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5}.copy-status{font-size:12px;min-height:20px;color:var(--muted)}.footer{background:var(--surface);padding-block:26px;color:var(--muted);font-size:11px}.footer>.wrap{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer .wrap>div{display:flex;gap:26px}.footer a{padding-block:12px}.footer a:hover{text-decoration:underline}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#000;color:#fff;padding:15px}.skip-link:focus{top:10px}@media(min-width:1600px){.hero{padding-top:100px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}h1{font-size:76px}.intro h2{font-size:48px}.section-space{padding-block:95px}.section-top{gap:25px}.section-top h2{font-size:43px}.about-layout{gap:40px}.about-photo{height:400px}.about-copy>p{font-size:15px}.approach-description{gap:40px}.approach-description p{font-size:18px}.process{gap:40px}.capabilities{gap:30px}}@media(max-width:700px){html{scroll-padding-top:70px}.wrap{width:calc(100% - 40px)}.site-header{height:60px}.nav{gap:15px}.wordmark{font-size:22px}.nav-contact{margin-left:auto;font-size:11px;min-height:32px;padding-inline:14px}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:40px;height:44px;padding:10px;background:none;border:0}.menu-toggle span{height:1px;width:18px;background:#1d1d1f;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.nav-links{position:absolute;top:60px;left:0;right:0;display:flex;flex-direction:column;gap:0;margin:0;padding:12px 25px 24px;background:#fffffffa;visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s;box-shadow:0 20px 25px #00000008}.nav-links.is-open{visibility:visible;opacity:1;transform:translateY(0)}.nav-links a{padding-block:16px;font-size:17px;min-height:48px}.hero{padding-top:58px;min-height:390px}.hero-portrait{display:block;top:45px;left:calc(100% - 52px);width:270px;opacity:.08}.hero-name{font-size:17px}.hero h1{font-size:clamp(44px,9.7vw,66px);max-width:550px;margin:20px 0 0;letter-spacing:-.055em}.hero-description{font-size:20px;letter-spacing:-.3px;margin-top:23px}.hero-actions{margin-top:25px;gap:25px}.button{font-size:13px;padding:12px 22px}.text-link{font-size:13px}.section-space{padding-block:75px}.section-label{font-size:14px;margin-bottom:18px}h2,.intro h2{font-size:38px;letter-spacing:-1.5px}.large-copy{font-size:21px;line-height:1.5;letter-spacing:-.3px;margin-top:25px}.capabilities{grid-template-columns:1fr;gap:28px;margin-top:38px;padding-top:28px}.capabilities h3{font-size:20px;margin-bottom:8px}.capabilities p{font-size:15px;max-width:460px}.section-top{display:block;margin-bottom:30px}.section-top h2{font-size:38px}.section-top>.text-link{margin-top:15px}.career-list summary{grid-template-columns:1fr auto 30px;gap:14px;padding-block:25px}.career-company{font-size:20px;letter-spacing:-.5px}.career-company small{font-size:11px;line-height:1.5;max-width:180px}.career-date{font-size:11px}.expand-icon{width:28px;height:28px;font-size:20px}.career-detail{padding-bottom:24px;max-width:92%}.career-detail>p{font-size:15px}.career-detail .stack{font-size:11px}.approach h2{font-size:39px}.approach-description{grid-template-columns:1fr;gap:22px;margin-top:30px}.approach-description p{font-size:17px;line-height:1.6}.process{grid-template-columns:1fr;gap:28px;margin-top:45px}.process article{display:grid;grid-template-columns:25px 1fr;column-gap:17px;padding-top:23px}.process-index{align-self:center}.process h3{font-size:24px;margin:0}.process p{grid-column:2;margin-top:12px;font-size:15px}.process p br{display:none}.about-heading{margin-bottom:30px}.about-layout{grid-template-columns:1fr;gap:30px}.about-photo{height:310px}.about-copy>p{font-size:16px}.credentials{gap:25px 15px;margin-top:35px;padding-top:30px}.credentials strong{font-size:36px;letter-spacing:-1.6px}.credentials span{font-size:10px;line-height:1.5;max-width:100px;margin-top:10px}.recommendation{padding-block:65px}.quote-wrap blockquote{font-size:27px;letter-spacing:-.7px;line-height:1.4}.quote-author{margin-top:27px}.contact h2{font-size:41px}.contact>p:not(.section-label):not(.copy-status){font-size:17px;max-width:280px;margin-inline:auto}.contact{padding-bottom:60px}.email-row{font-size:12px}.footer>.wrap{flex-direction:column;align-items:flex-start;gap:15px}.footer .wrap>div{width:100%;justify-content:space-between;gap:20px}}@media(max-width:380px){.hero h1{font-size:45px;max-width:260px}.hero-description{font-size:18px}.career-list summary{gap:9px;grid-template-columns:1fr auto 26px}.career-company{font-size:17px}.career-date{font-size:10px}.credentials strong{font-size:31px}.credentials span{font-size:9px}.contact h2{font-size:36px}.approach h2{font-size:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media(prefers-reduced-transparency:reduce){.site-header,.nav-links{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}}@media(prefers-contrast:more){:root{--muted: #454545}.site-header{background:#fff;border-bottom:1px solid #1d1d1f}.career-list,.career-list details,.capabilities,.credentials{border-color:#555}.approach .section-label,.approach-description p,.process p,.process-index{color:#d5d5d5}}.stack-scroll{height:1150px;height:max(850px,135svh);margin-top:52px;--spread: 24px;--turn: -27deg;--tilt: 54deg;--scene-scale: 1;--progress: 0}.stack-stage{position:sticky;top:84px;height:min(620px,calc(100svh - 110px));min-height:460px;overflow:hidden;border-radius:20px;background:#f5f5f7;isolation:isolate}.stack-heading{position:absolute;top:34px;left:38px;z-index:2}.stack-heading .section-label{font-size:12px;margin-bottom:8px}.stack-heading>p:last-child{font-size:23px;font-weight:550;letter-spacing:-.7px}.stack-scene{position:absolute;inset:20px 0 0;display:grid;place-items:center;perspective:1600px}.stack-object{position:relative;width:430px;height:275px;transform-style:preserve-3d;transform:translateY(5px) scale(var(--scene-scale)) rotateX(var(--tilt)) rotate(var(--turn))}.stack-plane{position:absolute;inset:0;border-radius:14px;backface-visibility:hidden;border:1px solid #c7c7cb;box-shadow:-1px 2px #b8b8bd,-2px 4px #d6d6db,0 14px 30px #0000000c}.plane-interface{background:#fff;transform:translateZ(var(--spread))}.plane-logic{background:#202023;color:#fff;transform:translateZ(0);border-color:#45454a;box-shadow:-1px 2px #55555b,-2px 4px #333338,0 14px 30px #00000018}.plane-data{background:#e8e8ed;transform:translateZ(calc(-1 * var(--spread)))}.stack-shadow{position:absolute;width:410px;height:220px;background:#00000014;filter:blur(24px);border-radius:50%;transform:translateY(110px) rotate(-20deg);opacity:.5}.plane-label{font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1px;padding:20px 24px 15px}.data-table{margin:0 24px;font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:#6e6e73}.data-table>div{display:grid;grid-template-columns:50px 1fr 1fr;gap:25px;align-items:center;padding:11px 0;border-top:1px solid #c8c8cf}.data-table i{display:block;height:4px;background:#b8b8c0;border-radius:5px;width:65%}.logic-code{font:12px/2.2 ui-monospace,SFMono-Regular,Menlo,monospace;padding:13px 24px;color:#ededf1}.code-muted{color:#9a9aa5}.code-indent{padding-left:20px}.logic-footer{display:flex;justify-content:space-between;margin:14px 24px 0;border-top:1px solid #45454a;padding-top:15px;font:9px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.7px;color:#a1a1aa}.interface-bar{display:flex;justify-content:space-between;align-items:center;height:42px;padding:0 19px;border-bottom:1px solid #e5e5e9;font:9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1px;color:#77777e}.interface-dots{display:flex;gap:5px}.interface-dots i{height:5px;width:5px;border-radius:50%;background:#c9c9cf}.interface-symbol{font-size:15px}.interface-content{display:flex;height:calc(100% - 42px)}.interface-sidebar{border-right:1px solid #ededf0;width:54px;padding:23px 18px}.interface-sidebar i{display:block;height:13px;border:1px solid #d7d7dc;margin-bottom:20px;border-radius:3px}.interface-sidebar i:first-child{background:#252528;border-color:#252528}.interface-main{padding:23px;flex:1}.interface-title{font-size:22px;font-weight:550;letter-spacing:-.7px}.interface-title>span{display:block;font-size:9px;color:#8b8b92;font-weight:400;letter-spacing:0;margin-top:7px}.interface-blocks{display:grid;grid-template-columns:.8fr 1.2fr;gap:13px;margin-top:23px}.interface-blocks>div{height:94px;border:1px solid #e5e5ea;border-radius:7px;padding:12px}.interface-blocks>div>span{display:block;color:#818189;font-size:8px}.interface-blocks b{display:block;font-size:28px;font-weight:500;margin-top:9px}.interface-blocks>div>i{display:block;width:50%;height:3px;background:#e9e9ed;margin-top:5px}.mini-bars{display:flex;gap:6px;height:43px;align-items:flex-end;margin-top:11px}.mini-bars i{background:#27272b;flex:1;height:45%;border-radius:2px 2px 0 0}.mini-bars i:nth-child(2){height:66%}.mini-bars i:nth-child(3){height:53%}.mini-bars i:nth-child(4){height:82%}.mini-bars i:nth-child(5){height:70%}.mini-bars i:nth-child(6){height:87%}.mini-bars i:nth-child(7){height:100%}.stack-bottom{position:absolute;bottom:28px;left:38px;right:38px;display:flex;justify-content:space-between;align-items:center;z-index:2;color:#6e6e73;font-size:11px}.scroll-cue{display:flex;align-items:center;gap:13px}.scroll-cue>span{font-size:17px}.layer-key{display:flex;gap:22px}.layer-key span:before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px;border:1px solid #88888e;border-radius:1px}.layer-key span:nth-child(2):before{background:#202023;border-color:#202023}.layer-key span:nth-child(3):before{background:#c6c6ce;border-color:#c6c6ce}.stack-position{font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.stack-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#e6e6eb}.stack-progress>span{display:block;width:100%;height:100%;background:#8b8b92;transform:scaleX(var(--progress));transform-origin:left}@media(max-width:700px){.stack-scroll{margin-top:38px;height:max(760px,115svh)}.stack-stage{top:74px;min-height:430px;height:min(530px,calc(100svh - 100px));border-radius:14px}.stack-heading{left:22px;top:25px}.stack-heading .section-label{font-size:10px}.stack-heading>p:last-child{font-size:20px}.stack-object{zoom:.64}.stack-scene{perspective:1000px}.stack-shadow{width:230px;height:120px;transform:translateY(90px) rotate(-20deg)}.stack-bottom{left:22px;right:22px;bottom:23px;font-size:9px}.layer-key{gap:10px}.layer-key span:before{margin-right:4px;width:4px;height:4px}.stack-position{display:none}.scroll-cue{gap:6px}}@media(max-width:380px){.stack-object{zoom:.54}.layer-key{gap:7px}.stack-bottom{left:15px;right:15px}}@media(max-height:560px){.stack-scroll{height:auto}.stack-stage{position:relative;top:auto;min-height:440px}}@media(prefers-reduced-motion:reduce){.stack-scroll{height:auto;--spread: 105px !important;--turn: -27deg !important;--tilt: 54deg !important;--scene-scale: 1 !important}.stack-stage{position:relative;top:auto}.scroll-cue,.stack-progress{visibility:hidden}}
