@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/fira-sans-latin-400-normal.a0AnQzuD.woff2)format("woff2"),url(/_astro/fira-sans-latin-400-normal.66xCkunx.woff)format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/fira-sans-latin-500-normal.Bvbxc8ch.woff2)format("woff2"),url(/_astro/fira-sans-latin-500-normal.Bkfzcwmr.woff)format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/fira-sans-latin-600-normal.CXKlxLG9.woff2)format("woff2"),url(/_astro/fira-sans-latin-600-normal.DtSgd811.woff)format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/fira-sans-latin-700-normal.CRhwpWTq.woff2)format("woff2"),url(/_astro/fira-sans-latin-700-normal.DgqLm3Fi.woff)format("woff")}:root{color-scheme:light;--bg:#f3f1ec;--surface:#fffcf8;--text:#1c2822;--muted:#5a655e;--line:#ddd6cb;--link:#234536;--focus:#234536;--olive:#234536;--olive-soft:#e5efe8;--warning-bg:#fff4df;--note-bg:#e5efe8;--info-bg:#fffcf8;--font-sans:"Fira Sans", "Segoe UI", sans-serif;--font-mono:"Fira Sans", "Segoe UI", sans-serif;--max:64rem;--measure:42rem}.bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem 0;display:flex}.wordmark{color:var(--text);letter-spacing:-.03em;flex:none;font-size:1.12rem;font-weight:700;text-decoration:none}.wordmark:hover{color:var(--olive)}.nav-toggle{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-button{border:1px solid var(--line);background:var(--surface);min-height:44px;font:inherit;color:inherit;cursor:pointer;align-items:center;padding:0 .7rem;display:inline-flex}.nav-button:after{content:"+";margin-left:.4rem}.nav-toggle:checked+.nav-button:after{content:"–"}.nav-toggle:focus-visible+.nav-button{outline:2px solid var(--olive);outline-offset:3px}.primary{display:none}.nav-toggle:checked~.primary{padding:.2rem 0 .5rem;display:grid}.primary a{min-height:44px;color:var(--text);align-items:center;font-weight:500;text-decoration:none;display:flex}.primary a:hover{color:var(--olive)}.primary a[aria-current=page]{color:var(--olive);text-underline-offset:.28em;font-weight:700;text-decoration:underline 2px}.eyebrow,.stage-label,.n,.role,.kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--olive);font-size:.78rem;font-weight:600}.eyebrow,.stage-label,.kicker{margin:0}.eyebrow a{color:inherit;text-decoration:none}.eyebrow a:hover{text-decoration:underline}.brief{max-width:40rem;padding:1.6rem 0 .4rem}.brief h1,.page-title,.article-head h1{margin:.3rem 0;font-size:clamp(1.9rem,4vw,2.5rem)}.brief p:last-child,.deck{max-width:var(--measure);margin-top:.45rem}.stage-label{margin:1.3rem 0 .45rem}.stages,.steps{border-top:1px solid var(--olive);border-bottom:1px solid var(--olive);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.stages li,.steps li{padding:.75rem .8rem .8rem 0}.stages li strong,.stages li .next{display:block}.n{font-variant-numeric:tabular-nums;margin-bottom:.2rem;display:block}.block-title{margin:.2rem 0 .7rem;font-size:1.25rem}.streams{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.stream{background:var(--surface);border:1px solid var(--line);flex-direction:column;gap:.35rem;min-height:100%;padding:1rem 1.05rem 1.1rem;display:flex}.stream h3{margin:0;font-size:1.25rem}.stream h3 a{color:var(--text);text-decoration:none}.stream h3 a:hover{color:var(--olive)}.stream .go{margin-top:auto;padding-top:.7rem;font-weight:600}.section-gap{margin-top:1.8rem}.checkpoint{background:var(--olive-soft);margin-top:.75rem;padding:1rem 1.05rem 1.1rem}.checkpoint h2,.checkpoint h3{margin:.25rem 0 .35rem;font-size:1.2rem}.checks{margin:.45rem 0 0;padding:0;list-style:none}.checks li{grid-template-columns:1rem minmax(0,1fr);align-items:start;gap:.65rem;padding:.32rem 0;display:grid}.checks li:before{content:"";border:1.5px solid var(--olive);width:.9rem;height:.9rem;margin-top:.2rem}.hint,.scroll-hint{color:var(--muted);margin-top:.55rem;font-size:.92rem}.scroll-hint{margin:0 0 .35rem;display:none}.breadcrumbs{margin:1rem 0 .7rem}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:.25rem .4rem;min-width:0;margin:0;padding:0;font-size:.92rem;list-style:none;display:flex}.breadcrumbs li{min-width:0;max-width:100%}.breadcrumbs a{color:var(--olive);font-weight:600;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs li:not(:last-child):after{content:"·";color:var(--muted);margin-inline-start:.4rem}.split{gap:1rem;margin-bottom:.5rem;display:grid}.work{margin:.4rem 0 0;padding:0;list-style:none}.work li{border-bottom:1px solid var(--line);grid-template-columns:3.2rem minmax(0,1fr);gap:.35rem .8rem;padding:1rem 0;display:grid}.work h2,.work h3{margin:0 0 .3rem;font-size:1.35rem}.work h2 a,.work h3 a{color:var(--text);text-decoration:none}.work h2 a:hover,.work h3 a:hover{color:var(--olive)}.next{color:var(--muted);margin:.35rem 0 0;font-size:.95rem}.article-head h1{max-width:22em}.article-meta,.card-meta,.tag-list{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.35rem 1rem;margin:.7rem 0 0;font-size:.95rem;display:flex}.tag-list a,.article-meta a,.card-meta a{font-weight:600}.reading,.narrow{max-width:var(--measure)}.table-scroll{width:100%;min-width:0;max-width:100%;margin:0 0 1rem;overflow-x:auto}table{border-collapse:collapse;background:var(--surface);width:100%}.table-scroll table{min-width:32rem}caption{caption-side:top;text-align:left;margin:0 0 .45rem;font-weight:600}th,td{border:none;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.7rem .75rem}thead th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:600}tbody th{letter-spacing:0;text-transform:none;color:var(--text);font-size:1rem;font-weight:600}.faq details{background:var(--surface);border:1px solid var(--line);margin:.5rem 0}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:48px;padding:.75rem .9rem;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--olive);flex:none}.faq details[open] summary:after{content:"–"}.faq details p{margin:0;padding:0 .9rem .85rem}.when{color:var(--muted);font-size:.92rem}.sources ol{margin:.4rem 0 0;padding:0;list-style:none}.sources li{background:var(--surface);border:1px solid var(--line);gap:.15rem;margin:.45rem 0;padding:.7rem .8rem;display:grid}.callout{background:var(--olive-soft);border:none;margin:1rem 0;padding:1rem 1.05rem 1.1rem}.callout[data-variant=warning]{background:var(--warning-bg)}.callout[data-variant=info]{background:var(--surface);border:1px solid var(--line)}.callout-title{margin:0 0 .35rem;font-weight:600}.callout-body>:last-child{margin-bottom:0}.flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:1.8rem;display:grid}.flow a,.flow .current{background:var(--surface);border:1px solid var(--line);min-height:100%;color:inherit;padding:.8rem .85rem;text-decoration:none;display:block}.flow a:hover{border-color:var(--olive)}.flow a strong{text-underline-offset:.14em;text-decoration:underline}.flow .current{border-color:var(--olive);background:var(--olive-soft)}.flow strong{letter-spacing:-.02em;margin-top:.25rem;font-size:1rem;display:block}.role{display:block}.process-figure,.concept-figure{margin:1rem 0 1.2rem}.process-figure figcaption,.concept-figure figcaption,figcaption{color:var(--muted);margin-top:.45rem;font-size:.92rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:2rem;padding-top:.85rem;font-size:.9rem}.site-footer ul{flex-wrap:wrap;gap:.35rem 1.05rem;margin:0 0 .75rem;padding:0;list-style:none;display:flex}.site-footer a{align-items:center;min-height:2.75rem;font-weight:600;display:inline-flex}.site-footer a[aria-current=page]{text-underline-offset:.28em;text-decoration:underline}.footer-note{margin:.35rem 0 0}.pagination{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1.5rem;display:flex}.pagination p{margin:0}.pagination a{align-items:center;min-height:2.75rem;font-weight:600;display:inline-flex}.badge{border:1px solid var(--line);padding:.1rem .45rem;font-size:.85rem;display:inline-block}.editorial-links{margin:.4rem 0 0;padding:0;list-style:none}.editorial-links li+li{margin-top:.2rem}.editorial-links a{font-weight:600}@media (width<=720px){.scroll-hint{display:block}.streams,.flow,.split{grid-template-columns:1fr}.stages,.steps{grid-template-columns:1fr 1fr}.article-head h1{max-width:none}}@media (width<=520px){.stages,.steps{grid-template-columns:1fr}}@media (width<=899px){.bar{z-index:8;background:var(--bg);flex-wrap:wrap;position:sticky;top:0}.nav-button{flex:1 0 100%;justify-content:center}.nav-toggle:checked~.primary{flex-basis:100%}h1,h2,h3,section,li{scroll-margin-top:6.5rem}}@media (width>=800px){.split{grid-template-columns:minmax(0,1.3fr) minmax(16rem,.8fr);align-items:start}.checkpoint.side{margin-top:0}}@media (width>=900px){.nav-button{display:none}.primary,.nav-toggle:checked~.primary{flex-wrap:wrap;justify-content:flex-end;gap:.35rem 1.05rem;padding:0;display:flex}.primary a{min-height:2.4rem}}@media (forced-colors:active){.stream,.checkpoint,.faq details,.sources li,.flow a,.flow .current,.checks li:before,.callout{border:1px solid canvastext}}*,:before,:after{box-sizing:border-box}html{font-size:100%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);margin:0;font-size:1.0625rem;line-height:1.55}img,svg,video{max-width:100%;height:auto}h1,h2,h3{letter-spacing:-.03em;overflow-wrap:anywhere;font-weight:600;line-height:1.2}p,li,figcaption,.deck,.breadcrumbs li{overflow-wrap:break-word}p{margin:0 0 1rem}a{color:var(--link);text-underline-offset:.16em}a:hover{text-decoration-thickness:2px}:focus{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}#content:focus{outline:none}.skip-link{z-index:30;background:var(--surface);color:var(--text);padding:.45rem .7rem;position:absolute;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:none}.frame{width:min(var(--max), calc(100% - 2rem));margin:0 auto;padding-bottom:2.5rem}@media (width<=520px){.frame{width:auto;margin-inline:1rem}}main{padding-block:0 1rem}.prose>:first-child{margin-top:0}.prose img,.prose picture{height:auto;display:block}.prose h2{margin:1.5rem 0 .45rem;font-size:1.3rem}.prose h3{margin:1.2rem 0 .35rem;font-size:1.08rem}.prose p,.prose ul,.prose ol{margin:.6rem 0}.prose ul,.prose ol{padding-left:1.15rem}.prose li+li{margin-top:.3rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
