:root{--ink:#17202a;--paper:#f7f3eb;--accent:#e4572e;--muted:#65717d;--line:#d8d0c2;--surface:#fffdf8;--code:#202936}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent)}.shell{width:min(1120px,calc(100% - 2rem));margin:0 auto}.site-header{border-bottom:1px solid var(--line);background:rgba(247,243,235,.92);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.header-inner{min-height:4.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.05rem;font-weight:800;text-decoration:none}.brand span{color:var(--accent)}.nav,.locale,.socials{display:flex;align-items:center;gap:1rem}.nav a,.locale a{font-size:.9rem;text-decoration:none}.nav a.active{color:var(--accent)}.locale{padding-left:1rem;border-left:1px solid var(--line);gap:.5rem}.locale a[aria-current="true"]{font-weight:700}main{padding:4.5rem 0 5rem}.eyebrow{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero{max-width:820px;padding:3rem 0 4rem}h1,h2,h3{line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,8vw,5.7rem);margin:.4rem 0 1.25rem;max-width:14ch}h2{font-size:clamp(1.8rem,4vw,3rem);margin:0}h3{font-size:1.35rem;margin:.25rem 0 .7rem}.lead{font-size:clamp(1.1rem,2vw,1.45rem);color:var(--muted);max-width:58ch}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;border-top:2px solid var(--ink);padding-top:1.1rem;margin:2rem 0 1.5rem}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.post-card{display:flex;flex-direction:column;min-height:17rem;padding:1.35rem;background:var(--surface);border:1px solid var(--line);text-decoration:none;transition:transform .18s ease,border-color .18s ease}.post-card:hover{transform:translateY(-4px);border-color:var(--accent);color:inherit}.post-card p{color:var(--muted);margin:.5rem 0 1.2rem}.post-meta{margin-top:auto;color:var(--muted);font-size:.82rem}.tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.tag{display:inline-block;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;text-decoration:none}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 17rem;gap:4rem}.article{max-width:760px}.article-header{border-bottom:1px solid var(--line);margin-bottom:2rem;padding-bottom:1.7rem}.article-header h1{font-size:clamp(2.4rem,6vw,4.5rem);max-width:17ch}.article-header .lead{margin-bottom:1.2rem}.article-body{font-size:1.08rem}.article-body h2{margin-top:2.8rem;font-size:2rem}.article-body h3{margin-top:2rem}.article-body pre{background:var(--code);color:#f7f3eb;border-radius:.4rem;overflow:auto;padding:1rem}.article-body code{font-family:ui-monospace,SFMono-Regular,monospace}.article-body :not(pre)>code{background:#eee8dc;padding:.1rem .3rem;border-radius:.2rem}.article-body img{max-width:100%;height:auto}.sidebar{align-self:start;border-left:1px solid var(--line);padding-left:1.25rem;position:sticky;top:6.5rem}.sidebar nav ul{padding-left:1rem;font-size:.9rem}.pagefind-ui{--pagefind-ui-scale:.85;--pagefind-ui-primary:var(--accent);--pagefind-ui-text:var(--ink);--pagefind-ui-background:var(--surface);--pagefind-ui-border:var(--line)}.site-footer{border-top:1px solid var(--line);padding:2.2rem 0;color:var(--muted);font-size:.9rem}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem}@media(max-width:760px){.header-inner{min-height:4rem;flex-wrap:wrap;padding:.7rem 0}.nav{order:3;width:100%;justify-content:space-between}.locale{margin-left:auto}main{padding-top:2.5rem}.post-grid{grid-template-columns:1fr}.content-grid{display:block}.sidebar{display:none}.footer-inner{align-items:flex-start;flex-direction:column}}
