:root{--bg:oklch(98.5% .018 90);--ink:oklch(21% .02 40);--muted:oklch(46% .015 50);--line:oklch(88% .02 80);--card:oklch(99.5% .008 90);--accent:oklch(60% .19 25);--band:oklch(83% .12 75);--on-accent:oklch(99% .01 90);--hero-bg:oklch(20% .03 45);--hero-ink:oklch(98% .02 90);--hero-tagline:oklch(90% .02 85);--hero-eyebrow:oklch(83% .12 75);--hero-dot:oklch(70% .17 28);--gutter:clamp(20px, 5vw, 56px);--font-sans:"Geist", Helvetica, Arial, sans-serif;--font-mono:"Geist Mono", ui-monospace, monospace;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--bg:oklch(18% .012 40);--ink:oklch(95% .015 90);--muted:oklch(72% .015 70);--line:oklch(31% .012 40);--card:oklch(22% .012 40);--accent:oklch(70% .17 28);--band:oklch(35% .06 60);--on-accent:oklch(16% .01 40)}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:600}.dot{color:var(--hero-dot)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero{isolation:isolate;background-color:var(--hero-bg);min-height:min(88vh,820px);color:var(--hero-ink);flex-direction:column;display:flex;position:relative;overflow:hidden}.hero-layer{z-index:-2;opacity:0;background-size:cover;transition:opacity 1.2s;position:absolute;inset:0}.hero-layer.is-active{opacity:1}.hero-scrim{z-index:-1;background-image:linear-gradient(oklch(14% .03 45/.65) 0%,oklch(14% .03 45/0) 24%),linear-gradient(90deg,oklch(14% .03 45/.92) 0%,oklch(14% .03 45/.7) 38%,oklch(14% .03 45/0) 68%);position:absolute;inset:0}.hero-scrim.is-glow{background-image:radial-gradient(120% 90% at 85% 10%,oklch(32% .07 40) 0%,oklch(20% .03 45/0) 60%)}.hero-bar{padding:28px var(--gutter) 0;justify-content:space-between;align-items:center;gap:16px;display:flex}.hero-bar a{color:var(--hero-ink)}.hero-bar a:hover{color:var(--hero-eyebrow)}.wordmark{letter-spacing:.02em;text-transform:none;font-size:18px;font-weight:700}.hero-nav{gap:clamp(16px,3vw,28px);display:flex}.hero-body{padding:0 var(--gutter) clamp(48px, 9vh, 88px);flex-direction:column;gap:20px;max-width:760px;margin-top:auto;display:flex}.hero-name{letter-spacing:.14em;text-transform:uppercase;color:var(--hero-eyebrow);margin:0;font-size:15px;font-weight:600}.hero-title{letter-spacing:-.06em;margin:0;font-size:clamp(120px,22vw,260px);font-weight:700;line-height:.8}.tagline{letter-spacing:.12em;text-transform:uppercase;max-width:36ch;color:var(--hero-tagline);font-size:clamp(17px,1.8vw,21px);font-weight:500;line-height:1.5;display:grid}.tagline p{opacity:0;grid-area:1/1;align-self:end;margin:0;transition:opacity .5s,transform .5s;transform:translateY(6px)}.tagline p.is-active{opacity:1;transform:none}.cards{padding:clamp(24px, 4vw, 40px) var(--gutter) 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;display:grid}.card{flex-direction:column;justify-content:space-between;gap:56px;min-height:240px;padding:32px;transition:transform .2s;display:flex}.card:hover{transform:translateY(-6px)}.card-cv,.card-cv:hover{background:var(--accent);color:var(--on-accent)}.card-thoughts,.card-thoughts:hover{background:var(--ink);color:var(--bg)}.card-top{justify-content:space-between;display:flex}.card-arrow{font-size:28px;line-height:1}.card-bottom{flex-direction:column;gap:10px;display:flex}.card-title{letter-spacing:-.04em;font-size:64px;font-weight:700;line-height:.9}.card-blurb{max-width:36ch;font-size:17px;line-height:1.45}.latest{padding:clamp(56px, 8vw, 88px) var(--gutter);flex-direction:column;gap:28px;display:flex}.section-head{border-bottom:3px solid var(--ink);justify-content:space-between;align-items:baseline;padding-bottom:14px;display:flex}.section-label{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:15px;font-weight:700}.section-head a{color:var(--accent)}.posts{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:40px;display:grid}.post{flex-direction:column;gap:12px;display:flex}.post-tag{letter-spacing:.08em;text-transform:uppercase;background:var(--band);color:var(--ink);align-self:flex-start;padding:4px 8px;font-size:12px;font-weight:600}.post-title,.posts-empty{letter-spacing:-.02em;text-wrap:balance;font-size:28px;font-weight:600;line-height:1.15}.post-summary{color:var(--muted);font-size:16px;line-height:1.5}.posts-empty{color:var(--muted);margin:0}.about{background:var(--band);padding:clamp(40px, 6vw, 64px) var(--gutter);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),auto));gap:24px 48px;display:grid}.about .section-label{min-width:200px}.about-copy{letter-spacing:-.01em;text-wrap:pretty;flex-direction:column;gap:14px;max-width:44ch;font-size:clamp(19px,2vw,24px);font-weight:500;line-height:1.45;display:flex}.about-copy p{margin:0}.about-copy .about-footnote{font-size:18px;font-weight:400}.contact{padding:56px var(--gutter) 28px;flex-direction:column;gap:40px;display:flex}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;display:grid}.contact-item{all:unset;cursor:pointer;border-bottom:3px solid var(--accent);color:var(--ink);flex-direction:column;gap:8px;padding:20px 0;display:flex}.contact-item:hover{border-color:var(--band);color:var(--accent)}.contact-item:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.contact-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.contact-value{font-size:17px}.site-version{font-family:var(--font-mono);color:var(--muted);text-align:center;margin:0;font-size:12px}.page-bar{padding:28px var(--gutter);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;display:flex}.page-bar .dot{color:var(--accent)}.page-main{padding:clamp(56px, 10vw, 120px) var(--gutter);flex-direction:column;gap:20px;max-width:900px;display:flex}.page-title{letter-spacing:-.04em;margin:0;font-size:clamp(48px,9vw,96px);font-weight:700;line-height:.95}.page-lede{color:var(--muted);max-width:44ch;margin:0;font-size:clamp(19px,2vw,24px);line-height:1.45}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-layer,.tagline p,.card{transition:none}.tagline p,.card:hover{transform:none}}
