.blog-main{min-height:100svh}.blog-header{border-bottom:1px solid var(--border)}.blog-header h1{margin:28px 0 32px;font-size:clamp(3rem,6vw,6rem)}.blog-header-bottom{justify-content:space-between;align-items:end;gap:28px;display:flex}.blog-header-bottom p{letter-spacing:-.025em;color:var(--muted);font-size:20px;line-height:1.5}.blog-header-bottom>span{font-family:var(--font-mono);color:var(--muted);font-size:12px}.blog-index{padding-top:40px}.blog-index-label{font-family:var(--font-mono);color:var(--muted);justify-content:space-between;gap:20px;font-size:12px;display:flex}.blog-list-detailed{margin-top:24px}.blog-list-detailed .article-row{grid-template-columns:minmax(0,1.65fr) minmax(0,.7fr) 65px 24px;gap:24px;padding:32px 0}.blog-list-detailed .article-title h3{font-size:26px}.article-title p{color:var(--muted);max-width:60ch;margin-top:12px;font-size:16px;line-height:1.65}.blog-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:24px;padding:24px 0;font-size:13px;display:flex}.blog-footer a{align-items:center;gap:10px;display:flex}.blog-footer a:hover{color:var(--primary)}.post-header{border-bottom:1px solid var(--border);padding-top:40px}.post-kicker{font-family:var(--font-mono);flex-wrap:wrap;gap:24px;margin:36px 0 24px;font-size:12px;display:flex}.post-kicker>span:first-child{color:var(--primary)}.post-kicker>span:last-child{color:var(--muted)}.post-header h1{max-width:24ch;font-size:clamp(2.5rem,4.8vw,4.7rem)}.post-byline{color:var(--muted);flex-wrap:wrap;gap:12px 24px;margin-top:28px;font-size:14px;display:flex}.post-byline>span:first-child{color:var(--foreground)}.post-layout{grid-template-columns:160px minmax(0,700px);align-items:start;gap:clamp(32px,4vw,64px);display:grid}.post-aside{position:sticky;top:32px}.post-aside>span{font-family:var(--font-mono);color:var(--muted);font-size:11px}.post-aside nav{gap:16px;margin-top:22px;display:grid}.post-aside a{font-size:14px;line-height:1.5}.post-aside a:hover{color:var(--primary)}.post-body{min-width:0}.post-body .post-deck{letter-spacing:-.025em;margin-bottom:40px;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.5}.post-body section{margin-bottom:40px;scroll-margin-top:24px}.post-body h2{letter-spacing:-.025em;margin-bottom:20px;font-size:25px;font-weight:600;line-height:1.3}.post-body section p{margin:0 0 20px;font-size:17px;line-height:1.8}.post-citation{color:var(--primary);text-underline-offset:3px;margin-left:.4em;font-size:.875rem;text-decoration:underline}.post-sources{border-top:1px solid var(--border);margin-top:40px;padding-top:24px}.post-sources h2{font-size:14px;font-family:var(--font-mono);color:var(--muted)}.post-sources a{text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);justify-content:space-between;align-items:center;gap:18px;padding:10px 0;font-size:14px;display:flex}.post-sources a:hover{color:var(--primary)}.post-sources svg{flex-shrink:0}.post-signoff{align-items:center;gap:16px;margin-top:40px;display:flex}.post-signoff p{font-size:15px;line-height:1.5}.post-signoff p span{color:var(--muted);font-size:12px;display:block}.next-post{background:var(--soft-surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:20px;margin-bottom:36px;padding:32px;display:grid}.next-post>span{font-family:var(--font-mono);color:var(--primary);grid-column:1/-1;font-size:12px}.next-post h2{max-width:30ch;font-size:clamp(1.75rem,3vw,3rem)}.next-post:hover{border-color:var(--primary)}@media (max-width:1050px){.blog-list-detailed .article-row{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) 24px}.post-layout{grid-template-columns:minmax(0,700px);justify-content:center}.post-aside{display:none}}@media (max-width:767px){.blog-header-bottom{flex-direction:column;align-items:start;gap:20px}.blog-header-bottom p{font-size:18px}.blog-list-detailed .article-row{grid-template-columns:minmax(0,1fr) 24px;gap:18px 12px;padding:26px 0}.blog-list-detailed .article-title h3{font-size:22px}.blog-footer{flex-direction:column;gap:16px}.post-header{padding-top:28px;padding-bottom:32px}.post-kicker{gap:12px 24px;margin-top:28px}.post-layout{padding-top:36px}.post-body section{scroll-margin-top:92px}.post-body h2{font-size:23px}.next-post{padding:24px}}
