.blog-index{max-width:1240px}.blog-index,.blog-post{position:relative;z-index:2;width:100%;margin:0 auto;padding:clamp(48px,8vh,88px) var(--gutter) var(--sec-pad)}.blog-post{max-width:calc(860px + 2 * var(--gutter))}.blog-kicker{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.blog-title{color:var(--bone);font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(36px,5.4vw,60px);line-height:1.08;letter-spacing:-.015em}.blog-meta{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--mist)}.blog-index-head{display:flex;flex-direction:column;gap:14px;padding:0 24px clamp(32px,5vh,56px)}.blog-index-lede{max-width:60ch;color:var(--mist);font-size:15px;line-height:1.65}.blog-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;max-width:1192px;margin:0 auto;border:1px solid var(--line);background:var(--line)}.blog-cell{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,3vw,40px);background:var(--surface-raised);text-decoration:none;transition:background .15s cubic-bezier(.4,0,.2,1)}.blog-cell:hover{background:var(--surface)}.blog-cell:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.blog-cell-wide,.blog-cell:last-child:nth-child(2n){grid-column:1/-1}.blog-cell-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mist)}.blog-cell-title{color:var(--bone);font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(22px,2.6vw,30px);line-height:1.15;transition:color .15s cubic-bezier(.4,0,.2,1)}.blog-cell-wide .blog-cell-title{font-size:clamp(26px,3.2vw,38px);max-width:24ch}.blog-cell:hover .blog-cell-title{color:var(--accent)}.blog-cell-desc{max-width:66ch;color:var(--mist);font-size:14.5px;line-height:1.65}.blog-cell-time{margin-top:auto;padding-top:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--mist)}@media (max-width:760px){.blog-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.blog-cell,.blog-cell-title{transition:none}}.blog-post-head{display:flex;flex-direction:column;gap:14px;padding-bottom:clamp(32px,5vh,56px);border-bottom:1px solid var(--line)}.blog-post-head .back-link{margin-bottom:12px}.blog-article{padding-top:clamp(32px,5vh,56px)}.blog-article>*+*{margin-top:1.2em}.blog-article h2{position:relative;color:var(--bone);font-family:var(--font-display);font-weight:400;font-size:clamp(28px,3.4vw,40px);line-height:1.15;letter-spacing:-.02em;margin-top:2.2em;padding-top:1.1em}.blog-article h2:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:100vw;height:1px;background:var(--line)}.blog-article h3{color:var(--bone);font-family:var(--font-display);font-weight:400;font-size:clamp(20px,2.3vw,25px);line-height:1.25;letter-spacing:-.015em;margin-top:1.8em}.blog-article p{color:var(--mist);font-size:17.5px;line-height:1.7}.blog-article b,.blog-article strong{color:var(--bone);font-weight:600}.blog-article a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.blog-article ol,.blog-article ul{padding-left:1.3em;color:var(--mist)}.blog-article li{font-size:17.5px;line-height:1.7;margin-top:.5em}.blog-article li::marker{color:var(--line-strong)}.blog-article blockquote{border-left:2px solid var(--accent);padding:6px 0 6px 24px;margin-left:0;color:var(--bone);font-family:var(--font-display);font-style:italic;font-size:clamp(20px,2.4vw,26px);line-height:1.45}.blog-article code{font-family:var(--font-mono);font-size:.86em;padding:2px 6px;border:1px solid var(--line);border-radius:2px;background:var(--surface-raised);color:var(--bone)}.blog-article pre{overflow-x:auto;padding:clamp(18px,2.4vw,26px);border:1px solid var(--line);border-radius:0;background:var(--surface-raised)}.blog-article pre code{padding:0;border:0;background:none}.blog-article pre .tok-k{color:var(--bone);font-weight:600}.blog-article pre .tok-s{color:var(--accent)}.blog-article pre .tok-c{color:var(--mist);font-style:italic}.blog-article pre .tok-n{color:var(--accent)}.blog-article img{max-width:100%;height:auto}.blog-figure{display:flex;flex-direction:column;gap:14px;margin:2.4em 0;padding:clamp(20px,3vw,32px);border:1px solid var(--line);background:var(--surface-raised);border-radius:0}.blog-figure>:not(figcaption){align-self:center;max-width:100%}.blog-figure figcaption{padding-top:4px;border-top:1px solid var(--line);color:var(--mist);font-family:var(--font-mono);font-size:12px;line-height:1.55;letter-spacing:.02em;text-align:center}