@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/SourceSerif4-400_700.woff2)format("woff2")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/SourceSans3-400_700.woff2)format("woff2")}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/SourceCodePro-400_600.woff2)format("woff2")}:root,[data-palette=green]{--paper:#fff;--ink:#121a16;--ink2:#4b554f;--line:#dde2de;--brand:#1f4d3a;--tint1:#4f7d68;--tint2:#a9c4b6;--tint3:#dfe9e3}[data-palette=blue]{--paper:#fff;--ink:#111827;--ink2:#4a5361;--line:#dde1e7;--brand:#14325c;--tint1:#3f6493;--tint2:#a9bedb;--tint3:#e1e9f3}:root{--muted:color-mix(in srgb, var(--ink) 62%, var(--paper));--watch:#b7791f;--risk:#b42318;--f-head:"Source Serif 4", Georgia, serif;--f-body:"Source Sans 3", system-ui, -apple-system, sans-serif;--f-mono:"Source Code Pro", ui-monospace, Menlo, monospace;--hw:560;--max:1440px;--pad-x:clamp(24px, 5vw, 80px);--sec-y:88px;--h2:44px}@media (width<=759px){:root{--pad-x:20px;--sec-y:56px;--h2:32px}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;font-optical-sizing:auto;margin:0;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--f-head);font-weight:var(--hw);font-optical-sizing:auto;letter-spacing:-.01em;margin:0}p{margin:0}button{font:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.skip-link{position:absolute;left:-999px}.skip-link:focus{background:var(--paper);z-index:50;padding:8px 12px;top:16px;left:16px}[id^=s-]{scroll-margin-top:8px}.wrap{max-width:var(--max);padding-left:var(--pad-x);padding-right:var(--pad-x);margin:0 auto}.section{padding-top:var(--sec-y);padding-bottom:var(--sec-y)}.ruled{border-top:1px solid var(--line)}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:20px;font-size:13px}.h2{font-size:var(--h2);line-height:1.1}.lead{color:var(--ink2);font-size:18px;line-height:1.6}.text{color:var(--ink2);font-size:17px;line-height:1.6}.link{color:var(--brand);text-decoration:underline}.link:hover{opacity:.8}.section-head{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:end;gap:24px 80px;margin-bottom:44px;display:grid}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.label{font:500 10px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.tag{font:500 10px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);align-items:center;gap:7px;display:inline-flex}.tag:before{content:"";background:var(--brand);flex:none;width:6px;height:6px}.chip{border:1px solid var(--line);padding:6px 9px}.example{font:500 9px/1.3 var(--f-mono);letter-spacing:.08em;color:var(--muted);border:1px solid var(--line);text-transform:uppercase;padding:2px 5px}.btn{font:500 15px/1.2 var(--f-body);cursor:pointer;border:1px solid #0000;border-radius:2px;padding:14px 22px;display:inline-block}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--ink)}.btn-secondary{border-color:var(--ink);color:var(--ink);background:0 0;padding:13px 22px}.btn-secondary:hover{background:var(--line)}.panel{border:1px solid var(--line);background:var(--paper);border-radius:2px}a.panel:hover{border-color:var(--ink)}.grid4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (width<=1099px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=639px){.grid4{grid-template-columns:minmax(0,1fr)}}.site-header{justify-content:space-between;align-items:center;gap:20px;padding-top:22px;padding-bottom:22px;display:flex}.wordmark{font:var(--hw) 20px var(--f-head);align-items:center;gap:12px;display:inline-flex}.logo-mark .b{fill:var(--brand)}.logo-mark .t1{fill:var(--tint1)}.logo-mark .t2{fill:var(--tint2)}.nav-wide{color:var(--ink2);align-items:center;gap:36px;font-size:15px;display:flex}.nav-wide a:not(.btn):hover{color:var(--ink)}.nav-wide .btn{padding:10px 18px}.nav-narrow{display:none;position:relative}.nav-narrow summary{cursor:pointer;font-size:14px;font-weight:500;list-style:none}.nav-narrow summary::-webkit-details-marker{display:none}.nav-narrow nav{z-index:30;background:var(--paper);border:1px solid var(--line);flex-direction:column;min-width:180px;display:flex;position:absolute;top:calc(100% + 12px);right:0}.nav-narrow nav a{padding:12px 16px;font-size:15px}.nav-narrow nav a+a{border-top:1px solid var(--line)}@media (width<=759px){.nav-wide{display:none}.nav-narrow{display:block}}.site-footer{flex-direction:column;gap:32px;padding-top:48px;padding-bottom:32px;display:flex}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.footer-id{flex-direction:column;gap:6px;display:flex}.footer-name{font:var(--hw) 19px var(--f-head);align-items:center;gap:12px;margin-bottom:4px;display:flex}.footer-meta{color:var(--muted);font-size:14px}.footer-meta address{font-style:normal}.footer-mail{color:var(--brand);margin-top:8px;font-size:14px}.footer-nav{color:var(--ink2);flex-wrap:wrap;gap:24px;font-size:14px;display:flex}.footer-nav a:hover,.footer-mail:hover{opacity:.8}.footer-copy{color:var(--muted);border-top:1px solid var(--line);padding-top:18px;font-size:13px}.hero{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));align-items:end;gap:32px 80px;padding-top:56px;padding-bottom:56px;display:grid}.hero h1{font-size:clamp(52px,5.4vw,78px);line-height:1}.hero h1>span{margin-bottom:-.22em;padding-bottom:.22em;display:block;overflow:hidden}.hero h1>span+span{margin-bottom:0}.hero h1>span>span{display:block}.hero .lead{text-wrap:pretty;margin-bottom:14px}.hero-fit{margin-bottom:28px;font-size:15px;font-weight:500;line-height:1.5}.actions{flex-wrap:wrap;gap:12px;display:flex}@media (width<=759px){.hero{padding-top:36px;padding-bottom:36px}.hero h1{font-size:48px}}.tool-band{padding:48px var(--pad-x) 56px;--tool-pad:24px;--rm-label:150px}.tool{font-variant-numeric:tabular-nums;max-width:1280px;margin:0 auto}.tool-top{padding:0 var(--tool-pad);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.tool-tabs{gap:4px;display:flex}.tool-tabs [role=tab]{color:var(--muted);font:500 14px var(--f-body);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:14px 12px 12px}.tool-tabs [role=tab][aria-selected=true]{color:var(--ink);border-bottom-color:var(--brand)}.tool-meta{align-items:center;gap:10px;padding:10px 0;display:flex}.tool-meta .project{font:400 10px var(--f-mono);letter-spacing:.06em;color:var(--muted)}.tool-body{grid-template-columns:minmax(0,1fr) 260px;display:grid}.tool-view{border-right:1px solid var(--line);min-width:0;position:relative}.tool-side{padding:20px var(--tool-pad);grid-template-columns:1fr;align-content:start;gap:16px 20px;display:grid}.tool-side .label{grid-column:1/-1}.side-row{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding-top:14px;display:flex}.side-row.first{border-top:0;padding-top:0}.side-row .k{color:var(--muted);font-size:12px}.side-row .v{font:400 15px/1.35 var(--f-body);color:var(--ink);align-items:center;gap:8px;display:flex}.side-row .v.big{font:400 24px/1.2 var(--f-head)}.side-row .n{color:var(--ink2);font-size:12px}.dot{background:var(--ink);border-radius:50%;flex:none;width:9px;height:9px}.dot.risk{background:var(--risk)}[hidden]{display:none!important}.rm{padding:4px var(--tool-pad) 16px;position:relative}.rm-row{grid-template-columns:var(--rm-label) repeat(16, 1fr);height:38px;color:var(--ink2);align-items:center;font-size:13px;display:grid}.rm-head{height:auto;font:400 10px var(--f-mono);color:var(--muted);border-bottom:1px solid var(--line);padding:12px 0 10px}.rm-ms{border-top:1px solid var(--line)}.rm-bar{transform-origin:0;border-radius:2px;height:12px}.rm-watch{font:500 10px var(--f-mono);color:var(--watch);white-space:nowrap;padding-left:8px}.ms{background:var(--brand);width:10px;height:10px;transform:rotate(45deg)}.ms.open{border:1.5px solid var(--tint1);background:0 0}.rm-today{left:calc(var(--tool-pad) + var(--rm-label));right:var(--tool-pad);pointer-events:none;position:absolute;top:38px;bottom:16px}.rm-today .line{background:var(--brand);width:1.5px;position:absolute;top:0;bottom:0;left:56.25%}.rm-today .tl{font:500 10px var(--f-mono);color:var(--brand);position:absolute;bottom:2px;left:calc(56.25% + 6px)}.board{padding:14px var(--tool-pad) 18px;overflow-x:auto}.board-cols{grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;display:grid}.board-col{flex-direction:column;gap:8px;min-width:0;display:flex}.board-col-head{border-bottom:1px solid var(--line);font:500 10px var(--f-mono);letter-spacing:.06em;justify-content:space-between;align-items:baseline;gap:6px;padding:4px 2px 8px;display:flex}.board-col-head .lim{letter-spacing:.04em;color:var(--muted);white-space:nowrap;font-weight:400}.board-col-head .lim.full{color:var(--watch)}.bcard{border:1px solid var(--line);border-radius:2px;flex-direction:column;gap:6px;padding:9px 10px;display:flex}.bcard.blocked{border-color:var(--risk)}.bcard .code{font:400 10px var(--f-mono);color:var(--muted)}.bcard .title{font-size:12.5px;font-weight:500;line-height:1.35}.blocked-tag{font:600 11px var(--f-body);color:var(--risk);border:1px solid var(--risk);align-self:flex-start;align-items:center;gap:5px;padding:2px 6px;display:inline-flex}.blocked-tag:before{content:"";background:var(--risk);border-radius:50%;width:6px;height:6px}.bcard .reason{color:var(--ink2);font-size:11.5px;line-height:1.4}.flow{padding:16px var(--tool-pad) 18px;flex-direction:column;gap:18px;display:flex}.flow-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.flow-head .t{font:var(--hw) 20px var(--f-head)}.flow-head .label{font-weight:400}.chart{grid-template-columns:28px minmax(0,1fr);gap:8px;display:grid}.yaxis{height:170px;font:400 10px var(--f-mono);color:var(--muted);position:relative}.yaxis span{position:absolute;right:0}.scatter{border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:repeating-linear-gradient(0deg, transparent 0 calc(33.33% - 1px), var(--line) calc(33.33% - 1px) 33.33%);height:170px;position:relative}.pt{background:var(--tint1);border-radius:50%;width:7px;height:7px;margin:0 0 -3.5px -3.5px;position:absolute}.p85{border-top:1.5px dashed var(--ink);position:absolute;bottom:60%;left:0;right:0}.p85-label{font:500 10px var(--f-mono);letter-spacing:.04em;color:var(--ink);background:var(--paper);padding:0 4px;position:absolute;bottom:calc(60% + 6px);right:6px}.tp{align-items:end}.tp-axis{font:400 10px var(--f-mono);color:var(--muted);writing-mode:vertical-rl;text-align:center;height:58px;transform:rotate(180deg)}.tp-body{flex-direction:column;gap:6px;display:flex}.tp-bars,.tp-weeks{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.tp-bars{align-items:end;height:56px}.tp-bar{height:100%;font:500 10px var(--f-mono);flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;display:flex}.tp-bar i{background:var(--tint1);width:100%;display:block}.tp-bar.last i{background:var(--brand)}.tp-weeks{font:400 10px var(--f-mono);color:var(--muted);text-align:center}@media (width<=759px){.tool-band{--tool-pad:14px;--rm-label:104px;padding:24px 12px 28px}.tool-meta .project{display:none}.tool-body{grid-template-columns:minmax(0,1fr)}.tool-view{border-right:0;border-bottom:1px solid var(--line)}.tool-side{grid-template-columns:1fr 1fr}.side-row.second{border-top:0;padding-top:0}.board-cols{min-width:800px}}.svc{flex-direction:column;gap:14px;padding:28px 24px 26px;display:flex}.svc .num{font:var(--hw) 56px/1 var(--f-head);color:var(--brand);letter-spacing:-.03em}.svc h3{font-size:23px;line-height:1.2}.svc .text{flex:1}.svc-tool{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:14px;display:flex}.more{color:var(--brand);font-size:14px;font-weight:500}.approach-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.approach h2{max-width:760px;margin-bottom:48px}.appr{flex-direction:column;gap:12px;padding:24px;display:flex}.appr .text{flex:1}.values-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;display:grid}.val{flex-direction:column;grid-column:span 2;gap:12px;padding:24px;display:flex}.val:nth-child(4){grid-column:2/span 2}.val:nth-child(5){grid-column:4/span 2}.val .n,.appr .n{font:500 11px var(--f-mono);letter-spacing:.06em;color:var(--muted);font-variant-numeric:tabular-nums}.val h3,.appr h3{letter-spacing:-.005em;font-size:24px;line-height:1.2}.val .text{text-wrap:pretty}@media (width<=759px){.values-grid{grid-template-columns:minmax(0,1fr)}.val,.val:nth-child(4),.val:nth-child(5){grid-column:auto}}.steps h2{margin-bottom:48px}.steps-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:32px;display:grid}.step{border-top:2px solid var(--line);flex-direction:column;gap:10px;padding-top:20px;display:flex}.step .n{font:500 11px var(--f-mono);color:var(--muted)}.step h3{font-size:24px}.chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.standards{color:var(--ink2);border-top:1px solid var(--line);margin-top:56px;padding-top:24px;font-size:18px;line-height:1.5}.contact{grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:48px 80px;display:grid}.contact h2{margin-bottom:20px}.contact .text{margin-bottom:24px}.contact-alt{color:var(--ink2);font-size:15px}.form{flex-direction:column;gap:18px;padding:32px;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.field{flex-direction:column;gap:8px;font-size:14px;font-weight:500;display:flex}.field .opt{color:var(--muted);font-weight:400}.field input,.field textarea{border:1px solid var(--line);background:var(--paper);height:46px;color:var(--ink);font:inherit;border-radius:0;padding:0 12px;font-weight:400}.field textarea{resize:vertical;height:110px;padding:10px 12px}.field input:focus,.field textarea:focus{border-color:var(--ink);outline:none}.field [aria-invalid=true]{border-color:var(--risk)}.field .err{color:var(--risk);font-size:13px;font-weight:500}.form-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.form-note{color:var(--muted);flex:220px;font-size:13px;line-height:1.5}.form-note a{text-decoration:underline}.form-status{color:var(--ink2);font-size:15px}.form-done h3{margin-bottom:8px;font-size:24px}@media (width<=759px){.form{padding:22px}}.progress{z-index:20;background:var(--paper);border-top:1px solid var(--line);position:sticky;bottom:0}.progress-inner{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:24px;padding-top:14px;padding-bottom:8px;display:grid}.progress-cur{font:500 10px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;min-height:12px}.progress-cur b{color:var(--ink);margin-right:.6em;font-weight:500}.track{height:34px;position:relative}.track-line,.track-fill{height:1px;position:absolute;top:9px;left:0}.track-line{background:var(--line);right:0}.track-fill{background:var(--muted);width:0}.mark{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:0;transform:translate(-50%)}.mark:first-of-type{align-items:flex-start;transform:translate(-4px)}.mark.last{align-items:flex-end;transform:translate(calc(4px - 100%))}.mark .dm{background:var(--paper);border:1px solid var(--line);width:8px;height:8px;margin-top:5px;transform:rotate(45deg)}.mark.passed .dm{background:var(--brand);border-color:var(--brand)}.mark .ml{font:500 9.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--muted)}.mark.current .ml{color:var(--ink)}.mark.last.passed .ml{color:var(--brand)}.today{background:var(--brand);width:1px;height:19px;position:absolute;top:0;left:0}.today-label{white-space:nowrap;font:500 8.5px var(--f-mono);letter-spacing:.06em;color:var(--brand);position:absolute;top:-9px;left:5px}@media (width<=759px){.progress-inner{grid-template-columns:auto minmax(0,1fr)}.track{height:20px}.mark .ml,.today-label{display:none}}.page-head{border-bottom:1px solid var(--line);padding-top:56px;padding-bottom:56px}.page-head h1{max-width:900px;margin-bottom:24px;font-size:clamp(44px,4.6vw,64px);line-height:1.05}.page-head .lead{max-width:760px}.index-links{flex-wrap:wrap;gap:8px;margin-top:32px;display:flex}.index-links a{border:1px solid var(--line);border-radius:2px;padding:8px 14px;font-size:15px}.index-links a:hover{border-color:var(--ink)}.svc-block{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:48px 80px;display:grid}.svc-block .num{font:var(--hw) 56px/1 var(--f-head);color:var(--brand);letter-spacing:-.03em;margin-bottom:16px}.svc-block h2{margin-bottom:20px}.outcomes{margin-top:32px;padding:24px}.outcomes h3,.svc-detail h3{margin-bottom:14px;font-size:22px}.outcomes ul,.checklist{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.outcomes li,.checklist li{color:var(--ink2);padding-left:20px;position:relative}.outcomes li:before,.checklist li:before{content:"";background:var(--brand);width:7px;height:7px;position:absolute;top:.62em;left:0;transform:rotate(45deg)}.checklist li:before{border:1px solid var(--tint1);background:0 0}.svc-detail .checklist{margin-bottom:36px}.checklist.when li{color:var(--ink)}.format{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding-top:16px;display:flex}.svc-detail .tools-note{color:var(--muted);margin:-6px 0 14px;font-size:15px}.cta{text-align:center}.cta .lead{max-width:560px;margin:16px auto 28px}@media (width<=899px){.svc-block{grid-template-columns:minmax(0,1fr)}}.prose{max-width:760px;padding-top:56px;padding-bottom:88px}.prose h1{margin-bottom:12px;font-size:clamp(40px,4vw,56px);line-height:1.05}.prose h2{margin:36px 0 10px;font-size:24px}.prose p{color:var(--ink2);margin-bottom:14px}.prose .meta{font:400 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.prose a{color:var(--brand);text-decoration:underline}.post-list{padding-top:16px;padding-bottom:var(--sec-y)}.post-item{border-bottom:1px solid var(--line);max-width:900px;padding:32px 0;display:block}.post-item h2{margin-bottom:12px;font-size:clamp(26px,2.4vw,32px);line-height:1.15}.post-item:hover h2{color:var(--brand)}.post-more{color:var(--brand);margin-top:16px;font-size:15px;text-decoration:underline;display:inline-block}.article .back{display:inline-block}.article .back:before{content:"← "}.article h1{margin-bottom:20px}.article>.lead{margin-bottom:14px}.article .source{border-bottom:1px solid var(--line);padding-bottom:32px}.article-body h2{margin:48px 0 14px;font-size:28px;line-height:1.2}.article-body h3{margin:32px 0 10px;font-size:21px;line-height:1.25}.article-body strong{color:var(--ink);font-weight:600}.article-body ul,.article-body ol{color:var(--ink2);margin:0 0 14px;padding-left:22px}.article-body li+li{margin-top:6px}.article-body figure{margin:28px 0}.article-body figure img{border:1px solid var(--line);width:100%;height:auto;display:block}.article-body figcaption{color:var(--muted);text-align:center;margin-top:10px;font-size:14px}.article-body figure.table{overflow-x:auto}.article-body figure.table figcaption{text-align:left;margin:0 0 10px}.article-body table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:15px}.article-body th,.article-body td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:8px 10px}.article-body th:first-child,.article-body td:first-child{text-align:left}.article-body th{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.article-body td{color:var(--ink2)}.article-body table.matrix th,.article-body table.matrix td{text-align:left;white-space:normal}.article-body table.matrix tbody th{border-bottom-color:var(--line);font-weight:600}.article-body .formula{font:400 20px var(--f-head);color:var(--ink);text-align:center;margin:20px 0}.article-body .references{font-size:15px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{overflow-x:clip}#s-services,#s-steps{position:relative}#s-services:before,#s-steps:before{content:"";border-top:1px solid var(--line);width:100vw;position:absolute;top:0;left:50%;transform:translate(-50%)}@media (width>=760px){html:has(#s-hero){scroll-snap-type:y proximity}.site-header,#s-services,#s-approach,#s-values,#s-steps,#s-contact{scroll-snap-align:start}.site-footer{scroll-snap-align:end}}.dark-band{background:var(--brand);color:#fff}.dark-band .eyebrow{color:var(--tint2)}.dark-band .text,.dark-band .contact-alt{color:#fffc}.dark-band .link{color:#fff}.dark-band .form{color:var(--ink);border-color:#0000}.dark-band .form .btn-primary:hover{background:var(--ink)}
