@font-face{font-family:Manrope;src:url("/public/manrope-400.woff2") format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url("/public/manrope-500.woff2") format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url("/public/manrope-600.woff2") format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url("/public/manrope-700.woff2") format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url("/public/manrope-800.woff2") format("truetype");font-weight:800;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f7f7f2;color:#17231e;font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #398761;outline-offset:5px}::selection{background:#d0e6a9}.shell{max-width:1240px;margin:auto;padding:0 40px}.skip{position:fixed;top:-80px;left:20px;padding:12px 20px;background:#fff;z-index:20}.skip:focus{top:10px}.site-header{background:#0c111b;color:#e5eaf3;position:sticky;top:0;z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;height:90px}.brand{display:block;width:208px;line-height:0}.brand img{width:100%;height:auto;display:block}.site-header nav{display:flex;align-items:center;gap:30px;font-size:0.875rem;font-weight:600}.site-header nav>a{padding:12px 0}.site-header nav>a:hover{color:#a8d5ac}.nav-login{border-left:1px solid #35404b;padding-left:26px!important}.nav-login span{margin-left:16px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;padding-top:74px;padding-bottom:80px}.eyebrow{font-size:0.875rem;letter-spacing:1.75px;font-weight:700;line-height:1.6;margin:0 0 25px}.square{display:inline-block;width:7px;height:7px;background:#598368;margin-right:9px}.hero h1{font-size:clamp(3.625rem,5.5vw,4.875rem);line-height:1.08;letter-spacing:-4px;font-weight:600;margin:0 0 26px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:#416749;letter-spacing:-3px}.intro{font-size:1rem;line-height:1.85;max-width:410px;color:#657168;margin:0 0 30px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:17px 22px;font-size:0.875rem;font-weight:700;line-height:1.5;transition:background .15s}.primary{background:#253f30;color:#fff}.primary:hover{background:#3b5945}.text-link{display:inline-flex;gap:16px;align-items:center;font-size:0.875rem;font-weight:700;padding:12px 0;border-bottom:1px solid #a7b3a8}.hero-note{font-size:0.875rem;line-height:1.7;color:#4e604a;margin-top:24px}.hero-visual{background:#111a24;color:#e8edf3;border:1px solid #283544;box-shadow:18px 24px 0 #e8ece4;position:relative;align-self:center;margin-top:12px;transform:rotate(-1deg);border-radius:4px;overflow:hidden}.workspace-top{display:flex;justify-content:space-between;gap:12px;padding:19px 20px;border-bottom:1px solid #283544;font-size:0.875rem;letter-spacing:1.1px}.workspace-brand{font-weight:700}.demo-label{color:#a7b3c1;display:flex;align-items:center;gap:6px}.demo-label span{width:5px;height:5px;background:#68d4ae}.workspace-tabs{display:flex;gap:22px;padding:0 20px;border-bottom:1px solid #283544}.workspace-tabs button{border:0;border-bottom:2px solid transparent;background:none;color:#9daaba;font-size:0.875rem;padding:17px 0;cursor:pointer}.workspace-tabs button[aria-selected=true]{color:#eaf5ec;border-color:#8dab6c}.chart-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:26px 20px 12px}.chart-heading span:first-child{font-size:0.875rem;color:#9aabbc;letter-spacing:1.3px}.chart-heading h2{font-size:0.875rem;font-weight:500;margin:7px 0 0}.signal-badge{border:1px solid #4e654c;color:#c0d89f;background:#253529;padding:5px 8px;font-size:0.875rem;letter-spacing:.5px;white-space:nowrap}.chart{padding:10px 20px 16px 46px;position:relative}.chart svg{display:block;width:100%;height:auto}.chart-y{position:absolute;left:20px;top:22px;bottom:45px;display:flex;flex-direction:column;justify-content:space-between;font:0.875rem monospace;color:#8094a9}.chart-x{display:flex;justify-content:space-between;font:0.875rem monospace;color:#8094a9;margin-top:10px;gap:8px}.preview-checks{padding:0 20px 12px}.preview-checks>div{display:flex;align-items:center;gap:13px;padding:12px 0;border-top:1px solid #283544;font-size:0.875rem}.preview-checks p{margin:0;flex:1;color:#b7c2cf}.preview-checks>div>span{font:0.875rem monospace;color:#6d8095}.preview-checks b{font:0.875rem monospace;letter-spacing:.6px;color:#c3cbd5}.preview-checks .pass{color:#68d4ae}.preview-checks .wait{color:#dec184}.workspace-foot{display:flex;justify-content:space-between;border-top:1px solid #283544;padding:17px 20px;font-size:0.875rem;color:#bdc9d7}.preview-disclaimer{margin:0;background:#192430;padding:10px 20px;font:0.875rem monospace;color:#a7b3c1;line-height:1.6}.instrument-strip{border-block:1px solid #d9ded4;background:#edf0e8}.instrument-strip .shell{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-block:23px;font-size:0.875rem;color:#556257;flex-wrap:wrap}.strip-label{font-size:0.875rem;font-weight:700;letter-spacing:1.3px;color:#4e604a}.section{padding-top:90px;padding-bottom:90px}.platform{display:grid;grid-template-columns:1fr 1fr;gap:80px}.section-heading h2,.faq-section h2{font-size:2.625rem;font-weight:500;letter-spacing:-1.8px;line-height:1.2;margin:0 0 25px}.section-heading>p:last-child:not(.eyebrow){font-size:0.875rem;line-height:1.85;color:#4e604a;max-width:390px}.feature-list article{display:flex;align-items:flex-start;gap:19px;padding:25px 0;border-top:1px solid #cfd6c9}.feature-list article:last-child{border-bottom:1px solid #cfd6c9}.feature-number{font:0.875rem monospace;color:#4e604a;margin-top:4px}.feature-list h3{font-size:1rem;font-weight:600;margin:0 0 10px}.feature-list p{font-size:0.875rem;line-height:1.85;color:#4e604a;margin:0}.feature-symbol{font-size:1.125rem;margin-left:10px;color:#6e8668}.strategy-section{background:#e9eee3;padding:85px 0 55px}.wide{margin-bottom:40px}.strategy-grid{display:grid;grid-template-columns:1fr 1fr}.strategy-grid article{padding:30px 45px 0 0;border-top:1px solid #aabb9e}.strategy-grid article+article{padding-left:45px;padding-right:0;border-left:1px solid #c3cfb8}.strategy-top{display:flex;justify-content:space-between;font-size:0.875rem;letter-spacing:1.5px;color:#4e604a}.strategy-top span+span{font-size:1.25rem}.strategy-grid h3{font-size:2.25rem;font-weight:500;letter-spacing:-1.2px;line-height:1.2;margin:27px 0 18px}.strategy-grid p{font-size:0.875rem;line-height:1.85;color:#626f5c;max-width:440px}.strategy-grid dl{margin-top:28px}.strategy-grid dl div{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #c3cfb8;padding:13px 0;font-size:0.875rem;line-height:1.5}.strategy-grid dt{color:#4e604a}.strategy-grid dd{margin:0;text-align:right}.section-footnote{font-size:0.875rem;color:#4e604a;line-height:1.7;margin-top:40px}.control-section{background:#101b25;color:#e3e9e5;padding:85px 0}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.control-section .eyebrow{color:#b4cba0}.control-section h2{font-size:2.8125rem;letter-spacing:-1.8px;font-weight:500;line-height:1.2;margin:0 0 25px}.control-section p{font-size:0.875rem;line-height:1.85;color:#9eaeb3;max-width:380px;margin-bottom:25px}.light{color:#d4dfc9;border-bottom-color:#4e634e}.control-list{list-style:none;padding:0;margin:0}.control-list li{display:flex;gap:24px;padding:23px 0;border-top:1px solid #35444c}.control-list li>span{font:0.875rem monospace;color:#a9c093;margin-top:4px}.control-list h3{font-size:0.9375rem;font-weight:500;margin:0 0 9px}.control-list p{font-size:0.875rem;line-height:1.7;margin:0}.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:80px}.faq-list details{border-top:1px solid #cfd6c9}.faq-list details:last-child{border-bottom:1px solid #cfd6c9}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:18px;list-style:none;cursor:pointer;padding:23px 0;font-size:0.875rem;font-weight:600;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:1.25rem;color:#78936a;font-weight:400}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list p{font-size:0.875rem;line-height:1.9;color:#4e604a;margin:0 0 25px;padding-right:28px}.closing{border-top:1px solid #cfd6c9;padding-top:44px;padding-bottom:70px}.closing>div{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing h2{font-size:3.4375rem;letter-spacing:-2px;font-weight:500;line-height:1.15;margin:0}footer{background:#0c111b;color:#a6b3b5;padding:48px 0 30px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand{font-size:1.5625rem;font-weight:600;color:#e5eaf3;letter-spacing:-1px}.footer-brand span{display:block;font-size:0.875rem;letter-spacing:1.1px;color:#99ac98;font-weight:500;margin-top:10px}.footer-top nav{display:flex;gap:25px;font-size:0.875rem}.footer-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:50px;margin-top:30px;padding-top:25px;position:relative}.footer-bottom:before{content:'';height:1px;background:#2b373d;position:absolute;top:0;left:40px;right:40px}.footer-bottom p{max-width:780px;font-size:0.875rem;line-height:1.9;margin:0}.footer-bottom>span{white-space:nowrap;font-size:0.875rem;line-height:1.9}.legal{padding-block:80px;max-width:860px;min-height:65vh}.legal h1{font-size:3rem;font-weight:500;letter-spacing:-2px}.legal h2{font-size:1.1875rem;margin-top:34px}.legal p,.legal li{font-size:0.875rem;line-height:1.9;color:#5f6c62}.legal .text-link{margin-top:30px}@media(min-width:90.625em){.hero{padding-top:100px;padding-bottom:100px}}@media(max-width:62.5em){.shell{padding-inline:28px}.site-header nav{gap:18px}.hero{gap:30px}.hero h1{font-size:3.625rem;letter-spacing:-3px}.hero-visual{box-shadow:10px 16px 0 #e8ece4}.actions{gap:12px}.platform,.faq-section,.control-grid{gap:40px}.section-heading h2,.faq-section h2{font-size:2.25rem}.control-section h2{font-size:2.4375rem}}@media(max-width:47.5em){.shell{padding-inline:22px}.header-inner{height:76px}.brand{width:185px}.menu-toggle{display:flex;gap:20px;align-items:center;border:1px solid #34414a;background:transparent;color:#e5eaf3;padding:10px 14px;font-size:0.875rem;cursor:pointer}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:#0c111b;padding:20px 25px 30px;flex-direction:column;align-items:stretch;gap:5px;border-top:1px solid #34414a}.site-header nav.open{display:flex}.nav-login{border-left:0;padding-left:0!important;border-top:1px solid #34414a}.hero{grid-template-columns:1fr;padding-top:44px;padding-bottom:65px;gap:35px}.hero h1{font-size:3.875rem}.intro{max-width:440px}.hero-visual{transform:none;max-width:550px;width:calc(100% - 10px);margin-top:0}.instrument-strip .shell{justify-content:flex-start;gap:15px 22px;padding-block:20px}.strip-label{width:100%}.platform,.faq-section,.control-grid{grid-template-columns:1fr;gap:30px}.section{padding-block:60px}.section-heading h2,.faq-section h2{font-size:2.25rem}.strategy-section,.control-section{padding-block:60px}.strategy-grid{grid-template-columns:1fr;gap:35px}.strategy-grid article,.strategy-grid article+article{padding:25px 0 0;border-left:0}.strategy-grid h3{font-size:2.0625rem}.strategy-grid dl{margin-bottom:0}.control-section h2{font-size:2.5rem}.control-section p{max-width:490px}.closing{padding-top:35px;padding-bottom:50px}.closing>div{align-items:flex-start;flex-direction:column;gap:25px}.closing h2{font-size:2.6875rem}.footer-top,.footer-bottom{flex-direction:column;gap:25px}.footer-top nav{gap:20px;flex-wrap:wrap}.footer-bottom:before{left:22px;right:22px}.legal h1{font-size:2.375rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Responsive type and accessible layouts: WCAG 2.2 AA target. */
:root { --type-small:.875rem; --type-body:1rem; --type-h1:clamp(2.25rem,1.75rem + 3vw,4.875rem); --type-h2:clamp(1.75rem,1.5rem + 1.2vw,2.75rem); --type-h3:clamp(1.25rem,1.15rem + .5vw,1.625rem); }
html { font-size:100%; scroll-padding-block:2rem; }
body { font-size:1rem; line-height:1.7; }
header,.site-header { position:relative; }
.shell { padding-inline:clamp(1rem,3vw,2.8125rem); }
h1,h2,h3,p,li,a,label,dt,dd,span { overflow-wrap:anywhere; }
h1,h2,h3 { letter-spacing:-.035em; }
.hero h1,.legal h1 { font-size:var(--type-h1); line-height:1.15; }
h2,.section-heading h2,.section-intro h2,.section-header h2,.faq-section h2,.control-section h2,.principles h2,.approach h2,.contact-grid h2,.directory-heading h2,.notes-heading h2,.listing-notes h2,.principle-banner h2,.closing h2 { font-size:var(--type-h2); line-height:1.3; }
h3,.feature-list h3,.service-heading h3,.service-grid h3,.principle-list h3,.process h3,.workflow-steps h3,.approach-list h3,.notes-grid h3 { font-size:var(--type-h3); line-height:1.4; }
p,.intro,.hero-intro,.hero-copy>p:not(.eyebrow),.hero-aside>p,.hero-aside>p.muted,.hero-side p,.feature-list p,.section-heading>p:last-child:not(.eyebrow),.section-intro>p:last-child,.service-list article>p,.principle-list p,.strategy-grid p,.control-section p,.control-list p,.faq-list p,.service-grid p,.section-header>p,.workflow-steps p,.approach-list p,.contact-grid>div>p:not(.eyebrow),.contact-note p,.tool-description,.notes-grid p,.listing-notes p,.legal p,.legal li { font-size:1rem; line-height:1.8; }
.eyebrow,.hero-note,.section-footnote,.footer-bottom,.footer-bottom p,.footer-bottom>span,.footer-brand span,.preview-disclaimer,.filter-note p,.directory-heading>p,.hero-bottom,.contact-grid .contact-note,.process-output { font-size:.875rem; line-height:1.7; }
.header-inner { height:auto; min-height:5.5rem; padding-block:1rem; flex-wrap:wrap; gap:1rem 1.5rem; }
.header-inner nav,.site-header nav { font-size:1rem; flex-wrap:wrap; gap:.5rem 1.5rem; }
.button,.text-link,.hero-link,.menu-toggle,.nav-contact,.saved-nav,button,input:not([type=checkbox]),textarea,select,.faq-list summary { font-size:1rem; line-height:1.6; }
button,.button,input[type=submit],summary,.header-inner nav>a,.footer-top nav>a,.footer-bottom nav>a,.text-link,.hero-link,.legal>a,.card-source,.visit-link { min-height:2.75rem; }
button,.button,input[type=submit] { min-width:2.75rem; }
.header-inner nav>a,.footer-top nav>a,.footer-bottom nav>a,.text-link,.hero-link,.legal>a,.card-source,.visit-link { display:inline-flex; align-items:center; padding-block:.375rem; }
input:not([type=checkbox]),textarea,select { font-size:1rem; max-width:100%; min-width:0; }
label,.consent,.consent>span,label>span,.optional { font-size:1rem; line-height:1.7; }
.consent { display:flex; align-items:flex-start; gap:.75rem; }
.consent input { width:1.5rem; height:1.5rem; flex-shrink:0; margin-top:.125rem; }
.consent>span { margin:0; min-width:0; }
.header-inner>*,.hero>*,.hero-grid>*,.platform>*,.contact-grid>*,.form-row>*,.directory-layout>*,.section-header>*,.card-top>* { min-width:0; }
.brand { max-width:100%; }
.brand img { max-width:100%; }
.actions,.hero-top,.hero-label,.workspace-top,.chart-heading,.workspace-tabs,.workspace-foot,.board-heading,.board-footer,.section-header,.workflow-toolbar,.workflow-toolbar>div,.workflow-heading,.workflow-outcome,.hero-bottom,.footer-top,.footer-top nav,.footer-bottom,.footer-bottom nav,.closing>div,.directory-heading,.result-toolbar,.card-foot { flex-wrap:wrap; }
.legal a,.legal p a { text-decoration:underline; text-underline-offset:.2em; }
.skip { max-width:calc(100% - 2rem); font-size:1rem; }
.skip:focus { z-index:1000; }
main:focus { outline:none; }
:focus-visible { outline-color:var(--focus-color)!important; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); left:auto; }
@media(max-width:60em) {
 .menu-toggle { display:flex; }
 .header-inner nav,.site-header nav { display:none; position:static; flex-basis:100%; flex-direction:column; align-items:stretch; padding:1rem 0; border:0; gap:.5rem; }
 .header-inner nav.open,.site-header nav.open { display:flex; }
 .nav-login { border-left:0; padding-left:0!important; }
 .nav-contact { margin-left:0; }
 .hero,.hero-grid,.platform,.expertise,.principles-grid,.contact-grid,.control-grid,.faq-section,.directory-layout,.listing-notes>div { grid-template-columns:minmax(0,1fr); gap:2rem; }
 .hero-visual { transform:none; width:100%; max-width:100%; box-shadow:none; }
 .strategy-grid,.service-grid,.notes-grid { grid-template-columns:minmax(0,1fr); gap:2rem; }
 .strategy-grid article+article,.service-grid article+article,.notes-grid article+article { padding-left:0; border-left:0; }
 .workflow-steps,.board-stages,.process { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .directory-heading,.section-header,.closing>div { flex-direction:column; align-items:flex-start; }
 .footer-top,.footer-bottom { flex-direction:column; align-items:flex-start; }
 .header-inner .brand-name { font-size:.875rem; }
 .filter-note { display:block; }
 #category-filters { display:flex; flex-wrap:wrap; overflow:visible; gap:.5rem; }
 .filter-button { white-space:normal; }
}
@media(max-width:40em) {
 .form-row,.workflow-steps,.board-stages,.process,.tool-grid { grid-template-columns:minmax(0,1fr); }
 .workflow-steps li,.workflow-steps li+li,.board-stages article,.board-stages article+article,.process li,.process li+li { padding-inline:0; border-left:0; }
 .board-stages article { padding-inline:1.25rem; }
 .workflow-steps li+li,.board-stages article+article,.process li+li { border-top:1px solid currentColor; padding-top:1.25rem; }
 .approach-list article { grid-template-columns:1.75rem minmax(0,1fr); }
 .approach-list article p { grid-column:2; }
 .hero-side { display:block; }
 .workflow-toolbar>div { gap:.5rem 1rem; }
 .search-form { height:auto; flex-wrap:wrap; padding:.5rem; gap:.5rem; }
 .search-form input { flex-basis:calc(100% - 3rem); padding:.75rem .5rem; }
 .search-form button { min-height:2.75rem; width:100%; padding:.5rem; }
 .result-toolbar { align-items:flex-start; }
 .strategy-grid dl div { flex-wrap:wrap; }
 .strategy-grid dd { text-align:left; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; animation:none!important; } }

:root{--focus-color:#21643e}.site-header :focus-visible,footer :focus-visible,.hero-visual :focus-visible,.control-section :focus-visible{outline-color:#e3f4d0!important}.hero-visual{overflow:visible}.workspace-tabs button{font-size:1rem}.chart-heading h2{font-size:1.25rem}.chart-y{position:static;flex-direction:row;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.chart{padding:1rem 1.25rem}.chart-x{flex-wrap:wrap;font-size:.875rem}.preview-checks>div{flex-wrap:wrap;font-size:1rem}.preview-checks>div>span,.preview-checks b,.workspace-top,.workspace-foot,.signal-badge{font-size:.875rem}.signal-badge{white-space:normal}.preview-checks>div>span{color:#a0b3c7}.hero-visual,.chart,.workspace-panel{min-width:0}.instrument-strip .shell,.strategy-grid dl div{font-size:1rem}

.button{max-width:100%;flex-wrap:wrap;gap:.75rem;white-space:normal;text-align:center;overflow-wrap:anywhere}

.text-link,.hero-link{max-width:100%;flex-wrap:wrap;gap:.75rem;white-space:normal;overflow-wrap:anywhere}

.feature-number,.control-list li>span{flex-shrink:0;white-space:nowrap}.feature-list article>div,.control-list li>div{min-width:0;flex:1}
