:root{color:#101712;background:#f8f6f0;font-family:var(--font-body);font-synthesis:none;text-rendering:geometricPrecision;--paper: #f7f3e9;--paper-soft: #fffdf7;--ink: #141a16;--muted: #4a554e;--hairline: rgba(16, 23, 18, .15);--hairline-strong: rgba(16, 23, 18, .24);--green: #0b4b31;--green-bright: #8fbd78;--green-pale: #e5eddf;--amber: #c38b2e;--code: #091113;--code-soft: #111b1d;--cyan: #1f95b8;--violet: #5d46b8;--shadow: 0 28px 80px rgba(11, 18, 14, .18);--radius-plate: 1px;--radius-instrument: 12px;--header-height: 81px;--font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: Georgia, "Times New Roman", serif;--font-mono: "SFMono-Regular", "Cascadia Code", "Roboto Mono", Consolas, "Liberation Mono", monospace;--muted-strong: #354039;--fine-text: #465049}*{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;overflow-x:clip;background:radial-gradient(circle at 18% 8%,rgba(10,74,45,.05),transparent 28%),linear-gradient(180deg,#fbfaf6 0%,var(--paper) 46%,#f2f0ea 100%);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}:focus-visible{outline:3px solid rgba(119,173,104,.72);outline-offset:4px}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:12px 16px;background:var(--green);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:700;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.site-shell{width:min(100%,1440px);margin:0 auto;overflow-x:clip;background:linear-gradient(90deg,transparent 0,transparent 47px,rgba(10,74,45,.09) 48px,transparent 49px),linear-gradient(90deg,transparent calc(100% - 49px),rgba(10,74,45,.09) calc(100% - 48px),transparent calc(100% - 47px)),var(--paper)}.site-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;padding:18px clamp(24px,4vw,48px);background:#f8f6f0e6;border-bottom:1px solid rgba(16,23,18,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border-radius:7px;background:var(--green);color:#f8f0dc;font-family:var(--font-display);font-size:28px;line-height:1;letter-spacing:-.06em}.site-nav{justify-self:center;display:flex;align-items:center;gap:clamp(18px,2.2vw,40px)}.site-nav a,.header-download,.header-email-action,.eyebrow,.section-kicker,.section-heading span{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.site-nav a{position:relative;padding:10px 0;color:#18231b}.site-nav a:after{position:absolute;right:0;bottom:2px;left:0;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .18s ease;content:""}.site-nav a:hover:after,.site-nav a:focus-visible:after,.site-nav a.active:after{transform:scaleX(1)}.site-nav a.active{color:var(--green)}.header-actions{justify-self:end;display:flex;align-items:center;gap:10px}.header-download,.header-email-action,.primary-action,.secondary-action,.quiet-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border-radius:6px;border:1px solid var(--green);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.header-download svg,.header-email-action svg,.primary-action svg,.secondary-action svg,.quiet-action svg,.project-link svg,.back-link svg{transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.header-download,.primary-action{padding:0 22px;background:var(--green);color:#fff;box-shadow:0 14px 28px #0a4a2d2e}.header-email-action{padding:0 18px;background:#ffffff6b;color:var(--green);box-shadow:none}.header-email-action.copied{background:var(--green-pale)}.secondary-action,.quiet-action{padding:0 20px;background:#ffffff57;color:var(--green)}.quiet-action{border-color:#0a4a2d52;box-shadow:none}.header-download:hover,.header-email-action:hover,.primary-action:hover,.secondary-action:hover,.quiet-action:hover,.header-download:focus-visible,.header-email-action:focus-visible,.primary-action:focus-visible,.secondary-action:focus-visible,.quiet-action:focus-visible{transform:translateY(-2px);box-shadow:0 18px 30px #0a4a2d26}.header-email-action:hover,.header-email-action:focus-visible,.secondary-action:hover,.secondary-action:focus-visible,.quiet-action:hover,.quiet-action:focus-visible{background:var(--green-pale);border-color:var(--green)}.header-download:hover svg,.header-download:focus-visible svg,.header-email-action:hover svg,.header-email-action:focus-visible svg,.primary-action[download]:hover svg,.primary-action[download]:focus-visible svg,.secondary-action[download]:hover svg,.secondary-action[download]:focus-visible svg{transform:translateY(2px)}.primary-action:not([download]):hover svg,.primary-action:not([download]):focus-visible svg,.secondary-action:not([download]):hover svg,.secondary-action:not([download]):focus-visible svg,.quiet-action:hover svg,.quiet-action:focus-visible svg,.back-link:hover svg,.back-link:focus-visible svg{transform:translate(3px)}.mobile-menu-button{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--hairline);border-radius:6px;background:var(--paper-soft);color:var(--green)}.mobile-nav-actions{display:none}main{width:100%;max-width:100vw;padding:34px clamp(24px,4vw,48px) 42px}.hero{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(540px,1.2fr);gap:clamp(32px,4vw,64px);align-items:center;min-width:0;min-height:735px;padding:42px 0 36px}.hero-copy{position:relative;min-width:0;max-width:560px}.hero-copy:before{position:absolute;top:44px;left:-18px;width:3px;height:min(20vw,210px);background:var(--green);content:""}.eyebrow,.section-kicker,.section-heading span{display:inline-flex;color:var(--green)}.hero h1{margin:28px 0 24px;font-family:var(--font-display);font-size:clamp(76px,8.4vw,142px);font-weight:500;line-height:.82;letter-spacing:-.035em;text-wrap:balance}.hero h1 span{display:block}.hero-rule{width:112px;height:3px;margin-bottom:34px;background:var(--green)}.hero-statement{max-width:475px;margin:0 0 20px;font-family:var(--font-display);font-size:clamp(25px,2.2vw,37px);line-height:1.18}.hero-body{max-width:500px;margin:0 0 28px;color:#354039;font-size:17px;line-height:1.72}.identity-list{display:grid;gap:13px;margin:0 0 28px;color:#162018;font-size:15px}.identity-list a,.identity-list span{display:flex;min-width:0;align-items:center;gap:12px}.identity-list a{color:#0b3f27;text-decoration:underline;text-decoration-color:#0a4a2d52;text-decoration-thickness:1px;text-underline-offset:5px}.identity-list a:hover,.identity-list a:focus-visible{color:var(--green);text-decoration-color:var(--green)}.identity-list svg{flex:0 0 auto;color:var(--green)}.contact-actions{display:flex;flex-wrap:wrap;gap:14px}.contact-actions.compact{justify-content:flex-end}.primary-action,.secondary-action,.quiet-action{font-size:12px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.code-instrument{align-self:center;min-width:0;max-width:100%;overflow:hidden;border:1px solid rgba(225,235,226,.09);border-radius:var(--radius-instrument);background:radial-gradient(circle at 92% 10%,rgba(119,173,104,.14),transparent 28%),linear-gradient(145deg,#111b1d,#071011);color:#d9e7de;box-shadow:var(--shadow)}.code-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.09)}.code-tab{position:relative;display:flex;min-width:0;align-items:center;gap:10px;min-height:66px;padding:0 clamp(12px,2vw,30px);border:0;border-right:1px solid rgba(255,255,255,.07);background:#ffffff05;color:#d9e7de;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.04em;text-align:left;cursor:pointer;overflow:hidden;transition:background .18s ease,color .18s ease}.code-tab:after{position:absolute;right:0;bottom:0;left:0;height:3px;background:linear-gradient(90deg,var(--green-bright),rgba(119,173,104,.28));opacity:0;transform:scaleX(0);transform-origin:left;content:""}.code-tab>span:first-child{display:inline-flex;width:16px;height:16px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid rgba(119,173,104,.48);color:var(--green-bright)}.code-tab:nth-child(1)>span:first-child:before{content:"01"}.code-tab:nth-child(2)>span:first-child:before{content:"02"}.code-tab:nth-child(3)>span:first-child:before{content:"03"}.code-tab.active{background:#ffffff0e;box-shadow:inset 0 -3px 0 var(--green-bright)}.code-tab.active:after{opacity:1;transform:scaleX(1)}.code-tab.active>span:first-child{border-color:var(--green-bright);background:#77ad681f}.code-body{position:relative;min-width:0;height:min(48vw,520px);max-height:520px;min-height:400px;overflow:auto;scrollbar-color:rgba(143,189,120,.56) transparent;scrollbar-width:thin;padding:26px 0}.code-lines{transition:opacity .18s ease,transform .18s ease}.code-body.is-switching .code-lines{opacity:.82;transform:translateY(5px)}.code-body:after{position:absolute;right:0;bottom:0;left:0;height:120px;background:linear-gradient(180deg,#08101100,#071011 70%);pointer-events:none;content:""}.code-lines{margin:0;padding:0;counter-reset:line;font-family:var(--font-mono);font-size:clamp(14px,1.1vw,16px);line-height:1.76}.code-lines li{display:grid;grid-template-columns:62px 1fr;min-height:28px;padding-right:28px;color:#e5ece7}.code-lines li:before{color:#d9e7de7a;text-align:center;counter-increment:line;content:counter(line)}.code-lines .active-line{background:#77ad681a}.code-lines code{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.token-keyword{color:#eaa1b5}.token-string{color:#d4c978}.token-type{color:#8ec5e8}.token-number{color:#a6d68a}.token-comment{color:#73837a}.token-symbol{color:#b5d0bd}.code-instrument.is-motion-paused .caret{animation:none;opacity:0}.caret{display:inline-block;width:9px;height:1.1em;margin-left:4px;vertical-align:-.18em;background:var(--green-bright);animation:blink 1s steps(2,start) infinite}.code-status{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;min-height:62px;padding:0 28px;border-top:1px solid rgba(255,255,255,.09);color:#d9e7ded1;font-size:13px}.code-motion-toggle{display:inline-flex;min-height:34px;align-items:center;border:1px solid rgba(217,231,222,.22);border-radius:999px;padding:0 12px;background:#ffffff0f;color:#e9f5e8;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.code-motion-toggle:hover,.code-motion-toggle:focus-visible{background:#77ad6829;border-color:#77ad687a}.code-motion-toggle:disabled{cursor:default;opacity:.7}.about-section{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(30px,5vw,76px);align-items:start;margin:22px 0 42px;padding:clamp(34px,5vw,58px) 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.about-copy h2{max-width:620px;margin:14px 0 0;font-family:var(--font-display);font-size:clamp(33px,4vw,58px);font-weight:500;line-height:1.08}.about-body{display:grid;gap:28px}.about-body p{max-width:780px;margin:0;color:var(--muted-strong);font-size:clamp(17px,1.45vw,21px);line-height:1.68}.about-body ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);list-style:none}.about-body li{display:grid;gap:10px;min-height:156px;padding:24px 26px;border-right:1px solid var(--hairline)}.about-body li:last-child{border-right:0}.about-body strong{color:var(--green);font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.about-body span{color:var(--fine-text);font-size:14px;line-height:1.6}.current-focus-section{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:clamp(28px,5vw,74px);align-items:stretch;margin:22px 0 38px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.current-focus-copy,.current-focus-list{padding:clamp(28px,4vw,48px) 0}.current-focus-copy h2{max-width:640px;margin:14px 0 0;font-family:var(--font-display);font-size:clamp(32px,4vw,54px);font-weight:500;line-height:1.1}.current-focus-copy p{max-width:660px;margin:20px 0 0;color:#354039;font-size:16px;line-height:1.7}.current-focus-list{display:grid;align-content:center;gap:24px}.current-focus-badge{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;align-items:center;padding:22px 24px;border:1px solid var(--hairline-strong);border-radius:8px;background:linear-gradient(135deg,var(--green-pale),rgba(255,255,255,.54))}.current-focus-badge svg{grid-row:1 / span 3;color:var(--green)}.current-focus-badge span{color:var(--green);font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.current-focus-badge strong{font-size:19px;line-height:1.25}.current-focus-badge small{color:var(--muted);font-size:14px;font-weight:720}.current-focus-list ul{display:grid;gap:14px;margin:0;padding:0;list-style:none}.current-focus-list li{position:relative;min-height:46px;padding:0 0 0 28px;color:#243027;font-size:15px;line-height:1.6}.current-focus-list li:before{position:absolute;top:11px;left:0;width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 0 7px #0a4a2d14;content:""}.current-focus-updates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--hairline);background:#ffffff4d}.current-focus-updates article{min-height:132px;padding:18px;border-right:1px solid var(--hairline)}.current-focus-updates article:last-child{border-right:0}.current-focus-updates span{display:block;color:var(--green);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.current-focus-updates p{margin:11px 0 0;color:#2d3831;font-size:13px;line-height:1.55}.now-updates-section{border-bottom:1px solid var(--hairline)}.now-updates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--hairline);border-left:1px solid var(--hairline)}.now-update-card{min-height:190px;padding:clamp(24px,3vw,34px);border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);background:#ffffff47}.now-update-card span,.resume-signal-list li::marker{color:var(--green);font-weight:850}.now-update-card span{display:inline-flex;margin-bottom:18px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.now-update-card p{margin:0;color:#2b362f;font-size:16px;line-height:1.68}.section-block{padding:48px 0}.page-intro{display:grid;max-width:920px;min-height:385px;align-content:center;padding:clamp(54px,8vw,104px) 0 clamp(34px,5vw,68px)}.page-intro.source-intro{max-width:1180px;min-height:190px;padding-top:26px;padding-bottom:10px}.source-intro h1{max-width:1120px;font-size:clamp(44px,4.2vw,58px);line-height:.98}.source-intro p{margin-top:14px;font-size:18px}.page-intro h1{max-width:880px;margin:22px 0 0;font-family:var(--font-display);font-size:clamp(50px,6.5vw,94px);font-weight:500;line-height:.96;letter-spacing:0}.page-intro p{max-width:720px;margin:24px 0 0;color:#354039;font-size:clamp(17px,1.6vw,22px);line-height:1.62}.page-intro-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.project-intro-actions{display:flex;flex-wrap:wrap;gap:14px}.section-heading{display:grid;grid-template-columns:minmax(180px,auto) 1fr;gap:28px;align-items:center;margin-bottom:34px}.section-heading:after{display:block;height:1px;background:var(--hairline);content:""}.section-heading h2{grid-column:1 / -1;max-width:760px;margin-top:2px;font-size:clamp(32px,4vw,54px)}.section-heading.compact{display:block;margin-bottom:24px}.section-heading.compact:after{display:none}.section-heading.compact h2{margin-top:13px;font-size:clamp(25px,2vw,34px)}.timeline{position:relative;max-width:1120px;margin:0 auto}.resume-signal-panel{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(300px,1fr) auto;gap:clamp(22px,4vw,42px);align-items:center;margin:0 0 46px;padding:clamp(26px,4vw,42px);border:1px solid var(--hairline-strong);border-radius:8px;background:linear-gradient(90deg,rgba(10,74,45,.045) 1px,transparent 1px) 0 0 / 42px 42px,#ffffff61}.resume-signal-copy h2{margin:14px 0 0;font-family:var(--font-display);font-size:clamp(30px,3.2vw,46px);font-weight:500;line-height:1.12}.resume-signal-copy p{margin:18px 0 0;color:var(--muted);font-size:14px;font-weight:720;line-height:1.6}.resume-signal-list{display:grid;gap:12px;margin:0;padding-left:18px;color:#263129;font-size:15px;line-height:1.62}.resume-signal-actions{display:grid;gap:10px;min-width:178px}.timeline:before{position:absolute;top:20px;bottom:32px;left:278px;width:1px;background:var(--hairline-strong);content:""}.timeline-item{display:grid;grid-template-columns:230px 98px minmax(0,1fr);gap:0;padding:0 0 58px}.timeline-item:last-child{padding-bottom:0}.timeline-meta{display:grid;align-content:start;gap:8px;padding-top:4px;text-align:right}.timeline-meta span{font-size:14px;font-weight:750}.timeline-meta small{color:var(--muted);font-size:13px}.timeline-dot{position:relative;width:20px;height:20px;margin:0 auto;border:2px solid var(--green);border-radius:50%;background:var(--paper);box-shadow:0 0 0 7px #0a4a2d14}.timeline-dot:after{position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:var(--green);content:""}.timeline-content{max-width:790px}.role-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:12px}.role-line h3{margin:0;font-family:var(--font-display);font-size:clamp(25px,2.5vw,34px);font-weight:500}.role-line span{color:var(--green);font-size:14px;font-weight:800}.timeline-content p{max-width:720px;margin:0 0 14px;color:#364039;font-size:15px;line-height:1.65}.timeline-content ul{display:grid;gap:8px;margin:0;padding-left:18px;color:#202a23;font-size:15px;line-height:1.55}.stack-shell{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.stack-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--hairline)}.stack-tab{min-height:72px;border:0;border-right:1px solid var(--hairline);background:#ffffff2e;color:#243027;font-size:13px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.stack-tab:hover,.stack-tab:focus-visible{background:var(--green-pale)}.stack-tab:last-child{border-right:0}.stack-tab.active{background:var(--green);color:#fff}.stack-tab.active:hover,.stack-tab.active:focus-visible{background:var(--green)}.stack-grid{display:grid;grid-template-columns:repeat(3,1fr)}.stack-item{display:grid;grid-template-columns:auto 1fr;gap:16px;min-height:124px;align-items:center;padding:26px 28px;border-right:1px solid var(--hairline)}.stack-item:last-child{border-right:0}.stack-item svg{color:var(--green)}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.project-grid,.project-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.project-index{margin-bottom:58px}.project-card{position:relative;display:flex;min-height:520px;flex-direction:column;padding:clamp(28px,3vw,42px);border-right:1px solid var(--hairline);background:#fff3;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease}.project-card:before{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid transparent;border-radius:inherit;pointer-events:none;transition:border-color .2s ease;content:""}.project-card:last-child{border-right:0}.project-card.featured{min-height:560px;background:linear-gradient(180deg,#e8efe4d1,#ffffff47),#ffffff42;box-shadow:inset 4px 0 0 var(--green)}.project-card:hover,.project-card:focus-within{z-index:1;background:linear-gradient(180deg,#e8efe49e,#fff3),#ffffff52;box-shadow:inset 0 0 0 1px #0a4a2d2e,0 24px 54px #0a4a2d21;transform:translateY(-6px)}.project-card:hover:before,.project-card:focus-within:before{border-color:#77ad687a}.project-card.featured:hover,.project-card.featured:focus-within{box-shadow:inset 4px 0 0 var(--green),inset 0 0 0 1px #0a4a2d2e,0 26px 58px #0a4a2d24}.project-card-topline,.project-status{display:flex;align-items:center;gap:10px}.project-card-topline{justify-content:space-between;flex-wrap:wrap;color:var(--green);font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.project-status{color:#4b574f;letter-spacing:.06em}.featured-pill{display:inline-flex;min-height:26px;align-items:center;border:1px solid rgba(10,74,45,.2);border-radius:999px;padding:0 10px;background:var(--green);color:#fff;letter-spacing:.08em;transition:background .18s ease,color .18s ease,transform .18s ease}.project-card:hover .featured-pill,.project-card:focus-within .featured-pill{background:#08351f;transform:translateY(-1px)}.project-card h3{margin:30px 0 0;font-family:var(--font-display);font-size:clamp(31px,3vw,46px);font-weight:500;line-height:1.05}.project-card p{margin:18px 0 0;color:#354039;font-size:15px;line-height:1.68}.project-card .project-scan-line{max-width:520px;margin-top:18px;color:#17221a;font-size:16px;font-weight:720;line-height:1.5}.project-card-facts{display:grid;gap:18px;margin:24px 0 0}.project-card-facts div{display:grid;gap:7px;padding-top:17px;border-top:1px solid rgba(16,23,18,.11)}.project-card-facts dt,.project-card-tech>span,.project-takeaway strong{color:var(--green);font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.project-card-facts dd{margin:0;color:#354039;font-size:14px;line-height:1.58}.project-receipt-list{display:grid;gap:0;margin:22px 0 0;border:1px solid rgba(10,74,45,.13);background:#f8f6f085}.project-receipt-list div{display:grid;grid-template-columns:minmax(82px,.36fr) minmax(0,1fr);gap:12px;align-items:baseline;padding:12px 14px;border-bottom:1px solid rgba(10,74,45,.1)}.project-receipt-list div:last-child{border-bottom:0}.project-receipt-list dt,.project-side-receipts dt{color:var(--green);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.project-receipt-list dd,.project-side-receipts dd{margin:0;color:#26322b;font-size:13px;font-weight:680;line-height:1.4}.project-card-tech{display:grid;gap:11px;margin-top:22px}.project-stack{display:flex;flex-wrap:wrap;gap:8px;margin-top:0}.project-stack span{display:inline-flex;min-height:30px;align-items:center;border:1px solid rgba(10,74,45,.22);border-radius:999px;padding:0 11px;color:var(--green);background:var(--green-pale);font-size:12px;font-weight:750}.project-takeaway{display:grid;gap:8px;margin-top:22px}.project-takeaway strong{display:block}.project-link,.back-link{display:inline-flex;align-items:center;gap:10px;width:fit-content;color:#073c24;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;text-decoration:underline;text-decoration-color:#0a4a2d61;text-decoration-thickness:1px;text-underline-offset:6px}.project-link{margin-top:auto;padding:30px 6px 4px 0}.project-link svg{width:28px;height:28px;padding:6px;border:1px solid rgba(10,74,45,.24);border-radius:50%;background:#ffffff6b;transition:transform .16s ease,background .16s ease,color .16s ease}.project-link:hover,.project-link:focus-visible,.back-link:hover,.back-link:focus-visible{color:var(--green);text-decoration-color:var(--green)}.project-link:hover svg,.project-link:focus-visible svg{transform:translate(3px);background:var(--green);color:#fff}.back-link{margin-top:30px}.project-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:32px;margin-bottom:54px}.project-detail-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--hairline);border-left:1px solid var(--hairline)}.project-detail-panel{min-height:220px;padding:clamp(24px,3vw,36px);border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.project-detail-panel span,.project-side-panel span{color:var(--green);font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.project-detail-panel p,.project-side-panel strong,.project-proof-list p,.project-proof-list li{color:#354039;font-size:15px;line-height:1.68}.project-detail-panel p{margin:18px 0 0}.project-outcomes-panel ul{display:grid;gap:10px;margin:18px 0 0;padding-left:18px}.project-outcomes-panel li{color:#354039;font-size:15px;line-height:1.62}.project-side-panel{display:grid;align-content:start;gap:26px;padding:32px;border:1px solid var(--hairline-strong);border-radius:8px;background:#ffffff6b}.project-side-panel a{display:inline-flex;align-items:center;gap:8px;color:#123b25;font-size:15px;font-weight:750;line-height:1.5;text-decoration:underline;text-decoration-color:#0a4a2d57;text-underline-offset:5px}.project-side-panel a:hover{color:var(--green)}.project-side-panel>div{display:grid;gap:12px}.project-side-panel strong{font-weight:750}.project-side-panel .project-stack{margin-top:0}.project-side-receipts{display:grid;gap:0;margin:0;border:1px solid rgba(10,74,45,.12)}.project-side-receipts div{display:grid;gap:5px;padding:12px 13px;border-bottom:1px solid rgba(10,74,45,.1);background:#f8f6f075}.project-side-receipts div:last-child{border-bottom:0}.project-updates-panel{display:grid;grid-template-columns:minmax(250px,.62fr) minmax(0,1.38fr);gap:clamp(24px,4vw,48px);align-items:start;margin:0 0 54px;padding:clamp(26px,4vw,40px);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.project-updates-panel h2{margin:14px 0 0;font-family:var(--font-display);font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.12}.project-updates-panel ul{display:grid;gap:14px;margin:0;padding-left:18px;color:#354039;font-size:15px;line-height:1.68}.project-updates-panel li{opacity:0;transform:translateY(10px);transition:opacity .36s ease,transform .36s ease;transition-delay:var(--project-update-delay, 0ms)}.project-updates-panel.is-visible li{opacity:1;transform:translateY(0)}.architecture-sketch{display:grid;grid-template-columns:minmax(240px,.58fr) minmax(0,1.42fr);gap:clamp(28px,4vw,52px);align-items:center;margin:0 0 54px;padding:clamp(28px,4vw,42px);border:1px solid var(--hairline-strong);border-radius:8px;background:linear-gradient(90deg,rgba(10,74,45,.045) 1px,transparent 1px) 0 0 / 38px 38px,#ffffff57}.architecture-sketch h2{margin:14px 0 0;font-family:var(--font-display);font-size:clamp(25px,2.5vw,38px);font-weight:500;line-height:1.18}.architecture-sketch ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:12px;margin:0;padding:0;list-style:none;counter-reset:architecture}.architecture-sketch li{position:relative;min-height:118px;padding:20px 18px;border:1px solid rgba(10,74,45,.22);border-radius:8px;background:#f8f6f0c7;opacity:0;transform:translateY(12px);transition:opacity .36s ease,transform .36s ease,border-color .22s ease,background .22s ease;transition-delay:var(--architecture-delay, 0ms)}.architecture-sketch li:before{display:block;margin-bottom:18px;color:var(--green);font-size:12px;font-weight:850;letter-spacing:.1em;counter-increment:architecture;content:"0" counter(architecture)}.architecture-sketch li:not(:last-child):after{position:absolute;top:50%;right:-18px;width:22px;height:1px;background:#0a4a2d75;transform:scaleX(0);transform-origin:left;transition:transform .32s ease;transition-delay:calc(var(--architecture-delay, 0ms) + .12s);content:""}.architecture-sketch.is-visible li{opacity:1;transform:translateY(0)}.architecture-sketch.is-visible li:not(:last-child):after{transform:scaleX(1)}.architecture-sketch li span{color:#1d2821;font-size:14px;font-weight:760;line-height:1.35}.project-state-map{display:grid;gap:24px;margin:0 0 54px;padding:clamp(26px,4vw,42px);border:1px solid var(--hairline-strong);border-radius:8px;background:#ffffff7a}.project-state-map-copy{max-width:780px}.project-state-map h2{margin:14px 0 0;font-family:var(--font-display);font-size:clamp(30px,3vw,46px);font-weight:500;line-height:1.1}.project-state-map p{margin:14px 0 0;color:#344039;font-size:15px;line-height:1.65}.project-state-map a{display:block;overflow:hidden;border:1px solid rgba(10,74,45,.16);border-radius:10px;background:#f8f6f0;box-shadow:0 22px 60px #161f1814}.project-state-map img{display:block;width:100%;height:auto}.project-proof-grid{display:grid;grid-template-columns:minmax(300px,.74fr) minmax(0,1.26fr);gap:clamp(28px,4vw,54px);align-items:start;padding:12px 0 58px}.project-proof-list h2{margin:16px 0 0;font-family:var(--font-display);font-size:clamp(32px,3.5vw,52px);font-weight:500;line-height:1.08}.project-proof-list ul{display:grid;gap:12px;margin:24px 0 0;padding-left:18px}.project-proof-list p{margin:24px 0 0}.project-code-panel{position:relative;overflow:hidden;border:1px solid rgba(225,235,226,.09);border-radius:12px;background:linear-gradient(145deg,#111b1d,#071011);color:#d9e7de;box-shadow:var(--shadow)}.project-code-header{display:flex;justify-content:space-between;gap:18px;padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.09);color:#d9e7dec7;font-size:13px;font-weight:800}.project-code-panel .code-lines{max-height:620px;overflow:auto;padding:22px 0}.project-code-panel .callout-line{position:relative;background:#77ad681f}.project-code-panel .callout-line:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(119,173,104,.22),transparent);transform:translate(-100%);content:"";pointer-events:none}.project-code-panel .callout-line code{position:relative;z-index:1}.source-page-stack.is-visible .callout-line:after,.project-proof-grid.is-visible .callout-line:after{animation:code-line-scan 1.2s ease .26s both}.project-code-callout{display:grid;gap:8px;padding:14px 22px 18px;border-top:1px solid rgba(255,255,255,.09);color:#d9e7ded1;font-size:13px}.project-code-callout>div{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.project-code-callout span{color:var(--green-bright);font-weight:850;letter-spacing:.09em;text-transform:uppercase}.project-code-callout strong{font-weight:760}.project-code-callout p{max-width:720px;margin:0;color:#d9e7dec2;font-size:13px;line-height:1.5}.source-index{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;margin:-22px 0 28px;padding:16px 18px;border:1px solid var(--hairline);background:#ffffff5c}.source-index>span{color:var(--green);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.source-index div{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.source-index a{display:inline-flex;min-height:34px;align-items:center;padding:0 12px;border:1px solid rgba(10,74,45,.16);border-radius:999px;color:#123b25;font-size:12px;font-weight:820;text-decoration:none}.source-index a:hover,.source-index a:focus-visible{border-color:#0a4a2d61;background:#e8efe4c7}.source-page-stack{display:grid;gap:28px;padding-bottom:64px}.source-page-stack.reveal{opacity:1;transform:none}.source-card{display:grid;grid-template-columns:minmax(260px,.52fr) minmax(0,1.48fr);gap:clamp(24px,4vw,44px);align-items:start;padding:clamp(24px,4vw,38px);border:1px solid var(--hairline-strong);border-radius:8px;background:#ffffff5c;transition:opacity .44s ease,transform .44s ease,border-color .22s ease,box-shadow .22s ease;transition-delay:var(--source-card-delay, 0ms)}.source-page-stack:not(.is-visible) .source-card:not(:first-child){opacity:0;transform:translateY(14px)}.source-card:hover,.source-card:focus-within,.source-card:target{border-color:#0a4a2d5c;box-shadow:0 24px 60px #1017121a}.source-card:target{scroll-margin-top:110px}.source-card-copy h2{margin:14px 0 0;font-family:var(--font-display);font-size:clamp(30px,3.4vw,48px);font-weight:500;line-height:1.08}.source-card-copy p{margin:18px 0 0;color:#354039;font-size:16px;line-height:1.66}.source-line-callout{position:relative;margin:24px 0 0;padding:18px 18px 18px 22px;border-left:3px solid var(--green);background:linear-gradient(90deg,rgba(10,74,45,.07),transparent 84%),#ffffff5c}.source-line-callout:before{position:absolute;top:18px;left:-7px;width:11px;height:11px;border-radius:50%;background:var(--green);box-shadow:0 0 0 7px #0a4a2d1a;content:""}.source-line-callout span{color:var(--green);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.source-line-callout strong{display:block;margin-top:8px;color:#17221a;font-size:15px;line-height:1.35}.source-line-callout p{margin-top:8px;font-size:14px;line-height:1.55}.source-card-copy ul{display:grid;gap:10px;margin:22px 0 0;padding-left:18px;color:#2d3831;font-size:15px;line-height:1.62}.source-card-actions{display:flex;flex-wrap:wrap;gap:16px 22px;align-items:center;margin-top:22px}.source-card-link{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:13px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;text-decoration:underline;text-decoration-color:#0a4a2d52;text-underline-offset:5px}.source-card-link:hover svg,.source-card-link:focus-visible svg{transform:translate(3px)}.source-code-panel .code-lines{max-height:520px}.contact-detail-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:8px 0 64px;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.contact-detail-panel a,.contact-detail-panel div{display:grid;gap:16px;align-content:center;min-height:180px;padding:32px;border-right:1px solid var(--hairline);color:#17221a;font-size:15px;font-weight:720}.contact-detail-panel>:last-child{border-right:0}.contact-detail-panel svg{color:var(--green)}.impact-item{min-height:225px;padding:34px 42px;border-right:1px solid var(--hairline)}.impact-item:last-child{border-right:0}.impact-icon,.contact-icon{display:inline-flex;width:72px;height:72px;align-items:center;justify-content:center;margin-bottom:22px;border:1px solid rgba(10,74,45,.22);border-radius:50%;color:var(--green);background:#ffffff52}.impact-item h3{font-family:var(--font-body);font-size:20px;font-weight:820}.impact-item p{max-width:310px}.detail-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:0;padding:32px 0 48px}.detail-block{padding:0 42px 0 0;border-right:1px solid var(--hairline)}.detail-block+.detail-block{padding-left:42px}.detail-block:last-child{padding-right:0;border-right:0}.detail-row{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}.detail-row>svg,.achievement-list svg{color:var(--green)}.achievement-list{display:grid;gap:26px}.achievement-list>div{display:grid;grid-template-columns:auto 1fr;gap:18px;padding-bottom:24px;border-bottom:1px solid var(--hairline)}.achievement-list>div:last-child{padding-bottom:0;border-bottom:0}.contact-panel{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;margin-top:12px;padding:32px;border:1px solid var(--hairline-strong);border-radius:8px;background:#ffffff70}.contact-panel h2{font-size:clamp(30px,3vw,46px)}.site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;min-height:70px;padding:0 clamp(24px,4vw,48px);background:#081113;color:#ffffffd6;font-size:13px}.site-footer span,.site-footer nav,.site-footer a{display:inline-flex;align-items:center;gap:8px}.site-footer nav{gap:14px}.site-footer a{color:#ffffffd6;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.site-footer a:hover,.site-footer a:focus-visible{color:var(--green-bright)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .52s ease,transform .52s ease;transition-delay:var(--reveal-delay, 0ms)}.reveal.is-visible{opacity:1;transform:translateY(0)}.not-found-shell{display:grid;grid-template-columns:minmax(0,.78fr) minmax(360px,.72fr);gap:clamp(34px,6vw,82px);align-items:start;min-height:0;padding:clamp(40px,5vw,72px) 0 clamp(52px,6vw,88px)}.not-found-copy h1{max-width:660px;margin:22px 0 0;font-family:var(--font-display);font-size:clamp(52px,5.8vw,86px);font-weight:500;line-height:.98}.not-found-copy p{max-width:620px;margin:24px 0 0;color:#354039;font-size:clamp(17px,1.5vw,21px);line-height:1.65}.not-found-route{display:grid;gap:8px;max-width:540px;margin-top:30px;padding:18px 20px;border:1px solid rgba(10,74,45,.22);border-radius:8px;background:linear-gradient(90deg,#0a4a2d0f,#ffffff52),#ffffff5c;box-shadow:0 18px 42px #10171212}.not-found-route span,.diagnostic-topline,.diagnostic-route-card span,.diagnostic-steps dt{font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.not-found-route span{color:var(--muted)}.not-found-route code{overflow-wrap:anywhere;color:var(--green);font-family:var(--font-mono);font-size:15px;line-height:1.45}.not-found-actions{align-items:center}.not-found-diagnostic{overflow:hidden;border:1px solid rgba(225,235,226,.09);border-radius:12px;background:radial-gradient(circle at 88% 8%,rgba(119,173,104,.16),transparent 26%),linear-gradient(145deg,#111b1d,#071011);color:#d9e7de;box-shadow:var(--shadow)}.diagnostic-topline{display:flex;min-height:66px;align-items:center;justify-content:space-between;gap:20px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.09);color:#d9e7debd}.diagnostic-topline span{display:inline-flex;align-items:center;gap:10px}.diagnostic-topline svg{color:var(--green-bright)}.diagnostic-topline strong{color:#e9f5e8;font-family:var(--font-mono);font-size:13px}.diagnostic-route-card{display:grid;gap:10px;padding:24px;border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff06}.diagnostic-route-card span,.diagnostic-steps dt{color:#d9e7de94}.diagnostic-route-card code{overflow-wrap:anywhere;color:#e9f5e8;font-family:var(--font-mono);font-size:clamp(15px,1.5vw,19px);line-height:1.45}.diagnostic-route-card p{max-width:420px;margin:0;color:#d9e7dead;font-size:14px;line-height:1.6}.not-found-code-lines{min-height:330px;margin:0;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(90deg,rgba(217,231,222,.045) 1px,transparent 1px) 0 0 / 34px 34px,linear-gradient(180deg,#ffffff06,#fff0);counter-reset:route-line;font-family:var(--font-mono);font-size:clamp(13px,1.08vw,15px);line-height:1.78;overflow:hidden}.not-found-code-lines li{display:grid;grid-template-columns:58px 1fr;min-height:30px;padding-right:24px;color:#e5ece7}.not-found-code-lines li:before{color:#d9e7de6b;text-align:center;counter-increment:route-line;content:counter(route-line)}.not-found-code-lines code{min-width:0;white-space:pre-wrap;word-break:break-word}.not-found-active-line{background:#77ad681a;box-shadow:inset 3px 0 0 var(--green-bright)}.diagnostic-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:1px solid rgba(255,255,255,.08)}.diagnostic-steps div{display:grid;gap:8px;min-height:92px;align-content:center;padding:16px 20px;border-right:1px solid rgba(255,255,255,.07)}.diagnostic-steps div:last-child{border-right:0}.diagnostic-steps dd{margin:0;color:#e9f5e8;font-size:14px;font-weight:760;line-height:1.35}.back-to-top{position:fixed;right:clamp(18px,3vw,34px);bottom:clamp(18px,3vw,34px);z-index:30;display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border:1px solid rgba(248,246,240,.22);border-radius:50%;background:var(--green);color:#fff;box-shadow:0 18px 36px #0a4a2d38;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease,background .16s ease,color .16s ease}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover,.back-to-top:focus-visible{background:var(--green-pale);color:var(--green);border-color:#0a4a2d47}@keyframes blink{0%,45%{opacity:1}46%,to{opacity:0}}@keyframes code-line-scan{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.reveal,.architecture-sketch li,.project-updates-panel li,.source-card,.code-body.is-switching .code-lines,.project-card:hover,.project-card:focus-within{opacity:1!important;transform:none!important}.architecture-sketch li:not(:last-child):after{transform:scaleX(1)!important}.project-code-panel .callout-line:after{animation:none!important;display:none}}.robot-notes{grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);border-top:1px solid var(--hairline-strong);border-right:0;border-bottom:1px solid var(--hairline-strong);border-left:0;background:transparent}.robot-notes-console{border:0;border-top:1px solid var(--hairline-strong);border-bottom:1px solid var(--hairline-strong);border-radius:0;background:transparent;color:var(--ink)}.robot-notes-tabs{border-bottom-color:var(--hairline-strong)}.robot-notes-tabs button{border-right-color:var(--hairline-strong);color:var(--muted);font-family:var(--font-mono)}.robot-notes-tabs button.is-active{background:var(--green-pale);color:var(--green)}.robot-note{min-height:204px}.robot-note h3{color:var(--ink)}.robot-note p{color:var(--muted-strong)}.robot-note-link{color:var(--green)}.project-grid,.project-index{grid-template-columns:minmax(0,1.18fr) repeat(2,minmax(0,1fr))}.project-card{min-height:0;background:transparent;transition:background .18s ease,border-color .18s ease}.project-card:before{border-radius:0;border-left-width:3px}.project-card:hover,.project-card:focus-within{background:#e8efe46b;box-shadow:none;transform:none}.project-card.featured:hover,.project-card.featured:focus-within{box-shadow:inset 4px 0 0 var(--green)}@media(max-width:1180px){.project-card.featured{min-height:0}}.project-ordinal{position:absolute;top:18px;right:22px;color:#0a4a2d2e;font-family:var(--font-mono);font-size:clamp(32px,4vw,54px);font-weight:700;line-height:1}.featured-pill{border-radius:0;background:transparent;color:var(--green)}.project-stack{gap:0}.project-stack span{min-height:0;border:0;border-right:1px solid var(--hairline-strong);border-radius:0;padding:0 9px;background:transparent;font-family:var(--font-mono);font-size:11px}.project-stack span:first-child{padding-left:0}.project-link svg{border-radius:0}.contact-panel{border-right:0;border-left:0;background:transparent}.reveal{transform:translateY(8px)}.systems-observer-section{margin:32px 0 64px;padding:clamp(34px,5vw,66px) 0;border-top:1px solid var(--hairline-strong);border-bottom:1px solid var(--hairline-strong)}.systems-observer-heading{display:grid;grid-template-columns:minmax(220px,.58fr) minmax(0,1.42fr);gap:26px clamp(36px,5vw,76px);align-items:end;margin-bottom:clamp(34px,5vw,64px)}.systems-observer-heading h2{grid-column:1 / -1;max-width:13ch;margin:0;font-family:var(--font-display);font-size:clamp(42px,5.5vw,78px);font-weight:500;line-height:.95;letter-spacing:-.025em}.systems-observer-heading p{grid-column:2;max-width:58ch;margin:0;color:var(--muted-strong);font-size:16px;line-height:1.7}.systems-observer-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(34px,5vw,80px);align-items:start}.systems-observer-figure{position:sticky;top:110px;margin:0}.systems-observer-icon{display:block;width:min(100%,470px);height:auto;background:var(--paper);mix-blend-mode:normal}.systems-observer-figure figcaption{margin-top:12px;color:var(--green);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.systems-path-area{min-width:0}.systems-path{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;border-top:1px solid var(--hairline-strong);border-left:1px solid var(--hairline-strong);list-style:none}.systems-path:before{position:absolute;top:50%;right:16.5%;left:16.5%;height:1px;background:var(--green);opacity:.5;content:""}.systems-path-node{position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;min-height:112px;align-content:center;padding:19px 16px;border-right:1px solid var(--hairline-strong);border-bottom:1px solid var(--hairline-strong);background:var(--paper)}.systems-path-node:nth-child(4){grid-column:3;grid-row:2}.systems-path-node:nth-child(5){grid-column:2;grid-row:2}.systems-path-node:nth-child(6){grid-column:1;grid-row:2}.systems-path-node svg{color:var(--green)}.systems-path-index{position:absolute;top:10px;right:12px;color:var(--green);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.08em}.systems-path-node h3{margin:0;font-size:16px;line-height:1.2}.systems-path-node p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.systems-branch{display:grid;grid-template-columns:auto auto auto 1fr;gap:11px;align-items:center;margin:20px 0 0;padding:14px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);color:var(--green)}.systems-branch span,.systems-branch em{font-family:var(--font-mono);font-size:10px;font-style:normal;letter-spacing:.07em;text-transform:uppercase}.systems-branch strong{font-size:14px}.systems-branch em{color:var(--muted)}.robot-notes.is-embedded{display:block;margin:32px 0 0;padding:0;border:0}.robot-notes.is-embedded .robot-notes-identity{display:block}.robot-notes.is-embedded .robot-notes-identity h3{margin:10px 0 20px;font-family:var(--font-display);font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.05}.robot-notes.is-embedded .robot-notes-console{border-top:1px solid var(--hairline-strong)}.robot-notes.is-embedded .robot-note h4{max-width:22ch;margin:0;font-family:var(--font-display);font-size:clamp(26px,3vw,38px);font-weight:500;line-height:1.06}@media(max-width:1080px){.site-header{grid-template-columns:auto auto}.mobile-menu-button{display:inline-flex;justify-self:end}.header-actions{display:none}.site-nav{position:fixed;top:var(--header-height);right:16px;left:16px;display:none;grid-column:1 / -1;grid-template-columns:1fr;gap:4px;padding:18px;border:1px solid var(--hairline);border-radius:8px;background:#f8f6f0fa;box-shadow:0 20px 50px #10171224}.site-nav.is-open{display:grid}.site-nav a{padding:14px 4px}.mobile-nav-actions{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--hairline)}.mobile-nav-actions .header-email-action,.mobile-nav-actions .header-download{display:inline-flex;width:100%}.mobile-nav-actions .header-download{color:#fff}}@media(max-width:1180px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{max-width:760px}.systems-section,.systems-observer-heading,.systems-observer-layout{grid-template-columns:1fr}.systems-observer-heading p{grid-column:auto}.systems-observer-figure{position:static;max-width:470px}.robot-notes,.about-section,.current-focus-section,.architecture-sketch,.about-body ul{grid-template-columns:1fr}.about-body li{min-height:0;border-right:0;border-bottom:1px solid var(--hairline)}.about-body li:last-child{border-bottom:0}.systems-map{grid-template-columns:repeat(3,1fr)}.detail-grid,.contact-panel,.resume-signal-panel,.project-detail-layout,.project-proof-grid,.project-updates-panel,.source-card,.not-found-shell{grid-template-columns:1fr}.project-grid,.project-index{grid-template-columns:repeat(2,minmax(0,1fr))}.now-updates-grid{grid-template-columns:1fr}.project-card.featured{grid-column:1 / -1}.project-card{min-height:0;border-right:0;border-bottom:1px solid var(--hairline)}.project-card:last-child{border-bottom:0}.project-card:hover,.project-card:focus-within{transform:none}.contact-actions.compact{justify-content:flex-start}.resume-signal-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-block,.detail-block+.detail-block{padding:0 0 32px;border-right:0;border-bottom:1px solid var(--hairline)}.detail-block:last-child{padding-bottom:0;border-bottom:0}}@media(max-width:900px){.site-header{grid-template-columns:auto auto}.mobile-menu-button{display:inline-flex;justify-self:end}.site-nav{position:fixed;top:var(--header-height);right:16px;left:16px;display:none;grid-column:1 / -1;grid-template-columns:1fr;gap:4px;padding:18px;border:1px solid var(--hairline);border-radius:8px;background:#f8f6f0fa;box-shadow:0 20px 50px #10171224}.site-nav.is-open{display:grid}.site-nav a{padding:14px 4px}.header-actions{display:none}.mobile-nav-actions{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--hairline)}.mobile-nav-actions .header-email-action,.mobile-nav-actions .header-download{display:inline-flex;width:100%}.mobile-nav-actions .header-download{color:#fff}.timeline:before{left:12px}.timeline-item{grid-template-columns:28px 1fr;gap:18px}.timeline-meta{grid-column:2;grid-row:1;text-align:left}.timeline-dot{grid-column:1;grid-row:1 / span 2;margin-top:4px}.timeline-content{grid-column:2}.stack-grid,.impact-grid,.systems-map,.systems-path,.current-focus-updates,.project-detail-main,.contact-detail-panel,.project-grid,.project-index{grid-template-columns:1fr}.project-card.featured{grid-column:auto}.robot-notes-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.systems-path:before{display:none}.systems-path-node:nth-child(n){grid-column:auto;grid-row:auto}.systems-path-node{min-height:88px}.systems-branch{grid-template-columns:auto 1fr}.systems-branch span,.systems-branch em{grid-column:1 / -1}.current-focus-updates article{min-height:0;border-right:0;border-bottom:1px solid var(--hairline)}.current-focus-updates article:last-child{border-bottom:0}.architecture-sketch li:not(:last-child):after{display:none}.stack-tabs{grid-template-columns:repeat(2,1fr)}.stack-item,.impact-item,.contact-detail-panel a,.contact-detail-panel div{border-right:0;border-bottom:1px solid var(--hairline)}.stack-item:last-child,.impact-item:last-child,.contact-detail-panel>:last-child{border-bottom:0}}@media(max-width:620px){main{padding-right:18px;padding-left:18px;overflow-x:hidden}.site-header{padding-right:18px;padding-left:18px}.hero{width:100%;max-width:calc(100vw - 36px);overflow:hidden;padding-top:28px}.hero-copy,.hero-statement,.hero-body,.code-instrument,.systems-section,.systems-observer-section,.robot-notes,.about-section,.current-focus-section,.section-block,.contact-panel{width:100%;max-width:calc(100vw - 36px)}.hero h1{font-size:clamp(54px,15vw,68px)}.hero-statement{font-size:clamp(23px,6.8vw,27px);max-width:20ch}.hero-body{font-size:16px;max-width:39ch}.hero-statement,.hero-body{overflow-wrap:normal;word-break:normal}.identity-list a,.identity-list span{align-items:flex-start;line-height:1.4}.contact-actions{display:grid;grid-template-columns:1fr;max-width:336px}.contact-actions .primary-action,.contact-actions .secondary-action,.contact-actions .quiet-action{width:100%}.page-intro-actions,.project-intro-actions{display:grid;grid-template-columns:1fr;width:100%;max-width:336px}.project-intro-actions .primary-action,.project-intro-actions .secondary-action{width:100%}.code-instrument{max-width:100%}.source-card,.project-detail-layout,.project-detail-main,.project-detail-panel,.project-code-panel,.project-side-panel,.project-updates-panel,.architecture-sketch,.project-proof-grid,.not-found-shell,.not-found-copy,.not-found-route,.not-found-diagnostic{width:100%;max-width:100%}.source-card-copy,.project-detail-main,.project-detail-panel,.project-proof-list{min-width:0}.code-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.code-tab{min-height:52px;padding:0 10px;font-size:10px}.code-tab>span:first-child{width:14px;height:14px;font-size:9px}.code-tab-label{overflow:hidden;font-size:0;text-overflow:ellipsis;white-space:nowrap}.code-tab-label:before{content:attr(data-compact-label);font-size:10px}.code-body{min-height:360px}.code-lines{font-size:13px}.code-lines li{grid-template-columns:44px 1fr;padding-right:14px}.code-status{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:14px 16px}.code-status>span{min-width:0;overflow-wrap:anywhere}.code-motion-toggle{grid-column:1 / -1;width:fit-content}.code-status strong{margin-left:0}.systems-section,.about-section,.contact-panel,.resume-signal-panel,.architecture-sketch{padding:22px}.section-heading{display:block}.section-heading:after{margin-top:18px}.section-heading h2{font-size:34px}.page-intro{width:100%;max-width:calc(100vw - 36px);overflow:hidden;min-height:0;padding-top:44px}.page-intro h1{max-width:10ch;font-size:clamp(40px,11vw,56px)}.page-intro p{max-width:34ch;font-size:16px}.not-found-shell{overflow:hidden;gap:28px}.not-found-copy h1{max-width:10ch;font-size:clamp(45px,12vw,54px);line-height:1.02}.not-found-copy p{max-width:34ch;font-size:16px}.diagnostic-topline,.diagnostic-route-card{padding-right:18px;padding-left:18px}.not-found-code-lines{min-height:0;font-size:12px;overflow:hidden}.not-found-code-lines li{grid-template-columns:42px 1fr;padding-right:14px}.not-found-code-lines code,.not-found-code-lines code span{overflow-wrap:anywhere;word-break:break-word}.diagnostic-steps{grid-template-columns:1fr}.diagnostic-steps div{min-height:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.07)}.diagnostic-steps div:last-child{border-bottom:0}.timeline-content ul{padding-left:16px}.stack-tabs,.source-index{grid-template-columns:1fr}.source-index div{justify-content:flex-start}.project-receipt-list div{grid-template-columns:1fr;gap:5px}.stack-tab{min-height:58px;border-right:0;border-bottom:1px solid var(--hairline)}.impact-item,.project-card,.project-detail-panel,.project-side-panel,.project-updates-panel,.source-card,.about-body li,.current-focus-badge,.now-update-card,.contact-detail-panel a,.contact-detail-panel div{padding:28px 22px}.resume-signal-actions{grid-template-columns:1fr}.current-focus-copy,.current-focus-list{padding:32px 0}.architecture-sketch ol{grid-template-columns:1fr}.architecture-sketch li{min-height:0}.architecture-sketch li:not(:last-child):after{display:block;top:auto;right:auto;bottom:-13px;left:30px;width:1px;height:14px;transform:scaleY(0);transform-origin:top}.architecture-sketch.is-visible li:not(:last-child):after{transform:scaleY(1)}.project-code-header{display:grid}.site-footer{justify-content:flex-start;padding-top:18px;padding-bottom:18px}}.proof-evidence-ledger{margin-right:calc(clamp(24px,4vw,48px)*-1);margin-left:calc(clamp(24px,4vw,48px)*-1);padding:0 clamp(24px,4vw,48px);border-top:1px solid var(--proof-ink);border-bottom:4px double var(--proof-ink);border-radius:18px;background:#e5e9df}.proof-evidence-header{display:grid;grid-template-columns:170px minmax(0,1fr) minmax(220px,.48fr);gap:24px;align-items:end;padding:26px 0 28px;border-bottom:4px solid var(--proof-ink)}.proof-evidence-register{display:grid;gap:8px;align-self:stretch;align-content:space-between;color:var(--proof-copper-dark);font:700 11px/1.45 var(--proof-mono);letter-spacing:.08em;text-transform:uppercase}.proof-evidence-register small{color:var(--proof-muted);font:inherit;letter-spacing:.04em}.proof-evidence-header h2{margin:0;font:400 clamp(2.7rem,4.8vw,5rem)/.92 var(--proof-serif);letter-spacing:-.045em}.proof-evidence-header>p{max-width:34ch;margin:0;color:var(--proof-muted);font-size:14px;line-height:1.6}.proof-project-record{position:relative;display:grid;grid-template-columns:170px minmax(200px,.72fr) minmax(0,1.7fr);gap:24px;padding:40px 0;border-bottom:1px solid var(--proof-ink);transition:background .16s ease}.proof-project-record:last-child{border-bottom:0}.proof-project-record:hover,.proof-project-record:focus-within{background:#fbf7ee57}.proof-project-id{align-self:start}.proof-project-number{display:grid;width:142px;min-height:118px;place-items:center;border-radius:10px;background:var(--proof-copper);color:var(--proof-clean);font:400 clamp(4.5rem,7vw,7.5rem)/.75 var(--proof-serif);letter-spacing:-.08em}.proof-project-folio,.proof-project-eyebrow,.proof-project-annotation,.proof-project-decisions dt,.proof-project-stack,.proof-source-receipt,.proof-project-actions{font-family:var(--proof-mono);text-transform:uppercase}.proof-project-folio{display:block;margin-top:13px;color:var(--proof-copper-dark);font-size:11px;font-weight:700;line-height:1.45;letter-spacing:.08em}.proof-project-eyebrow{display:block;margin-bottom:14px;color:var(--proof-green);font-size:11px;font-weight:700;line-height:1.45;letter-spacing:.09em}.proof-project-title h3{margin:0;font:400 clamp(2.15rem,3.2vw,3.45rem)/.98 var(--proof-serif);letter-spacing:-.035em}.proof-project-title>p{max-width:38ch;margin:15px 0 0;color:var(--proof-muted);font-size:14px;line-height:1.58}.proof-project-annotation{display:block;margin-top:28px;padding-top:10px;border-top:1px dotted var(--proof-copper-dark);color:var(--proof-copper-dark);font-size:11px;font-weight:700;line-height:1.55;letter-spacing:.06em}.proof-project-detail{min-width:0}.proof-project-decisions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0}.proof-project-decisions>div{padding-top:9px;border-top:1px solid var(--proof-rule)}.proof-project-decisions dt{margin:0 0 10px;color:var(--proof-green);font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.08em}.proof-project-decisions dd{margin:0;color:var(--proof-ink);font-size:13px;line-height:1.6}.proof-project-stack{margin:20px 0 0;color:var(--proof-green);font-size:11px;font-weight:700;line-height:1.55;letter-spacing:.04em}.proof-source-receipt{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:18px;padding:14px 16px;border:1px solid var(--proof-rule);border-left:5px solid var(--proof-copper);border-radius:5px;background:var(--proof-clean);font-size:11px;font-weight:700;line-height:1.45;letter-spacing:.04em}.proof-source-receipt>span:first-child{color:var(--proof-copper-dark)}.proof-source-receipt strong{min-width:0;overflow-wrap:anywhere;color:var(--proof-ink)}.proof-source-receipt>span:last-child{color:var(--proof-muted);text-align:right}.proof-project-actions{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;margin-top:10px;font-size:11px;font-weight:700;line-height:1.45;letter-spacing:.07em}.proof-project-actions a{display:inline-flex;min-height:44px;align-items:center;gap:8px;color:var(--proof-green);text-decoration:underline;text-decoration-color:#174b346b;text-underline-offset:5px}.proof-project-actions a:first-child:not(:last-child){color:var(--proof-copper-dark);text-decoration-color:#8f452d6b}.proof-project-actions svg{transition:transform .16s ease}.proof-project-actions a:hover svg,.proof-project-actions a:focus-visible svg{transform:translate(3px)}.proof-sheet-home .working-brief{display:grid;grid-template-columns:170px minmax(280px,.86fr) minmax(0,1.14fr);gap:24px;margin:0;padding:clamp(44px,6vw,76px) 0;border-bottom:1px solid var(--proof-ink)}.proof-sheet-home .working-brief-header{display:contents}.proof-sheet-home .working-brief-folio,.proof-sheet-home .working-brief-note,.proof-sheet-home .working-brief-entries dt{font-family:var(--proof-mono);font-weight:700;text-transform:uppercase}.proof-sheet-home .working-brief-folio{grid-column:1;align-self:start;padding-top:8px;color:var(--proof-green);font-size:11px;line-height:1.45;letter-spacing:.1em}.proof-sheet-home .working-brief-header h2{grid-column:2;max-width:12ch;margin:0;font:400 clamp(2.65rem,4.6vw,5.1rem)/.98 var(--proof-serif);letter-spacing:-.045em}.proof-sheet-home .working-brief-note{grid-column:1;align-self:end;padding-top:10px;border-top:1px dotted var(--proof-copper-dark);color:var(--proof-copper-dark);font-size:13px;line-height:1.55;letter-spacing:.04em}.proof-sheet-home .working-brief-body{grid-column:3;grid-row:1 / span 2;min-width:0}.proof-sheet-home .working-brief-body>p{max-width:64ch;margin:0;color:var(--proof-ink);font:400 clamp(1.35rem,2.1vw,2rem)/1.42 var(--proof-serif)}.proof-sheet-home .working-brief-entries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:32px 0 0;border-top:1px solid var(--proof-ink);border-bottom:1px solid var(--proof-ink)}.proof-sheet-home .working-brief-entries>div{min-width:0;padding:18px 20px 20px 0;border-right:1px solid var(--proof-rule)}.proof-sheet-home .working-brief-entries>div+div{padding-left:20px}.proof-sheet-home .working-brief-entries>div:last-child{padding-right:0;border-right:0}.proof-sheet-home .working-brief-entries dt{color:var(--proof-green);font-size:11px;line-height:1.45;letter-spacing:.09em}.proof-sheet-home .working-brief-entries dd{margin:12px 0 0;color:var(--proof-muted);font-size:14px;line-height:1.6}@media(max-width:1050px){.proof-sheet-home .working-brief{grid-template-columns:150px minmax(0,1fr)}.proof-sheet-home .working-brief-header{display:grid;grid-column:1 / -1;grid-template-columns:150px minmax(0,1fr);gap:24px}.proof-sheet-home .working-brief-header h2{grid-column:2}.proof-sheet-home .working-brief-note{grid-column:1;grid-row:2;align-self:start}.proof-sheet-home .working-brief-body{grid-column:2;grid-row:auto}.proof-evidence-header{grid-template-columns:150px minmax(0,1fr)}.proof-evidence-header>p{grid-column:2}.proof-project-record{grid-template-columns:150px minmax(0,1fr)}.proof-project-id{grid-row:1 / span 2}.proof-project-detail{grid-column:2}.proof-project-number{width:122px;min-height:102px}}@media(max-width:680px){.legacy-home-content{padding:0 18px}.proof-dateline nav{gap:8px}.proof-sheet-home .working-brief{grid-template-columns:1fr;gap:24px;padding:44px 0}.proof-sheet-home .working-brief-header{grid-template-columns:1fr;gap:16px}.proof-sheet-home .working-brief-folio,.proof-sheet-home .working-brief-header h2,.proof-sheet-home .working-brief-note,.proof-sheet-home .working-brief-body{grid-column:1}.proof-sheet-home .working-brief-note{grid-row:auto;width:min(100%,310px);font-size:13px}.proof-sheet-home .working-brief-header h2{max-width:10ch;font-size:clamp(2.55rem,13vw,4rem)}.proof-sheet-home .working-brief-body>p{font-size:clamp(1.3rem,6.5vw,1.65rem)}.proof-sheet-home .working-brief-entries{grid-template-columns:1fr;margin-top:28px}.proof-sheet-home .working-brief-entries>div,.proof-sheet-home .working-brief-entries>div+div{padding:18px 0 20px;border-right:0;border-bottom:1px solid var(--proof-rule)}.proof-sheet-home .working-brief-entries>div:last-child{border-bottom:0}.proof-sheet-home .working-brief-entries dd{font-size:15px}.proof-evidence-ledger{width:auto;max-width:none;margin-right:-18px;margin-left:-18px;padding-right:18px;padding-left:18px;border-radius:14px}.proof-evidence-header{grid-template-columns:1fr;gap:18px;align-items:start;padding:24px 0}.proof-evidence-register{gap:5px}.proof-evidence-header h2{font-size:clamp(2.6rem,14vw,4.1rem)}.proof-evidence-header>p{grid-column:auto}.proof-project-record{grid-template-columns:92px minmax(0,1fr);gap:18px;padding:32px 0 36px}.proof-project-id{grid-row:auto}.proof-project-number{width:92px;min-height:76px;border-radius:7px;font-size:4.2rem}.proof-project-folio{font-size:10px}.proof-project-title{min-width:0}.proof-project-title h3{font-size:clamp(2rem,10.5vw,3rem);overflow-wrap:anywhere}.proof-project-title>p{font-size:13px}.proof-project-annotation{margin-top:20px;font-size:10px}.proof-project-detail{grid-column:1 / -1}.proof-project-decisions{grid-template-columns:1fr;gap:16px}.proof-project-decisions dd{font-size:14px}.proof-source-receipt{grid-template-columns:1fr;gap:6px;padding:14px}.proof-source-receipt>span:last-child{text-align:left}}.proof-sheet-home{--proof-paper: #f3ebdd;--proof-clean: #fbf7ee;--proof-ink: #19211c;--proof-muted: #566058;--proof-green: #174b34;--proof-moss: #dfe6d7;--proof-copper: #b45a36;--proof-copper-dark: #8f452d;--proof-rule: rgba(25, 33, 28, .24);--proof-serif: "Iowan Old Style", Baskerville, "Palatino Linotype", Palatino, Georgia, serif;--proof-sans: "Helvetica Neue", Helvetica, Arial, sans-serif;--proof-mono: "SFMono-Regular", "Cascadia Code", Consolas, monospace;color:var(--proof-ink);background:var(--proof-paper);font-family:var(--proof-sans)}.site-shell:has(.proof-sheet-home){background:var(--proof-paper)}.proof-dateline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:62px;margin:0 clamp(22px,4vw,58px);border-top:5px solid #174b34;border-bottom:1px solid #19211c;color:#19211c;font:700 10px/1.3 SFMono-Regular,Cascadia Code,Consolas,monospace;letter-spacing:.1em;text-transform:uppercase}.proof-dateline-center{text-align:center}.proof-dateline nav{display:flex;justify-content:end;gap:18px}.proof-dateline a{border-bottom:1px solid currentColor;text-underline-offset:4px}.proof-sheet-home a{text-underline-offset:4px}.proof-sheet-home a:hover{color:var(--proof-green)}.proof-sheet-home :focus-visible{outline-color:var(--proof-copper-dark)}.proof-folio{color:var(--proof-green);font:700 10px/1.3 var(--proof-mono);letter-spacing:.12em;text-transform:uppercase}.proof-masthead{position:relative;margin:0 clamp(22px,4vw,58px);padding:clamp(34px,5vw,68px) 0 30px;border-bottom:1px solid var(--proof-ink)}.proof-masthead:before,.proof-masthead:after{position:absolute;top:22px;width:20px;height:20px;content:"";border-top:1px solid var(--proof-copper)}.proof-masthead:before{left:0;border-left:1px solid var(--proof-copper)}.proof-masthead:after{right:0;border-right:1px solid var(--proof-copper)}.proof-masthead h1{margin:18px 0 0;font:400 clamp(5rem,12.5vw,11rem)/.72 var(--proof-serif);letter-spacing:-.065em;text-transform:uppercase}.proof-masthead h1 span{display:block}.proof-masthead h1 span:last-child{margin-left:17.5%}.proof-masthead-note{position:absolute;right:0;bottom:34px;max-width:220px;margin:0;color:var(--proof-muted);font:700 10px/1.6 var(--proof-mono);letter-spacing:.08em;text-transform:uppercase}.opening-proof{display:grid;grid-template-columns:minmax(240px,4fr) minmax(0,8fr);gap:clamp(28px,4vw,58px);margin:0 clamp(22px,4vw,58px);padding:clamp(38px,5vw,70px) 0;border-bottom:1px solid var(--proof-ink)}.proof-deck{display:flex;flex-direction:column}.proof-deck h2{max-width:12ch;margin:16px 0 20px;font:400 clamp(2rem,3.2vw,3.7rem)/1.01 var(--proof-serif);letter-spacing:-.03em}.proof-deck>p{max-width:42ch;margin:0;color:var(--proof-muted);font-size:15px;line-height:1.7}.proof-deck>.proof-deck-detail{margin-top:14px}.proof-identity{display:grid;gap:9px;margin-top:auto;padding-top:32px;font:700 11px/1.5 var(--proof-mono)}.proof-identity a{width:fit-content;text-decoration:underline}.proof-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}.proof-actions a{font:700 10px/1.4 var(--proof-mono);letter-spacing:.08em;text-decoration:underline;text-transform:uppercase}.proof-sheet-home .code-instrument{min-width:0;align-self:stretch;overflow:hidden;border-top:5px solid var(--proof-copper);border-radius:12px;background:#091113;box-shadow:8px 10px #19211c1a}.proof-sheet-home .code-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;border-bottom:1px solid #344039;background:transparent}.proof-sheet-home .code-tab{min-height:54px;padding:12px 16px;border:0;border-right:1px solid #344039;border-radius:0;color:#aebbb2;background:transparent;font:700 10px/1.4 var(--proof-mono);letter-spacing:.06em;text-align:left;text-transform:uppercase}.proof-sheet-home .code-tab:last-child{border-right:0}.proof-sheet-home .code-tab>span:first-child{display:none}.proof-sheet-home .code-tab.active{color:#fff;background:transparent;box-shadow:inset 0 -3px #9abc8d}.proof-sheet-home .code-body{min-height:390px;max-height:460px;padding:28px 30px;background:#091113}.proof-sheet-home .code-lines{font:13px/1.75 var(--proof-mono);white-space:pre}.proof-sheet-home .code-status{min-height:50px;padding:10px 18px;border-top:1px solid #344039;color:#aebbb2;background:#091113;font:700 10px/1.4 var(--proof-mono);letter-spacing:.05em;text-transform:uppercase}.proof-sheet-home .code-motion-toggle{padding:0;border:0;border-bottom:1px solid currentColor;border-radius:0;color:#9abc8d;background:transparent;font:inherit;letter-spacing:inherit;text-transform:inherit}.systems-proof{position:relative;display:grid;grid-template-columns:minmax(220px,3fr) minmax(0,9fr);gap:clamp(30px,5vw,70px);margin:0;padding:clamp(42px,6vw,82px) clamp(22px,4vw,58px);border-top:4px solid #174b34;border-bottom:1px solid #19211c;border-radius:20px;background:#dfe6d7}.systems-review{position:absolute;top:22px;right:0;padding:7px 12px;color:#fffaf0;background:#8f452d;font:700 9px/1.3 var(--proof-mono);letter-spacing:.1em;text-transform:uppercase}.novion-proof{width:min(100%,360px);margin:0}.novion-mount{overflow:hidden;padding:clamp(14px,2vw,24px);border-radius:12px;background:#174b34}.novion-mount img{display:block;width:100%;height:auto;border-radius:7px;background:#fbf7ee}.novion-proof figcaption{margin-top:12px;color:#174b34;font:700 10px/1.4 var(--proof-mono);letter-spacing:.08em;text-transform:uppercase}.systems-proof-copy h2{max-width:12ch;margin:12px 0 32px;font:400 clamp(2.8rem,5vw,5.8rem)/.92 var(--proof-serif);letter-spacing:-.045em}.proof-system-route{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;border-top:2px solid #174b34;list-style:none}.proof-system-route li{position:relative;min-height:112px;padding:20px 12px 16px 0;border-right:1px solid var(--proof-rule)}.proof-system-route li:last-child{border-right:0}.proof-system-route li:before{position:absolute;top:-6px;left:0;width:10px;height:10px;border:2px solid #174b34;background:#dfe6d7;content:""}.proof-system-route span,.proof-parallel-route span{color:#174b34;font:700 10px/1.4 var(--proof-mono)}.proof-system-route strong{display:block;margin-top:20px;font-size:14px}.proof-system-route em{display:block;margin-top:4px;color:var(--proof-muted);font:normal 11px/1.4 var(--proof-mono)}.proof-parallel-route{display:flex;gap:16px;align-items:center;width:fit-content;margin:16px 0 0 50%;padding:11px 0 0 18px;border-top:1px solid #174b34;border-left:1px solid #174b34;font:700 10px/1.5 var(--proof-mono);text-transform:uppercase}.proof-parallel-route em{color:var(--proof-muted);font-style:normal}.proof-field-note{display:grid;grid-template-columns:120px 1fr;gap:22px;max-width:760px;margin-top:34px;padding-top:18px;border-top:1px solid var(--proof-rule)}.proof-field-note blockquote{margin:0;font:400 clamp(1.4rem,2vw,2rem)/1.25 var(--proof-serif)}@media(max-width:960px){.proof-masthead h1 span:last-child{margin-left:0}.proof-masthead-note{position:static;margin-top:24px}.opening-proof,.systems-proof{grid-template-columns:1fr}.proof-deck>p{max-width:68ch}.proof-identity{margin-top:0}}@media(max-width:680px){.proof-dateline{grid-template-columns:1fr auto;gap:8px;min-height:56px;margin:0 18px;padding:10px 0}.proof-dateline-center{display:none}.proof-dateline nav{gap:10px}.proof-masthead,.opening-proof{margin-right:18px;margin-left:18px}.proof-masthead h1{font-size:clamp(3.2rem,18vw,5.2rem);line-height:.8;overflow-wrap:anywhere}.proof-sheet-home .code-tabs{display:flex;overflow-x:auto}.proof-sheet-home .code-tab{min-width:150px}.proof-sheet-home .code-body{min-height:330px;padding:22px 18px}.proof-sheet-home .code-lines{font-size:12px}.proof-sheet-home .code-status{grid-template-columns:1fr;gap:5px}.systems-proof{grid-template-columns:1fr;padding-right:18px;padding-left:18px;border-radius:20px}.systems-review{position:static;width:fit-content}.proof-system-route{grid-template-columns:1fr;border-top:0;border-left:2px solid #174b34}.proof-system-route li{min-height:0;padding:8px 0 24px 26px;border-right:0}.proof-system-route li:before{top:8px;left:-6px}.proof-system-route strong{margin-top:4px}.proof-parallel-route{margin-left:0}.proof-field-note{grid-template-columns:1fr}}.site-shell:has(.proof-sheet-home){background:#f3ebdd}.site-shell:has(.proof-sheet-home) main{padding:0 0 42px}.legacy-home-content{padding:0 clamp(24px,4vw,48px)}.proof-sheet-home .code-lines code{overflow-wrap:normal;white-space:pre}@media(max-width:680px){.legacy-home-content{padding:0 18px}.proof-dateline nav{gap:8px}}:root{--portfolio-bg: #09090d;--portfolio-bg-secondary: #111116;--portfolio-elevated: #18181f;--portfolio-light: #f3f1ec;--portfolio-light-secondary: #e9e6df;--portfolio-text: #f6f5f8;--portfolio-text-secondary: #aaa6b3;--portfolio-dark: #111116;--portfolio-dark-secondary: #66626c;--portfolio-purple: #9470ff;--portfolio-purple-soft: #c2afff;--portfolio-green: #72df91;--portfolio-border-dark: rgba(255, 255, 255, .1);--portfolio-border-light: rgba(17, 17, 22, .14);--portfolio-ease: cubic-bezier(.22, 1, .36, 1);--portfolio-radius-sm: 10px;--portfolio-radius-md: 18px;--portfolio-radius-lg: 28px;--portfolio-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;--portfolio-mono: "Geist Mono", "IBM Plex Mono", "SFMono-Regular", Consolas, monospace}body:has(.portfolio-home){background:var(--portfolio-bg)}body.menu-is-open{overflow:hidden}.site-shell:has(.portfolio-home){width:100%;max-width:none;margin:0;overflow:visible;background:var(--portfolio-bg)}.site-shell:has(.portfolio-home) main{width:100%;max-width:none;padding:0}.portfolio-home{overflow:clip;color:var(--portfolio-text);background:var(--portfolio-bg);font-family:var(--portfolio-sans)}.portfolio-home *,.portfolio-header *{box-sizing:border-box}.portfolio-home a,.portfolio-header a{color:inherit}.portfolio-home :focus-visible,.portfolio-header :focus-visible{outline:2px solid var(--portfolio-purple-soft);outline-offset:5px}.portfolio-wrap{width:min(100%,1440px);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,5rem)}.portfolio-kicker,.portfolio-chapter-number,.portfolio-hero-support,.portfolio-availability,.portfolio-portrait-caption,.system-visual-caption,.scout-status,.scout-visual-label,.ai-focus-evidence,.work-story-meta,.work-story-decisions dt,.work-story-stack,.work-visual small,.experience-index,.experience-role>span,.experience-tech,.about-facts>div>span,.contact-links a>span{font-family:var(--portfolio-mono);letter-spacing:.1em;text-transform:uppercase}.portfolio-kicker{margin:0;color:var(--portfolio-purple-soft);font-size:.68rem;font-weight:700;line-height:1.5}.portfolio-chapter-number{display:block;color:var(--portfolio-purple);font-size:.7rem;font-weight:700}.portfolio-button,.portfolio-text-link,.work-story-links a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:.7rem;font-size:.9rem;font-weight:650}.portfolio-button{padding:.85rem 1.25rem;border:1px solid transparent;border-radius:var(--portfolio-radius-sm);transition:transform .22s var(--portfolio-ease),background-color .22s ease,border-color .22s ease}.portfolio-button-primary{background:var(--portfolio-text);color:var(--portfolio-dark)!important}.portfolio-button-dark{background:var(--portfolio-dark);color:var(--portfolio-text)!important}.portfolio-button:hover,.portfolio-button:focus-visible{transform:translateY(-2px)}.portfolio-button-primary:hover,.portfolio-button-primary:focus-visible{background:var(--portfolio-purple-soft)}.portfolio-text-link{position:relative;padding:.5rem 0}.portfolio-text-link:after,.work-story-links a:after{position:absolute;right:0;bottom:5px;left:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .24s var(--portfolio-ease);content:""}.portfolio-text-link:hover:after,.portfolio-text-link:focus-visible:after,.work-story-links a:hover:after,.work-story-links a:focus-visible:after{transform:scaleX(1);transform-origin:left}.portfolio-header{position:fixed;z-index:50;top:0;right:0;left:0;display:grid;grid-template-columns:auto 1fr;align-items:center;min-height:86px;padding-inline:clamp(1.25rem,4vw,5rem);color:var(--portfolio-text);font-family:var(--portfolio-sans);transition:min-height .28s var(--portfolio-ease),background-color .28s ease,border-color .28s ease;animation:portfolio-header-in .7s 80ms var(--portfolio-ease) both}.portfolio-header.is-scrolled{min-height:68px;border-bottom:1px solid var(--portfolio-border-dark);background:#09090dc7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.portfolio-brand{position:relative;z-index:2;font-size:.96rem;font-weight:680;letter-spacing:-.01em}.portfolio-nav-shell{display:grid;grid-template-columns:1fr auto;align-items:center}.portfolio-nav{display:flex;justify-content:center;gap:clamp(1.25rem,2.7vw,2.8rem)}.portfolio-nav a{position:relative;padding:.8rem 0;color:var(--portfolio-text-secondary);font-size:.82rem;transition:color .18s ease}.portfolio-nav a:after{position:absolute;right:0;bottom:6px;left:0;height:1px;background:var(--portfolio-purple);transform:scaleX(0);transition:transform .22s var(--portfolio-ease);content:""}.portfolio-nav a:hover,.portfolio-nav a:focus-visible,.portfolio-nav a.is-current{color:var(--portfolio-text)}.portfolio-nav a.is-current:after{transform:scaleX(1)}.portfolio-header-contact{display:inline-flex;min-height:42px;align-items:center;gap:.45rem;padding:.6rem .9rem;border:1px solid var(--portfolio-border-dark);border-radius:var(--portfolio-radius-sm);font-size:.8rem;font-weight:650;transition:background-color .18s ease,border-color .18s ease}.portfolio-header-contact:hover,.portfolio-header-contact:focus-visible{border-color:#c2afff80;background:#9470ff1f}.portfolio-menu-button{display:none}.portfolio-hero{position:relative;display:grid;min-height:100svh;align-items:center;overflow:hidden;padding:8.5rem 0 5rem;background:radial-gradient(circle at 83% 42%,rgba(148,112,255,.11),transparent 23%),var(--portfolio-bg)}.portfolio-hero:before{position:absolute;top:0;right:0;width:40vw;height:1px;background:linear-gradient(90deg,transparent,rgba(194,175,255,.36));content:""}.portfolio-hero-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:clamp(2.5rem,7vw,8rem);align-items:center}.portfolio-hero-copy{position:relative;z-index:2;max-width:830px}.portfolio-hero-title-mask{overflow:hidden;margin-top:1.4rem}.portfolio-hero h1{max-width:10ch;margin:0;font-size:clamp(4.25rem,8.2vw,8.7rem);font-weight:620;line-height:.91;letter-spacing:-.072em}.portfolio-hero h1 span{color:var(--portfolio-purple-soft)}.portfolio-hero-statement{max-width:660px;margin:clamp(1.8rem,4vw,3rem) 0 0;color:var(--portfolio-text-secondary);font-size:clamp(1.08rem,1.75vw,1.45rem);line-height:1.55}.portfolio-hero-support{margin:1.1rem 0 0;color:#f6f5f8a1;font-size:.68rem}.portfolio-hero-actions{display:flex;flex-wrap:wrap;gap:1.8rem;align-items:center;margin-top:2.3rem}.portfolio-availability{display:flex;gap:.7rem;align-items:center;margin:2.1rem 0 0;color:var(--portfolio-text-secondary);font-size:.64rem}.portfolio-availability>span,.scout-status>span,.contact-copy .portfolio-kicker>span{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--portfolio-green)}.portfolio-portrait-scene{position:relative;width:min(100%,530px);justify-self:end;padding:8% 7% 0}.portfolio-portrait-glow{position:absolute;z-index:0;top:10%;right:-16%;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(148,112,255,.26),transparent 67%);filter:blur(24px);animation:portrait-glow-settle 1.6s .2s var(--portfolio-ease) both}.portfolio-portrait,.portfolio-portrait-fallback{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4 / 5;border-radius:48% 48% 44% 44%/38% 38% 55% 55%}.portfolio-portrait{height:auto;aspect-ratio:auto;border-radius:50%;object-fit:contain;filter:saturate(.9) contrast(1.03)}.portfolio-portrait-fallback{display:grid;place-items:center;overflow:hidden;border:1px solid rgba(194,175,255,.18);background:linear-gradient(150deg,transparent 0 45%,rgba(148,112,255,.08) 45% 45.2%,transparent 45.2%),radial-gradient(circle at 70% 27%,rgba(114,223,145,.09),transparent 4%),linear-gradient(145deg,#17171e,#0f0f14);color:#c2afff47;font-size:clamp(5rem,12vw,10rem);font-weight:650;letter-spacing:-.1em}.portfolio-portrait-fallback:before,.portfolio-portrait-fallback:after{position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;content:""}.portfolio-portrait-fallback:before{width:46%;aspect-ratio:1}.portfolio-portrait-fallback:after{width:70%;aspect-ratio:1}.portfolio-portrait-caption{position:relative;z-index:2;display:flex;justify-content:space-between;margin-top:1rem;color:var(--portfolio-text-secondary);font-size:.58rem}.portfolio-scroll-cue{position:absolute;right:clamp(1.25rem,4vw,5rem);bottom:1.5rem;display:inline-flex;align-items:center;gap:.6rem;color:var(--portfolio-text-secondary);font-family:var(--portfolio-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.hero-sequence{animation-duration:.76s;animation-fill-mode:both;animation-timing-function:var(--portfolio-ease)}.hero-sequence-label{animation-name:hero-fade-up;animation-delay:.18s}.hero-sequence-title{animation-name:hero-title-reveal;animation-delay:.29s}.hero-sequence-copy{animation-name:hero-fade-up;animation-delay:.56s}.hero-sequence-portrait{animation-name:hero-portrait-resolve;animation-delay:.38s;animation-duration:1.05s}.hero-sequence-actions{animation-name:hero-fade-up;animation-delay:.82s}.system-story{position:relative;background:var(--portfolio-bg-secondary)}.system-story-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(3rem,7vw,8rem)}.system-statement{display:flex;min-height:88vh;flex-direction:column;justify-content:center;opacity:1;transform:none;filter:none;transition:opacity .7s var(--portfolio-ease),transform .7s var(--portfolio-ease),filter .7s ease}.js .system-statement{opacity:.2;transform:translateY(2rem);filter:blur(2px)}.js .system-statement.is-active{opacity:1;transform:translateY(0);filter:blur(0)}.system-statement h3{max-width:10.5ch;margin:1.25rem 0 0;font-size:clamp(3.3rem,6.7vw,7rem);font-weight:600;line-height:.98;letter-spacing:-.06em}.system-statement h3 span{color:var(--portfolio-purple-soft)}.system-statement p{max-width:43ch;margin:1.7rem 0 0;color:var(--portfolio-text-secondary);font-size:1rem;line-height:1.65}.system-visual-sticky{position:sticky;top:15vh;height:70vh;align-self:start;padding-top:3rem}.system-evolution{display:block;width:100%;max-height:56vh;margin-top:1.8rem;overflow:visible}.system-evolution path,.system-evolution circle{vector-effect:non-scaling-stroke}.system-path,.system-arrow,.system-orbit{fill:none;stroke:#c2afff8c;stroke-width:1.5;transition:stroke-dashoffset .8s var(--portfolio-ease),opacity .5s ease}.system-path,.system-arrow{stroke-dasharray:700;stroke-dashoffset:700}.system-orbit{opacity:0}.system-node{fill:var(--portfolio-bg-secondary);stroke:#c2afffa6;stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.4);transition:transform .6s var(--portfolio-ease),opacity .4s ease,fill .5s ease}.system-node-origin{fill:var(--portfolio-purple);opacity:1;transform:scale(1)}.system-evolution text{fill:var(--portfolio-text-secondary);font:700 11px var(--portfolio-mono);letter-spacing:.12em;opacity:0;transition:opacity .4s ease}.system-evolution[data-stage="1"] .system-path-one,.system-evolution[data-stage="1"] .system-path-two,.system-evolution[data-stage="2"] .system-path,.system-evolution[data-stage="2"] .system-arrow{stroke-dashoffset:0}.system-evolution[data-stage="1"] .system-node-center,.system-evolution[data-stage="1"] .system-node-top,.system-evolution[data-stage="2"] .system-node{opacity:1;transform:scale(1)}.system-evolution[data-stage="1"] .system-orbit,.system-evolution[data-stage="2"] .system-orbit{opacity:.65}.system-evolution[data-stage="2"] .system-node-end{fill:var(--portfolio-green);stroke:var(--portfolio-green)}.system-evolution[data-stage="2"] text{opacity:1}.system-visual-caption{margin:0;color:var(--portfolio-text-secondary);font-size:.62rem;text-align:center}.system-visual-caption span{margin-inline:.35rem;color:var(--portfolio-purple)}.scout-feature{position:relative;padding:clamp(8rem,14vw,14rem) 0 7rem;background:radial-gradient(circle at 22% 38%,rgba(148,112,255,.09),transparent 25%),var(--portfolio-bg)}.scout-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.66fr);gap:clamp(3rem,9vw,10rem);align-items:end}.scout-intro h2{margin:1rem 0 -.08em -.07em;color:var(--portfolio-purple-soft);font-size:clamp(8rem,20vw,18rem);font-weight:600;line-height:.78;letter-spacing:-.09em}.scout-intro-copy{padding-bottom:.5rem}.scout-intro-copy>p{margin:0;color:var(--portfolio-text-secondary);font-size:1rem;line-height:1.7}.scout-intro-copy .scout-statement{margin-bottom:1.5rem;color:var(--portfolio-text);font-size:clamp(1.6rem,3vw,2.5rem);font-weight:560;line-height:1.15;letter-spacing:-.035em}.scout-status{display:flex;gap:.7rem;align-items:center;margin-top:1.8rem!important;color:var(--portfolio-text)!important;font-size:.64rem!important}.scout-story{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(0,1.05fr);gap:clamp(3rem,8vw,9rem);margin-top:clamp(7rem,13vw,13rem)}.scout-visual-sticky{position:sticky;top:12vh;height:76vh;align-self:start;padding:2rem 0}.scout-system-visual{position:relative;display:block;width:100%;height:auto;aspect-ratio:4 / 3;margin-top:1.5rem;overflow:hidden;border:1px solid var(--portfolio-border-dark);border-radius:var(--portfolio-radius-lg);background:var(--portfolio-elevated)}.scout-system-visual:after{position:absolute;z-index:1;top:50%;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent,rgba(9,9,13,.88));pointer-events:none;content:""}.scout-system-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--portfolio-ease),filter .6s ease}.scout-system-visual[data-stage="0"] img{transform:scale(1.025) translate(.8%);filter:saturate(.82) brightness(.86)}.scout-system-visual[data-stage="1"] img{transform:scale(1.045);filter:saturate(.92) brightness(.94)}.scout-system-visual[data-stage="2"] img{transform:scale(1.025) translate(-.8%);filter:saturate(1) brightness(1)}.scout-visual-label{position:absolute;z-index:2;padding:.45rem .58rem;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:var(--portfolio-text-secondary);background:#09090dad;font-size:.58rem;opacity:.35;transition:color .5s ease,opacity .5s ease}.scout-label-input{top:20%;left:5%}.scout-label-context{top:7%;left:50%;transform:translate(-50%)}.scout-label-action{right:5%;bottom:24%}.scout-system-visual[data-stage="0"] .scout-label-input,.scout-system-visual[data-stage="1"] .scout-label-context,.scout-system-visual[data-stage="2"] .scout-label-action{color:var(--portfolio-text);opacity:1}.scout-system-visual figcaption{position:absolute;z-index:2;right:1.2rem;bottom:1.1rem;left:1.2rem;margin:0;color:#f6f5f8a8;font-family:var(--portfolio-mono);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase}.scout-stage{display:flex;min-height:78vh;flex-direction:column;justify-content:center;opacity:1;transform:none;transition:opacity .65s var(--portfolio-ease),transform .65s var(--portfolio-ease)}.js .scout-stage{opacity:.22;transform:translateY(1.5rem)}.js .scout-stage.is-active{opacity:1;transform:translateY(0)}.scout-stage h3{margin:1.2rem 0 0;font-size:clamp(3.6rem,8vw,7.5rem);font-weight:600;line-height:.95;letter-spacing:-.065em}.scout-stage>p{max-width:42ch;margin:1.4rem 0 0;color:var(--portfolio-text-secondary);line-height:1.65}.scout-stage ul{display:flex;flex-wrap:wrap;gap:.65rem 1.3rem;margin:2rem 0 0;padding:0;list-style:none}.scout-stage li{color:var(--portfolio-purple-soft);font-family:var(--portfolio-mono);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.scout-conclusion{position:relative;display:grid;min-height:66vh;align-content:center;justify-items:start;margin-top:3rem;border-top:1px solid var(--portfolio-border-dark)}.scout-conclusion>p{max-width:14ch;margin:0;font-size:clamp(3.3rem,7.2vw,7rem);font-weight:580;line-height:1.03;letter-spacing:-.06em}.scout-conclusion .portfolio-text-link{margin-top:2.4rem}.scout-conclusion-arrow{position:absolute;right:clamp(1.25rem,4vw,5rem);bottom:3rem;color:var(--portfolio-purple)}.ai-focus{padding:clamp(7rem,12vw,12rem) 0;border-top:1px solid var(--portfolio-border-dark);background:var(--portfolio-bg-secondary)}.portfolio-section-intro{display:grid;grid-template-columns:.75fr 1.4fr .9fr;gap:clamp(2rem,5vw,5rem);align-items:start}.portfolio-section-intro h2{max-width:12ch;margin:0;font-size:clamp(3.4rem,6vw,6.5rem);font-weight:600;line-height:.98;letter-spacing:-.06em}.portfolio-section-intro>p:last-child{max-width:40ch;margin:0;color:var(--portfolio-text-secondary);font-size:1rem;line-height:1.7}.ai-focus-list{margin-top:clamp(5rem,10vw,9rem);border-top:1px solid var(--portfolio-border-dark)}.ai-focus-item{display:grid;grid-template-columns:.4fr 1fr 1.35fr .8fr;gap:clamp(1.2rem,3vw,3rem);align-items:start;padding:2.4rem 0;border-bottom:1px solid var(--portfolio-border-dark)}.ai-focus-item h3{margin:0;font-size:clamp(1.35rem,2.4vw,2.1rem);font-weight:580;line-height:1.16;letter-spacing:-.035em}.ai-focus-item>p{max-width:50ch;margin:0;color:var(--portfolio-text-secondary);font-size:.95rem;line-height:1.65}.ai-focus-evidence{color:#c2afffc7;font-size:.6rem;line-height:1.6}.selected-work{padding:clamp(7rem,12vw,12rem) 0;background:var(--portfolio-bg)}.work-stories{display:grid;gap:clamp(8rem,15vw,14rem);margin-top:clamp(7rem,12vw,11rem)}.work-story{display:grid;grid-template-columns:minmax(360px,1fr) minmax(0,.9fr);gap:clamp(3rem,8vw,8rem);align-items:center}.work-story-reverse .work-visual{grid-column:2}.work-story-reverse .work-story-copy{grid-row:1;grid-column:1}.work-visual{position:relative;display:grid;min-height:clamp(380px,48vw,650px);place-items:center;overflow:hidden;border-radius:var(--portfolio-radius-lg);background:var(--portfolio-elevated)}.work-visual small{position:absolute;right:1.4rem;bottom:1.4rem;left:1.4rem;color:var(--portfolio-text-secondary);font-size:.57rem}.work-visual-scout{background:radial-gradient(circle at 50% 48%,rgba(148,112,255,.14),transparent 30%),var(--portfolio-elevated)}.work-visual-ring{position:absolute;width:46%;aspect-ratio:1;border:1px solid rgba(194,175,255,.35);border-radius:50%}.work-visual-ring:before,.work-visual-ring:after{position:absolute;top:15%;right:15%;bottom:15%;left:15%;border:1px solid rgba(194,175,255,.2);border-radius:50%;content:""}.work-visual-ring:after{top:34%;right:34%;bottom:34%;left:34%}.work-visual-core{position:absolute;z-index:1;top:50%;left:50%;color:var(--portfolio-purple-soft);font-size:clamp(4rem,9vw,8rem);font-weight:600;line-height:1;letter-spacing:0;transform:translate(-50%,-50%)}.work-visual-path{position:absolute;top:50%;width:24%;height:1px;background:#c2afff66}.work-visual-path-one{left:0}.work-visual-path-two{right:0;background:#72df9180}.work-visual-graph{background:#14131c}.work-visual-graph svg{width:88%}.work-visual-graph path{fill:none;stroke:#c2afff6b;stroke-width:1.5;vector-effect:non-scaling-stroke}.work-visual-graph circle{fill:#14131c;stroke:var(--portfolio-purple);stroke-width:2;vector-effect:non-scaling-stroke}.work-visual-graph circle:nth-of-type(3){fill:#72df91e0;stroke:var(--portfolio-green)}.work-visual-impact{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:clamp(1rem,3vw,2.5rem);padding:clamp(2rem,5vw,4rem);background:#14131c}.impact-branch{display:grid;gap:1rem;align-content:center}.impact-branch span{color:var(--portfolio-text-secondary);font:700 .62rem var(--portfolio-mono);letter-spacing:.12em;text-transform:uppercase}.impact-branch i{display:block;height:1px;background:#c2afff5c}.impact-branch-head i:nth-of-type(2){height:2px;background:var(--portfolio-purple)}.impact-branch-head i:nth-of-type(3){background:#72df91b8}.impact-diff-path{display:grid;gap:.8rem;place-items:center;color:var(--portfolio-purple-soft)}.impact-diff-path span{width:1px;height:clamp(3rem,8vw,6rem);background:#c2afff52}.impact-diff-path strong{display:grid;width:3rem;aspect-ratio:1;place-items:center;border:1px solid rgba(194,175,255,.48);border-radius:50%;font-size:1.1rem;font-weight:500}.work-visual-loop{justify-items:stretch;padding:clamp(2rem,5vw,4rem);background:#15151b}.work-visual-loop ol{width:100%;margin:0;padding:0;border-top:1px solid rgba(194,175,255,.32);list-style:none;counter-reset:loop}.work-visual-loop li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;align-items:center;min-height:74px;border-bottom:1px solid var(--portfolio-border-dark);color:var(--portfolio-text-secondary);font-size:clamp(1.2rem,2vw,1.7rem);counter-increment:loop}.work-visual-loop li:before{color:var(--portfolio-purple);font:700 .65rem var(--portfolio-mono);content:"0" counter(loop)}.work-story-meta{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--portfolio-border-dark);color:var(--portfolio-text-secondary);font-size:.58rem}.work-story-meta span:first-child{color:var(--portfolio-purple)}.work-story-copy h3{margin:2rem 0 0;font-size:clamp(3.2rem,6vw,6.4rem);font-weight:600;line-height:.95;letter-spacing:-.065em}.work-story-summary{max-width:47ch;margin:1.5rem 0 0;color:var(--portfolio-text-secondary);font-size:1rem;line-height:1.65}.work-story-decisions{margin:2.5rem 0 0}.work-story-decisions>div{display:grid;grid-template-columns:5rem 1fr;gap:1.2rem;padding:1rem 0;border-top:1px solid var(--portfolio-border-dark)}.work-story-decisions dt{color:var(--portfolio-purple-soft);font-size:.58rem}.work-story-decisions dd{margin:0;color:var(--portfolio-text-secondary);font-size:.85rem;line-height:1.55}.work-story-stack{margin:1.4rem 0 0;color:#c2afffc7;font-size:.58rem;line-height:1.7}.work-story-links{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.8rem}.work-story-links a{position:relative;justify-content:flex-start;padding:.5rem 0}.work-story-links a+a{color:var(--portfolio-text-secondary)}.selected-work-all{margin-top:clamp(6rem,11vw,10rem)}.portfolio-experience{padding:clamp(7rem,12vw,12rem) 0;background:var(--portfolio-light);color:var(--portfolio-dark)}.portfolio-experience .portfolio-kicker{color:#704be3}.portfolio-about .portfolio-kicker{color:#633cc7}.portfolio-experience .portfolio-section-intro>p:last-child{color:var(--portfolio-dark-secondary)}.experience-records{margin:clamp(5rem,10vw,9rem) 0 3rem;border-top:1px solid var(--portfolio-border-light)}.experience-record{display:grid;grid-template-columns:.65fr .95fr 1.65fr;gap:clamp(1.8rem,4vw,4rem);padding:clamp(2.5rem,5vw,4.5rem) 0;border-bottom:1px solid var(--portfolio-border-light)}.experience-index{display:flex;flex-direction:column;gap:.65rem;color:var(--portfolio-dark-secondary);font-size:.6rem;line-height:1.5}.experience-index span:first-child{color:#704be3}.experience-role h3{margin:0;font-size:clamp(1.5rem,2.7vw,2.5rem);font-weight:620;line-height:1.08;letter-spacing:-.04em}.experience-role p{margin:.7rem 0 0;font-size:1rem;font-weight:600}.experience-role>span{display:block;margin-top:.6rem;color:var(--portfolio-dark-secondary);font-size:.58rem}.experience-detail>p:first-child{max-width:58ch;margin:0;color:#403d44;font-size:1rem;line-height:1.65}.experience-detail ul{display:grid;gap:.75rem;margin:1.7rem 0 0;padding:0;list-style:none}.experience-detail li{position:relative;max-width:65ch;padding-left:1.2rem;color:var(--portfolio-dark-secondary);font-size:.88rem;line-height:1.6}.experience-detail li:before{position:absolute;top:.66em;left:0;width:4px;height:4px;border-radius:50%;background:#704be3;content:""}.experience-tech{margin:1.5rem 0 0!important;color:#704be3!important;font-size:.58rem!important;line-height:1.65!important}.portfolio-experience .portfolio-button{margin-top:1.5rem}.portfolio-about{padding:clamp(7rem,12vw,12rem) 0;border-top:1px solid var(--portfolio-border-light);background:var(--portfolio-light-secondary);color:var(--portfolio-dark)}.about-layout{display:grid;grid-template-columns:.9fr 1.15fr .65fr;gap:clamp(2.5rem,7vw,7rem)}.about-heading h2{max-width:10ch;margin:1.2rem 0 0;font-size:clamp(3.1rem,5.8vw,6.2rem);font-weight:600;line-height:.98;letter-spacing:-.06em}.about-copy>p{max-width:48ch;margin:1.4rem 0 0;color:var(--portfolio-dark-secondary);line-height:1.72}.about-copy .about-lead{margin-top:0;color:var(--portfolio-dark);font-size:clamp(1.25rem,2.1vw,1.8rem);line-height:1.45;letter-spacing:-.025em}.about-copy blockquote{margin:3.2rem 0 0;padding:1.6rem 0 0;border-top:1px solid var(--portfolio-border-light);color:#3f3a46;font-size:1rem;font-style:normal;line-height:1.7}.about-stable-structure{display:flex;width:100%;max-width:270px;align-items:center;margin-top:2rem}.about-stable-structure span{width:9px;height:9px;flex:0 0 auto;border:2px solid #704be3;border-radius:50%}.about-stable-structure span:last-child{border-color:#3a8a51;background:#3a8a51}.about-stable-structure i{width:50%;height:1px;background:#704be36b}.about-facts{display:grid;align-content:start;gap:3rem}.about-facts>div{padding-top:.9rem;border-top:1px solid var(--portfolio-border-light)}.about-facts>div>span{display:block;margin-bottom:1.2rem;color:#633cc7;font-size:.58rem;font-weight:700}.about-facts strong{display:block;margin-bottom:.65rem;font-size:.95rem}.about-facts p,.about-facts li{margin:.32rem 0 0;color:var(--portfolio-dark-secondary);font-size:.8rem;line-height:1.5}.about-facts ul{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}.about-facts li{padding-bottom:.65rem;border-bottom:1px solid rgba(17,17,22,.08)}.portfolio-contact{position:relative;padding:clamp(7rem,13vw,13rem) 0 clamp(6rem,10vw,9rem);overflow:hidden;background:var(--portfolio-bg)}.portfolio-contact:before{position:absolute;top:18%;left:44%;width:32vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(148,112,255,.09),transparent 66%);content:""}.contact-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr);gap:clamp(4rem,10vw,11rem);align-items:end}.contact-copy .portfolio-kicker{display:flex;gap:.7rem;align-items:center;color:var(--portfolio-text-secondary)}.contact-copy h2{max-width:9ch;margin:1.7rem 0 0;font-size:clamp(4rem,8.5vw,9rem);font-weight:600;line-height:.9;letter-spacing:-.075em}.contact-copy>p:not(.portfolio-kicker){max-width:46ch;margin:2rem 0 0;color:var(--portfolio-text-secondary);font-size:1rem;line-height:1.7}.contact-copy .portfolio-button{margin-top:2.3rem}.contact-links{border-top:1px solid var(--portfolio-border-dark)}.contact-links a{display:grid;grid-template-columns:5rem 1fr auto;gap:1rem;align-items:center;min-height:82px;border-bottom:1px solid var(--portfolio-border-dark);transition:color .18s ease,padding .24s var(--portfolio-ease)}.contact-links a:hover,.contact-links a:focus-visible{padding-inline:.5rem;color:var(--portfolio-purple-soft)}.contact-links a>span{color:var(--portfolio-text-secondary);font-size:.58rem}.contact-links strong{overflow-wrap:anywhere;font-size:.86rem;font-weight:520}.site-shell:has(.portfolio-home) .site-footer{width:min(100%,1440px);margin:0 auto;padding:1.5rem clamp(1.25rem,4vw,5rem);border-top:1px solid var(--portfolio-border-dark);background:var(--portfolio-bg);color:var(--portfolio-text-secondary)}.site-shell:has(.portfolio-home) .site-footer span,.site-shell:has(.portfolio-home) .site-footer a{font-family:var(--portfolio-mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.site-shell:has(.portfolio-home)+.back-to-top,.site-shell:has(.portfolio-home)~.back-to-top{border-color:var(--portfolio-border-dark);background:#18181feb;color:var(--portfolio-text)}@supports (animation-timeline: view()){.portfolio-section-intro,.ai-focus-item,.work-story,.experience-record,.about-layout,.contact-layout{animation:portfolio-view-in linear both;animation-timeline:view();animation-range:entry 0% entry 28%}}@keyframes portfolio-header-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-title-reveal{0%{opacity:0;transform:translateY(108%)}to{opacity:1;transform:translateY(0)}}@keyframes hero-portrait-resolve{0%{opacity:0;transform:scale(1.04);filter:blur(12px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes portrait-glow-settle{0%{opacity:0;transform:translate(12%) scale(.82)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes portfolio-view-in{0%{opacity:.25;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1100px){.portfolio-hero-layout{grid-template-columns:minmax(0,1.1fr) minmax(310px,.7fr);gap:2.5rem}.portfolio-hero h1{font-size:clamp(4rem,8.4vw,6.4rem)}.portfolio-section-intro{grid-template-columns:.5fr 1.2fr .85fr}.work-story{grid-template-columns:minmax(320px,.9fr) minmax(0,1fr);gap:3.5rem}.about-layout{grid-template-columns:.9fr 1.1fr}.about-facts{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.portfolio-header{min-height:68px;grid-template-columns:1fr auto}.portfolio-menu-button{display:none}.js .portfolio-menu-button{position:relative;z-index:3;display:inline-grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid var(--portfolio-border-dark);border-radius:var(--portfolio-radius-sm);background:#09090db3;color:var(--portfolio-text)}.portfolio-nav-shell{display:flex;grid-column:1 / -1;flex-direction:column;align-items:stretch;padding-top:1rem}.js .portfolio-nav-shell{position:fixed;z-index:1;top:0;right:0;bottom:0;left:0;display:flex;visibility:hidden;flex-direction:column;align-items:stretch;justify-content:center;padding:6rem 1.25rem 2rem;background:#09090dfa;opacity:0;transform:translateY(-10px);transition:opacity .24s ease,transform .28s var(--portfolio-ease),visibility 0s .28s}.js .portfolio-nav-shell.is-open{visibility:visible;opacity:1;transform:translateY(0);transition-delay:0s}.portfolio-nav{display:grid;justify-content:stretch;gap:0;border-top:1px solid var(--portfolio-border-dark)}.portfolio-nav a{min-height:64px;padding:1rem 0;border-bottom:1px solid var(--portfolio-border-dark);color:var(--portfolio-text);font-size:1.25rem}.portfolio-nav a:after{right:auto;bottom:0;width:3rem}.portfolio-header-contact{justify-content:center;min-height:50px;margin-top:2rem;background:var(--portfolio-text);color:var(--portfolio-dark)!important}html:not(.js) .portfolio-header{position:relative;grid-template-columns:1fr;background:var(--portfolio-bg)}.portfolio-hero{min-height:auto;padding:7.5rem 0 4.5rem}.portfolio-hero-layout,.system-story-layout,.scout-intro,.scout-story,.work-story,.experience-record,.contact-layout{grid-template-columns:1fr}.portfolio-hero h1{max-width:9ch;font-size:clamp(3.8rem,15vw,6.5rem)}.portfolio-portrait-scene{width:min(82%,420px);justify-self:center;margin-top:2.5rem}.portfolio-scroll-cue{display:none}.system-story{padding:6rem 0}.system-story-copy{display:grid;gap:5rem}.js .system-statement,.js .scout-stage{min-height:auto;opacity:1;transform:none;filter:none}.system-statement h3{font-size:clamp(3.2rem,13vw,5.4rem)}.system-visual-sticky,.scout-visual-sticky{position:relative;top:auto;height:auto;margin-top:2rem}.system-evolution{max-height:none}.system-evolution .system-path,.system-evolution .system-arrow{stroke-dashoffset:0}.system-evolution .system-node,.system-evolution text{opacity:1;transform:scale(1)}.system-evolution .system-orbit{opacity:.65}.scout-feature{padding-top:7rem}.scout-intro h2{margin-top:1rem;font-size:clamp(7rem,29vw,12rem)}.scout-intro-copy{max-width:620px}.scout-story{display:flex;flex-direction:column;margin-top:3.5rem}.scout-system-visual{min-height:520px}.scout-stages{display:grid;gap:5rem;margin-top:4rem}.scout-stage h3{font-size:clamp(3.5rem,15vw,6rem)}.portfolio-section-intro{grid-template-columns:1fr 1.5fr}.portfolio-section-intro>p:last-child{grid-column:2}.ai-focus-item{grid-template-columns:.25fr .75fr 1.2fr}.ai-focus-evidence{grid-column:2 / -1}.work-story,.work-story-reverse{gap:3rem}.work-story-reverse .work-visual,.work-story-reverse .work-story-copy{grid-row:auto;grid-column:auto}.work-visual{min-height:min(78vw,560px)}.experience-record{grid-template-columns:.55fr 1.45fr}.experience-detail{grid-column:2}.about-layout{grid-template-columns:1fr}.about-heading h2{max-width:12ch}.about-copy,.about-facts{grid-column:auto}.contact-layout{gap:5rem}.site-shell:has(.portfolio-home)~.back-to-top{display:none}}@media(max-width:520px){.portfolio-wrap{padding-inline:1.25rem}.portfolio-hero{padding-bottom:3.5rem}.portfolio-hero h1{font-size:clamp(3.65rem,17vw,5.3rem)}.portfolio-hero-statement{font-size:1.03rem}.portfolio-hero-actions{align-items:stretch;flex-direction:column;gap:.8rem}.portfolio-button,.portfolio-hero-actions .portfolio-text-link{width:100%}.portfolio-hero-actions .portfolio-text-link{justify-content:center}.portfolio-portrait-scene{width:min(90%,350px)}.portfolio-section-intro,.ai-focus-item,.experience-record,.about-facts{grid-template-columns:1fr}.portfolio-section-intro{gap:1.4rem}.portfolio-section-intro>p:last-child,.ai-focus-evidence,.experience-detail{grid-column:auto}.portfolio-section-intro h2{font-size:clamp(3.1rem,15vw,4.7rem)}.system-statement h3,.scout-conclusion>p{font-size:clamp(3rem,14vw,4.4rem)}.system-story-copy{gap:4.5rem}.system-visual-sticky{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--portfolio-border-dark)}.system-visual-caption{line-height:1.7}.scout-system-visual{min-height:360px;border-radius:var(--portfolio-radius-md)}.scout-stage li{font-size:.62rem}.scout-conclusion{min-height:58vh}.ai-focus-item{gap:.9rem;padding:2rem 0}.ai-focus-item>p{font-size:.9rem}.work-stories{gap:7rem}.work-visual{min-height:350px;border-radius:var(--portfolio-radius-md)}.work-story-copy h3{font-size:clamp(3.2rem,16vw,5rem)}.work-story-meta{flex-direction:column}.work-story-decisions>div{grid-template-columns:1fr;gap:.5rem}.experience-role{margin-top:.6rem}.experience-records{margin-top:3.5rem}.experience-index,.experience-role>span{font-size:.64rem}.experience-detail{margin-top:1rem}.about-facts{gap:2.4rem}.contact-copy h2{font-size:clamp(3.7rem,17vw,5.5rem)}.contact-links a{grid-template-columns:4rem 1fr auto}.contact-links strong{font-size:.72rem}.site-shell:has(.portfolio-home) .site-footer{display:grid;gap:1rem}}@media(prefers-reduced-motion:reduce){html:has(.portfolio-home){scroll-behavior:auto}.portfolio-header,.hero-sequence,.portfolio-portrait-glow,.portfolio-section-intro,.ai-focus-item,.work-story,.experience-record,.about-layout,.contact-layout{animation:none!important}.js .system-statement,.js .scout-stage{opacity:1;transform:none;filter:none}.system-visual-sticky,.scout-visual-sticky{position:relative;top:auto;height:auto}.system-path,.system-arrow{stroke-dashoffset:0}.system-node,.system-orbit,.system-evolution text{opacity:1;transform:none}.system-statement,.scout-stage,.system-path,.system-arrow,.system-node,.scout-system-visual img,.portfolio-button,.portfolio-nav-shell{transition-duration:.01ms!important}}body:has(.portfolio-route){background:var(--portfolio-bg)}.site-shell:has(.portfolio-route){width:100%;max-width:none;margin:0;overflow:visible;background:var(--portfolio-bg)}.site-shell:has(.portfolio-route) main{width:100%;max-width:none;padding:0}.portfolio-route{min-height:100vh;overflow:clip;background:var(--portfolio-bg);color:var(--portfolio-text);font-family:var(--portfolio-sans)}.portfolio-route *,.portfolio-route *:before,.portfolio-route *:after{box-sizing:border-box}.portfolio-route a{color:inherit}.portfolio-route :focus-visible{outline:2px solid var(--portfolio-purple-soft);outline-offset:5px}.route-wrap{width:min(100%,1440px);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,5rem)}.route-kicker,.route-project-index,.route-project-status,.route-project-proof dt,.route-project-stack,.case-facts dt,.case-flow li span,.case-proof li span,.route-source-index,.route-source-number,.route-code-header,.route-contact-links span,.resume-document h2,.resume-projects span,.resume-skills dt{font-family:var(--portfolio-mono);letter-spacing:.1em;text-transform:uppercase}.route-kicker{margin:0;color:var(--portfolio-purple-soft);font-size:.67rem;font-weight:720;line-height:1.5}.route-hero{display:grid;min-height:min(92svh,920px);align-items:end;padding:clamp(10rem,18vh,13rem) 0 clamp(5rem,10vw,8rem);background:radial-gradient(circle at 74% 42%,rgba(148,112,255,.11),transparent 25%),var(--portfolio-bg)}.route-hero.is-compact{min-height:62svh}.route-hero-grid{display:grid;grid-template-columns:minmax(8rem,.38fr) minmax(0,1.35fr) minmax(15rem,.52fr);gap:clamp(2rem,5vw,5rem);align-items:end}.route-hero-copy h1{max-width:10ch;margin:0;font-size:clamp(4.3rem,8.5vw,9.2rem);font-weight:620;line-height:.9;letter-spacing:-.075em;text-wrap:balance}.route-hero-copy>p{max-width:47ch;margin:clamp(1.8rem,4vw,3rem) 0 0;color:var(--portfolio-text-secondary);font-size:clamp(1.04rem,1.5vw,1.28rem);line-height:1.65}.route-hero-aside{padding-top:1.3rem;border-top:1px solid var(--portfolio-border-dark)}.route-hero-aside>p{margin:0;color:var(--portfolio-text-secondary);font-size:.88rem;line-height:1.65}.route-actions{display:flex;flex-wrap:wrap;gap:1rem 1.4rem;align-items:center;margin-top:1.8rem}.route-button,.route-text-link,.route-project-links a,.route-source-copy a,.route-end-note a,.route-contact-copy button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:.65rem;font-size:.82rem;font-weight:680}.route-button{padding:.8rem 1.1rem;border:1px solid transparent;border-radius:var(--portfolio-radius-sm);transition:transform .22s var(--portfolio-ease),background .22s ease}.route-button-primary{background:var(--portfolio-text);color:var(--portfolio-dark)!important}.route-button:hover,.route-button:focus-visible{background:var(--portfolio-purple-soft);transform:translateY(-2px)}.route-text-link{padding:0;border:0;background:transparent;color:var(--portfolio-text);cursor:pointer}.route-text-link:hover,.route-text-link:focus-visible,.route-project-links a:hover,.route-project-links a:focus-visible,.route-source-copy a:hover,.route-source-copy a:focus-visible{color:var(--portfolio-purple-soft)}.route-back-link{position:absolute;z-index:4;top:7rem;left:clamp(1.25rem,4vw,5rem);display:inline-flex;min-height:44px;align-items:center;gap:.6rem;color:var(--portfolio-text-secondary)!important;font-size:.76rem;font-weight:700}.route-back-link:hover,.route-back-link:focus-visible{color:var(--portfolio-text)!important}.route-project-index-list{padding-top:clamp(3rem,7vw,7rem);padding-bottom:clamp(4rem,9vw,9rem);background:var(--portfolio-light);color:var(--portfolio-dark)}.route-projects-page{background:var(--portfolio-light)}.route-project-record{display:grid;grid-template-columns:minmax(4rem,.18fr) minmax(17rem,.85fr) minmax(24rem,1.15fr);gap:clamp(1.5rem,4vw,4.5rem);padding:clamp(4rem,8vw,7rem) 0;border-top:1px solid var(--portfolio-border-light)}.route-project-record:last-child{border-bottom:1px solid var(--portfolio-border-light)}.route-project-index{color:var(--portfolio-dark-secondary);font-size:.67rem}.route-project-heading .route-kicker{color:#5f3abf}.route-project-record.is-featured .route-project-index,.route-project-record.is-featured .route-project-heading .route-kicker{color:#6f45ef}.route-project-heading h2{margin:1.2rem 0 0;font-size:clamp(3.2rem,6vw,6.7rem);font-weight:620;line-height:.92;letter-spacing:-.068em}.route-project-heading>p:last-child{max-width:38ch;margin:1.6rem 0 0;color:var(--portfolio-dark-secondary);font-size:1rem;line-height:1.68}.route-project-status{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--portfolio-border-light);color:var(--portfolio-dark-secondary);font-size:.6rem;line-height:1.5}.route-project-status span:first-child{color:#5330bf}.route-project-proof dl{margin:1.2rem 0 0}.route-project-proof dl>div{display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:1.1rem 0;border-bottom:1px solid var(--portfolio-border-light)}.route-project-proof dt{color:#6b46d8;font-size:.58rem}.route-project-proof dd{margin:0;color:#47434d;font-size:.84rem;line-height:1.58}.route-project-stack{margin:1.3rem 0 0;color:#675b77;font-size:.59rem;line-height:1.7}.route-project-links{display:flex;flex-wrap:wrap;gap:.8rem 1.8rem;margin-top:1.35rem}.route-project-links a{position:relative;justify-content:flex-start;color:var(--portfolio-dark)}.route-project-links a+a{color:var(--portfolio-dark-secondary)}.route-end-note{padding:clamp(5rem,10vw,9rem) 0;background:var(--portfolio-bg-secondary)}.route-end-note .route-wrap{display:grid;grid-template-columns:.5fr 1fr .8fr;gap:2rem;align-items:baseline}.route-end-note p:not(.route-kicker){margin:0;font-size:clamp(1.5rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.035em}.route-end-note a{justify-self:end;color:var(--portfolio-text-secondary)}.case-paper{background:var(--portfolio-light);color:var(--portfolio-dark)}.case-overview{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);gap:clamp(3rem,8vw,9rem);padding-top:clamp(6rem,12vw,11rem);padding-bottom:clamp(6rem,12vw,11rem)}.case-overview-copy{display:grid;gap:clamp(4rem,8vw,7rem)}.case-overview-copy h2{max-width:23ch;margin:1.3rem 0 0;font-size:clamp(2.2rem,4.6vw,5rem);font-weight:580;line-height:1.02;letter-spacing:-.052em}.case-overview-copy article>p:last-child{max-width:48ch;margin:1.4rem 0 0;color:var(--portfolio-dark-secondary);font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.68}.case-paper .route-kicker{color:#6b46d8}.case-facts{align-self:start;border-top:1px solid var(--portfolio-border-light)}.case-facts dl{margin:0}.case-facts dl>div{padding:1.2rem 0;border-bottom:1px solid var(--portfolio-border-light)}.case-facts dt{color:#6b46d8;font-size:.57rem}.case-facts dd{margin:.55rem 0 0;color:var(--portfolio-dark-secondary);font-size:.83rem;line-height:1.58}.case-media{margin-top:0;margin-bottom:clamp(6rem,12vw,11rem)}.case-media img{display:block;width:100%;max-height:820px;object-fit:cover;border-radius:var(--portfolio-radius-lg);background:var(--portfolio-elevated)}.case-media.is-diagram img{object-fit:contain;border:1px solid var(--portfolio-border-light);background:#faf8f3}.case-media figcaption{margin-top:.8rem;color:var(--portfolio-dark-secondary);font:700 .58rem/1.5 var(--portfolio-mono);letter-spacing:.1em;text-transform:uppercase}.case-flow{padding:clamp(6rem,12vw,10rem) 0;background:#111116;color:var(--portfolio-text)}.case-flow .route-kicker{color:var(--portfolio-purple-soft)}.case-section-heading{display:grid;grid-template-columns:.48fr 1.25fr .75fr;gap:clamp(1.5rem,4vw,4rem);align-items:start}.case-section-heading h2{margin:0;font-size:clamp(2.7rem,5.5vw,6.4rem);font-weight:600;line-height:.95;letter-spacing:-.065em}.case-section-heading>p:last-child{margin:0;color:var(--portfolio-text-secondary);font-size:.92rem;line-height:1.7}.case-flow ol{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:clamp(4rem,8vw,7rem) 0 0;padding:0;border-top:1px solid var(--portfolio-border-dark);list-style:none}.case-flow li{position:relative;min-height:130px;padding:1.3rem 1rem 1.2rem 0;border-bottom:1px solid var(--portfolio-border-dark)}.case-flow li:not(:last-child):after{position:absolute;top:2.1rem;right:1rem;width:2.4rem;height:1px;background:#c2afff6b;content:""}.case-flow li span{display:block;color:var(--portfolio-purple);font-size:.58rem}.case-flow li strong{display:block;max-width:13ch;margin-top:2rem;color:var(--portfolio-text-secondary);font-size:.82rem;font-weight:560;line-height:1.45}.case-decision{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(18rem,.7fr);gap:clamp(3rem,9vw,10rem);padding-top:clamp(7rem,13vw,12rem);padding-bottom:clamp(7rem,13vw,12rem)}.case-decision h2{max-width:16ch;margin:1.4rem 0 0;font-size:clamp(3rem,6vw,7rem);font-weight:600;line-height:.95;letter-spacing:-.067em}.case-decision h3{margin:0;color:#6b46d8;font:720 .62rem/1.5 var(--portfolio-mono);letter-spacing:.1em;text-transform:uppercase}.case-decision h3:not(:first-child){margin-top:3rem}.case-decision p{margin:1rem 0 0;color:var(--portfolio-dark-secondary);font-size:1rem;line-height:1.72}.case-proof{padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem);border-top:1px solid var(--portfolio-border-light)}.case-proof .case-section-heading>p:last-child{color:var(--portfolio-dark-secondary)}.case-proof ol{margin:clamp(4rem,7vw,6rem) 0 0;padding:0;border-top:1px solid var(--portfolio-border-light);list-style:none}.case-proof li{display:grid;grid-template-columns:.3fr 1fr;gap:2rem;padding:1.6rem 0;border-bottom:1px solid var(--portfolio-border-light)}.case-proof li span{color:#6b46d8;font-size:.59rem}.case-proof li p{max-width:60ch;margin:0;color:var(--portfolio-dark-secondary);line-height:1.65}.case-source{display:grid;grid-template-columns:minmax(16rem,.55fr) minmax(0,1.45fr);gap:clamp(2rem,6vw,6rem);align-items:start;padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(7rem,13vw,12rem)}.case-source .case-section-heading{position:sticky;top:8rem;display:block}.case-source .case-section-heading h2{margin-top:1.3rem;color:var(--portfolio-dark);font-size:clamp(2.5rem,4.5vw,5rem)}.case-next{padding:clamp(5rem,10vw,9rem) 0;background:var(--portfolio-bg-secondary)}.case-next a{display:flex;justify-content:space-between;gap:2rem;align-items:center;margin-top:1.4rem;padding-top:1.6rem;border-top:1px solid var(--portfolio-border-dark)}.case-next a span{font-size:clamp(3rem,7vw,7.5rem);font-weight:600;line-height:.94;letter-spacing:-.065em}.case-next a:hover,.case-next a:focus-visible{color:var(--portfolio-purple-soft)}.route-source-page{background:var(--portfolio-light)}.route-source-index{display:flex;flex-wrap:wrap;gap:.65rem 1.4rem;align-items:center;padding-top:2rem;padding-bottom:2rem;border-bottom:1px solid var(--portfolio-border-light);background:var(--portfolio-light);color:var(--portfolio-dark-secondary);font-size:.6rem}.route-source-index>span{color:#6b46d8}.route-source-index a:hover,.route-source-index a:focus-visible{color:#5831c8}.route-source-list{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(6rem,12vw,11rem);background:var(--portfolio-light);color:var(--portfolio-dark)}.route-source-record{display:grid;grid-template-columns:minmax(17rem,.65fr) minmax(0,1.35fr);gap:clamp(2.5rem,6vw,7rem);padding:clamp(4rem,8vw,7rem) 0;border-top:1px solid var(--portfolio-border-light);scroll-margin-top:6rem}.route-source-record:last-child{border-bottom:1px solid var(--portfolio-border-light)}.route-source-copy{display:grid;grid-template-columns:3rem 1fr;gap:1.5rem;align-items:start}.route-source-copy .route-kicker{color:#5f3abf}.route-source-number{color:#6b46d8;font-size:.6rem}.route-source-copy h2{margin:1.1rem 0 0;font-size:clamp(2.5rem,4.5vw,5rem);font-weight:600;line-height:.95;letter-spacing:-.06em}.route-source-copy div>p:not(.route-kicker){margin:1.5rem 0 0;color:var(--portfolio-dark-secondary);font-size:.93rem;line-height:1.68}.route-source-copy blockquote{margin:2rem 0 0;padding:1.3rem 0 1.3rem 1.3rem;border-left:2px solid #7f5ae8}.route-source-copy blockquote strong{font-size:.9rem}.route-source-copy blockquote p{margin:.6rem 0 0;color:var(--portfolio-dark-secondary);font-size:.82rem;line-height:1.6}.route-source-copy ul{display:grid;gap:.65rem;margin:1.6rem 0 0;padding-left:1rem;color:var(--portfolio-dark-secondary);font-size:.83rem;line-height:1.55}.route-source-copy a{justify-content:flex-start;width:fit-content;margin-top:1.4rem;color:#5731bf}.route-code-instrument,.case-source .project-code-panel{min-width:0;overflow:hidden;border:1px solid var(--portfolio-border-dark);border-radius:var(--portfolio-radius-md);background:#101016;box-shadow:0 30px 80px #11111629;color:#e4e1ea}.route-code-header,.case-source .project-code-header{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border-bottom:1px solid var(--portfolio-border-dark);color:var(--portfolio-text-secondary);font-size:.57rem}.route-code-instrument .code-lines,.case-source .project-code-panel .code-lines{max-height:620px;margin:0;overflow:auto;padding:1.2rem 0;background:transparent;font-size:.76rem;line-height:1.7}.route-code-instrument .code-lines li,.case-source .project-code-panel .code-lines li{grid-template-columns:3.2rem minmax(max-content,1fr);padding-right:1.2rem}.route-code-instrument .callout-line,.case-source .project-code-panel .callout-line{background:#9470ff21}.case-source .project-code-callout{border-top-color:var(--portfolio-border-dark)}.route-resume-page{padding-bottom:clamp(5rem,10vw,9rem);background:var(--portfolio-light-secondary)}.resume-document{width:min(calc(100% - 2.5rem),1120px);margin:clamp(4rem,8vw,7rem) auto 0;padding:clamp(2rem,6vw,5rem);background:#fffefa;color:#15141a;box-shadow:0 35px 100px #11111624}.resume-document-header{display:flex;justify-content:space-between;gap:3rem;padding-bottom:2.2rem;border-bottom:2px solid #1d1b23}.resume-document-header h1{margin:0;font-size:clamp(3.3rem,7vw,6.8rem);font-weight:650;line-height:.9;letter-spacing:-.07em}.resume-document-header div>p{margin:1.2rem 0 0;color:#633fc6;font-weight:680}.resume-document-header address{display:grid;align-content:end;gap:.45rem;min-width:15rem;color:#55515d;font-size:.76rem;font-style:normal;line-height:1.45;text-align:right}.resume-document-header address a:hover,.resume-document-header address a:focus-visible{color:#633fc6}.resume-summary,.resume-section{display:grid;grid-template-columns:minmax(7.5rem,.3fr) minmax(0,1.7fr);gap:2.5rem;padding:2.5rem 0;border-bottom:1px solid rgba(17,17,22,.17)}.resume-document h2{margin:0;color:#633fc6;font-size:.65rem;line-height:1.5}.resume-summary>div>p{margin:0;font-size:1rem;line-height:1.6}.resume-summary ul,.resume-experience-list ul,.resume-projects ul{display:grid;gap:.5rem;margin:1rem 0 0;padding-left:1rem;color:#45414a;font-size:.8rem;line-height:1.5}.resume-experience-list{display:grid;gap:2rem}.resume-experience-list article header,.resume-education-record header{display:flex;justify-content:space-between;gap:2rem}.resume-experience-list h3,.resume-projects h3,.resume-education-record h3,.resume-details h3{margin:0;font-size:.94rem;line-height:1.3}.resume-experience-list header div p,.resume-projects header div p,.resume-education-record header div p{margin:.25rem 0 0;color:#633fc6;font-size:.78rem;font-weight:680}.resume-experience-list header>p,.resume-education-record header>p{margin:0;color:#55515d;font-size:.7rem;line-height:1.5;text-align:right}.resume-projects>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem}.resume-projects article{padding-top:.8rem;border-top:1px solid rgba(17,17,22,.15)}.resume-projects article header{display:block}.resume-projects span{display:block;margin-top:.45rem;color:#633fc6;font-size:.5rem;line-height:1.4;text-align:left}.resume-projects article>p{margin:.55rem 0 0;color:#55515d;font-size:.72rem;line-height:1.5}.resume-projects article>p:last-child{color:#6e647a;font-family:var(--portfolio-mono);font-size:.52rem;letter-spacing:.04em;text-transform:uppercase}.resume-education-record>p{margin:.75rem 0 0;color:#55515d;font-size:.72rem;line-height:1.5}.resume-skills dl{display:grid;gap:.7rem;margin:0}.resume-skills dl>div{display:grid;grid-template-columns:10rem 1fr;gap:1rem}.resume-skills dt{color:#633fc6;font-size:.54rem;font-weight:720}.resume-skills dd{margin:0;color:#45414a;font-size:.72rem;line-height:1.5}.resume-skills{border-bottom:0}.resume-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;border-bottom:0}.resume-details>div{padding-top:.8rem;border-top:1px solid rgba(17,17,22,.15)}.resume-details h2{margin-bottom:.9rem}.resume-details p{margin:.35rem 0 0;color:#55515d;font-size:.69rem;line-height:1.45}.resume-achievement+.resume-achievement{margin-top:.85rem}.route-contact-page,.route-not-found-page{min-height:calc(100vh - 70px)}.route-contact-links{border-top:1px solid var(--portfolio-border-dark)}.route-contact-links a{display:grid;grid-template-columns:6rem 1fr auto;gap:1rem;align-items:center;min-height:94px;border-bottom:1px solid var(--portfolio-border-dark);transition:padding .22s var(--portfolio-ease),color .18s ease}.route-contact-links a:hover,.route-contact-links a:focus-visible{padding-inline:.6rem;color:var(--portfolio-purple-soft)}.route-contact-links span{color:var(--portfolio-text-secondary);font-size:.58rem}.route-contact-links strong{overflow-wrap:anywhere;font-size:.9rem;font-weight:520}.route-contact-copy{padding-top:2rem;padding-bottom:clamp(5rem,10vw,9rem)}.route-contact-copy button{padding:0;border:0;background:transparent;color:var(--portfolio-text-secondary);cursor:pointer}.site-shell:has(.portfolio-route) .site-footer{width:min(100%,1440px);margin:0 auto;padding:1.5rem clamp(1.25rem,4vw,5rem);border-top:1px solid var(--portfolio-border-dark);background:var(--portfolio-bg);color:var(--portfolio-text-secondary)}.site-shell:has(.portfolio-route) .site-footer span,.site-shell:has(.portfolio-route) .site-footer a{font-family:var(--portfolio-mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.site-shell:has(.portfolio-route)~.back-to-top{border-color:var(--portfolio-border-dark);background:#18181feb;color:var(--portfolio-text)}@media(max-width:1050px){.route-hero-grid,.case-section-heading{grid-template-columns:minmax(7rem,.32fr) minmax(0,1fr)}.route-hero-aside,.case-section-heading>p:last-child{grid-column:2}.route-project-record{grid-template-columns:4rem minmax(0,1fr)}.route-project-proof{grid-column:2}.case-flow ol{grid-template-columns:repeat(3,minmax(0,1fr))}.case-source,.route-source-record{grid-template-columns:1fr}.case-source .case-section-heading{position:static}}@media(max-width:760px){.route-hero{min-height:0;padding-top:9rem;padding-bottom:4.5rem}.route-hero-grid,.case-section-heading,.case-overview,.case-decision,.route-end-note .route-wrap,.resume-summary,.resume-section{grid-template-columns:1fr}.route-hero-copy,.route-hero-aside,.case-section-heading>p:last-child,.route-project-proof{grid-column:auto}.route-hero-copy h1{font-size:clamp(3.7rem,16vw,6rem)}.route-hero-aside{max-width:34rem}.route-project-record{grid-template-columns:2.4rem minmax(0,1fr)}.route-project-proof{grid-column:1 / -1;padding-left:2.4rem}.route-project-heading h2{font-size:clamp(3rem,14vw,5rem)}.route-end-note a{justify-self:start}.case-flow ol{grid-template-columns:1fr}.case-flow li{min-height:0}.case-flow li:not(:last-child):after{top:auto;right:auto;bottom:-.55rem;left:.1rem;width:1px;height:1.1rem}.case-decision h2,.case-section-heading h2{font-size:clamp(3rem,14vw,5rem)}.case-source{padding-right:0;padding-left:0}.case-source .case-section-heading,.case-source .project-code-panel{margin-right:1.25rem;margin-left:1.25rem}.route-source-copy{grid-template-columns:2rem minmax(0,1fr);gap:.8rem}.route-code-instrument{border-radius:var(--portfolio-radius-sm)}.resume-document{width:calc(100% - 1.5rem);padding:1.5rem}.resume-document-header,.resume-experience-list article header,.resume-projects article header,.resume-education-record header{display:grid}.resume-document-header address,.resume-experience-list header>p,.resume-projects span,.resume-education-record header>p{text-align:left}.resume-projects>div,.resume-details{grid-template-columns:1fr}.route-contact-links a{grid-template-columns:4rem 1fr auto}}@media(max-width:460px){.route-project-record{grid-template-columns:1fr}.route-project-proof{grid-column:auto;padding-left:0}.route-project-proof dl>div,.case-proof li,.resume-skills dl>div{grid-template-columns:1fr;gap:.55rem}.route-project-status,.route-code-header{display:grid}.route-source-record{margin-right:-1.25rem;margin-left:-1.25rem}.route-source-copy{padding-inline:1.25rem}.route-code-instrument{border-right:0;border-left:0;border-radius:0}.route-contact-links a{grid-template-columns:1fr auto;padding:1rem 0}.route-contact-links strong{grid-column:1 / -1;grid-row:2}.site-shell:has(.route-resume-page)~.back-to-top{display:none}}@media(prefers-reduced-motion:reduce){.portfolio-route .reveal{opacity:1;transform:none;transition:none}.portfolio-route *,.portfolio-route *:before,.portfolio-route *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@page{size:letter;margin:.2in .38in}@media print{html,body{width:100%;min-width:0;background:#fff!important}.portfolio-header,.site-footer,.back-to-top,.resume-web-intro,.skip-link{display:none!important}.site-shell,.site-shell:has(.portfolio-route),.site-shell:has(.portfolio-route) main,.portfolio-route,.route-resume-page{width:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important}.resume-document{width:100%;max-width:none;margin:0;padding:0;box-shadow:none;color:#111;font-family:Arial,sans-serif}.resume-document-header{gap:.12in;padding-bottom:.055in}.resume-document-header h1{font-size:24pt}.resume-document-header div>p{margin-top:.035in;font-size:8pt}.resume-document-header address{gap:.012in;min-width:2.2in;font-size:6.1pt}.resume-summary,.resume-section{grid-template-columns:.78in 1fr;gap:.09in;padding:.038in 0;break-inside:avoid}.resume-document h2{font-size:6pt}.resume-summary>div>p{font-size:7.2pt;line-height:1.2}.resume-summary ul,.resume-experience-list ul,.resume-projects ul{gap:.012in;margin-top:.025in;font-size:6pt;line-height:1.15}.resume-experience-list{gap:.035in}.resume-experience-list article,.resume-projects article,.resume-education-record,.resume-details>div{break-inside:avoid}.resume-experience-list h3,.resume-projects h3,.resume-education-record h3,.resume-details h3{font-size:6.8pt}.resume-experience-list header div p,.resume-experience-list header>p,.resume-projects header div p,.resume-education-record header div p,.resume-education-record header>p{font-size:5.8pt}.resume-projects>div{gap:.035in .12in}.resume-projects article{padding-top:.035in}.resume-projects article header{display:block}.resume-projects span{margin-top:.02in}.resume-projects span,.resume-projects article>p:last-child{font-size:5pt}.resume-projects article>p{margin-top:.02in;font-size:5.9pt;line-height:1.22}.resume-skills dl{gap:.018in}.resume-skills dl>div{grid-template-columns:1.18in 1fr;gap:.06in}.resume-skills dt{font-size:5.2pt}.resume-skills dd,.resume-education-record>p,.resume-details p{font-size:5.7pt;line-height:1.16}.resume-education-record>p{margin-top:.02in}.resume-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:.12in}.resume-details h2{margin-bottom:.04in}.resume-details p{margin-top:.02in}.resume-achievement+.resume-achievement{margin-top:.05in}a{text-decoration:none!important}}
