@font-face{font-family:Newsreader;src:url(/fonts/newsreader-latin.woff2)format("woff2");font-style:normal;font-weight:300 800;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/fonts/source-sans-3-latin.woff2)format("woff2");font-style:normal;font-weight:200 900;font-display:swap}:root{color-scheme:light;--paper:#f4f1e9;--ink:#191a18;--muted:#62645f;--rule:#aaa9a2;--accent:#8e3028;--serif:Newsreader, Georgia, "Times New Roman", serif;--sans:"Source Sans 3", "Segoe UI", sans-serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--type-base:1.0625rem;--type-ratio:1.25;--type-step-neg-2:calc(var(--type-base) / var(--type-ratio) / var(--type-ratio));--type-step-neg-1:calc(var(--type-base) / var(--type-ratio));--type-step-0:var(--type-base);--type-step-1:calc(var(--type-step-0) * var(--type-ratio));--type-step-2:calc(var(--type-step-1) * var(--type-ratio));--type-step-3:calc(var(--type-step-2) * var(--type-ratio));--type-step-4:calc(var(--type-step-3) * var(--type-ratio));--type-step-5:calc(var(--type-step-4) * var(--type-ratio));--type-step-6:calc(var(--type-step-5) * var(--type-ratio));--type-label:var(--type-step-neg-2);--type-small:var(--type-step-neg-1);--type-body:var(--type-step-0);--type-lead:var(--type-step-1);--type-entry:var(--type-step-2);--type-contact:var(--type-step-3);--type-hero-min:var(--type-step-4);--type-hero-mid:var(--type-step-5);--type-hero-max:var(--type-step-6);--type-hero:clamp(var(--type-hero-min), calc(var(--type-hero-mid) + (100vw - 48rem) * .0193), var(--type-hero-max));--space-base:.375rem;--space-ratio:1.5;--space-step-0:var(--space-base);--space-step-1:calc(var(--space-step-0) * var(--space-ratio));--space-step-2:calc(var(--space-step-1) * var(--space-ratio));--space-step-3:calc(var(--space-step-2) * var(--space-ratio));--space-step-4:calc(var(--space-step-3) * var(--space-ratio));--space-step-5:calc(var(--space-step-4) * var(--space-ratio));--space-step-6:calc(var(--space-step-5) * var(--space-ratio));--space-step-7:calc(var(--space-step-6) * var(--space-ratio));--space-step-8:calc(var(--space-step-7) * var(--space-ratio));--page-gutter:clamp(var(--space-step-3), 5vw, var(--space-step-5));--grain-opacity:.022;--content-width:80rem}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--paper:#1b1d1b;--ink:#edece5;--muted:#b0b3ab;--rule:#50554e;--accent:#d88a75;--grain-opacity:.014}}:root[data-theme=dark]{color-scheme:dark;--paper:#1b1d1b;--ink:#edece5;--muted:#b0b3ab;--rule:#50554e;--accent:#d88a75;--grain-opacity:.014}:root[data-theme=light]{color-scheme:light}:root.theme-transition,:root.theme-transition body,:root.theme-transition a,:root.theme-transition .skip-link,:root.theme-transition .site-header,:root.theme-transition .availability,:root.theme-transition .section,:root.theme-transition .section-label,:root.theme-transition .section-label span,:root.theme-transition .entry p,:root.theme-transition .experience,:root.theme-transition .experience p,:root.theme-transition .contact-primary,:root.theme-transition .contact-secondary,:root.theme-transition .site-footer,:root.theme-transition .theme-toggle{transition:color .28s cubic-bezier(.2,.7,.2,1),background-color .28s cubic-bezier(.2,.7,.2,1),border-color .28s cubic-bezier(.2,.7,.2,1),outline-color .28s cubic-bezier(.2,.7,.2,1)}:root.theme-transition .theme-toggle svg{transition:color .28s cubic-bezier(.2,.7,.2,1),fill .28s cubic-bezier(.2,.7,.2,1),stroke .28s cubic-bezier(.2,.7,.2,1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--space-step-4);background:var(--paper)}body{isolation:isolate;min-width:320px;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:var(--type-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;line-height:1.55;position:relative}body:before{z-index:-1;pointer-events:none;content:"";opacity:var(--grain-opacity);background:url(/grain.svg) 0 0/160px 160px;position:fixed;inset:0}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:1px}::selection{color:var(--paper);background:var(--accent)}.skip-link{z-index:5;top:var(--space-step-2);left:var(--page-gutter);padding:var(--space-step-1) var(--space-step-2);color:var(--paper);background:var(--ink);position:absolute;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(100%, var(--content-width));padding-inline:var(--page-gutter);margin-inline:auto}.site-header{justify-content:space-between;align-items:center;gap:var(--space-step-4);padding-block:var(--space-step-4);display:flex}.wordmark{min-height:2.75rem;color:var(--ink);white-space:nowrap;align-items:baseline;font-size:1.5rem;line-height:1;text-decoration:none;display:inline-flex}.wordmark-name{font-family:var(--serif);letter-spacing:-.045em;font-weight:450}.wordmark-dot{color:var(--accent);font-family:var(--serif);margin-inline:.035em;font-weight:450}.wordmark-domain{font-family:var(--mono);letter-spacing:-.06em;font-size:.78em;font-weight:500}.primary-nav ul{gap:clamp(var(--space-step-3), 3vw, var(--space-step-5));align-items:center;margin:0;padding:0;list-style:none;display:flex}.primary-nav a{min-height:2.75rem;font-size:var(--type-small);align-items:center;text-decoration:none;display:inline-flex}.theme-toggle{border:1px solid var(--rule);width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.theme-toggle:active{background:color-mix(in srgb, var(--accent), transparent 88%)}.theme-toggle svg{width:1rem;height:1rem}.theme-toggle [data-icon-hidden]{display:none}.hero{padding-block:clamp(var(--space-step-4), 5vw, var(--space-step-6)) clamp(var(--space-step-6), 8vw, var(--space-step-7))}.section-label,.availability{margin:0}h1,h2,h3,p{margin-top:0}.hero h1{max-width:24ch;margin-block:var(--space-step-3) var(--space-step-4);font-family:var(--serif);font-size:var(--type-hero);letter-spacing:-.045em;text-wrap:balance;font-weight:450;line-height:1.04}.hero-intro{max-width:43rem;margin-bottom:var(--space-step-3);font-family:var(--serif);font-size:var(--type-lead);line-height:1.48}.hero-bottom{align-items:center;gap:var(--space-step-3) var(--space-step-5);margin-top:var(--space-step-4);flex-wrap:wrap;display:flex}.availability{color:var(--muted);font-size:var(--type-small)}.text-link,.contact-secondary,.site-footer a{align-items:center;min-height:2.75rem;display:inline-flex}.text-link{text-underline-offset:.28em;font-weight:600;text-decoration-thickness:1px}.section{gap:var(--space-step-4);padding-block:clamp(var(--space-step-5), 7vw, var(--space-step-7));border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr);display:grid}.section-label{color:var(--muted);font-family:var(--mono);font-size:var(--type-step-neg-1);letter-spacing:.045em;text-transform:uppercase;line-height:1.4}.section-label span{margin-right:var(--space-step-1);color:var(--accent)}.entries{column-gap:clamp(var(--space-step-3), 3vw, var(--space-step-5));row-gap:var(--space-step-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.entry h3,.experience h3{margin-bottom:var(--space-step-1);font-family:var(--serif);font-size:var(--type-entry);letter-spacing:-.025em;font-weight:500;line-height:1.17}.entry p,.experience p{max-width:34rem;color:var(--muted);margin-bottom:0}.experience-list{display:grid}.experience{gap:var(--space-step-4);padding-block:var(--space-step-4);border-top:1px solid color-mix(in srgb, var(--rule), transparent 28%);grid-template-columns:minmax(12rem,.8fr) minmax(0,2fr);display:grid}.experience:first-child{border-top:0;padding-top:0}.experience h3{margin:0 0 var(--space-step-1);font-size:var(--type-entry)}.experience .experience-org{font-size:var(--type-small)}.experience-copy{gap:var(--space-step-2);display:grid}.experience-copy p{margin:0}.source-link{color:var(--muted);font-size:var(--type-label);text-underline-offset:.25em;justify-self:start}.source-link:hover{color:var(--accent)}.about-copy{max-width:43rem;font-size:var(--type-lead);margin:0;line-height:1.52}.about-copy p{margin:0}.about-copy p+p{margin-top:var(--space-step-3)}.contact-copy{max-width:43rem;margin-bottom:var(--space-step-4);font-size:var(--type-body)}.contact-links{align-items:center;gap:var(--space-step-3) var(--space-step-4);flex-wrap:wrap;display:flex}.contact-primary{min-height:2.75rem;padding:var(--space-step-2) var(--space-step-3);color:var(--paper);background:var(--ink);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.contact-primary:hover{color:var(--paper);background:var(--accent)}.contact-secondary{color:var(--muted);font-size:var(--type-small);text-underline-offset:.28em}.site-footer{justify-content:space-between;align-items:center;gap:var(--space-step-3);padding-block:var(--space-step-3) var(--space-step-4);border-top:1px solid var(--rule);color:var(--muted);font-size:var(--type-small);display:flex}.site-footer p{margin:0}@media (width<=700px){:root{--page-gutter:clamp(var(--space-step-3), 4vw, var(--space-step-4))}.site-header{gap:var(--space-step-3);padding-block:var(--space-step-4)}.wordmark{font-size:clamp(1.2rem,4.8vw,1.4rem)}.primary-nav ul{gap:clamp(var(--space-step-2), 4vw, var(--space-step-3))}.primary-nav a{font-size:var(--type-small)}.hero{padding-block:var(--space-step-4) var(--space-step-6)}.hero h1{max-width:24ch}.section{gap:var(--space-step-3);padding-block:var(--space-step-5);grid-template-columns:1fr}.entries{row-gap:var(--space-step-4);grid-template-columns:1fr}.experience{gap:var(--space-step-2);grid-template-columns:1fr}.site-footer{flex-direction:column;align-items:flex-start}}@media (width>=701px) and (width<=1000px){.entries{grid-template-columns:repeat(2,minmax(0,1fr))}.experience{gap:var(--space-step-3);grid-template-columns:minmax(10rem,.8fr) minmax(0,2fr)}}@media (width<=440px){:root{--page-gutter:var(--space-step-3)}.site-header{justify-content:center;align-items:flex-start;gap:var(--space-step-1);flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}:root.theme-transition,:root.theme-transition body,:root.theme-transition a,:root.theme-transition .skip-link,:root.theme-transition .site-header,:root.theme-transition .availability,:root.theme-transition .section,:root.theme-transition .section-label,:root.theme-transition .section-label span,:root.theme-transition .entry p,:root.theme-transition .experience,:root.theme-transition .experience p,:root.theme-transition .contact-primary,:root.theme-transition .contact-secondary,:root.theme-transition .site-footer,:root.theme-transition .theme-toggle,:root.theme-transition .theme-toggle svg{transition:none}}
