.bp-header{border-bottom:1px solid var(--line-strong);padding:7rem 0 3rem}.bp-header-wrap{max-width:38rem}.bp-tags{margin-bottom:1rem}.bp-title{font-family:var(--serif);letter-spacing:-.025em;color:var(--white);margin-bottom:1rem;font-size:clamp(1.8rem,5vw,3rem);font-weight:400;line-height:1.1}.bp-excerpt{font-family:var(--sans);color:var(--ink-dim);max-width:32rem;margin-bottom:1.6rem;font-size:clamp(.8rem,1.5vw,1rem);line-height:1.55}.bp-meta{flex-direction:column;gap:.6rem;display:flex}.bp-date{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.05em;font-size:.55rem}.bp-author-row{align-items:center;gap:.5rem;display:flex}.bp-author-avatar{flex-shrink:0}.bp-author-name{font-family:var(--sans);color:var(--ink-dim);font-size:.65rem}.bp-author-name a{color:var(--ink-dim);text-decoration:none}.bp-author-name a:hover{color:var(--white)}.bp-cover{padding:2rem 0 0}.bp-cover-img{width:100%;height:auto;display:block}.bp-body{border-bottom:1px solid var(--line-strong);padding:2.8rem 0 4rem}.bp-body-wrap{max-width:36rem}.bp-body section{margin-bottom:0}.bp-body p{font-family:var(--sans);color:var(--ink-dim);margin-bottom:1rem;font-size:clamp(.75rem,1.4vw,.85rem);line-height:1.75}.bp-body h2{font-family:var(--serif);color:var(--white);letter-spacing:-.02em;margin:2.4rem 0 1rem;font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:400}.bp-body h3{font-family:var(--sans);color:var(--white);margin:1.6rem 0 .6rem;font-size:clamp(.85rem,1.6vw,1rem);font-weight:600}.bp-body strong,.bp-body a{color:var(--white)}.bp-body code{font-family:var(--mono);background:var(--surface);border-radius:.1rem;padding:.1rem .3rem;font-size:.65rem}.bp-body ul,.bp-body ol{margin-bottom:1rem;padding-left:1.2rem}.bp-body li{font-family:var(--sans);color:var(--ink-dim);margin-bottom:.3rem;font-size:clamp(.75rem,1.4vw,.85rem);line-height:1.7}.blog-code-block{background:var(--surface);border:1px solid var(--line-strong);margin:1.4rem 0;overflow:hidden}.blog-code-lang{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line-strong);padding:.4rem .8rem;font-size:.5rem;display:block}.blog-code-block pre{margin:0;padding:1rem .8rem;overflow-x:auto}.blog-code-block code{font-family:var(--mono);color:var(--ink);background:0 0;padding:0;font-size:.65rem;line-height:1.6}.blog-figure{margin:1.6rem 0}.blog-figure-img{width:100%;height:auto;display:block}.blog-figure-caption{font-family:var(--mono);color:var(--ink-faint);text-align:center;letter-spacing:.04em;padding:.5rem 0 0;font-size:.55rem}.blog-callout{border-left:.15rem solid var(--red);background:var(--surface);margin:1.4rem 0;padding:1rem 1rem 1rem 1.2rem}.blog-callout--tip{border-color:#4ade80}.blog-callout--warning{border-color:#facc15}.blog-callout--quote{border-color:var(--ink-faint);font-style:italic}.blog-callout p{margin-bottom:0}.bp-cta{border-top:1px solid var(--line-strong);padding:5rem 0}.bp-cta-inner{max-width:32rem}.bp-cta-title{font-family:var(--serif);color:var(--white);letter-spacing:-.02em;margin-bottom:.8rem;font-size:clamp(1.6rem,4vw,2.6rem);font-weight:400}.bp-cta-title em{color:var(--body-text);font-style:italic}.bp-cta-sub{font-family:var(--sans);color:var(--ink-faint);margin-bottom:1.6rem;font-size:.75rem}
