@font-face{font-family:Rethink Sans Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/rethink-sans-latin-ext-wght-normal-BbqtUlVa.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rethink Sans Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(/assets/rethink-sans-latin-wght-normal-B92CQIW4.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--space-hero:125px;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.953rem;--text-3xl:2.441rem;--text-display-s:clamp(2.25rem, 4vw + .5rem, 3.75rem);--text-display:clamp(2.75rem, 5vw + 1rem, 5.25rem);--text-section:clamp(1.75rem, 1.75vw + 1rem, 2.75rem);--text-title:clamp(1.25rem, .75vw + .875rem, 1.625rem);--text-lead:clamp(1.125rem, .35vw + 1rem, 1.375rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--color-error:oklch(52% .19 27);--color-success:oklch(50% .12 150);--container:1200px;--gutter:48px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:oklch(96.7% .004 91);--color-paper-2:oklch(92.1% .007 97);--color-paper-3:oklch(89.1% .008 99);--color-ink:oklch(22% .012 254);--color-ink-2:oklch(35% .025 246);--color-muted:oklch(50.4% .029 241);--color-rule:oklch(83.2% .01 100);--color-accent:oklch(46.5% .032 242);--color-accent-ink:oklch(96.7% .004 91);--color-focus:oklch(46.5% .032 242);--color-steel:oklch(59.4% .026 240);--color-on-dark-muted:oklch(81.3% .02 241);--font-display:"Rethink Sans Variable", ui-sans-serif, system-ui, sans-serif;--font-body:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-outlier:var(--font-body);--radius-card:4px;--radius-pill:999px;--rule-hair:1px;--shadow-card:none;--color-surface:oklch(99.2% .003 91);--radius-panel:12px;--color-hairline:oklch(91% .005 95);--tracking-display:-.02em;--icon-sm:18px;--icon-xs:14px;--icon-md:24px;--icon-lg:36px;--icon-disc:calc(var(--icon-lg) + var(--space-md) * 2)}.on-dark{--color-paper:oklch(22% .012 254);--color-paper-2:oklch(35% .025 246);--color-paper-3:oklch(28% .02 248);--color-ink:oklch(96.7% .004 91);--color-ink-2:oklch(92.1% .007 97);--color-muted:oklch(81.3% .02 241);--color-rule:oklch(42% .025 246);--color-accent:oklch(81.3% .02 241);--color-accent-ink:oklch(22% .012 254);--color-focus:oklch(81.3% .02 241);background:var(--color-paper);color:var(--color-ink)}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-synthesis:none;overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-slot]{background:linear-gradient(160deg, var(--color-paper-2,var(--color-paper)), var(--color-paper-3,var(--color-paper)));position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (width<=60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (width<=40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}h1,h2,h3{letter-spacing:var(--tracking-display);font-weight:600;line-height:1.12}.skip-link{left:var(--space-md);z-index:var(--z-modal);background:var(--color-ink);color:var(--color-paper);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-card);position:absolute;top:-100px}.skip-link:focus{top:var(--space-md)}.site-header{z-index:var(--z-sticky-nav);background:var(--color-paper);border-bottom:var(--rule-hair) solid var(--color-rule);position:sticky;top:0}.site-header__row{justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:72px;display:flex}.wordmark{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);letter-spacing:-.015em;text-decoration:none}.site-nav{align-items:center;gap:var(--space-xl);display:flex}.site-nav__link{padding-block:var(--space-sm);border-bottom:2px solid #0000;text-decoration:none}.site-nav__link:hover{border-bottom-color:var(--color-steel)}.site-nav__link[aria-current=page]{border-bottom-color:var(--color-accent)}.nav-toggle{align-items:center;gap:var(--space-xs);min-height:44px;padding:0 var(--space-sm);color:var(--color-ink);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);cursor:pointer;background:0 0;display:none}.btn{min-height:44px;padding:0 var(--space-lg);border-radius:var(--radius-card);border:var(--rule-hair) solid transparent;cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);justify-content:center;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.btn--primary{background:var(--color-accent);color:var(--color-accent-ink)}.btn--primary:hover{background:var(--color-ink-2)}.btn--primary:active{background:var(--color-ink)}.btn--secondary{color:var(--color-ink);border-color:var(--color-ink-2);background:0 0}.btn--secondary:hover{background:var(--color-paper-2)}.btn[disabled]{opacity:.55;cursor:not-allowed}.on-dark .btn--primary{background:var(--color-ink);color:var(--color-paper)}.on-dark .btn--primary:hover{background:var(--color-ink-2)}.text-link{color:var(--color-accent);font-weight:500}.text-link:hover{color:var(--color-ink)}.hero{padding-block:var(--space-hero)}.hero__title{font-size:var(--text-display);max-width:16ch;animation:rise var(--dur-long) var(--ease-out) both}.hero__lead{font-size:var(--text-lead);color:var(--color-ink-2);max-width:42ch;margin-top:var(--space-lg);animation:rise var(--dur-long) var(--ease-out) 80ms both}.hero__actions{gap:var(--space-sm);margin-top:var(--space-xl);animation:rise var(--dur-long) var(--ease-out) .14s both;flex-wrap:wrap;display:flex}.page-head{padding-block:var(--space-2xl) calc(var(--space-2xl) + var(--space-md));border-bottom:var(--rule-hair) solid var(--color-rule)}.page-head__title{font-size:var(--text-display-s);max-width:22ch}.page-head__name{font-size:var(--text-display);text-transform:uppercase;display:block}.page-head__tagline{margin-top:var(--space-lg);color:var(--color-ink-2);font-weight:400;display:block}.page-head .hero__lead,.page-head .hero__actions{animation:none}.page-head--portrait{padding-block:var(--space-hero)}.page-head--portrait .container{align-items:center;column-gap:var(--space-2xl);grid-template-columns:minmax(0,1fr) auto;display:grid}.page-head--portrait{--portrait-row:min(34rem, 62vh);--portrait-h:min(44rem, 80vh);--portrait-lift:calc(var(--space-hero) - var(--space-2xl))}.page-head--portrait .page-head__text{align-self:center}.page-head--portrait .page-head__title{max-width:none}.page-head--portrait .page-head__name{font-size:var(--text-2xl)}.page-head--portrait .page-head__tagline{max-width:17em;margin-top:var(--space-xs);font-weight:inherit;color:inherit;text-wrap:wrap}.page-head__blurb{font-size:var(--text-lead);color:var(--color-ink-2);max-width:min(100%,44rem);margin-top:var(--space-lg)}.page-head__connect{margin-top:var(--space-xl)}.page-head__portrait{height:var(--portrait-h);width:auto;margin-top:calc(var(--portrait-lift) * -1);margin-bottom:calc(var(--portrait-row) - var(--portrait-h) + var(--portrait-lift));opacity:.6;mix-blend-mode:multiply;display:block}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.section{padding-block:var(--section-gap)}.hero+.section,.page-head+.section{padding-top:108px}.section--tint{background:var(--color-paper-2)}.split{gap:var(--gap-columns);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}.split>:first-child{position:sticky;top:104px}.split--spaced{column-gap:var(--space-2xl)}.h-section--icon{align-items:flex-start;gap:var(--space-md);display:flex}.icon-disc{width:var(--icon-disc);height:var(--icon-disc);background:var(--color-accent);border-radius:50%;flex:none;place-items:center;display:grid}.icon-disc .icon{color:var(--color-paper)}.section--tint .icon-disc{background:var(--color-paper)}.section--tint .icon-disc .icon{color:var(--color-accent)}.h-section--flush>span:not(.icon-disc){padding-top:0}.h-section--icon>span:not(.icon-disc){padding-top:calc((var(--icon-disc) - 1lh) / 2)}.aside--indented{padding-left:calc(var(--icon-disc) + var(--space-md))}.h-section{font-size:var(--text-section)}.h-title{font-size:var(--text-title)}.h-label{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-muted);margin:0 0 var(--space-xs);letter-spacing:0;font-weight:500}.lead{font-size:var(--text-xl);color:var(--color-ink-2);max-width:52ch}.meta-line{margin-top:var(--space-lg);color:var(--color-muted);font-size:var(--text-sm);max-width:52ch}.aside{margin-top:var(--space-md);color:var(--color-ink-2);max-width:32ch}.prose{gap:var(--space-md);max-width:62ch;display:grid}.prose h2{margin-top:var(--space-lg)}.prose h2:first-child{margin-top:0}.expertise{gap:0 var(--gap-columns);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.expertise__item h3 a{text-decoration:none}.expertise__item h3 a:hover{text-decoration:underline}.expertise__item{padding-block:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule);gap:var(--space-xs);align-content:start;display:grid}.expertise__item .icon-disc{margin-bottom:var(--space-sm)}:is(.expertise__item:has(a:hover) .icon,.expertise__item:has(a:focus-visible) .icon){color:var(--color-ink)}.skills__filters{gap:var(--space-xs);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.chip{min-height:44px;padding:0 var(--space-md);color:var(--color-ink);border:var(--rule-hair) solid var(--color-steel);border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out);background:0 0;align-items:center;text-decoration:none;display:inline-flex}.chip:hover{border-color:var(--color-ink-2)}.skills__filters .chip{justify-content:center;min-width:7rem}.chip:disabled{background:var(--color-paper-2);color:var(--color-muted);border-color:var(--color-rule);cursor:not-allowed}.chip:disabled:hover{border-color:var(--color-rule)}.chip--page{justify-content:center;min-width:44px;padding:0}.chip--page[aria-current=page]{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.skills__pages{align-items:center;gap:var(--space-xs);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.skills__page-list{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:flex}.chip[aria-pressed=true]{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.skills__table{border-collapse:collapse;width:100%}.skills__table th,.skills__table td{text-align:left;padding:var(--space-md) var(--space-md) var(--space-md) 0;border-top:var(--rule-hair) solid var(--color-rule);vertical-align:top;font-weight:400}.skills__table thead th{font-size:var(--text-sm);color:var(--color-muted);border-top:0;font-weight:500}.skills__table tbody th{font-weight:500}.skills__evidence{color:var(--color-ink-2)}.process{gap:0;margin:0;padding:0;list-style:none;display:grid}.process li{column-gap:var(--space-md);padding-block:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule);grid-template-columns:56px minmax(0,1fr);display:grid}.process li>.icon{grid-row:span 2}.timeline{gap:var(--space-3xl);margin:0;padding:0;list-style:none;display:grid}.timeline__item{padding-block:var(--space-md);padding-left:var(--space-lg);border-left:2px solid var(--color-steel);gap:var(--space-xs);display:grid}.timeline__head{justify-content:space-between;gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;display:flex}.timeline__dates{color:var(--color-ink-2);font-variant-numeric:tabular-nums}.timeline__org{color:var(--color-muted)}.timeline__points{margin:var(--space-xs) 0 0;gap:var(--space-2xs);max-width:62ch;padding-left:1.1em;display:grid}.philosophy{gap:0 var(--gap-columns);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.philosophy>div{padding-block:var(--space-xl);border-top:var(--rule-hair) solid var(--color-rule)}.philosophy dd{margin:var(--space-xs) 0 0;color:var(--color-ink-2)}.icon-title{align-items:flex-start;gap:var(--space-sm);display:flex}.icon-title .icon{margin-top:calc((1lh - var(--icon-md)) / 2)}.philosophy dd.icon-title__body{margin-left:calc(var(--icon-md) + var(--space-sm))}.service-nav{gap:var(--space-xs);margin-top:var(--space-xl);flex-wrap:wrap;display:flex}.service{gap:var(--space-lg);justify-items:start;display:grid}.service ul{gap:var(--space-2xs);margin:0;padding-left:1.1em;display:grid}.cta{padding-block:var(--section-gap)}.form{gap:var(--space-lg);max-width:640px;display:grid}.form__row{gap:var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form__row--3{grid-template-columns:repeat(3,minmax(0,1fr))}.field{gap:var(--space-xs);display:grid}.field label,.form__optional legend{font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:var(--space-sm);background:var(--color-paper);color:var(--color-ink);border:var(--rule-hair) solid var(--color-muted);border-radius:var(--radius-card)}.field textarea{resize:vertical}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline-offset:0}select,.field select{appearance:none;padding-right:var(--space-xl);cursor:pointer;background-position:calc(100% - 23px) calc(50% + 1px),calc(100% - 18px) calc(50% + 1px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;background-image:linear-gradient(45deg, transparent 50%, var(--color-ink) 50%), linear-gradient(135deg, var(--color-ink) 50%, transparent 50%)}select:open{background-image:linear-gradient(135deg, transparent 50%, var(--color-ink) 50%), linear-gradient(45deg, var(--color-ink) 50%, transparent 50%)}.field select:open{background-image:linear-gradient(135deg, transparent 50%, var(--color-ink) 50%), linear-gradient(45deg, var(--color-ink) 50%, transparent 50%)}select:disabled{cursor:not-allowed}.field [aria-invalid=true]{border-color:var(--color-error);border-width:2px}.field__error{color:var(--color-error);font-size:var(--text-sm)}.form__optional{gap:var(--space-sm);border:0;min-width:0;margin:0;padding:0;display:grid}.form__optional legend{margin-bottom:var(--space-sm);padding:0}.form__privacy{color:var(--color-ink-2);font-size:var(--text-sm)}.form__summary{border:var(--rule-hair) solid var(--color-error);border-radius:var(--radius-card);padding:var(--space-sm) var(--space-md);background:var(--color-paper-2)}.form__summary--ok{border-color:var(--color-success)}.form__summary ul{margin:var(--space-xs) 0 0;padding-left:1.1em}.form-result{gap:var(--space-sm);max-width:640px;padding:var(--space-lg);border:var(--rule-hair) solid var(--color-success);border-radius:var(--radius-card);background:var(--color-paper-2);display:grid}.contact-direct{gap:var(--space-sm);display:grid}.contact-direct__row{align-items:center;gap:var(--space-xs);display:flex}.site-footer{padding-block:var(--space-2xl)}.site-footer__grid{gap:var(--gap-columns);grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(0,3fr);align-items:start;display:grid}.site-footer__line,.site-footer__legal{color:var(--color-muted);font-size:var(--text-sm);margin-top:var(--space-xs)}.site-footer__links{gap:var(--space-xs);margin:0;padding:0;list-style:none;display:grid}.site-footer__links li{align-items:center;gap:var(--space-xs);display:flex}@media (width<=60rem){.split{grid-template-columns:minmax(0,1fr)}.split>:first-child{position:static}.site-footer__grid{grid-template-columns:minmax(0,1fr)}.hero,.page-head--portrait{padding-block:var(--space-2xl)}.page-head--portrait .container{row-gap:var(--space-xl);grid-template-columns:minmax(0,1fr)}.page-head--portrait .page-head__text{align-self:auto;margin-top:0}.page-head__portrait{justify-self:end;height:20rem;margin-block:0}}@media (width<=60rem) and (orientation:portrait){.page-head__portrait{height:24rem;margin-top:calc(var(--space-lg) * -1)}}@media (width<=52rem){.nav-toggle{display:inline-flex}.site-nav{background:var(--color-paper);border-bottom:var(--rule-hair) solid var(--color-rule);padding:var(--space-md) var(--gutter) var(--space-lg);flex-direction:column;align-items:stretch;gap:0;display:none;position:absolute;top:100%;left:0;right:0}.site-nav[data-open=true]{display:flex}.site-nav__link{padding-block:var(--space-md)}.site-nav__cta{margin-top:var(--space-sm)}}@media (width<=40rem){.expertise,.philosophy,.form__row,.form__row--3{grid-template-columns:minmax(0,1fr)}.skills__table thead{display:none}.skills__table tr{padding-block:var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);display:block}.skills__table th,.skills__table td{border:0;padding:0;display:block}.skills__evidence{font-size:var(--text-sm)}}.icon{color:var(--color-accent);transition:color var(--dur-short) var(--ease-out);flex:none;display:block}.icon--lg{width:var(--icon-lg);height:var(--icon-lg)}.icon--md{width:var(--icon-md);height:var(--icon-md)}.icon--sm{width:var(--icon-sm);height:var(--icon-sm)}.icon--xs{width:var(--icon-xs);height:var(--icon-xs)}
