:root{color-scheme:dark;--espresso-950: #26150B;--espresso-900: #36221a;--espresso-800: #483025;--cream-100: #F6F1E7;--taupe-200: #C9B7A7;--taupe-400: #C9B7A7;--orange-400: #BD6809;--orange-300: #df984c;--lime-300: #E3F272;--note-200: #F9E076;--paper-0: var(--espresso-950);--paper-1: var(--espresso-900);--paper-2: var(--espresso-800);--ink-0: var(--cream-100);--ink-1: var(--taupe-200);--ink-2: var(--taupe-400);--accent-0: var(--lime-300);--accent-1: var(--orange-300);--accent-soft: var(--espresso-800);--accent-contrast: var(--espresso-950);--detail-0: var(--orange-400);--signal-0: var(--lime-300);--note-0: var(--note-200);--line-0: color-mix(in srgb, var(--note-200) 35%, var(--paper-0));--line-1: var(--note-200);--focus-0: var(--lime-300);--selection-bg: var(--note-200);--selection-ink: var(--espresso-950);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: Georgia, "Times New Roman", serif;--font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--weight-body: 400;--weight-label: 600;--weight-heading: 400;--text-small: .875rem;--text-0: 1.0625rem;--text-1: clamp(1.125rem, 1.05rem + .3vw, 1.25rem);--text-2: clamp(2.75rem, 1.8rem + 4vw, 5rem);--text-hero: clamp(2.75rem, 1.4rem + 5vw, 6rem);--tracking-label: .12em;--text-section: clamp(1.5rem, 1.25rem + 1vw, 2rem);--leading-body: 1.75;--leading-heading: 1.08;--leading-compact: 1.35;--tracking-heading: -.035em;--space-1: .25rem;--space-2: .5rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2.5rem;--space-6: 4rem;--space-7: 6rem;--content-width: 76rem;--reading-width: 65ch;--gutter: clamp(1rem, 4vw, 2rem);--control-size: 2.75rem;--radius-1: .375rem;--radius-2: .75rem;--radius-pill: 999px;--border-width: 1px;--border-accent: 3px;--border-subtle: var(--border-width) solid var(--line-0);--border-control: var(--border-width) solid var(--line-1);--focus-width: 2px;--focus-offset: 4px;--motion-fast: .14s;--motion-normal: .22s;--ease-standard: cubic-bezier(.2, 0, 0, 1)}@media (prefers-reduced-motion: reduce){:root{--motion-fast: 0ms;--motion-normal: 0ms}}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--text-0);line-height:var(--leading-body);font-weight:var(--weight-body);color:var(--ink-0);background-color:var(--paper-0)}.skip-link{position:absolute;top:var(--space-2);left:var(--space-2);z-index:10;padding:var(--space-2) var(--space-3);border-radius:var(--radius-1);background:var(--paper-1);color:var(--accent-0);text-decoration:none;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.site-header{border-bottom:var(--border-subtle);background:var(--paper-0)}.site-nav{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);max-width:var(--content-width);margin:0 auto;padding:var(--space-4) var(--gutter);align-items:center;font-size:var(--text-small)}.site-nav a{padding:var(--space-2) 0;min-height:var(--control-size);color:var(--ink-0);text-decoration:none}.site-nav a:hover{color:var(--detail-0)}.site-nav a.active{color:var(--ink-0);text-decoration:underline;text-decoration-color:var(--note-0);text-underline-offset:.5em;font-weight:var(--weight-label)}.site-main{max-width:var(--content-width);margin:0 auto;padding:var(--space-5) var(--gutter) var(--space-6)}.site-footer{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);align-items:center;justify-content:space-between;max-width:var(--content-width);margin:0 auto;padding:var(--space-4) var(--gutter);border-top:var(--border-subtle);color:var(--ink-2)}.site-footer p{margin:0}.social-links{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0;padding:0;list-style:none}.social-links a{color:var(--accent-0)}.page-title{margin:0 0 var(--space-2);font-size:var(--text-2);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-wrap:balance}.page-subtitle{margin:0 0 var(--space-5);color:var(--ink-1);font-size:var(--text-1)}.post-meta{margin:0 0 var(--space-5);color:var(--ink-2)}.post-body{max-width:var(--reading-width)}.post-body h2{margin:var(--space-5) 0 var(--space-3);line-height:var(--leading-compact)}.post-body a{color:var(--accent-0)}.post-body code{padding:.1em .35em;border-radius:var(--radius-1);background:var(--accent-soft);font-family:var(--font-mono);font-size:.9em}.post-body li{margin:var(--space-1) 0}.button{display:inline-block;min-height:var(--control-size);padding:var(--space-2) var(--space-4);border:var(--border-width) solid transparent;border-radius:var(--radius-pill);background:var(--signal-0);color:var(--accent-contrast);font-weight:var(--weight-label);text-decoration:none}.button:hover{background:var(--note-0)}.empty-note{margin-top:var(--space-5);padding-left:var(--space-3);border-left:var(--border-accent) solid var(--line-0);color:var(--ink-2);font-style:italic}@media (max-width: 699.98px){.site-nav{gap:var(--space-2) var(--space-3);padding-block:var(--space-3)}.site-main{padding-block-start:var(--space-4)}.site-footer{flex-direction:column;align-items:flex-start}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.hero{display:grid;grid-template-columns:minmax(0,3fr) minmax(13rem,1fr);gap:var(--space-6);padding-block:var(--space-6) var(--space-7)}.hero-lede{max-width:var(--reading-width);margin:0;color:var(--ink-1);font-size:var(--text-1)}.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-block-start:var(--space-5)}.home-section{padding-block:var(--space-5);border-top:var(--border-subtle)}.section-more{margin-block:var(--space-3) 0}.card-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr))}.card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:var(--border-subtle);border-radius:var(--radius-1);background:var(--paper-1);overflow-wrap:break-word}.card-title{margin:0;font-size:var(--text-1)}.card-tagline{margin:0;color:var(--ink-1)}.tech-list{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0;list-style:none}.tech-chip{padding:var(--space-1) var(--space-2);color:var(--accent-contrast);border-radius:var(--radius-pill);background:var(--note-0);font-family:var(--font-sans);font-size:var(--text-small)}.card-links{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0}.card-links a{color:var(--accent-0);font-weight:var(--weight-label)}.post-list{margin:0;padding:0;list-style:none}.post-list-item{padding:var(--space-3) 0;border-bottom:var(--border-subtle)}.post-list-item:last-child{border-bottom:0}.post-list-title{margin:0 0 var(--space-1);font-size:var(--text-1)}.bio-paragraph{max-width:var(--reading-width)}.section-heading{margin-block-start:var(--space-5)}.timeline{margin:0;padding:0 0 0 var(--space-3);list-style:none;border-left:var(--border-accent) solid var(--line-0);display:grid;gap:var(--space-4)}.timeline-item{padding-left:var(--space-3)}.timeline-role{margin:0;font-size:var(--text-1)}.timeline-meta{margin:0 0 var(--space-2);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--text-small)}.timeline-highlights{margin:0;padding-left:1.25rem}.timeline-highlights li{margin:var(--space-1) 0}.ama-list{max-width:var(--reading-width);margin:0;padding-left:1.25rem}.ama-list li{margin:var(--space-1) 0}.contact-cta{margin-block:var(--space-4) var(--space-5)}.tag-filter{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:0 var(--space-4)}.tag-button{padding:var(--space-2) var(--space-3);min-height:var(--control-size);border:var(--border-control);border-radius:var(--radius-pill);background:var(--paper-1);color:var(--ink-1);font:inherit;font-size:var(--text-small);cursor:pointer}.tag-button:hover{color:var(--ink-0);border-color:var(--ink-2)}.tag-button[aria-pressed=true]{border-color:var(--accent-0);background:var(--accent-0);color:var(--accent-contrast);font-weight:var(--weight-label)}.post-description{max-width:var(--reading-width);margin:0;color:var(--ink-1)}.tag-list{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);margin:var(--space-1) 0 0;padding:0;list-style:none}.tag-chip{color:var(--ink-2);font-family:var(--font-sans);font-size:var(--text-small)}html{accent-color:var(--signal-0)}body{overflow-wrap:anywhere}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-heading);line-height:var(--leading-compact);text-wrap:balance}h2{font-size:var(--text-section);letter-spacing:-.025em}a{color:var(--accent-0);text-decoration-thickness:.08em;text-underline-offset:.2em}a:hover{color:var(--accent-1)}a,button{transition:color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}:focus-visible{outline:var(--focus-width) solid var(--focus-0);outline-offset:var(--focus-offset)}::selection{background:var(--selection-bg);color:var(--selection-ink)}.button:hover{color:var(--accent-contrast)}code,pre,.post-body code{font-family:var(--font-mono)}.post-body p{margin-block:0 var(--space-4)}.post-body pre{padding:var(--space-3);overflow-x:auto;background:var(--paper-1);border:var(--border-subtle);border-radius:var(--radius-1)}.post-body pre code{padding:0;background:transparent}.post-body blockquote{margin-inline:0;padding-inline-start:var(--space-4);border-inline-start:var(--border-accent) solid var(--note-0);color:var(--ink-1)}img,video,svg{max-width:100%;height:auto}@media (forced-colors: active){:focus-visible{outline-color:Highlight}.button,.tag-button[aria-pressed=true]{border:var(--border-width) solid ButtonText}}.site-nav .site-brand{margin-inline-end:auto;color:var(--ink-0);font-weight:var(--weight-label);letter-spacing:var(--tracking-label);text-transform:uppercase;text-decoration:none}.eyebrow{margin:0 0 var(--space-4);font-family:var(--font-sans);font-size:var(--text-small);font-weight:var(--weight-label);letter-spacing:var(--tracking-label);line-height:var(--leading-compact);text-transform:uppercase}.hero-title{margin-bottom:var(--space-5);font-size:var(--text-hero);line-height:var(--leading-heading);overflow-wrap:normal}.hero-title em{color:var(--signal-0);font-weight:inherit}.site-nav .site-brand:hover{color:var(--detail-0)}.hero-title span{display:block}.hero-lede{max-width:48ch}.hero-cta .button{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--text-small)}.button-secondary{background:transparent;border:var(--border-control);color:var(--ink-0)}.button-secondary:hover{background:var(--paper-1);border-color:var(--detail-0);color:var(--ink-0)}.contact-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-size);color:var(--detail-0);font-size:1.1875rem;font-weight:700}.hero-sidebar{border-inline-start:var(--border-subtle);padding-inline-start:var(--space-5);padding-block-start:var(--space-2);align-self:stretch}.hero-sidebar .eyebrow{padding-block-start:var(--space-3);border-top:var(--border-width) solid var(--note-0);color:var(--ink-1)}.hero-sidebar ul{margin:0;padding:0;list-style:none}.hero-sidebar li{padding-block:var(--space-3);border-bottom:var(--border-subtle);font-size:var(--text-small)}.home-section>h2{margin:0 0 var(--space-5)}.work-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--space-4);padding-block:var(--space-4);border-top:var(--border-subtle)}.work-entry h3{margin:0;font-size:var(--text-section)}.work-entry p{margin:0 0 var(--space-2);color:var(--ink-1)}.work-tech{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0 0 var(--space-2);padding:0;list-style:none;color:var(--ink-2);font-size:var(--text-small)}.home-writing .post-list-item{padding-block:var(--space-4)}.home-writing .post-list-title{font-size:var(--text-section)}.home-writing .post-list-title a{color:var(--ink-0);text-decoration:none}.home-writing .post-list-title a:hover{text-decoration:underline}.home-writing .post-meta{margin:var(--space-2) 0 0;font-size:var(--text-small)}.section-more a,.site-footer a{display:inline-flex;align-items:center;min-height:var(--control-size)}@media (max-width: 55rem){.hero{grid-template-columns:minmax(0,1fr);gap:var(--space-5);padding-block:var(--space-5) var(--space-6)}.hero-sidebar{border-inline-start:0;padding-inline-start:0}}@media (max-width: 36rem){.site-nav .site-brand{flex-basis:100%}.work-entry{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}}
