:root{color-scheme:dark;--bg:#14120f;--surface:#1d1a16;--ink:#f2ede4;--muted:#a49c8f;--line:#2f2a24;--accent:#e08a6b;--accent-soft:#33231c;--code-bg:#0d0c0a;--code-ink:#f2ede4;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", serif;--step--1:.875rem;--step-0:1.0625rem;--step-1:1.25rem;--step-2:1.6rem;--step-3:2.15rem;--step-4:clamp(2.4rem, 5vw, 3.6rem);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--space-6:6rem;--radius:10px;--measure:68ch;--page:1080px}:root[data-theme=light]{color-scheme:light;--bg:#faf8f4;--surface:#fff;--ink:#1b1a17;--muted:#6d675e;--line:#e3ddd2;--accent:#a8452c;--accent-soft:#f2e6e0;--code-bg:#20201d;--code-ink:#f4f1ea}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--step-0);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}h1,h2,h3{font-family:var(--font-serif);letter-spacing:-.015em;text-wrap:balance;margin:0;font-weight:600;line-height:1.15}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-1)}p{margin:0 0 var(--space-2);text-wrap:pretty}a{color:inherit;text-decoration-color:var(--line);text-underline-offset:.2em}a:hover{text-decoration-color:var(--accent)}img{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.wrap{width:min(100% - 2.5rem, var(--page));margin-inline:auto}.skip{position:absolute;left:-999px}.skip:focus{z-index:20;background:var(--surface);padding:var(--space-1) var(--space-2);border-radius:var(--radius);top:1rem;left:1rem}.site-header{z-index:10;backdrop-filter:blur(8px);background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:4rem;display:flex}.brand{align-items:center;gap:.65rem;font-weight:600;text-decoration:none;display:inline-flex}.avatar{object-fit:cover;background:var(--accent-soft);border-radius:50%;width:2rem;height:2rem}.monogram{background:var(--accent-soft);width:2rem;height:2rem;color:var(--accent);font-family:var(--font-serif);border-radius:50%;place-items:center;font-size:.95rem;line-height:1;display:grid}.nav{align-items:center;gap:var(--space-3);font-size:var(--step--1);display:flex}.nav a:not(.button){color:var(--muted);text-decoration:none}.nav a:not(.button):hover{color:var(--ink)}.button{background:var(--ink);color:var(--bg);font-size:var(--step--1);border:1px solid var(--ink);border-radius:999px;padding:.6rem 1.15rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover{background:var(--accent);border-color:var(--accent)}.button--ghost{color:var(--ink);border-color:var(--line);background:0 0}.button--ghost:hover{background:var(--surface);border-color:var(--ink);color:var(--ink)}.theme-toggle{border:1px solid var(--line);width:2.25rem;height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;place-items:center;padding:0;display:inline-grid}.theme-toggle:hover{color:var(--ink);border-color:currentColor}.icon-moon,:root[data-theme=light] .icon-sun{display:none}:root[data-theme=light] .icon-moon{display:block}section{padding-block:var(--space-6);border-bottom:1px solid var(--line)}section:last-of-type{border-bottom:0}.eyebrow{font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-2);font-weight:600}.section-head{max-width:var(--measure);margin-bottom:var(--space-4)}.section-head p{color:var(--muted);margin-top:var(--space-2)}.hero .wrap{gap:var(--space-5);grid-template-columns:1.35fr .65fr;align-items:center;display:grid}.hero h1{margin-block:var(--space-1) var(--space-2)}.hero .role{font-size:var(--step-2);font-family:var(--font-serif);color:var(--accent);margin-bottom:var(--space-2)}.hero .availability{font-size:var(--step--1);color:var(--muted);margin-bottom:var(--space-3);align-items:center;gap:.5rem;display:inline-flex}.dot{background:#3f9463;border-radius:50%;width:.5rem;height:.5rem}.hero .lede{font-size:var(--step-1);max-width:34ch;color:var(--ink)}.hero-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.portrait{aspect-ratio:4/5;border-radius:var(--radius);background:var(--accent-soft);place-items:center;display:grid;overflow:hidden}.portrait img{object-fit:cover;width:100%;height:100%}.portrait .initial{font-family:var(--font-serif);color:var(--accent);opacity:.55;font-size:clamp(5rem,14vw,9rem)}.metrics{padding-block:var(--space-4);background:var(--surface);border-bottom:1px solid var(--line)}.metrics .wrap{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}.metric strong{font-family:var(--font-serif);font-size:var(--step-3);color:var(--accent);line-height:1;display:block}.metric span{font-size:var(--step--1);color:var(--muted);max-width:22ch;margin-top:.4rem;display:block}.prose{max-width:var(--measure)}.prose p+p{margin-top:var(--space-2)}.timeline{gap:var(--space-4);display:grid}.role-item{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);grid-template-columns:190px 1fr;display:grid}.role-item:first-child{border-top:0;padding-top:0}.role-meta{font-size:var(--step--1);color:var(--muted)}.role-meta .dates{font-variant-numeric:tabular-nums;display:block}.role-body h3{margin-bottom:.25rem}.role-body .company{font-weight:600}.scope{font-size:var(--step--1);color:var(--muted);margin-bottom:var(--space-2)}.role-body ul{margin:0;padding-left:1.1rem}.role-body li{margin-bottom:.45rem}.cases{gap:var(--space-4);display:grid}.case{padding:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.case-head{margin-bottom:var(--space-2);flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;display:flex}.case-head h3{margin:0}.case-meta{font-size:var(--step--1);color:var(--muted)}.case details{margin-top:var(--space-2)}.case summary{cursor:pointer;font-size:var(--step--1);color:var(--accent);font-weight:600}.case ul{margin:var(--space-2) 0 0;padding-left:1.1rem}.stack{margin-top:var(--space-3);flex-wrap:wrap;gap:.4rem;padding:0;list-style:none;display:flex}.stack li{background:var(--bg);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.18rem .6rem;font-size:.78rem}.expertise{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.card{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.card .num{font-size:var(--step--1);color:var(--accent);font-variant-numeric:tabular-nums;margin-bottom:var(--space-1);display:block}.card h3{font-size:var(--step-1);margin-bottom:.5rem}.card p{color:var(--muted);font-size:var(--step--1);margin:0}.lab-list{gap:0;display:grid}.lab-item{gap:var(--space-3);padding-block:var(--space-3);border-top:1px solid var(--line);grid-template-columns:130px 1fr;text-decoration:none;display:grid}.lab-item:hover h3{color:var(--accent)}.lab-item time{font-size:var(--step--1);color:var(--muted);font-variant-numeric:tabular-nums}.lab-item h3{font-size:var(--step-1);margin-bottom:.3rem}.lab-item p{color:var(--muted);font-size:var(--step--1);margin:0}.contact .wrap{gap:var(--space-4);grid-template-columns:1.2fr .8fr;align-items:end;display:grid}.contact h2{margin-bottom:var(--space-2)}.contact-links{font-size:var(--step--1);gap:.6rem;display:grid}.contact-links a{font-weight:600}.site-footer{border-top:1px solid var(--line);padding-block:var(--space-4);font-size:var(--step--1);color:var(--muted)}.site-footer .wrap{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;display:flex}.article{max-width:var(--measure);padding-block:var(--space-5);margin-inline:auto}.article h1{font-size:var(--step-3);margin-bottom:var(--space-2)}.article .article-meta{color:var(--muted);font-size:var(--step--1);margin-bottom:var(--space-4)}.article h2{font-size:var(--step-2);margin-top:var(--space-4);margin-bottom:var(--space-2)}.article ul,.article ol{padding-left:1.2rem}.article li{margin-bottom:.4rem}.article pre{padding:var(--space-2);border-radius:var(--radius);background:var(--code-bg);color:var(--code-ink);font-size:var(--step--1);overflow-x:auto}.article code{font-size:.9em}@media (width<=820px){:root{--space-6:4rem}.hero .wrap,.contact .wrap{grid-template-columns:1fr}.hero .portrait{aspect-ratio:3/2;order:-1}.portrait .initial{font-size:5rem}.role-item,.lab-item{gap:var(--space-1);grid-template-columns:1fr}.nav{gap:var(--space-2)}.nav a:not(.button){display:none}}
