:root{--ink:#0b0d0c;--ink-surface:#121513;--ink-raised:#191d19;--paper:#f3f2ec;--paper-dim:#c2c7c0;--muted:#a3aaa3;--line:#292f2a;--accent:#c7f36b;--accent-rgb:199,243,107;--accent-foreground:#11140d;--error:#e78578;--success:#83b88a;--motion-fast:160ms;--motion-ui:220ms;--motion-enter:420ms;--motion-hero:500ms;--motion-route:180ms;--motion-reveal:380ms;--motion-distance:10px;--motion-ease:cubic-bezier(0.22,1,0.36,1);--display:"Space Grotesk","Arial Narrow",sans-serif;--body:"Inter",Arial,sans-serif;--mono:"JetBrains Mono","Courier New",monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0b0d0c;background:var(--ink);color:#f3f2ec;color:var(--paper);color-scheme:dark;font-family:Inter,Arial,sans-serif;font-family:var(--body);font-synthesis:none;text-rendering:optimizeLegibility}*,:after,:before{box-sizing:border-box}html{background:#0b0d0c;background:var(--ink)}body,html{min-width:320px}body{background-color:#0b0d0c;background-color:var(--ink);background-image:radial-gradient(ellipse at 78% 18%,hsla(79,85%,69%,.035),#0000 34%);background-image:radial-gradient(ellipse at 78% 18%,rgba(var(--accent-rgb),.035),#0000 34%);color:#f3f2ec;color:var(--paper);font-family:Inter,Arial,sans-serif;font-family:var(--body);line-height:1.6;margin:0}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{color:inherit;font:inherit}button{cursor:pointer}::selection{background:#c7f36b;background:var(--accent);color:#0b0d0c;color:var(--ink)}:focus-visible{outline:2px solid #c7f36b;outline:2px solid var(--accent);outline-offset:4px}@keyframes route-enter{0%{opacity:.55}to{opacity:1}}@keyframes content-enter{0%{opacity:0;transform:translateY(10px);transform:translateY(var(--motion-distance))}to{opacity:1;transform:translateY(0)}}@keyframes detail-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.site-shell{min-height:100vh;overflow:clip}.content-wrap{margin-inline:auto;width:min(1160px,calc(100% - clamp(32px, 8vw, 80px)))}.skip-link{background:#c7f36b;background:var(--accent);color:#0b0d0c;color:var(--ink);left:12px;padding:10px 14px;position:fixed;top:12px;transform:translateY(-160%);z-index:100}.skip-link:focus{transform:translateY(0)}.site-header{align-items:center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b0d0cf0;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;min-height:76px;padding:0 max(40px,calc(50vw - 640px));position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand{align-items:center;display:inline-flex;flex:0 0 auto;gap:12px}.brand-mark{aspect-ratio:1;border:1px solid #c7f36b;border:1px solid var(--accent);color:#c7f36b;color:var(--accent);display:grid;font:500 12px JetBrains Mono,Courier New,monospace;font:500 12px var(--mono);place-items:center;width:38px}.brand-copy{grid-gap:1px;display:grid;gap:1px}.brand-copy strong{font:600 14px Space Grotesk,Arial Narrow,sans-serif;font:600 14px var(--display)}.brand-copy small{color:#a3aaa3;color:var(--muted);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.primary-navigation{align-items:center;display:flex;gap:clamp(14px,1.5vw,24px)}.nav-link,.nav-resume{color:#c2c7c0;color:var(--paper-dim);font-size:14px;padding:8px 0;position:relative;transition:color .16s ease;transition:color var(--motion-fast) ease}.nav-link:after{background:#c7f36b;background:var(--accent);bottom:1px;content:"";height:1px;left:0;position:absolute;right:0;transform:scaleX(0);transform-origin:left;transition:transform .16s cubic-bezier(.22,1,.36,1);transition:transform var(--motion-fast) var(--motion-ease)}.nav-link.is-active,.nav-link:hover,.nav-resume:hover{color:#f3f2ec;color:var(--paper)}.nav-link.is-active{color:#c7f36b;color:var(--accent)}.nav-link.is-active:after,.nav-link:hover:after{transform:scaleX(1)}.nav-resume{align-items:center;border:1px solid #292f2a;border:1px solid var(--line);display:inline-flex;gap:7px;padding:9px 13px}.nav-resume span,.text-link span{color:#c7f36b;color:var(--accent)}.menu-toggle{align-items:center;background:#0000;border:1px solid #292f2a;border:1px solid var(--line);display:none;flex-direction:column;gap:6px;height:42px;justify-content:center;width:42px}.menu-toggle span{background:#f3f2ec;background:var(--paper);display:block;height:1px;transition:transform .16s cubic-bezier(.22,1,.36,1);transition:transform var(--motion-fast) var(--motion-ease);width:18px}.menu-toggle.is-open span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle.is-open span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.main-content{min-height:60vh}.main-content:focus{outline:none}.route-surface{animation:route-enter .18s ease-out both;animation:route-enter var(--motion-route) ease-out both;min-height:inherit}.route-surface>.case-study>.case-hero>*,.route-surface>.contact-page>:not(.reveal),.route-surface>.missing-project>*,.route-surface>.page-intro>*{animation:content-enter .42s cubic-bezier(.22,1,.36,1) 0s both;animation:content-enter var(--motion-enter) var(--motion-ease) var(--enter-delay,0s) both}.route-surface>.case-study>.case-hero>:nth-child(2),.route-surface>.contact-page>:nth-child(2),.route-surface>.missing-project>:nth-child(2),.route-surface>.page-intro>:nth-child(2){--enter-delay:60ms}.route-surface>.case-study>.case-hero>:nth-child(3),.route-surface>.contact-page>:nth-child(3),.route-surface>.missing-project>:nth-child(3),.route-surface>.page-intro>:nth-child(3){--enter-delay:120ms}.architecture-detail-index,.architecture-step-label,.case-flow-number,.case-meta,.case-role,.experience-date,.eyebrow,.filter-count,.footer-meta,.hero-facts,.journey-location,.journey-period,.page-intro-index,.portrait-caption,.portrait-index,.project-card-meta,.section-aside{font-family:JetBrains Mono,Courier New,monospace;font-family:var(--mono);font-size:11px;line-height:1.5}.eyebrow{color:#c7f36b;color:var(--accent);margin:0 0 16px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space Grotesk,Arial Narrow,sans-serif;font-family:var(--display);font-weight:500;line-height:1.08}.home-hero{grid-gap:clamp(42px,5.3vw,76px);align-items:center;display:grid;gap:clamp(42px,5.3vw,76px);grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);min-height:640px;padding-block:64px 72px}.hero-copy{animation:content-enter .42s cubic-bezier(.22,1,.36,1) both;animation:content-enter var(--motion-enter) var(--motion-ease) both;position:relative;z-index:1}.hero-eyebrow{margin-bottom:25px}.home-hero h1{font-size:clamp(58px,5.3vw,74px);letter-spacing:-.045em;margin:0 0 24px;max-width:750px}.contact-page h1 span,.home-hero h1 span,.page-intro h1 span{color:#c7f36b;color:var(--accent)}.hero-intro{color:#c2c7c0;color:var(--paper-dim);font-size:17px;line-height:1.75;margin-bottom:31px;max-width:530px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{align-items:center;border:1px solid #292f2a;border:1px solid var(--line);display:inline-flex;font-size:12px;font-weight:600;gap:18px;justify-content:center;min-height:48px;padding:0 16px;transition:color .16s ease,background-color .16s ease,border-color .16s ease}.button-primary{background:#c7f36b;background:var(--accent);border-color:#c7f36b;border-color:var(--accent);color:#0b0d0c;color:var(--ink)}.button-primary:hover{background:#f3f2ec;background:var(--paper);border-color:#f3f2ec;border-color:var(--paper)}.button-quiet:hover{border-color:#c7f36b;border-color:var(--accent);color:#c7f36b;color:var(--accent)}.hero-facts{color:#a3aaa3;color:var(--muted);display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:35px}.hero-facts span:before{color:#c7f36b;color:var(--accent);content:"↗";margin-right:8px}.hero-portrait-wrap{animation:content-enter .5s cubic-bezier(.22,1,.36,1) 80ms both;animation:content-enter var(--motion-hero) var(--motion-ease) 80ms both;justify-self:end;max-width:430px;padding:25px 18px 0 0;position:relative;width:100%}.portrait-index{color:#c7f36b;color:var(--accent);left:-26px;position:absolute;top:0;writing-mode:vertical-rl;z-index:2}.hero-portrait{border:1px solid #292f2a;border:1px solid var(--line);filter:saturate(.74);height:470px;object-fit:cover;object-position:center 35%;width:100%}.about-next-steps{padding-block:30px 70px}.about-route-links{border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.about-route-links a{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);color:#c2c7c0;color:var(--paper-dim);display:flex;font-size:13px;gap:16px;justify-content:space-between;padding:17px 20px 17px 0}.about-route-links a span,.about-route-links a:hover{color:#c7f36b;color:var(--accent)}.achievements-page-section,.certifications-page-section,.education-page-list,.skills-page-list{padding-bottom:100px}.skills-page-group{grid-gap:36px;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:36px;grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);padding-block:28px}.skills-page-group:last-child{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line)}.skills-page-heading .eyebrow{margin-bottom:12px}.skills-page-heading h2{font-size:24px;margin:0}.skills-list{grid-gap:0 18px;display:grid;gap:0 18px;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0}.skills-list li{border-bottom:1px solid #f1f0e814;color:#c2c7c0;color:var(--paper-dim);font-size:12px;padding:10px 0}.skills-page-group-primary .skills-list li{color:#f3f2ec;color:var(--paper);font-size:13px}.skills-page-group-primary .skills-list li:first-child,.skills-page-group-primary:nth-child(2) .skills-list li:first-child,.skills-page-group-primary:nth-child(2) .skills-list li:nth-child(2){color:#c7f36b;color:var(--accent)}.education-page-entry{grid-gap:30px;align-items:start;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:30px;grid-template-columns:220px minmax(0,1fr) 120px;padding-block:30px}.education-page-entry:last-child{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line)}.education-page-entry>.eyebrow{color:#a3aaa3;color:var(--muted);margin-top:7px}.education-page-entry h2{font-size:27px;margin:0 0 12px}.education-institution{color:#c2c7c0;color:var(--paper-dim);font-size:14px;margin-bottom:5px}.education-location{color:#a3aaa3;color:var(--muted);font-size:12px;margin:0}.education-page-entry>strong{color:#c7f36b;color:var(--accent);font:12px JetBrains Mono,Courier New,monospace;font:12px var(--mono);text-align:right}.achievement-list{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.achievement-entry{grid-gap:20px;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:20px;grid-template-columns:70px minmax(0,1fr);padding-block:24px}.achievement-number{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.achievement-entry .eyebrow{color:#a3aaa3;color:var(--muted);margin-bottom:9px}.achievement-entry h3{font-size:22px;margin:0 0 8px}.achievement-entry p:last-child{color:#c2c7c0;color:var(--paper-dim);font-size:13px;margin:0}.certifications-page-section{padding-top:20px}.certification-list-static{list-style:none;padding:0}.certification-list-static li{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);color:#c2c7c0;color:var(--paper-dim);display:flex;font-size:13px;gap:20px;padding:17px 0}.certification-list-static li span{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.certification-note{color:#a3aaa3;color:var(--muted);font-size:11px;margin-top:18px}.role-heading{align-items:end;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:flex;gap:24px;justify-content:space-between;padding-block:22px}.role-heading .eyebrow{margin-bottom:8px}.role-heading h2{font-size:30px;margin:0}.role-heading>span{color:#a3aaa3;color:var(--muted);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.contribution-grid{grid-gap:0 30px;display:grid;gap:0 30px;grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:100px}.contribution-entry:first-child{grid-column:1/-1;grid-template-columns:40px minmax(0,1fr);padding-block:30px}.contribution-entry:first-child>div{grid-gap:0 32px;align-items:start;display:grid;gap:0 32px;grid-template-columns:minmax(0,1fr) minmax(200px,.85fr)}.contribution-entry:first-child h3,.contribution-entry:first-child p{grid-column:1}.contribution-entry:first-child .stack-list{grid-column:2;grid-row:1/span 2}.contribution-entry:first-child .contribution-outcome{grid-column:2}.contribution-entry{grid-gap:15px;display:grid;gap:15px;grid-template-columns:40px minmax(0,1fr);padding-block:24px}.contribution-entry,.earlier-work-section{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.earlier-work-section{background:hsla(53,24%,93%,.025);padding-block:88px 104px}.earlier-work-heading{margin-bottom:38px}.earlier-work-heading .eyebrow{margin-bottom:12px}.earlier-work-heading h2{font-size:clamp(32px,4vw,54px);letter-spacing:-.045em;margin:0}.earlier-work-heading h2 span{color:#a3aaa3;color:var(--muted)}.earlier-work-list{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.earlier-work-entry{grid-gap:clamp(30px,7vw,100px);align-items:center;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:clamp(30px,7vw,100px);grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);padding-block:34px}.earlier-work-copy h3{font-size:clamp(22px,2.4vw,32px);letter-spacing:-.035em;margin:10px 0}.earlier-work-copy>p:not(.eyebrow){color:#c2c7c0;color:var(--paper-dim);line-height:1.7;max-width:530px}.earlier-work-copy .eyebrow{margin:0}.earlier-work-org{color:#c7f36b!important;color:var(--accent)!important;font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono);letter-spacing:.04em}.earlier-work-copy ul{color:#a3aaa3;color:var(--muted);font-size:13px;line-height:1.7;padding-left:18px}.earlier-work-copy li+li{margin-top:6px}.earlier-work-achievements{background:#f1f0e80a;border-left:2px solid #c7f36b;border-left:2px solid var(--accent);margin-top:20px;padding:16px 18px}.earlier-work-achievements>span{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.earlier-work-achievements ul{margin-bottom:0}.earlier-work-achievements a{color:#c2c7c0;color:var(--paper-dim);-webkit-text-decoration-color:#292f2a;text-decoration-color:#292f2a;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:3px}.earlier-work-achievements a:hover{color:#c7f36b;color:var(--accent)}.earlier-work-image{background:#0b0d0c;background:var(--ink);border:1px solid #292f2a;border:1px solid var(--line);margin:0;overflow:hidden}.earlier-work-image img{display:block;height:auto;width:100%}.contribution-number{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.contribution-entry h3{font-size:21px;margin:0 0 12px}.contribution-entry p{color:#c2c7c0;color:var(--paper-dim);font-size:13px;line-height:1.75}.contribution-entry .stack-list{font-size:11px;gap:7px 14px;margin-bottom:14px}.contribution-entry .contribution-outcome{color:#c7f36b;color:var(--accent);font-size:13px;margin:0}.home-credentials{grid-gap:50px;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:50px;grid-template-columns:repeat(2,minmax(0,1fr));padding-block:30px 85px}.home-credentials h2{font-size:20px;margin:0 0 9px}.home-credentials p:not(.eyebrow){color:#a3aaa3;color:var(--muted);font-size:12px;margin-bottom:18px}.copy-email-control{align-items:center;display:flex;gap:14px;margin-top:17px}.copy-email-button{align-items:center;background:#0000;border:1px solid #292f2a;border:1px solid var(--line);color:#c2c7c0;color:var(--paper-dim);display:inline-flex;font-size:11px;gap:12px;min-height:38px;padding:0 12px}.copy-email-button:hover{border-color:#c7f36b;border-color:var(--accent);color:#c7f36b;color:var(--accent)}.copy-email-status{color:#a3aaa3;color:var(--muted);font-size:11px}.contact-site-label{margin-top:12px}.portrait-caption{color:#a3aaa3;color:var(--muted);display:flex;gap:12px;justify-content:space-between;padding-top:12px}.proof-strip{background:hsla(53,24%,93%,.025);border-block:1px solid #292f2a;border-block:1px solid var(--line)}.proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.proof-grid>div{grid-gap:6px;align-content:center;border-left:1px solid #292f2a;border-left:1px solid var(--line);display:grid;gap:6px;min-height:112px;padding:16px 20px}.proof-grid>div:first-child{border-left:0}.proof-grid strong{color:#c7f36b;color:var(--accent);font:500 27px Space Grotesk,Arial Narrow,sans-serif;font:500 27px var(--display)}.proof-grid span{color:#a3aaa3;color:var(--muted);font-size:12px}.proof-heading{align-items:end;display:flex;gap:24px;justify-content:space-between;padding-top:25px}.proof-heading .eyebrow,.proof-heading h2{margin:0}.proof-heading h2{font:500 20px Space Grotesk,Arial Narrow,sans-serif;font:500 20px var(--display)}.hiring-proof .proof-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.proof-item{grid-gap:10px;align-content:start;border-left:1px solid #292f2a;border-left:1px solid var(--line);display:grid;gap:10px;min-height:190px;padding:22px 24px 24px}.proof-item:first-child{border-left:0}.proof-item h3{color:#f3f2ec;color:var(--paper);font:500 17px Space Grotesk,Arial Narrow,sans-serif;font:500 17px var(--display);margin:0}.proof-item p{color:#a3aaa3;color:var(--muted);font-size:12px;line-height:1.7;margin:0}.proof-item strong{align-self:end;color:#c7f36b;color:var(--accent);font:500 13px Inter,Arial,sans-serif;font:500 13px var(--body)}.section-block{padding-block:clamp(68px,7vw,96px)}.section-heading{align-items:end;display:flex;gap:30px;justify-content:space-between;margin-bottom:42px}.section-heading h2{font-size:clamp(34px,3.5vw,46px);letter-spacing:-.035em;margin:0;max-width:680px}.section-note{color:#a3aaa3;color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 2px;max-width:320px}.text-link{align-items:center;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);color:#f3f2ec;color:var(--paper);display:inline-flex;font-size:12px;gap:10px;padding-bottom:5px;transition:border-color .16s ease,color .16s ease}.text-link:hover{border-color:#c7f36b;border-color:var(--accent);color:#c7f36b;color:var(--accent)}.project-grid{grid-column-gap:26px;grid-row-gap:46px;column-gap:26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:46px}.project-card{min-width:0}.reveal{opacity:0;transform:translateY(10px);transform:translateY(var(--motion-distance));transition:opacity .38s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1);transition:opacity var(--motion-reveal) var(--motion-ease),transform var(--motion-reveal) var(--motion-ease);transition-delay:0s;transition-delay:var(--reveal-delay,0s)}.reveal.is-visible{opacity:1;transform:translateY(0)}.project-card-link{display:block;outline-offset:7px}.project-visual{aspect-ratio:1.56;background:#191d19;background:var(--ink-raised);border:1px solid #292f2a;border:1px solid var(--line);overflow:hidden;position:relative}.project-visual img{height:100%;object-fit:cover;transition:transform .42s cubic-bezier(.22,1,.36,1),filter .22s ease;transition:transform var(--motion-enter) var(--motion-ease),filter var(--motion-ui) ease;width:100%}@media (hover:hover) and (pointer:fine){.project-card-link:hover .project-visual img{filter:saturate(.9);transform:scale(1.025)}.project-card-link:hover .visual-art{transform:scale(1.015)}}.project-card-link:focus-visible .project-visual img,.project-card-link:focus-visible .visual-art{transform:scale(1.015)}.visual-art{background-color:#191d19;background-color:var(--ink-raised);background-image:linear-gradient(hsla(51,23%,94%,.045) 1px,#0000 0),linear-gradient(90deg,hsla(51,23%,94%,.045) 1px,#0000 0);background-size:44px 44px;inset:0;overflow:hidden;position:absolute;transition:transform .42s cubic-bezier(.22,1,.36,1);transition:transform var(--motion-enter) var(--motion-ease)}.visual-art-bugbuster,.visual-art-productivity{background-color:#121513;background-color:var(--ink-surface)}.visual-art-bugbuster{background-image:radial-gradient(ellipse at 50% 55%,#c7f36b14,#0000 55%),linear-gradient(hsla(51,23%,94%,.035) 1px,#0000 0),linear-gradient(90deg,hsla(51,23%,94%,.035) 1px,#0000 0);background-image:radial-gradient(ellipse at 50% 55%,rgba(var(--accent-rgb),.08),#0000 55%),linear-gradient(hsla(51,23%,94%,.035) 1px,#0000 1px),linear-gradient(90deg,hsla(51,23%,94%,.035) 1px,#0000 1px);background-size:auto,56px 56px,56px 56px}.project-flow-art{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));left:7%;position:absolute;right:7%;top:50%;transform:translateY(-50%)}.project-flow-node{grid-gap:6px;align-content:center;background:#121513;background:var(--ink-surface);border:1px solid #c7f36b61;border:1px solid rgba(var(--accent-rgb),.38);color:#f3f2ec;color:var(--paper);display:grid;font:500 10px/1.25 JetBrains Mono,Courier New,monospace;font:500 10px/1.25 var(--mono);gap:6px;justify-items:center;min-height:76px;overflow-wrap:anywhere;padding:4px;position:relative;text-align:center}.project-flow-node+.project-flow-node:before{border-top:1px solid #c7f36b;border-top:1px solid var(--accent);content:"";position:absolute;right:100%;top:50%;width:12%}.project-flow-node small{color:#c7f36b;color:var(--accent);font-size:9px}.visual-art-speech-emotion{background-color:#191d19;background-color:var(--ink-raised)}.visual-art-speech-emotion:before{background:repeating-linear-gradient(90deg,#0000 0 10px,#c7f36bb8 10px 12px,#0000 12px 19px);background:repeating-linear-gradient(90deg,#0000 0 10px,rgba(var(--accent-rgb),.72) 10px 12px,#0000 12px 19px);-webkit-clip-path:polygon(0 48%,4% 42%,8% 55%,12% 22%,16% 66%,20% 40%,24% 49%,28% 12%,32% 72%,36% 36%,40% 54%,44% 26%,48% 68%,52% 42%,56% 50%,60% 18%,64% 76%,68% 35%,72% 57%,76% 23%,80% 63%,84% 39%,88% 53%,92% 28%,96% 62%,100% 48%,100% 53%,96% 67%,92% 33%,88% 58%,84% 44%,80% 69%,76% 29%,72% 63%,68% 41%,64% 82%,60% 24%,56% 56%,52% 48%,48% 74%,44% 32%,40% 60%,36% 42%,32% 78%,28% 18%,24% 55%,20% 46%,16% 72%,12% 28%,8% 61%,4% 48%,0 53%);clip-path:polygon(0 48%,4% 42%,8% 55%,12% 22%,16% 66%,20% 40%,24% 49%,28% 12%,32% 72%,36% 36%,40% 54%,44% 26%,48% 68%,52% 42%,56% 50%,60% 18%,64% 76%,68% 35%,72% 57%,76% 23%,80% 63%,84% 39%,88% 53%,92% 28%,96% 62%,100% 48%,100% 53%,96% 67%,92% 33%,88% 58%,84% 44%,80% 69%,76% 29%,72% 63%,68% 41%,64% 82%,60% 24%,56% 56%,52% 48%,48% 74%,44% 32%,40% 60%,36% 42%,32% 78%,28% 18%,24% 55%,20% 46%,16% 72%,12% 28%,8% 61%,4% 48%,0 53%);content:"";inset:28% 14%;position:absolute}.speech-feature-art{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);inset:37% 14% auto;position:absolute}.speech-feature{background:#0b0d0ce0;border:1px solid #c7f36b61;border:1px solid rgba(var(--accent-rgb),.38);color:#f3f2ec;color:var(--paper);display:grid;font:500 12px JetBrains Mono,Courier New,monospace;font:500 12px var(--mono);min-height:62px;place-items:center}.speech-feature-2{transform:translateY(-12px)}.speech-feature-3{transform:translateY(8px)}.speech-model-art{bottom:17%;color:#a3aaa3;color:var(--muted);display:flex;font:9px JetBrains Mono,Courier New,monospace;font:9px var(--mono);gap:8px;justify-content:space-between;left:14%;position:absolute;right:14%}.speech-model-art i{align-self:center;background:#c7f36b;background:var(--accent);border-radius:50%;height:3px;width:3px}.visual-art-speech-emotion .visual-line,.visual-art-speech-emotion .visual-node{display:none}.visual-caption,.visual-index{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono);position:absolute;text-transform:uppercase;z-index:1}.visual-index{left:20px;top:20px}.visual-caption{bottom:18px;color:#c2c7c0;color:var(--paper-dim);right:20px}.visual-line{background:#c7f36ba6;background:rgba(var(--accent-rgb),.65);height:1px;position:absolute;transform:rotate(-26deg);transform-origin:left}.visual-line-one{left:18%;top:44%;width:62%}.visual-line-two{left:48%;top:44%;transform:rotate(29deg);width:42%}.visual-node{aspect-ratio:1;background:#0b0d0c;background:var(--ink);border:1px solid #c7f36b;border:1px solid var(--accent);border-radius:50%;box-shadow:0 0 0 8px #c7f36b12;box-shadow:0 0 0 8px rgba(var(--accent-rgb),.07);position:absolute;width:15px}.visual-node-one{left:18%;top:calc(44% - 7px)}.visual-node-two{left:77%;top:calc(44% - 7px)}.project-open{aspect-ratio:1;background:#0b0d0c;background:var(--ink);border:1px solid #292f2a;border:1px solid var(--line);bottom:14px;color:#c7f36b;color:var(--accent);display:grid;place-items:center;position:absolute;right:14px;transition:color .16s ease,background-color .16s ease;width:36px}.project-card-link:hover .project-open{background:#c7f36b;background:var(--accent);color:#0b0d0c;color:var(--ink)}.project-card-copy{padding-top:16px}.project-card-meta{color:#a3aaa3;color:var(--muted);display:flex;flex-wrap:wrap;gap:7px 14px;justify-content:space-between}.project-card-copy h3{font-size:25px;margin:14px 0 9px;transition:color .16s ease}.project-card-link:hover .project-card-copy h3{color:#c7f36b;color:var(--accent)}.project-card-copy p{color:#c2c7c0;color:var(--paper-dim);font-size:13px;line-height:1.7;margin-bottom:14px;max-width:520px}.project-card-copy .text-link{font-size:11px}.architecture-section{background:#191d19;background:var(--ink-raised);border-block:1px solid #292f2a;border-block:1px solid var(--line);padding:88px max(40px,calc(50vw - 580px))}.architecture-heading{margin:0 auto 40px;max-width:1160px}.architecture-heading h2{max-width:550px}.architecture-body{grid-gap:46px;display:grid;gap:46px;grid-template-columns:1.15fr .85fr;margin-inline:auto;max-width:1160px}.architecture-steps{border-left:1px solid #292f2a;border-left:1px solid var(--line);border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.architecture-step{grid-gap:8px;align-content:center;background:#0000;border:0;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);border-right:1px solid #292f2a;border-right:1px solid var(--line);display:grid;gap:8px;min-height:118px;padding:18px 20px;position:relative;text-align:left;transition:background-color .18s ease}.architecture-step.is-selected,.architecture-step:hover{background:#c7f36b0f;background:rgba(var(--accent-rgb),.06)}.architecture-detail-index,.architecture-step-label{color:#c7f36b;color:var(--accent)}.architecture-step-title{font:500 18px Space Grotesk,Arial Narrow,sans-serif;font:500 18px var(--display)}.architecture-step-arrow{color:#a3aaa3;color:var(--muted);position:absolute;right:18px;top:17px}.architecture-detail{align-self:center;animation:detail-enter .24s cubic-bezier(.22,1,.36,1) both;animation:detail-enter .24s var(--motion-ease) both;padding:10px 0}.architecture-detail h3{font-size:28px;margin:14px 0}.architecture-detail p{color:#c2c7c0;color:var(--paper-dim);font-size:14px;line-height:1.8;margin:0;max-width:410px}.expertise-section{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line)}.expertise-list{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.expertise-row{grid-gap:24px;align-items:center;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:70px minmax(220px,.9fr) minmax(0,1.2fr);padding:23px 0}.expertise-number{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.expertise-row h3{font-size:21px;margin:0}.expertise-row p{color:#a3aaa3;color:var(--muted);font-size:13px;margin:0}.journey-preview{padding-top:105px}.journey-list{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.journey-row{grid-gap:24px;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:190px minmax(0,1fr) 150px;padding:24px 0}.journey-location,.journey-period{color:#a3aaa3;color:var(--muted)}.journey-row h3{font-size:20px;margin:0 0 8px}.journey-row h3 span{color:#c2c7c0;color:var(--paper-dim);font-size:15px}.journey-row p{color:#a3aaa3;color:var(--muted);font-size:12px;margin:0;max-width:620px}.journey-location{text-align:right}.closing-band{padding-block:82px 112px}.closing-line{align-items:center;display:flex;gap:30px;justify-content:space-between}.closing-line h2{font-size:52px;margin:0;max-width:780px}.round-link{aspect-ratio:1;background:#c7f36b;background:var(--accent);border:1px solid #c7f36b;border:1px solid var(--accent);color:#0b0d0c;color:var(--ink);display:grid;flex:0 0 auto;font-size:21px;place-items:center;transition:color .18s ease,background-color .18s ease,transform .18s ease;width:58px}.round-link:hover{background:#0000;color:#c7f36b;color:var(--accent);transform:translate(2px,-2px)}.closing-email{color:#a3aaa3;color:var(--muted);display:inline-block;font:12px JetBrains Mono,Courier New,monospace;font:12px var(--mono);margin-top:24px}.site-footer{background:#0b0d0c;background:var(--ink);padding:0 max(40px,calc(50vw - 580px))}.footer-topline{background:#292f2a;background:var(--line);height:1px}.footer-inner{grid-gap:26px 40px;align-content:center;align-items:end;display:grid;gap:26px 40px;grid-template-columns:1fr auto;min-height:190px;padding-block:34px}.footer-inner .eyebrow{margin-bottom:9px}.footer-email{font:500 24px Space Grotesk,Arial Narrow,sans-serif;font:500 24px var(--display)}.footer-email span{color:#c7f36b;color:var(--accent)}.footer-meta{grid-gap:4px;align-self:end;color:#a3aaa3;color:var(--muted);display:grid;gap:4px;text-align:right}.footer-links{color:#c2c7c0;color:var(--paper-dim);display:flex;flex-wrap:wrap;font-size:11px;gap:20px}.footer-links a:hover{color:#c7f36b;color:var(--accent)}.page-intro{padding-bottom:60px;padding-top:clamp(68px,8vw,104px)}.page-intro-education,.page-intro-experience,.page-intro-work{grid-column-gap:clamp(34px,7vw,96px);align-items:end;column-gap:clamp(34px,7vw,96px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)}.page-intro-education>.eyebrow,.page-intro-experience>.eyebrow,.page-intro-work>.eyebrow{grid-column:1/-1}.page-intro-education h1,.page-intro-experience h1,.page-intro-work h1{grid-column:1;grid-row:2;margin-bottom:0}.page-intro-education .page-lede,.page-intro-experience .page-lede,.page-intro-work .page-lede{grid-column:2;grid-row:2;padding-bottom:7px}.page-intro-work .page-intro-index{grid-column:1/-1}.page-intro-skills{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line)}.page-intro-recognition{position:relative}.page-intro-recognition:after{background:#c7f36b;background:var(--accent);bottom:60px;content:"";height:1px;position:absolute;right:max(40px,calc(50vw - 640px));width:clamp(70px,12vw,150px)}.contact-page h1,.missing-project h1,.page-intro h1{font-size:clamp(44px,5vw,70px);letter-spacing:-.045em;margin:0 0 26px;max-width:900px}.page-lede{color:#c2c7c0;color:var(--paper-dim);font-size:16px;line-height:1.8;margin:0;max-width:650px}.page-intro-index{border-top:1px solid #292f2a;border-top:1px solid var(--line);color:#a3aaa3;color:var(--muted);display:flex;gap:18px;justify-content:space-between;margin-top:44px;padding-top:13px}.work-listing{padding-bottom:50px}.filter-bar{align-items:center;border-block:1px solid #292f2a;border-block:1px solid var(--line);display:flex;gap:18px;justify-content:space-between;margin-bottom:30px;padding-block:16px}.filter-controls{display:flex;flex-wrap:wrap;gap:8px}.filter-button{background:#0000;border:1px solid #0000;color:#a3aaa3;color:var(--muted);font-size:11px;min-height:42px;padding:0 12px;transition:color .16s ease,border-color .16s ease,background-color .16s ease}.filter-button.is-active,.filter-button:hover{background:#c7f36b0d;background:rgba(var(--accent-rgb),.05);border-color:#c7f36b;border-color:var(--accent);color:#c7f36b;color:var(--accent)}.filter-count{color:#a3aaa3;color:var(--muted);flex:0 0 auto}.work-project-grid{row-gap:55px}.work-footnote{border-top:1px solid #292f2a;border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;padding-block:26px 100px}.work-footnote p{color:#a3aaa3;color:var(--muted);font-size:13px;margin:0}.additional-work{align-items:end;border-block:1px solid #292f2a;border-block:1px solid var(--line);display:flex;gap:32px;justify-content:space-between;margin-bottom:42px;padding-block:26px}.additional-work h2{font:500 23px Space Grotesk,Arial Narrow,sans-serif;font:500 23px var(--display);margin:7px 0}.additional-work p:not(.eyebrow){color:#a3aaa3;color:var(--muted);font-size:13px;margin:0;max-width:650px}.additional-work .eyebrow{margin:0}.additional-work .text-link{flex:0 0 auto}.case-hero{padding-top:56px}.back-link{color:#a3aaa3;color:var(--muted);display:inline-block;font-size:12px;margin-bottom:50px}.back-link:hover,.case-meta{color:#c7f36b;color:var(--accent)}.case-meta{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between}.case-hero h1{font-size:clamp(48px,5vw,66px);letter-spacing:-.045em;margin:20px 0 14px;max-width:900px}.case-summary{color:#c2c7c0;color:var(--paper-dim);font-size:17px;line-height:1.75;margin-bottom:20px;max-width:690px}.case-role{color:#a3aaa3;color:var(--muted);display:flex;gap:14px;margin-bottom:34px}.case-role strong{color:#f3f2ec;color:var(--paper);font-weight:400}.case-art,.case-image{background:#191d19;background:var(--ink-raised);border:1px solid #292f2a;border:1px solid var(--line);margin:0;overflow:hidden}.case-image img{max-height:600px;object-fit:cover;object-position:top;width:100%}.case-art{grid-gap:32px;align-content:space-between;background-image:radial-gradient(ellipse at 50% 75%,#c7f36b12,#0000 55%),linear-gradient(hsla(51,23%,94%,.045) 1px,#0000 0),linear-gradient(90deg,hsla(51,23%,94%,.045) 1px,#0000 0);background-image:radial-gradient(ellipse at 50% 75%,rgba(var(--accent-rgb),.07),#0000 55%),linear-gradient(hsla(51,23%,94%,.045) 1px,#0000 1px),linear-gradient(90deg,hsla(51,23%,94%,.045) 1px,#0000 1px);background-size:auto,48px 48px,48px 48px;display:grid;gap:32px;min-height:300px;padding:clamp(20px,4vw,42px);position:relative}.case-art-speech-emotion:after,.case-art:after{content:none}.case-art-label,.case-art-mark{color:#a3aaa3;color:var(--muted);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono);position:relative;z-index:1}.case-art-label{color:#c2c7c0;color:var(--paper-dim);display:flex;gap:16px;justify-content:space-between;letter-spacing:.1em}.case-art-label span{color:#c7f36b;color:var(--accent)}.case-art-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0}.case-art-flow li{grid-gap:12px;align-content:center;background:#0b0d0c6b;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:12px;min-height:88px;padding:12px 16px;position:relative}.case-art-flow li+li{border-left:1px solid #292f2a;border-left:1px solid var(--line)}.case-art-flow li:before{background:#c7f36b;background:var(--accent);border-radius:50%;content:"";height:5px;left:14px;position:absolute;top:-3px;width:5px}.case-art-flow small{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.case-art-flow strong{color:#f3f2ec;color:var(--paper);font:500 13px Space Grotesk,Arial Narrow,sans-serif;font:500 13px var(--display)}.case-art-mark{color:#c7f36b;color:var(--accent);font-size:18px}.case-content{padding-top:30px}.case-section{grid-gap:26px;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:26px;grid-template-columns:210px minmax(0,1fr);padding-block:48px}.case-section .eyebrow{margin-top:7px}.case-section h2{font-size:28px;margin:0 0 15px}.case-section p:not(.eyebrow){color:#c2c7c0;color:var(--paper-dim);font-size:14px;line-height:1.8;max-width:700px}.case-overview-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,minmax(0,1fr))}.case-bullet-list{grid-gap:12px;color:#c2c7c0;color:var(--paper-dim);display:grid;font-size:13px;gap:12px;line-height:1.75;margin:0;max-width:760px;padding-left:18px}.case-bullet-list li::marker{color:#c7f36b;color:var(--accent)}.case-flow{grid-gap:0;display:grid;gap:0;list-style:none;margin:0;max-width:760px;padding:0}.case-flow li{grid-gap:12px;display:grid;gap:12px;grid-template-columns:44px minmax(0,1fr);padding-bottom:25px;position:relative}.case-flow-number{color:#c7f36b;color:var(--accent)}.case-flow h3{font-size:17px;margin:0 0 6px}.case-flow p{margin:0}.case-flow-arrow{bottom:2px;color:#a3aaa3;color:var(--muted);left:9px;position:absolute}.impact-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.impact-list li{border:1px solid #292f2a;border:1px solid var(--line);color:#c7f36b;color:var(--accent);font:12px JetBrains Mono,Courier New,monospace;font:12px var(--mono);padding:10px 14px}.case-stack .confidentiality-note,.case-stack .stack-list{grid-column:2}.stack-list{color:#c2c7c0;color:var(--paper-dim);display:flex;flex-wrap:wrap;font:12px JetBrains Mono,Courier New,monospace;font:12px var(--mono);gap:8px 20px}.stack-list span:before{color:#c7f36b;color:var(--accent);content:"/";margin-right:8px}.case-stack .confidentiality-note{color:#a3aaa3;color:var(--muted);font-size:11px;margin:18px 0 0}.case-pagination{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;padding-block:45px 100px}.case-pagination a{grid-gap:8px;display:grid;gap:8px;padding-block:12px}.case-pagination a:last-child{text-align:right}.case-pagination span{color:#a3aaa3;color:var(--muted);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.case-pagination strong{font:500 17px Space Grotesk,Arial Narrow,sans-serif;font:500 17px var(--display)}.case-pagination a:hover strong{color:#c7f36b;color:var(--accent)}.case-contact{align-items:center;border-block:1px solid #292f2a;border-block:1px solid var(--line);display:flex;gap:28px;justify-content:space-between;margin-block:70px 95px;padding-block:30px}.case-contact .eyebrow{margin-bottom:8px}.case-contact h2{font:500 clamp(22px,3vw,32px) Space Grotesk,Arial Narrow,sans-serif;font:500 clamp(22px,3vw,32px) var(--display);margin:0}@media (max-width:900px){.hiring-proof .proof-grid{grid-template-columns:1fr}.proof-heading{align-items:start;flex-direction:column;gap:8px}.proof-item{border-left:0;border-top:1px solid #292f2a;border-top:1px solid var(--line);min-height:0;padding:19px 2px}.proof-item:first-child{border-top:0}.proof-item strong{margin-top:2px}}@media (max-width:760px){.additional-work,.case-contact{align-items:start;flex-direction:column}.additional-work{gap:20px}.case-contact{gap:22px;margin-block:48px 68px}.proof-heading{padding-bottom:10px;padding-top:22px}}.about-intro{padding-bottom:82px}.about-lede-grid{grid-gap:50px;align-items:end;display:grid;gap:50px;grid-template-columns:minmax(0,1fr) 210px}.about-lede-grid img{border:1px solid #292f2a;border:1px solid var(--line);filter:saturate(.72);height:250px;object-fit:cover;object-position:center 35%;width:210px}.about-capabilities,.about-principles,.education-section,.recognition-section{padding-block:60px 90px}.principle-grid{grid-gap:26px;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:26px;grid-template-columns:repeat(3,minmax(0,1fr))}.principle-item{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);padding:20px 14px 10px 0}.principle-item>span{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.principle-item h2{font-size:22px;margin:28px 0 12px}.principle-item p{color:#a3aaa3;color:var(--muted);font-size:12px;line-height:1.8;margin:0 0 22px;max-width:320px}.education-list{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.education-row{grid-gap:25px;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:25px;grid-template-columns:190px minmax(0,1fr) 100px;padding:23px 0}.education-row strong,.education-row>span{color:#a3aaa3;color:var(--muted);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.education-row h3{font-size:20px;margin:0 0 8px}.education-row p{color:#c2c7c0;color:var(--paper-dim);font-size:12px;margin:0}.education-row strong{text-align:right}.recognition-list,.recognition-section{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.recognition-list p{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:flex;font-size:14px;gap:24px;margin:0;padding:16px 0}.recognition-list span{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.certification-list,.skill-group-list{border-top:1px solid #292f2a;border-top:1px solid var(--line)}.skill-group{grid-gap:30px;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:grid;gap:30px;grid-template-columns:250px minmax(0,1fr);padding-block:28px}.skill-group-title{align-items:baseline;display:flex;gap:14px}.skill-group-title>span{color:#c7f36b;color:var(--accent);font:10px JetBrains Mono,Courier New,monospace;font:10px var(--mono)}.skill-group-title h3{font-size:17px;margin:0}.skill-group-items{grid-gap:24px 30px;display:grid;gap:24px 30px;grid-template-columns:repeat(2,minmax(0,1fr))}.skill-detail h4{color:#f3f2ec;color:var(--paper);font:500 13px Space Grotesk,Arial Narrow,sans-serif;font:500 13px var(--display);margin:0 0 7px}.skill-detail p{color:#a3aaa3;color:var(--muted);font-size:11px;line-height:1.75;margin:0}.certification-section{padding-block:45px 85px}.certification-list a{align-items:center;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);color:#c2c7c0;color:var(--paper-dim);display:flex;font-size:13px;gap:20px;justify-content:space-between;padding:17px 0}.certification-list a span:last-child,.certification-list a:hover{color:#c7f36b;color:var(--accent)}.closing-links{display:flex;gap:24px;margin-top:25px}.experience-timeline{padding-bottom:40px}.experience-entry{grid-gap:50px;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:50px;grid-template-columns:210px minmax(0,1fr);padding-block:48px 56px}.experience-date{grid-gap:7px;align-content:start;color:#a3aaa3;color:var(--muted);display:grid;gap:7px}.experience-entry-main h2{font-size:36px;margin:0 0 16px}.experience-entry-main .eyebrow{margin-bottom:12px}.experience-summary{color:#c2c7c0;color:var(--paper-dim);font-size:15px;line-height:1.8;margin-bottom:24px;max-width:680px}.experience-note{grid-gap:50px;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:50px;grid-template-columns:210px minmax(0,1fr);padding-block:30px 110px}.experience-note p:last-child{color:#c2c7c0;color:var(--paper-dim);font-size:15px;margin:0;max-width:650px}.contact-page{min-height:690px;padding-bottom:115px;padding-top:125px}.contact-page h1{margin-bottom:25px}.contact-lede{color:#c2c7c0;color:var(--paper-dim);font-size:16px;line-height:1.8;margin-bottom:40px;max-width:580px}.contact-email{align-items:center;border-bottom:1px solid #c7f36b;border-bottom:1px solid var(--accent);color:#c7f36b;color:var(--accent);display:inline-flex;font:500 25px Space Grotesk,Arial Narrow,sans-serif;font:500 25px var(--display);gap:15px;padding-bottom:10px}.contact-details{grid-gap:30px;border-top:1px solid #292f2a;border-top:1px solid var(--line);display:grid;gap:30px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:75px;padding-top:24px}.contact-details>div{grid-gap:9px;align-content:start;display:grid;gap:9px;justify-items:start}.contact-details .eyebrow{color:#a3aaa3;color:var(--muted);margin-bottom:5px}.contact-details a{color:#c2c7c0;color:var(--paper-dim);font-size:12px}.contact-details a span,.contact-details a:hover{color:#c7f36b;color:var(--accent)}.contact-form-note{color:#a3aaa3;color:var(--muted);font-size:11px;margin:30px 0 0}.missing-project{min-height:58vh;padding-top:150px}.missing-project h1{margin-bottom:28px}@media (max-width:1050px){.site-header{padding-inline:28px}.primary-navigation{gap:19px}.home-hero{gap:42px;grid-template-columns:minmax(0,1fr) minmax(270px,.78fr);min-height:640px}.home-hero h1{font-size:60px}.hero-portrait{height:430px}.architecture-section,.site-footer{padding-inline:28px}.architecture-body{gap:30px}}@media (max-width:980px){.site-header{position:-webkit-sticky;position:sticky}.menu-toggle{display:flex}.primary-navigation{grid-gap:0;align-items:stretch;background:#0b0d0cfa;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);box-shadow:0 18px 30px #0003;display:grid;gap:0;grid-template-columns:minmax(0,1fr);left:0;max-height:0;opacity:0;overflow:hidden;padding:8px 28px 18px;pointer-events:none;position:absolute;right:0;top:calc(100% + 1px);transform:translateY(-7px);transition:max-height .28s cubic-bezier(.22,1,.36,1),opacity .16s ease,transform .22s cubic-bezier(.22,1,.36,1),visibility 0s linear .28s;transition:max-height .28s var(--motion-ease),opacity var(--motion-fast) ease,transform var(--motion-ui) var(--motion-ease),visibility 0s linear .28s;visibility:hidden}.primary-navigation.is-open{max-height:min(75vh,560px);opacity:1;overflow-y:auto;pointer-events:auto;transform:translateY(0);transition-delay:0s;visibility:visible}.nav-link{align-items:center;border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);display:flex;min-height:46px;padding:13px 0}.nav-link.is-active{border-left:2px solid #c7f36b;border-left:2px solid var(--accent);color:#c7f36b;color:var(--accent);padding-left:12px}.nav-link.is-active:after{display:none}.nav-resume{justify-self:start;margin-top:14px}}@media (max-width:880px) and (min-width:761px){.home-hero{gap:32px;grid-template-columns:1fr;min-height:0;padding-block:70px 64px}.hero-copy{max-width:650px}.hero-portrait-wrap{justify-self:end;margin-right:3%;width:min(58%,430px)}.hero-portrait{height:390px}}@media (max-width:760px){:root{--motion-enter:360ms;--motion-hero:420ms;--motion-reveal:320ms;--motion-distance:8px}.earlier-work-section{padding-block:64px 76px}.earlier-work-heading{margin-bottom:26px}.earlier-work-entry{gap:20px;grid-template-columns:1fr;padding-block:26px}.earlier-work-image{grid-row:1}.site-header{min-height:70px;padding-inline:20px}.menu-toggle{display:flex}.primary-navigation{background:#0b0d0c;background:var(--ink);display:grid;grid-template-columns:minmax(0,1fr);left:0;padding:8px 20px 18px;position:absolute;right:0;top:calc(100% + 1px)}.nav-link,.primary-navigation{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line)}.nav-link{align-items:center;display:flex;min-height:46px;padding:13px 0}.nav-link.is-active{border-left:2px solid #c7f36b;border-left:2px solid var(--accent);color:#c7f36b;color:var(--accent);padding-left:12px}.nav-link.is-active:after{display:none}.nav-resume{justify-self:start;margin-top:14px}.home-hero{gap:45px;grid-template-columns:1fr;min-height:0;padding-block:70px 65px}.home-hero h1{font-size:52px}.hero-intro{font-size:15px;max-width:560px}.hero-portrait-wrap{justify-self:center;padding-right:12px;width:min(82%,390px)}.hero-portrait{height:430px}.portrait-index{left:-18px}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proof-grid>div{border-bottom:1px solid #292f2a;border-bottom:1px solid var(--line);min-height:95px;padding-inline:14px}.proof-grid>div:nth-child(odd){border-left:0}.proof-grid>div:nth-last-child(-n+2){border-bottom:0}.section-block{padding-block:82px}.section-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:30px}.section-heading h2{font-size:36px}.section-note{max-width:540px}.project-grid{grid-template-columns:1fr;row-gap:38px}.project-visual{aspect-ratio:1.5}.architecture-section{padding:70px 20px}.architecture-body{gap:26px;grid-template-columns:1fr}.architecture-step{min-height:104px;padding-inline:13px}.architecture-step-title{font-size:15px}.architecture-step-arrow{right:11px;top:11px}.expertise-row{gap:7px 14px;grid-template-columns:34px minmax(0,1fr);padding-block:17px}.expertise-row h3{font-size:19px}.expertise-row p{grid-column:2}.journey-row{gap:9px;grid-template-columns:1fr;padding-block:20px}.journey-location{text-align:left}.closing-band{padding-block:65px 82px}.closing-line{align-items:start}.closing-line h2{font-size:38px}.round-link{width:48px}.site-footer{padding-inline:20px}.footer-inner{gap:20px;grid-template-columns:1fr;padding-block:30px}.footer-meta{text-align:left}.page-intro{padding-bottom:45px;padding-top:66px}.page-intro-education,.page-intro-experience,.page-intro-work{display:block}.page-intro-education h1,.page-intro-experience h1,.page-intro-work h1{margin-bottom:20px}.page-intro-work .page-intro-index{margin-top:28px}.page-intro-recognition:after{bottom:30px;right:20px}.contact-page h1,.missing-project h1,.page-intro h1{font-size:50px}.page-lede{font-size:14px}.page-intro-index{margin-top:32px}.filter-bar{align-items:start;flex-direction:column}.filter-controls{gap:5px}.filter-button{min-height:34px;padding-inline:9px}.work-footnote{align-items:start;flex-direction:column;padding-bottom:70px}.case-hero{padding-top:35px}.back-link{margin-bottom:38px}.case-hero h1{font-size:48px}.case-summary{font-size:15px}.case-art{min-height:280px}.case-art-flow{grid-template-columns:1fr}.case-art-flow li{align-items:center;background:#0000;border:0;gap:8px;grid-template-columns:28px 1fr;min-height:38px;padding:6px 12px}.case-art-flow li+li{border:0}.case-art-flow li:before{background:#292f2a;background:var(--line);border-radius:0;height:12px;left:14px;top:-5px;width:1px}.contribution-entry:first-child>div{gap:0;grid-template-columns:1fr}.contribution-entry:first-child .contribution-outcome,.contribution-entry:first-child .stack-list{grid-column:1;grid-row:auto}.case-section{padding-block:33px}.case-overview-content,.case-section{gap:12px;grid-template-columns:1fr}.case-section .eyebrow{margin:0}.case-stack .confidentiality-note,.case-stack .stack-list{grid-column:1}.case-pagination{gap:12px;padding-bottom:72px}.case-pagination strong{font-size:14px}.about-lede-grid{gap:20px;grid-template-columns:1fr 125px}.about-lede-grid img{height:160px;width:125px}.skills-page-group{gap:22px;grid-template-columns:190px minmax(0,1fr)}.skills-list{grid-template-columns:repeat(2,minmax(0,1fr))}.education-page-entry{gap:18px;grid-template-columns:165px minmax(0,1fr) 105px}.principle-grid{gap:0;grid-template-columns:1fr}.skill-group,.skill-group-items{gap:18px;grid-template-columns:1fr}.principle-item h2{margin-top:17px}.education-row{gap:8px 14px;grid-template-columns:1fr auto}.education-row>span{grid-column:1/-1}.education-row strong{align-self:end}.experience-entry,.experience-note{gap:18px;grid-template-columns:1fr;padding-block:32px}.experience-entry-main h2{font-size:30px}.contact-page{min-height:0;padding-bottom:90px;padding-top:86px}.contact-email{font-size:19px;overflow-wrap:anywhere}.contact-details{gap:28px 18px;grid-template-columns:1fr 1fr;margin-top:55px}.contact-details>div:first-child{grid-row:span 2}}@media (max-width:420px){.content-wrap{width:calc(100% - 32px)}.home-hero h1{font-size:43px}.hero-facts{grid-gap:7px;display:grid;gap:7px}.hero-portrait-wrap{width:calc(100% - 18px)}.hero-portrait{height:360px}.proof-grid strong{font-size:23px}.proof-grid span{font-size:10px}.section-heading h2{font-size:31px}.contact-page h1,.missing-project h1,.page-intro h1{font-size:41px}.case-hero h1{font-size:39px}.case-meta{display:grid;justify-content:start}.about-lede-grid{grid-template-columns:1fr}.about-lede-grid img{height:280px;object-position:center 32%;width:100%}.about-route-links,.home-credentials{gap:22px;grid-template-columns:1fr}.skills-page-group{gap:14px;grid-template-columns:1fr}.skills-list{gap:0 12px;grid-template-columns:repeat(2,minmax(0,1fr))}.education-page-entry{gap:10px 16px;grid-template-columns:1fr auto}.education-page-entry>.eyebrow{grid-column:1/-1;margin:0}.education-page-entry h2{font-size:22px}.education-page-entry>strong{font-size:10px}.contribution-grid{grid-template-columns:1fr;padding-bottom:75px}.role-heading{align-items:start;flex-direction:column}.achievement-entry{gap:12px;grid-template-columns:36px minmax(0,1fr)}.closing-line h2{font-size:31px}.closing-line .round-link{width:42px}.contact-details{grid-template-columns:1fr}.contact-details>div:first-child{grid-row:auto}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important}*,.architecture-detail,.hero-copy,.hero-portrait-wrap,.route-surface,.route-surface>.case-study>.case-hero>*,.route-surface>.contact-page>*,.route-surface>.missing-project>*,.route-surface>.page-intro>*,:after,:before{animation:none!important}.reveal{opacity:1!important;transform:none!important;transition:none!important}}
/*# sourceMappingURL=main.285bad52.css.map*/