.bp-crumb{padding-top:calc(var(--nav-h) + var(--s-6));font-size:var(--fs-sm);color:var(--ink-500);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bp-crumb a{color:var(--ink-500);transition:color var(--d-fast)}.bp-crumb a:hover{color:var(--ink-900)}.bp-sep{color:var(--ink-400)}.bp-crumb-current{color:var(--ink-700)}.bp-hero{padding-top:var(--s-8);padding-bottom:var(--s-8);text-align:center}.bp-hero h1{font-family:var(--font-display);font-weight:500;font-size:clamp(2.25rem,4vw + 1rem,3.5rem);letter-spacing:-.03em;line-height:1.1;margin-bottom:var(--s-4);color:var(--ink-900);max-width:860px;margin-inline:auto}.bp-sub{font-size:var(--fs-lg);color:var(--ink-500);line-height:1.55;max-width:680px;margin:0 auto}.bp-meta{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:var(--s-5);font-size:var(--fs-sm);color:var(--ink-500)}.bp-category{font-size:var(--fs-xs);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);padding:4px 10px;border-radius:var(--r-pill);background:var(--accent-soft)}.bp-dot{color:var(--ink-400)}.bp-article{padding-block:var(--s-8) var(--s-12);font-size:var(--fs-base);color:var(--ink-700);line-height:1.75}.bp-article>p{margin-bottom:var(--s-4)}.bp-article>p:first-child:first-letter{font-family:var(--font-display);font-size:1.2em;font-weight:500}.bp-article h2{font-family:var(--font-display);font-weight:500;font-size:var(--fs-2xl);letter-spacing:-.025em;line-height:1.2;margin-top:var(--s-12);margin-bottom:var(--s-4);color:var(--ink-900);scroll-margin-top:calc(var(--nav-h) + var(--s-6))}.bp-article h3{font-size:var(--fs-lg);font-weight:var(--fw-semi);letter-spacing:-.015em;margin-top:var(--s-6);margin-bottom:var(--s-3);color:var(--ink-900)}.bp-article ul,.bp-article ol{margin-bottom:var(--s-4);padding-left:var(--s-6)}.bp-article ul{list-style:disc}.bp-article ol{list-style:decimal}.bp-article li{margin-bottom:6px;line-height:1.7}.bp-article li strong{color:var(--ink-900);font-weight:var(--fw-semi)}.bp-article a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.bp-article a:hover{color:var(--accent-hover)}.bp-article strong{color:var(--ink-900);font-weight:var(--fw-semi)}.bp-article em{color:var(--accent);font-style:italic}.bp-article code{font-family:var(--font-mono);font-size:.9em;background:var(--surface-2);padding:2px 6px;border-radius:4px}.bp-article blockquote{border-left:3px solid var(--accent);padding:var(--s-3) var(--s-6);margin:var(--s-5) 0;background:var(--accent-tint);border-radius:0 var(--r-md) var(--r-md) 0;color:var(--ink-900);font-style:italic}.bp-article pre{background:var(--surface-ink);color:var(--ink-on-dark);padding:var(--s-5) var(--s-6);border-radius:var(--r-md);overflow-x:auto;margin-block:var(--s-4);font-family:var(--font-mono);font-size:var(--fs-sm);line-height:1.7}.bp-callout{background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:var(--r-lg);padding:var(--s-6) var(--s-8);margin-block:var(--s-8);text-align:center}.bp-callout p:first-of-type{font-size:var(--fs-lg);font-weight:var(--fw-semi);color:var(--ink-900);margin-bottom:var(--s-2)}.bp-callout p:not(:first-of-type){color:var(--ink-700);margin-bottom:var(--s-4)}.bp-cta-box{background:var(--surface-ink);color:var(--ink-on-dark);border-radius:var(--r-2xl);padding:var(--s-10) var(--s-8);margin-block:var(--s-8);text-align:center;position:relative;overflow:hidden}.bp-cta-box:before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:var(--accent);filter:blur(120px);opacity:.18;right:-160px;top:-180px;pointer-events:none}.bp-cta-box>*{position:relative;z-index:1}.bp-cta-box h3{font-family:var(--font-display);font-weight:500;font-size:var(--fs-2xl);letter-spacing:-.02em;color:var(--ink-on-dark);margin-bottom:var(--s-3)}.bp-cta-box>p{color:var(--ink-on-dark-2);margin-bottom:var(--s-6)}.bp-cta-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.bp-related{margin-block:var(--s-12) var(--s-16);padding-top:var(--s-8);border-top:1px solid var(--line)}.bp-related-label{display:block;font-size:var(--fs-xs);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-500);margin-bottom:var(--s-3)}.bp-related ul{display:grid;gap:4px}.bp-related a{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:var(--fs-sm);font-weight:var(--fw-medium);padding:6px 0;text-decoration:none}.bp-related a:hover{color:var(--accent-hover)}.bp-related a .arrow{transition:transform var(--d-fast) var(--ease)}.bp-related a:hover .arrow{transform:translate(3px)}
