body:before{content:none}.site-header{background:var(--paper);-webkit-backdrop-filter:none;backdrop-filter:none}.github-activity-skeleton{min-height:13rem;display:grid;align-content:center;gap:.75rem;margin:0;padding-block:1rem;border-block:1px solid var(--line-strong)}.github-activity-skeleton span{display:block;height:.85rem;border-radius:2px;background:linear-gradient(to right,color-mix(in oklch,var(--ink) 8%,var(--paper)) 0,color-mix(in oklch,var(--ink) 16%,var(--paper)) 50%,color-mix(in oklch,var(--ink) 8%,var(--paper)) 100%);background-size:200% 100%;animation:github-skeleton-shimmer 1.4s linear infinite}.github-activity-skeleton span:first-child{width:38%}.github-activity-skeleton span:nth-child(2){width:92%}.github-activity-skeleton span:nth-child(3){width:84%}.github-activity-skeleton span:nth-child(4){width:55%}@keyframes github-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.github-activity-skeleton span{animation:none}}.editorial-home{--home-space:clamp(3.5rem,7vw,6rem)}.editorial-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);align-items:center;gap:clamp(2rem,6vw,6rem);padding-block:clamp(2rem,5vw,4rem);border-bottom:1px solid var(--line-strong)}.editorial-hero h1{max-width:14ch;margin:1rem 0 1.3rem;font-size:clamp(3rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.045em;text-wrap:balance}.editorial-hero-lede{max-width:48ch;margin:0;color:var(--ink-soft);font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.6}.editorial-hero .hero-actions{margin-top:1.6rem}.editorial-hero-note{margin:1.2rem 0 0;font-size:.85rem;color:var(--muted)}.editorial-portrait{max-width:22rem;width:100%;justify-self:end;padding:.45rem;border:1px solid var(--line-strong);background:var(--surface)}.editorial-portrait img{display:block;aspect-ratio:4/5;outline:1px solid oklch(0 0 0/.1);outline-offset:-1px}.editorial-work{padding-top:var(--home-space);scroll-margin-top:7rem}.editorial-section-heading{margin-bottom:2rem}.editorial-section-heading h2{max-width:22ch;margin:.5rem 0 0;font-size:clamp(2rem,3.8vw,3.5rem);letter-spacing:-.035em}.selected-case{display:grid;grid-template-columns:2rem minmax(0,1fr) minmax(12rem,.45fr);gap:clamp(1.5rem,4vw,4rem);padding-block:2.5rem;border-top:1px solid var(--line-strong)}.selected-case:last-child{border-bottom:1px solid var(--line-strong)}.selected-case-number{font:.75rem var(--font-mono);padding-top:.25rem;color:var(--muted)}.selected-case :is(h2,h3){max-width:28ch;font-size:clamp(1.65rem,2.4vw,2.25rem);line-height:1.13;margin:.65rem 0 1rem;letter-spacing:-.025em}.selected-case :is(h2,h3) a{color:inherit;text-decoration:none}.selected-case :is(h2,h3) a:hover{text-decoration:underline;text-underline-offset:.15em}.selected-case-copy>p:not(.section-kicker){max-width:57ch;color:var(--ink-soft)}.selected-case-copy>.text-link{margin-top:.65rem}.selected-case-result{padding-left:1.5rem;border-left:1px solid var(--line);align-self:center}.selected-case-result strong{display:block;font:600 clamp(2.4rem,4.5vw,4.25rem)/1 var(--font-display);letter-spacing:-.04em}.selected-case-result p{margin:.65rem 0 1rem;font-size:.95rem}.selected-case-result span{font-size:.75rem;color:var(--muted)}.work-index-link{margin-top:1.5rem}.editorial-leadership{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem);padding-block:var(--home-space);border-block:1px solid var(--line)}.editorial-leadership h2{max-width:22ch;font-size:clamp(1.9rem,3.1vw,2.8rem);line-height:1.12}.editorial-leadership>div>p:not(.section-kicker){color:var(--ink-soft)}.editorial-person{max-width:48rem;padding-block:var(--home-space)}.editorial-person h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.12}.editorial-person>p:not(.section-kicker){max-width:58ch;color:var(--ink-soft);font-size:1.08rem}.editorial-projects>.page-intro{max-width:52ch;margin-bottom:3rem}.work-archive{margin-top:1.5rem;border:1px solid var(--line)}.work-archive>summary{padding:1.4rem 1.5rem;cursor:pointer;font-size:1.15rem;font-weight:650;min-height:4rem}.work-archive>summary:hover{background:var(--surface-soft)}.work-archive>summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.work-archive>summary span{display:block;margin:.35rem 0 0 1.3rem;font-size:.88rem;font-weight:400;color:var(--muted)}.work-archive[open]>summary{border-bottom:1px solid var(--line)}.work-archive-body{padding:1.5rem}.archive-intro{max-width:60ch;margin-bottom:2rem}.editorial-next{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--line)}.editorial-next h2{font-size:clamp(1.8rem,3vw,2.5rem)}.editorial-home .personal-closing{margin-top:0}@media (max-width:700px){.editorial-hero{grid-template-columns:1fr;gap:2rem;padding-top:2rem}.editorial-hero h1{max-width:15ch;font-size:clamp(2.5rem,10.5vw,3.6rem)}.editorial-hero .hero-actions{gap:.6rem}.editorial-hero .hero-actions .btn{padding-inline:1rem}.editorial-portrait{width:min(65%,15rem);justify-self:start}.selected-case{grid-template-columns:1fr;gap:1.2rem;padding-block:2rem}.selected-case-number{display:none}.selected-case-result{border-left:0;border-top:1px solid var(--line);padding:1rem 0 0}.selected-case-result strong{font-size:2.6rem}.selected-case-result p{margin:.5rem 0}.editorial-leadership{grid-template-columns:1fr;gap:1rem}.work-archive>summary{padding:1.1rem}.work-archive-body{padding:1rem}}.editorial-proof{margin:1.2rem 0 0;font-size:.85rem;line-height:1.5}.editorial-proof a{color:var(--accent-strong);text-underline-offset:.2em}.case-evidence-note{background:transparent;border:0;border-top:1px solid var(--line);padding:1.5rem 0}.case-evidence-note h2{font-size:1.1rem}.case-evidence-note p{max-width:70ch;font-size:.9rem}.about-page>h1,.case-hero>h1,.consulting-page>h1,.contact-page>h1,.editorial-projects>h1,.hire-page>h1,.hire-track-page>h1,.operator-case-hero>h1,.resume-page>h1{max-width:22ch;font-size:clamp(2.75rem,5.4vw,5rem);line-height:1.05;letter-spacing:-.04em}.editorial-projects>h1{max-width:none;max-inline-size:none}.editorial-hero{gap:clamp(2rem,7vw,7rem)}.editorial-hero h1{font-weight:500}.editorial-portrait{padding:0;border:0;background:transparent;transform:rotate(1deg)}.editorial-portrait img{aspect-ratio:1;object-fit:cover;filter:saturate(.65)}.portrait-caption{display:flex;justify-content:space-between;gap:1rem;margin:.75rem 0 0;font:.7rem var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.visual-work-list{display:grid;gap:1.5rem}.visual-case{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(2rem,4vw,4rem);padding:clamp(1.5rem,4vw,3.5rem);border:1px solid var(--line);align-items:center}.visual-case:last-child{border-bottom:1px solid var(--line)}.visual-case :is(h2,h3){max-width:23ch;font-weight:500;font-size:clamp(1.8rem,2.7vw,2.8rem)}.visual-case .selected-case-result{border:0;padding:0;margin:1.5rem 0 1rem}.visual-case .selected-case-result strong{font-size:clamp(2.5rem,4vw,4rem);font-weight:500}.visual-case .selected-case-result p{margin:.3rem 0}.visual-case .selected-case-visual{min-width:0}.featured-case{background:var(--ink);color:var(--paper);border-color:var(--ink);padding-block:clamp(2rem,5vw,4.5rem)}.featured-case :is(h2,h3){font-size:clamp(2.2rem,3.5vw,3.6rem)}.featured-case .section-kicker,.featured-case .text-link{color:var(--signal)}.featured-case .selected-case-copy>p:not(.section-kicker),.featured-case .selected-case-result span{color:#d2dcd6}.featured-case .selected-case-result strong{color:var(--signal)}.product-shot,.program-diagram,.stack-diagram{margin:0}.program-diagram{color:#f2f3e9;background:#132f29;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid #607b6f}.diagram-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;padding-bottom:1.5rem;border-bottom:1px solid #607b6f;font:.65rem/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.program-flow{list-style:none;padding:0;margin:2rem 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.program-flow li{display:flex;flex-direction:column;min-width:0;gap:.65rem;border-top:2px solid #d8ef7e;padding-top:1rem}.program-flow .diagram-index{color:#d8ef7e;font:.7rem var(--font-mono)}.program-flow strong{font-size:1.1rem;line-height:1.3}.program-flow li>span:last-child{font-size:.85rem;color:#cedbd3;line-height:1.5}.program-foundation{border-block:1px solid #607b6f;padding-block:1rem}.program-foundation>span{font:.65rem var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:#d8ef7e}.program-foundation p{font-size:.9rem;margin:.5rem 0 0}.program-diagram figcaption{margin-top:1rem;color:#cedbd3;font-size:.7rem;line-height:1.5}.program-diagram-compact .program-flow{grid-template-columns:1fr 1fr;gap:1.5rem 2rem}.program-diagram-compact .diagram-heading{font-size:.6rem}.program-diagram-compact .program-foundation p{font-size:.8rem}.stack-diagram{padding:clamp(1.25rem,3vw,2.5rem);background:var(--paper-deep);border:1px solid var(--line)}.stack-diagram .diagram-heading{border-color:var(--line-strong)}.stack-diagram ol{padding:0;list-style:none;margin:0}.stack-diagram li{display:grid;gap:.35rem;padding:1.15rem 0;border-bottom:1px solid var(--line)}.stack-diagram li>span{font:.65rem var(--font-mono);text-transform:uppercase;color:var(--accent-strong)}.stack-diagram strong{font-size:1.1rem}.stack-diagram p{font-size:.85rem;margin:0}.case-product-screen figcaption,.product-shot figcaption,.stack-diagram figcaption{font-size:.75rem;line-height:1.5;color:var(--muted);margin-top:1rem}.case-product-screen img,.product-shot img{width:100%;height:auto;display:block;outline:1px solid oklch(0 0 0/.1);outline-offset:-1px}.hiring-brief{margin-block:var(--home-space);padding:clamp(2rem,5vw,4rem);border-block:1px solid var(--line-strong);background:var(--signal-soft)}.hiring-brief h2{max-width:24ch;font:500 clamp(2rem,3.7vw,3.5rem)/1.08 var(--font-display);letter-spacing:-.035em;margin:.75rem 0 1.25rem}.hiring-brief>p:not(.section-kicker){max-width:62ch}.hiring-brief .btn{margin-top:1rem}.secondary-paths{font-size:.85rem;padding-block:1.5rem;color:var(--muted)}.secondary-paths a{color:var(--accent-strong);text-underline-offset:.2em}.visual-case-study .story-hero{padding-block:clamp(2rem,5vw,4rem);margin-bottom:0}.visual-case-study .story-hero h1{max-width:19ch;font-weight:500;font-size:clamp(2.8rem,5.5vw,5.6rem);line-height:1.02;letter-spacing:-.045em}.visual-case-study .page-intro{max-width:65ch}.story-facts{display:flex;flex-wrap:wrap;gap:.5rem 2rem;padding-top:1rem;margin-top:2rem;border-top:1px solid var(--line);font:.75rem/1.5 var(--font-mono);color:var(--muted)}.case-outcomes{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem;padding:2rem 0 3rem}.case-outcomes strong{font:500 clamp(2.4rem,5vw,4.5rem)/1 var(--font-display);letter-spacing:-.04em}.case-outcomes p{margin:.75rem 0 0;font-size:.9rem}.case-outcomes>div+div{border-left:1px solid var(--line);padding-left:2rem}.case-chapter{display:grid;grid-template-columns:minmax(8rem,.4fr) minmax(0,1fr);gap:2rem;padding-block:clamp(2.5rem,5vw,5rem);border-bottom:1px solid var(--line)}.case-chapter h2,.decision-section>header h2{font:500 clamp(2rem,3.3vw,3rem)/1.1 var(--font-display);letter-spacing:-.03em;max-width:28ch}.case-chapter h2{margin-top:0}.case-chapter p:not(.section-kicker){max-width:65ch}.decision-section{padding-top:clamp(2.5rem,5vw,5rem)}.decision-section>header{margin-bottom:2.5rem}.decision-chapter{display:grid;grid-template-columns:2rem minmax(0,.8fr) minmax(0,1fr);gap:2rem;border-top:1px solid var(--line-strong);padding:2rem 0}.chapter-number{font:.75rem var(--font-mono);color:var(--accent-strong);padding-top:.3rem}.decision-chapter h3{font:500 clamp(1.6rem,2.4vw,2.2rem)/1.15 var(--font-display);letter-spacing:-.02em;margin:0}.decision-chapter p:first-child{margin-top:0}.decision-tradeoff{border-left:2px solid var(--accent);padding-left:1rem;color:var(--ink-soft);font-size:.95rem}.decision-tradeoff>strong{display:block;margin-bottom:.4rem;color:var(--accent-strong);font:.65rem var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.case-next{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-block:2rem;border-top:1px solid var(--line);margin-top:2rem}.case-next>span{font:.7rem/1.5 var(--font-mono);text-transform:uppercase;color:var(--muted)}.case-next a{color:var(--accent-strong);text-underline-offset:.2em}.case-product-screen{margin:1rem 0 3rem}@media (max-width:800px){.visual-case{grid-template-columns:1fr;gap:2rem}.visual-case .selected-case-result{border:0}.visual-case .selected-case-result strong{font-size:3rem}.program-flow{grid-template-columns:1fr 1fr}.decision-chapter{grid-template-columns:1.5rem 1fr;gap:.75rem 1rem}.decision-chapter>div{grid-column:2}.case-chapter{grid-template-columns:1fr;gap:.5rem}}@media (max-width:480px){.program-diagram,.stack-diagram{padding:1.1rem}.program-diagram-compact .program-flow,.program-flow{grid-template-columns:1fr;gap:1.15rem}.program-diagram-compact .program-flow li{display:grid;grid-template-columns:1.5rem 1fr;gap:.3rem .5rem}.program-diagram-compact .program-flow li>span:last-child{grid-column:2}.diagram-heading{flex-direction:column;gap:.35rem}.case-outcomes{grid-template-columns:1fr;gap:1.5rem}.case-outcomes>div+div{border-left:0;padding:1rem 0 0;border-top:1px solid var(--line)}.case-outcomes p{margin-top:.4rem}}.featured-case :is(h2,h3){color:var(--paper)}.page-wrap>.visual-case-study:first-child{padding-block-start:0}.visual-case-study .story-hero{padding-block:clamp(2rem,4vw,3rem)}.visual-case-study .story-hero h1{max-width:22ch;font-size:clamp(2.65rem,4.8vw,4.8rem);margin-block:.8rem 1.25rem}.visual-case-study .story-hero .page-intro{font-size:clamp(1.05rem,1.6vw,1.2rem);margin-block-end:1.5rem}.visual-case-study .operator-case-result{margin-top:2rem}.current-work{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,5rem);border-block:1px solid var(--line-strong);padding-block:clamp(2rem,4vw,3rem);margin-top:3rem}.current-work h2{font:500 clamp(1.8rem,3vw,2.7rem)/1.1 var(--font-display);letter-spacing:-.025em;max-width:20ch}.current-work p:not(.section-kicker){color:var(--ink-soft);max-width:60ch}.current-work+.selected-work-list{margin-top:3rem}.career-proof,.case-builds{padding-block:clamp(2.5rem,5vw,4.5rem)}.career-proof>h2,.case-builds>h2{max-width:25ch;font:500 clamp(2rem,3.4vw,3rem)/1.12 var(--font-display);letter-spacing:-.03em}.career-case-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1.5rem;margin-top:2rem}.career-case-links>a{display:flex;flex-direction:column;align-items:start;gap:1rem;padding-block:1.5rem;border-block:1px solid var(--line-strong);color:var(--ink);text-decoration:none}.career-case-links strong{font:500 clamp(1.6rem,2.3vw,2.2rem)/1.12 var(--font-display);letter-spacing:-.025em}.career-case-links span{font-size:.95rem;color:var(--ink-soft)}.career-case-links .case-link-label{margin-top:auto;font-size:.8rem;color:var(--accent-strong);padding-top:.75rem;text-decoration:underline;text-underline-offset:.2em}.career-case-links a:hover strong{text-decoration:underline;text-underline-offset:.15em}.career-case-links a:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.current-role-note{max-width:70ch;font-size:.95rem;border-left:2px solid var(--accent);padding-left:1rem}.resume-current{margin-block:3rem;padding-block:2rem;border-block:1px solid var(--line-strong)}.resume-current h2{font-size:clamp(1.7rem,3vw,2.5rem)}.career-flow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.career-flow strong{font-size:1.1rem}@media (max-width:700px){.career-flow ol,.current-work{grid-template-columns:1fr;gap:1rem}.current-work h2{max-width:24ch}.career-panel-proof{overflow-wrap:anywhere}}.editorial-home .current-work{border-top:0;margin-top:0}.career-proof+.hiring-brief{margin-top:0}