@font-face{font-family:Atkinson;src:url(../fonts/atkinson-regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson;src:url(../fonts/atkinson-bold.woff)format("woff");font-weight:700;font-style:normal;font-display:swap}:root,[data-theme=light]{--font-display:"Cabinet Grotesk", "Arial", sans-serif;--font-body:"Atkinson", "Arial", sans-serif;--text-xs:clamp(.75rem, .7rem + .25vw, .875rem);--text-sm:clamp(.875rem, .8rem + .35vw, 1rem);--text-base:clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg:clamp(1.125rem, 1rem + .75vw, 1.5rem);--text-xl:clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);--text-2xl:clamp(2rem, 1.2rem + 2.5vw, 3.5rem);--text-hero:clamp(4rem, 1.75rem + 8vw, 9rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--color-bg:#f2f0ea;--color-surface:#faf9f5;--color-surface-2:#e7e4dc;--color-text:#171b1d;--color-text-muted:#5f6667;--color-text-faint:#646b6a;--color-border:#c9c8c1;--color-accent:#0a66c2;--color-accent-hover:#004182;--color-accent-ink:#fff;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--transition-interactive:.18s cubic-bezier(.16, 1, .3, 1);--content-wide:1200px}[data-theme=dark]{--color-bg:#15191b;--color-surface:#1d2224;--color-surface-2:#272d2f;--color-text:#edf0ec;--color-text-muted:#adb6b4;--color-text-faint:#98a19f;--color-border:#394144;--color-accent:#70b5f9;--color-accent-hover:#a8d5ff;--color-accent-ink:#101416}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;scroll-behavior:smooth;scroll-padding-top:var(--space-24);background:var(--color-bg)}body{min-height:100dvh;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);transition:color var(--transition-interactive), background var(--transition-interactive);line-height:1.6}button,a{font:inherit}button{cursor:pointer}a{color:inherit;transition:color var(--transition-interactive), background var(--transition-interactive), border-color var(--transition-interactive), transform var(--transition-interactive)}p,li{text-wrap:pretty;max-width:68ch}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;line-height:1.05}svg{display:block}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm)}::selection{color:var(--color-accent-ink);background:var(--color-accent)}.skip-link{top:var(--space-3);left:var(--space-3);z-index:100;padding:var(--space-3) var(--space-4);color:var(--color-accent-ink);background:var(--color-accent);transform:translateY(calc(-100% - var(--space-6)));position:fixed}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;border-bottom:1px solid color-mix(in oklab, var(--color-text) 13%, transparent);background:color-mix(in oklab, var(--color-bg) 92%, transparent);backdrop-filter:blur(var(--space-3));position:sticky;top:0}.site-nav{max-width:var(--content-wide);min-height:var(--space-20);padding-inline:clamp(var(--space-4), 4vw, var(--space-10));justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.brand{min-height:44px;font-family:var(--font-display);font-size:var(--text-sm);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.brand-compact{display:none}.nav-links{align-items:center;gap:var(--space-6);display:flex}.nav-links>a:not(.linkedin-nav){min-height:44px;font-size:var(--text-sm);color:var(--color-text-muted);align-items:center;text-decoration:none;display:inline-flex}.nav-links>a:not(.linkedin-nav):hover{color:var(--color-text)}.theme-toggle{width:44px;height:44px;color:var(--color-text);background:0 0;border:0;place-items:center;display:grid}.theme-toggle svg{width:var(--space-5);height:var(--space-5)}[data-theme=light] .sun-icon,[data-theme=dark] .moon-icon{display:none}.linkedin-nav,.linkedin-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);font-size:var(--text-sm);color:#fff;background:#0a66c2;border:1px solid #0a66c2;font-weight:700;text-decoration:none;display:inline-flex}.linkedin-nav{min-height:44px;padding:var(--space-2) var(--space-4)}.linkedin-nav svg,.linkedin-button svg,.linkedin-nav img,.linkedin-button img{width:var(--space-5);height:var(--space-5)}.linkedin-nav:hover,.linkedin-button:hover{background:#004182;border-color:#004182;transform:translateY(-2px)}.hero{gap:clamp(var(--space-12), 8vw, var(--space-24));max-width:var(--content-wide);min-height:calc(100svh - var(--space-20));padding:clamp(var(--space-20), 10vw, var(--space-32)) clamp(var(--space-4), 4vw, var(--space-10));grid-template-columns:minmax(0,1fr) minmax(240px,.34fr);align-items:end;margin-inline:auto;display:grid}.hero-avatar{width:clamp(96px,11vw,128px);height:clamp(96px,11vw,128px);margin-bottom:var(--space-8);object-fit:cover;background:var(--color-surface);box-shadow:0 0 0 2px var(--color-bg), 0 0 0 3px color-mix(in oklab, var(--color-text) 20%, transparent), 0 12px 30px -12px color-mix(in oklab, var(--color-text) 35%, transparent);border-radius:50%;display:block}.eyebrow{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-weight:700;line-height:1.2}.hero h1{max-width:7ch;margin-block:var(--space-5) var(--space-8);font-size:var(--text-hero);letter-spacing:-.06em;font-weight:800}.hero-lede{max-width:54ch;font-size:var(--text-lg);color:var(--color-text-muted);line-height:1.45}.hero-actions{align-items:center;gap:var(--space-6);margin-top:var(--space-10);flex-wrap:wrap;display:flex}.text-link{align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--text-sm);text-underline-offset:var(--space-1);font-weight:700;display:inline-flex}.current-role{padding:var(--space-8);border-top:2px solid var(--color-text);background:var(--color-surface)}.role-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;line-height:1.1}.current-role .current-role-careers{align-items:flex-start;gap:var(--space-3);margin-top:var(--space-6);color:var(--color-accent);text-underline-offset:var(--space-1);flex-direction:column;font-weight:700;text-decoration:none;display:flex}.current-role-careers>span:last-child{font-size:var(--text-sm)}.current-role-careers:hover>span:last-child{text-decoration:underline}.current-role-logo{width:100%;max-width:180px;min-height:56px;padding:var(--space-3);border-radius:var(--radius-sm);background:#fff;border:1px solid #0000001a;place-items:center;display:grid}.current-role-logo img{object-fit:contain;width:100%;height:auto;max-height:34px}.section{gap:clamp(var(--space-12), 8vw, var(--space-24));max-width:var(--content-wide);padding:clamp(var(--space-20), 10vw, var(--space-32)) clamp(var(--space-4), 4vw, var(--space-10));grid-template-columns:minmax(140px,.25fr) minmax(0,1fr);margin-inline:auto;display:grid}.section-content>h2,.intro-grid>h2{max-width:18ch;margin-bottom:clamp(var(--space-12), 7vw, var(--space-20));font-size:var(--text-2xl);letter-spacing:-.035em;font-weight:700}.intro-section{padding-bottom:var(--space-24)}.intro-grid{gap:clamp(var(--space-10), 6vw, var(--space-20));grid-template-columns:minmax(0,.9fr) minmax(280px,.65fr);display:grid}.intro-grid h2{margin-bottom:0}.prose{gap:var(--space-6);color:var(--color-text-muted);display:grid}.impact-section{max-width:none;padding-inline:max(clamp(var(--space-4), 4vw, var(--space-10)), calc((100vw - var(--content-wide)) / 2 + var(--space-10)));background:var(--color-surface)}.impact-list{border-top:1px solid color-mix(in oklab, var(--color-text) 15%, transparent)}.impact-item{gap:var(--space-8);padding-block:var(--space-10);border-bottom:1px solid color-mix(in oklab, var(--color-text) 15%, transparent);grid-template-columns:minmax(48px,.14fr) minmax(0,1fr);display:grid}.impact-number{font-size:var(--text-xs);color:var(--color-text-faint);font-weight:700}.impact-item h3,.timeline-item h3{margin-bottom:var(--space-4);font-size:var(--text-lg)}.impact-item p:last-child,.timeline-item p:last-child{color:var(--color-text-muted)}.impact-item>div>p{max-width:62ch}.timeline{border-top:1px solid color-mix(in oklab, var(--color-text) 15%, transparent)}.timeline-item{gap:var(--space-8);padding-block:var(--space-8);border-bottom:1px solid color-mix(in oklab, var(--color-text) 15%, transparent);grid-template-columns:minmax(72px,.2fr) minmax(0,1fr);display:grid}.timeline-year{font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--color-text-faint);line-height:1.4}.timeline-item.current .timeline-year,.timeline-item.current .company{color:#fff}.timeline-item.current{margin-top:var(--space-4);padding-inline:clamp(var(--space-4), 3vw, var(--space-6));border-radius:var(--radius-sm);color:#fff;background:#075985;border-bottom:0}.timeline-item.current h3{color:#fff}.timeline-item.current>.job>p:last-child{color:#ffffffd1}.job{min-width:0}.job-heading{gap:var(--space-6);margin-bottom:var(--space-4);grid-template-columns:116px minmax(0,1fr);align-items:center;display:grid}.job-heading-text-only{grid-template-columns:minmax(0,1fr)}.company-logo{width:116px;height:64px;padding:var(--space-3);border:1px solid color-mix(in oklab, var(--color-text) 12%, transparent);border-radius:var(--space-2);background:#fff;place-items:center;display:grid;overflow:hidden}.company-logo img{object-fit:contain;width:100%;height:100%;display:block}.company{margin-bottom:var(--space-2);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-weight:700}.timeline-item h3{margin-bottom:0}.education-section{padding-top:var(--space-20);padding-bottom:clamp(var(--space-16), 6vw, var(--space-24))}.education-list{border-top:1px solid color-mix(in oklab, var(--color-text) 15%, transparent)}.education-item{gap:var(--space-8);padding-block:var(--space-8);border-bottom:1px solid color-mix(in oklab, var(--color-text) 15%, transparent);grid-template-columns:minmax(140px,.3fr) minmax(0,1fr);display:grid}.education-location{padding-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-faint);line-height:1.4}.education-school{gap:var(--space-6);grid-template-columns:116px minmax(0,1fr);align-items:center;display:grid}.school-logo{width:116px;height:64px;padding:var(--space-3);border:1px solid color-mix(in oklab, var(--color-text) 12%, transparent);border-radius:var(--space-2);background:#fff;justify-content:center;align-items:center;display:flex;overflow:hidden}.school-logo img{object-fit:contain;max-width:100%;max-height:100%;display:block}.education-item h3{margin-bottom:var(--space-3);font-size:var(--text-xl)}.education-degree{margin-bottom:var(--space-2);font-weight:700}.education-detail{color:var(--color-text-muted)}.education-detail+.education-detail{margin-top:var(--space-1)}.education-detail strong{color:var(--color-text);font-weight:700}.education-copy>p:last-child:not(.education-detail){color:var(--color-text-muted)}.patent-list{margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid color-mix(in oklab, var(--color-text) 17%, transparent)}.patent-heading{margin-bottom:var(--space-2);font-size:var(--text-xs);letter-spacing:.08em;color:var(--color-text-muted);text-transform:uppercase;font-weight:700}.patent-item{padding-block:var(--space-5)}.patent-item+.patent-item{border-top:1px solid color-mix(in oklab, var(--color-text) 10%, transparent)}.patent-meta{margin-bottom:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.patent-item h3{max-width:46ch;margin-bottom:var(--space-2);font-family:var(--font-body);font-size:var(--text-base);font-weight:700}.patent-item h3 a{text-decoration:none}.patent-item h3 a:hover{text-underline-offset:.2em;text-decoration:underline 1px}.patent-item>p:last-child{max-width:65ch;font-size:var(--text-sm);color:var(--color-text-muted)}.site-footer{max-width:var(--content-wide);padding:clamp(var(--space-12), 6vw, var(--space-20)) clamp(var(--space-4), 4vw, var(--space-10)) var(--space-8);border-top:1px solid color-mix(in oklab, var(--color-text) 15%, transparent);margin:0 auto}.footer-cta{gap:var(--space-10);grid-template-columns:.6fr minmax(0,1fr);align-items:end;display:grid}.footer-cta .eyebrow{grid-column:1/-1}.footer-cta h2{max-width:15ch;font-size:var(--text-2xl);letter-spacing:-.035em}.linkedin-button-large{min-height:var(--space-16);padding-inline:var(--space-8);justify-self:end}.footer-meta{margin-top:var(--space-24);padding-top:var(--space-6);border-top:1px solid color-mix(in oklab, var(--color-text) 13%, transparent);font-size:var(--text-xs);color:var(--color-text-muted);justify-content:space-between;display:flex}@media (width<=900px){.linkedin-nav span{display:none}.nav-links{gap:var(--space-2)}.linkedin-nav{width:44px;padding:0}.hero{grid-template-columns:1fr;align-items:center}.current-role{max-width:520px}.section{gap:var(--space-10);grid-template-columns:1fr}.intro-grid,.footer-cta{grid-template-columns:1fr}.linkedin-button-large{justify-self:start}}@media (width<=560px){.brand-full{display:none}.brand-compact{letter-spacing:-.03em;display:inline}.site-nav{justify-content:space-between}.nav-links{gap:var(--space-2)}.nav-links>a:not(.linkedin-nav){font-size:var(--text-xs);display:inline-flex}.hero{min-height:auto;padding-top:var(--space-16);padding-bottom:var(--space-16)}.hero h1{margin-block:var(--space-4) var(--space-6)}.hero-actions{flex-direction:column;align-items:stretch}.linkedin-button{width:100%}.section{gap:var(--space-8);padding-block:var(--space-16)}.section-content>h2,.intro-grid>h2{margin-bottom:var(--space-10)}.impact-item,.timeline-item{gap:var(--space-4);grid-template-columns:52px minmax(0,1fr)}.job-heading{gap:var(--space-4);grid-template-columns:84px minmax(0,1fr)}.company-logo{width:84px;height:54px;padding:var(--space-2)}.education-item{gap:var(--space-4);grid-template-columns:1fr}.education-school{gap:var(--space-4);grid-template-columns:84px minmax(0,1fr)}.school-logo{width:84px;height:54px;padding:var(--space-2)}.footer-meta{gap:var(--space-2);flex-direction:column}}@media (width<=360px){.site-nav{padding-inline:var(--space-3)}.nav-links{gap:var(--space-1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
