/* Blog pages: index and posts. Uses the site's theme tokens from style.css / themes.css. */
.blog-main{padding-block:64px 96px}
.blog-head{max-width:760px;margin-bottom:48px}
.blog-head h1{font:700 clamp(34px,5vw,56px)/1.05 var(--display);letter-spacing:-1.5px;margin:14px 0 16px;text-wrap:balance}
.blog-head p{color:var(--muted);font-size:17px;margin:0;max-width:60ch}
.post-list{display:grid;gap:0;border-top:1px solid var(--line);max-width:860px}
.post-item{display:grid;grid-template-columns:120px 1fr;gap:8px 28px;padding:26px 0;border-bottom:1px solid var(--line)}
.post-item time{font-size:12px;letter-spacing:1px;color:var(--muted);text-transform:uppercase;padding-top:6px;font-variant-numeric:tabular-nums}
.post-item h2{font:650 22px/1.25 var(--display);letter-spacing:-.4px;margin:0 0 6px;text-wrap:balance}
.post-item h2 a:hover,.post-item h2 a:focus-visible{color:var(--mint)}
.post-item p{margin:0;color:var(--muted);font-size:15px;max-width:62ch}
.post-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.post-tags span{font-size:11px;letter-spacing:.6px;border:1px solid var(--line);border-radius:999px;padding:2px 10px;color:var(--muted)}
.article{max-width:720px}
.article .byline{color:var(--muted);font-size:14px;margin:0 0 36px;display:flex;flex-wrap:wrap;gap:6px 14px}
.article .byline strong{color:var(--text);font-weight:600}
.article-body{font-size:17.5px;line-height:1.75}
.article-body h2{font:650 26px/1.25 var(--display);letter-spacing:-.5px;margin:44px 0 12px;text-wrap:balance}
.article-body h3{font:650 20px/1.3 var(--display);margin:32px 0 8px}
.article-body p,.article-body ul,.article-body ol{margin:0 0 18px}
.article-body ul,.article-body ol{padding-left:22px}
.article-body li{margin-bottom:6px}
.article-body a{color:var(--mint);text-decoration:underline;text-underline-offset:3px}
.article-body .lead{font-size:20px;line-height:1.6;color:var(--text)}
.article-body table{width:100%;border-collapse:collapse;font-size:15px;margin:0 0 24px;display:block;overflow-x:auto}
.article-body th,.article-body td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.article-body th{font-weight:600}
.article-body blockquote{margin:0 0 20px;padding:4px 0 4px 18px;border-left:3px solid var(--mint);color:var(--muted)}
.article-body .faq h3{font-size:18px}
.post-cta{margin-top:56px;padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.post-cta p{margin:0 0 14px;color:var(--muted)}
.post-cta strong{color:var(--text)}
.post-nav{margin-top:36px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px}
@media(max-width:640px){.post-item{grid-template-columns:1fr}.post-item time{padding-top:0}.article-body{font-size:16.5px}.blog-main{padding-block:40px 64px}}
.article .blog-head{margin-bottom:20px}
.answer-short{margin:0 0 28px;padding:16px 20px;border-left:3px solid var(--mint);background:var(--panel);border-radius:0 12px 12px 0;font-size:17px;line-height:1.55}
.answer-more{margin:0;padding-left:18px;display:grid;gap:8px}
