:root{--color-page:#f8f7f4;--color-surface:#fff;--color-ink:#1f2933;--color-heading:#17221d;--color-muted:#52605d;--color-subtle:#66736f;--color-border:#d9ded9;--color-accent:#14532d;--color-accent-strong:#0f3d22;--color-accent-wash:#e5f1e8;--color-prose:#29352f;--color-focus:#8eb99a;--color-code:#e9ece9;--color-code-block:#17221d;--color-on-accent:#fff;--color-on-code:#f3f7f4;color:var(--color-ink);background:var(--color-page);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}a{color:var(--color-accent);text-underline-offset:.18em;text-decoration-thickness:.08em}a:hover{color:var(--color-accent-strong)}.wrapper{width:min(100% - 2rem,72rem);margin-inline:auto}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;padding-block:1.5rem;display:flex}.site-title{color:var(--color-ink);letter-spacing:-.02em;font-size:1.1rem;font-weight:800;text-decoration:none}nav{gap:1rem;display:flex}nav a{color:var(--color-muted);font-size:.95rem;text-decoration:none}nav a[aria-current=page]{color:var(--color-accent);font-weight:700}main{flex:1;padding-block:clamp(3rem,8vw,7rem)}.site-footer{border-top:1px solid var(--color-border);color:var(--color-subtle);justify-content:space-between;gap:1rem;padding-block:1.5rem;font-size:.85rem;display:flex}.site-footer p{margin:0}.skip-link{z-index:1;color:var(--color-on-accent);background:var(--color-accent);padding:.5rem .75rem;position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--color-accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.78rem;font-weight:800}.hero{max-width:48rem}h1,h2,h3{color:var(--color-heading);letter-spacing:-.035em;line-height:1.15}h1{max-width:14ch;margin:0;font-size:clamp(3rem,8vw,6.5rem)}h2{margin:0;font-size:clamp(1.6rem,4vw,2.25rem)}.hero-intro{max-width:38rem;color:var(--color-muted);margin:1.5rem 0 0;font-size:clamp(1.05rem,2vw,1.25rem)}.section-heading{justify-content:space-between;align-items:baseline;gap:1rem;margin:5rem 0 1.5rem;display:flex}.section-heading a{font-size:.95rem}.post-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.post-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:1rem;padding:1.5rem}.post-card h2,.post-card h3{margin:.65rem 0 0}.post-card h2 a,.post-card h3 a{color:var(--color-heading);text-decoration:none}.post-card h2 a:hover,.post-card h3 a:hover{color:var(--color-accent)}.post-card p{color:var(--color-muted);margin:.75rem 0 0}.post-meta{color:var(--color-subtle);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.85rem;display:flex}.tag-list{flex-wrap:wrap;gap:.4rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.tag{color:var(--color-accent);background:var(--color-accent-wash);border-radius:999px;padding:.18rem .55rem;font-size:.75rem;font-weight:700}.page-heading{max-width:42rem;margin-bottom:3rem}.page-heading h1{max-width:none;font-size:clamp(2.75rem,7vw,5.5rem)}.page-heading p{color:var(--color-muted);margin:1rem 0 0;font-size:1.1rem}.post{max-width:48rem;margin-inline:auto}.post-header{margin-bottom:3rem}.post-header h1{max-width:none;margin:.75rem 0 1rem;font-size:clamp(2.75rem,7vw,5rem)}.post-description{color:var(--color-muted);margin:0;font-size:1.15rem}.prose{color:var(--color-prose);font-size:1.08rem}.prose :is(h2,h3){margin-top:2.5rem}.prose p,.prose ul,.prose ol,.prose blockquote,.prose pre{margin-block:1.25rem}.prose img{border-radius:.75rem;max-width:100%;height:auto}.prose code{background:var(--color-code);border-radius:.25rem;padding:.12rem .3rem;font-size:.9em}.prose pre{color:var(--color-on-code);background:var(--color-code-block);border-radius:.75rem;padding:1rem;overflow-x:auto}.prose pre code{color:inherit;background:0 0;padding:0}.prose blockquote{border-left:3px solid var(--color-focus);color:var(--color-muted);margin-inline:0;padding-left:1rem}a:focus-visible{outline:3px solid var(--color-focus);outline-offset:.2rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (width<=40rem){.site-footer{flex-direction:column}}
