:root{--accent:#15171a;--fg:#15171a;--muted:#6b7280;--bg:#ffffff;--line:#e7e9ec;--maxw:640px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--fg);background:var(--bg);line-height:1.65;font-size:18px;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.wrap-narrow{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.site-head{border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;min-height:64px}
.site-title{font-weight:700;font-size:18px;letter-spacing:-.01em}
.nav{list-style:none;display:flex;gap:22px;margin:0;padding:0}
.nav a{color:var(--muted);font-size:15px}
.nav a:hover{color:var(--fg)}
.hero{padding:84px 0 52px}
.hero h1{font-size:46px;line-height:1.08;letter-spacing:-.025em;margin:0 0 20px;font-weight:800}
.lede{font-size:20px;color:var(--muted);margin:0 0 32px}
.bio{font-size:15px;color:var(--muted);margin-top:30px}
.subscribe{display:flex;gap:10px;flex-wrap:wrap}
.subscribe-email{flex:1;min-width:220px;padding:13px 16px;font-size:16px;border:1px solid var(--line);border-radius:9px;outline:none}
.subscribe-email:focus{border-color:var(--accent)}
.subscribe-btn{padding:13px 22px;font-size:16px;font-weight:600;color:#fff;background:var(--accent);border:0;border-radius:9px;cursor:pointer}
.subscribe-btn:hover{opacity:.9}
.subscribe-msg{display:none;width:100%;font-size:14px}
.subscribe.success .s-success{display:block;color:#15803d}
.subscribe.error .s-error{display:block;color:#b91c1c}
.recent{padding:20px 0 84px}
.recent h2,.list-title{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:600;margin:0 0 6px}
.post-item{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:17px 0;border-bottom:1px solid var(--line)}
.post-title{font-weight:600;font-size:18px}
.post-item time{color:var(--muted);font-size:14px;white-space:nowrap}
.post,.page{padding:64px 0 84px}
.post-full-title{font-size:38px;line-height:1.13;letter-spacing:-.025em;margin:0 0 12px;font-weight:800}
.post-date{color:var(--muted);font-size:14px}
.feature{width:100%;border-radius:12px;margin:26px 0}
.gh-content{margin-top:28px}
.gh-content p{margin:0 0 1.4em}
.gh-content h2{font-size:27px;letter-spacing:-.015em;margin:1.7em 0 .5em}
.gh-content h3{font-size:21px;margin:1.5em 0 .4em}
.gh-content img{max-width:100%;border-radius:10px}
.gh-content blockquote{margin:1.4em 0;padding-left:20px;border-left:3px solid var(--accent);color:var(--muted)}
.post-cta{margin-top:52px;padding-top:34px;border-top:1px solid var(--line)}
.site-foot{border-top:1px solid var(--line);padding:34px 0;color:var(--muted);font-size:14px}
@media(max-width:640px){.hero{padding:56px 0 40px}.hero h1{font-size:34px}.lede{font-size:18px}.post-full-title{font-size:29px}}
