.blog-page{color:var(--text);margin:0 auto;max-width:var(--container-max);padding:140px var(--container-pad) var(--section-gap)}.blog-masthead{border-bottom:1px solid var(--outline);padding-bottom:44px}.blog-eyebrow{color:var(--text-subtle);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.blog-masthead h1{color:var(--text-strong);font-size:clamp(36px,5.5vw,60px);font-weight:800;letter-spacing:-.035em;line-height:1.05;margin:18px 0 0;max-width:16ch;text-wrap:balance}.blog-masthead h1 em{color:var(--primary);font-style:normal}.blog-masthead-grid{align-items:end;display:grid;gap:32px;grid-template-columns:minmax(0,1fr);margin-top:4px}@media(min-width:900px){.blog-masthead-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:56px}}.blog-standfirst{color:var(--text-muted);font-size:clamp(17px,1.6vw,21px);line-height:1.55;margin:20px 0 0;max-width:36ch}.blog-masthead-note{border-left:2px solid var(--primary);color:var(--text-muted);display:grid;font-size:14px;gap:10px;line-height:1.65;padding-left:18px}.blog-masthead-note strong{color:var(--text-strong)}.blog-layout{display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}@media(min-width:1040px){.blog-layout{align-items:start;gap:56px;grid-template-columns:minmax(0,1fr) 260px}}@media(min-width:1240px){.blog-layout{grid-template-columns:minmax(0,1fr) 272px;margin-right:calc(50% - 50vw + 20px)}.blog-stream{max-width:760px}}.blog-stream,.blog-rail{min-width:0}@media(min-width:1040px){.blog-rail{max-height:calc(100vh - 104px);overflow-y:auto;position:sticky;top:88px}}@media(min-width:1240px){.blog-rail{border-left:1px solid var(--outline-soft);padding:2px 20px 2px 24px}}.blog-tree{font-size:14px}.blog-tree-head{color:var(--text-subtle);font-size:11px;font-weight:700;letter-spacing:.12em;margin:0 0 14px;text-transform:uppercase}.blog-tree-root,.blog-tree-leaves{list-style:none;margin:0;padding:0}.blog-tree-branch{position:relative}.blog-tree-art{align-items:baseline;border-radius:var(--radius-sm);color:var(--text-muted);display:grid;gap:10px;grid-template-columns:18px minmax(0,1fr);padding:7px 8px;text-decoration:none;transition:color .15s,background .15s}.blog-tree-art:hover{background:var(--primary-dim);color:var(--text-strong)}.blog-tree-n{color:var(--text-subtle);font-size:11px;font-weight:700}.blog-tree-label{font-weight:600;line-height:1.35}.blog-tree-leaves{border-left:1px solid var(--outline);margin:2px 0 8px 16px;padding-left:0}.blog-tree-sub{color:var(--text-subtle);display:block;line-height:1.4;margin-left:14px;padding:5px 8px 5px 0;position:relative;text-decoration:none;transition:color .15s}.blog-tree-sub:before{background:var(--outline);content:"";height:1px;left:-14px;position:absolute;top:15px;width:10px}.blog-tree-sub:hover{color:var(--text)}.blog-tree-art.is-current{background:var(--primary-dim);color:var(--text-strong)}.blog-tree-art.is-current .blog-tree-n{color:var(--primary)}.blog-tree-sub.is-current{color:var(--primary);font-weight:600}.blog-tree-sub.is-current:before{background:var(--primary);width:12px}@media(max-width:1039px){.blog-rail{background:var(--surface-card);border:1px solid var(--outline);border-radius:var(--radius-md);order:-1;padding:18px 16px}.blog-tree-leaves{display:none}.blog-tree-art{padding:8px}}@media(prefers-reduced-motion:no-preference){.blog-fig[data-animate] svg>*:not(defs):not(title),.blog-fig[data-animate] svg>g>*{opacity:0}.blog-fig[data-animate].is-visible svg>*:not(defs):not(title),.blog-fig[data-animate].is-visible svg>g>*{animation:figPart .46s cubic-bezier(.22,.7,.3,1) both;animation-delay:calc(var(--i, 0) * var(--step, 45ms))}.blog-fig[data-animate].is-visible svg .s-flow{animation:figDraw .62s cubic-bezier(.4,.6,.3,1) both;animation-delay:calc(var(--i, 0) * var(--step, 45ms))}.blog-fig[data-animate] svg .s-flow{stroke-dasharray:var(--len)}.blog-fig[data-animate].is-built svg>*:not(defs):not(title),.blog-fig[data-animate].is-built svg>g>*{animation:none;opacity:1}.blog-fig[data-animate].is-built svg .s-flow{animation:none;stroke-dashoffset:0}}@media(prefers-reduced-motion:no-preference)and (hover:hover){.blog-fig[data-animate].is-built:hover svg .s-flow{animation:figFlow 1.5s linear infinite;stroke-dasharray:5 9}}@keyframes figPart{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes figDraw{0%{opacity:1;stroke-dashoffset:var(--len, 0)}to{opacity:1;stroke-dashoffset:0}}@keyframes figFlow{0%{stroke-dashoffset:14}to{stroke-dashoffset:0}}.blog-stats{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));max-width:680px}.blog-stat{background:var(--surface-card);border:1px solid var(--outline);border-radius:var(--radius-md);display:grid;gap:4px;padding:16px 18px}.blog-stat b{color:var(--text-strong);display:block;font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.05}.blog-stat b span{color:var(--text-muted);font-size:15px;font-weight:600}.blog-stat i{color:var(--text-muted);font-size:13px;font-style:normal;line-height:1.4}.blog-strip{counter-reset:beat;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));list-style:none;margin:0;max-width:760px;padding:0}.blog-strip li{background:var(--surface-low);border:1px solid var(--outline-soft);border-radius:var(--radius-md);counter-increment:beat;display:grid;gap:6px;padding:16px 18px;position:relative}.blog-strip li:before{color:var(--primary);content:counter(beat,decimal-leading-zero);font-size:11px;font-weight:700;letter-spacing:.1em}.blog-strip b{color:var(--text-strong);font-size:15px;font-weight:600;line-height:1.35}.blog-strip span{color:var(--text-muted);font-size:13.5px;line-height:1.5}.blog-chiprow{display:flex;flex-wrap:wrap;gap:8px;max-width:680px}.blog-chiprow span{background:var(--surface-card);border:1px solid var(--outline);border-radius:var(--radius-pill);color:var(--text);font-size:13.5px;font-weight:500;padding:6px 14px}.blog-index{padding:48px 0 8px}.blog-index-list{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));list-style:none;margin:0;padding:0}.blog-index-card{align-content:start;background:var(--surface-card);border:1px solid var(--outline);border-radius:var(--radius-lg);display:grid;gap:10px;height:100%;padding:26px 28px 24px;text-decoration:none;transition:border-color .15s,transform .15s,background .15s}.blog-index-card:hover,.blog-index-card:focus-visible{background:var(--surface-high);border-color:var(--outline-strong);transform:translateY(-2px)}.blog-index-card .n{color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.12em}.blog-index-card h2{color:var(--text-strong);font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0}.blog-index-card p{color:var(--text-muted);font-size:14.5px;line-height:1.55;margin:0}.blog-index-more{color:var(--primary);font-size:13.5px;font-weight:600;margin-top:4px}.blog-kicker{color:var(--primary);font-size:12.5px;font-weight:700;letter-spacing:.1em;margin:0 0 6px;text-transform:uppercase}.blog-index-card .blog-kicker{margin:0}.blog-crumbs{color:var(--text-subtle);display:flex;flex-wrap:wrap;font-size:13px;gap:8px;margin-bottom:28px}.blog-crumbs a{color:var(--text-muted);text-decoration:none}.blog-crumbs a:hover{color:var(--text-strong);text-decoration:underline}.blog-article.is-single{border-top:0;padding-top:0}.blog-prevnext-row{border-top:1px solid var(--outline);display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:56px;padding-top:28px}.blog-prevnext{background:var(--surface-card);border:1px solid var(--outline);border-radius:var(--radius-md);display:grid;gap:5px;padding:16px 18px;text-decoration:none;transition:border-color .15s,background .15s}.blog-prevnext:hover{background:var(--surface-high);border-color:var(--outline-strong)}.blog-prevnext span{color:var(--text-subtle);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.blog-prevnext b{color:var(--text-strong);font-size:15.5px;font-weight:600;line-height:1.3}.blog-prevnext.next{text-align:right}.blog-tree-head a{color:inherit;text-decoration:none}.blog-tree-head a:hover{color:var(--text-strong)}.blog-article{border-top:1px solid var(--outline);padding:72px 0}.blog-art-head{max-width:720px}.blog-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.blog-chip{border:1px solid var(--outline);border-radius:var(--radius-pill);color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.08em;padding:4px 11px;text-transform:uppercase}.blog-chip-primary{background:var(--primary-dim);border-color:transparent;color:var(--primary)}.blog-article h1,.blog-article h2{color:var(--text-strong);font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.12;margin:0;text-wrap:balance}.blog-dek{color:var(--text-muted);font-size:clamp(16px,1.5vw,19px);line-height:1.55;margin:14px 0 0;max-width:42ch}.blog-body{display:grid;gap:26px;margin-top:40px}.blog-body>*{max-width:680px}.blog-body h3{color:var(--text-strong);font-size:19px;font-weight:700;letter-spacing:-.015em;margin:6px 0 0}.blog-body p{font-size:16px;line-height:1.72;margin:0}.blog-body strong{color:var(--text-strong);font-weight:600}.blog-story{background:var(--surface-card);border:1px solid var(--outline);border-left:3px solid var(--primary);border-radius:var(--radius-md);display:grid;gap:12px;max-width:680px;padding:24px 26px}.blog-story q{color:var(--text-strong);font-size:19px;font-style:italic;line-height:1.5;quotes:"“" "”"}.blog-story .who{color:var(--text-subtle);font-size:14px}.blog-body code,.blog-story code{background:var(--surface-high);border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;font-style:normal;overflow-wrap:anywhere;padding:1px 5px}.blog-body>*,.blog-story{min-width:0}.blog-steps{counter-reset:bstep;display:grid;gap:18px;list-style:none;margin:0;padding:0}.blog-steps>li{counter-increment:bstep;display:grid;gap:2px 16px;grid-template-columns:26px minmax(0,1fr)}.blog-steps>li:before{color:var(--primary);content:counter(bstep,decimal-leading-zero);font-size:13px;font-weight:700;padding-top:3px}.blog-steps strong{color:var(--text-strong);font-weight:600}.blog-steps p{color:var(--text-muted);font-size:15px;grid-column:2}.blog-path{align-items:center;background:var(--surface-low);border:1px dashed var(--outline-strong);border-radius:var(--radius-sm);display:flex;flex-wrap:wrap;font-size:13px;gap:7px 9px;padding:13px 15px}.blog-path .k{background:var(--surface-card);border:1px solid var(--outline);border-radius:6px;color:var(--text-strong);font-weight:500;padding:3px 9px;white-space:nowrap}.blog-path .sep{color:var(--text-subtle)}.blog-note{border-radius:var(--radius-md);display:grid;gap:7px;padding:18px 20px}.blog-note h4{font-size:11px;font-weight:700;letter-spacing:.1em;margin:0;text-transform:uppercase}.blog-note p{font-size:14.5px;line-height:1.65;margin:0}.blog-note-safe{background:var(--green-dim);border-left:3px solid var(--green)}.blog-note-safe h4{color:var(--green)}.blog-note-watch{background:var(--amber-dim);border-left:3px solid var(--amber)}.blog-note-watch h4{color:var(--amber)}.blog-fig{background:var(--surface-card);border:1px solid var(--outline);border-radius:var(--radius-md);margin:0;max-width:760px;overflow:hidden}.blog-fig-scroll{overflow-x:auto;padding:24px 24px 8px}.blog-fig svg{display:block;height:auto;min-width:480px;width:100%}.blog-fig figcaption{border-top:1px solid var(--outline-soft);color:var(--text-muted);font-size:14px;line-height:1.6;margin-top:16px;padding:14px 24px 18px}.s-box{fill:var(--surface-high);stroke:var(--outline-strong)}.s-box-a{fill:var(--primary-dim);stroke:var(--primary)}.s-line{fill:none;stroke:var(--outline-strong)}.s-flow{fill:none;stroke:var(--primary)}.s-t{fill:var(--text-strong);font-family:var(--font-sans);font-size:13px;font-weight:600}.s-t-s{fill:var(--text-muted);font-family:var(--font-sans);font-size:11.5px}.s-m{fill:var(--text-subtle);font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.1em}.s-a{fill:var(--primary);font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.1em}.blog-tbl{max-width:760px;overflow-x:auto}.blog-tbl table{border-collapse:collapse;font-size:14.5px;min-width:480px;width:100%}.blog-tbl th,.blog-tbl td{border-bottom:1px solid var(--outline-soft);padding:12px 14px;text-align:left;vertical-align:top}.blog-tbl thead th{border-bottom:1px solid var(--outline);color:var(--text-subtle);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.blog-tbl tbody th{color:var(--text-strong);font-weight:600}.blog-tbl td{color:var(--text-muted)}.blog-outro{border-top:1px solid var(--outline);display:grid;gap:12px;max-width:680px;padding-top:40px}.blog-outro p{color:var(--text-muted);font-size:15px;line-height:1.7;margin:0}@media(prefers-reduced-motion:reduce){.blog-cat-card{transition:none}}
