:root{--f25-ink:#12271f;--f25-green:#2f7057;--f25-muted:#567064;--f25-paper:#f7f8f5;--f25-line:rgba(29,73,54,.16)}
html{scroll-behavior:smooth}
body.f25-page{background:var(--f25-paper);color:var(--f25-ink);--a1:#315f4b;--a2:#7db79a}
.f25-page main{overflow:hidden}
.f25-page button,.f25-page a{transition:transform .25s,border-color .25s,background .25s,color .25s,box-shadow .25s}
.f25-page button:focus-visible,.f25-page a:focus-visible{outline:3px solid #257ac4;outline-offset:3px}
.f25-hero{position:relative;isolation:isolate;min-height:650px;overflow:hidden;background:radial-gradient(ellipse at 18% 16%,#e1efe7 0,transparent 44%),radial-gradient(ellipse at 86% 77%,#dcd4fc 0,transparent 46%),linear-gradient(118deg,#f9fbf8,#edf3f0 55%,#f6f0f2);border-bottom:1px solid var(--f25-line)}
.f25-halo{position:absolute;z-index:-1;width:720px;height:720px;right:-170px;top:-170px;border:1px solid rgba(68,141,112,.17);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.12),0 0 0 160px rgba(255,255,255,.08);background:conic-gradient(from 20deg,rgba(176,244,217,.55),rgba(147,172,247,.42),rgba(255,219,196,.42),rgba(176,244,217,.55));filter:blur(1px);animation:f25-orbit 30s linear infinite}
.f25-hero-inner,.f25-section,.f25-end{max-width:1440px;margin:auto;padding-left:clamp(24px,6vw,92px);padding-right:clamp(24px,6vw,92px)}
.f25-hero-inner{padding-top:38px;padding-bottom:62px}
.f25-crumb{display:flex;gap:11px;align-items:center;color:#61776c;font-size:.86rem}
.f25-crumb a{color:inherit;text-decoration:none}.f25-crumb a:hover{text-decoration:underline}
.f25-kicker,.f25-overline{font:700 .78rem/1.4 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:#447765}
.f25-kicker{margin-top:72px;display:flex;gap:18px;align-items:center}.f25-kicker span{padding:5px 10px;border:1px solid rgba(29,73,54,.25);border-radius:20px;font-size:.65rem;letter-spacing:.11em}
.f25-hero h1{max-width:1100px;margin:20px 0 22px;font:normal clamp(3.4rem,7.5vw,7.6rem)/.97 Georgia,serif;letter-spacing:-.062em}.f25-hero h1 em{font-weight:normal;color:#397960}
.f25-lede{max-width:735px;font:1.18rem/1.6 system-ui,sans-serif;color:#435d50}
.f25-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.f25-button{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;padding:14px 21px;border:1px solid rgba(24,62,45,.25);border-radius:50px;color:#254b39;text-decoration:none;font:650 .95rem/1.2 system-ui,sans-serif;background:rgba(255,255,255,.55);backdrop-filter:blur(12px)}.f25-button:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(25,60,43,.12)}.f25-button-primary{background:#1b4935;color:#fff}
.f25-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;max-width:880px;margin-top:68px;border-top:1px solid var(--f25-line);border-bottom:1px solid var(--f25-line)}.f25-metrics div{padding:18px 26px 18px 0;display:flex;align-items:baseline;gap:9px}.f25-metrics strong{font:normal 2.4rem/1 Georgia,serif}.f25-metrics span{font:.72rem/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#5e7469}
.f25-section{padding-top:88px;padding-bottom:92px}.f25-section+.f25-section{border-top:1px solid var(--f25-line)}.f25-section-head{display:flex;justify-content:space-between;align-items:end;gap:34px;margin-bottom:30px}.f25-section-head h2{margin:8px 0 14px;font:normal clamp(2.8rem,5vw,5.2rem)/1.02 Georgia,serif;letter-spacing:-.055em}.f25-section-head p:not(.f25-overline){max-width:760px;color:#53685c;font:1rem/1.6 system-ui,sans-serif}.f25-aside{font-size:.78rem!important;line-height:1.9!important;text-align:right;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em}.f25-aside strong{color:#1d4d37}
.f25-controls{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.f25-filter{border:1px solid var(--f25-line);border-radius:30px;padding:10px 16px;background:#fff;color:#3a5d49;font:650 .83rem system-ui,sans-serif;cursor:pointer}.f25-filter:hover,.f25-filter.is-active{background:#1b4935;color:#fff}.f25-status{font:.9rem system-ui,sans-serif;color:#5a6e62}
.f25-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.f25-column{padding:16px;border-radius:28px;border:1px solid var(--f25-line);background:linear-gradient(155deg,rgba(255,255,255,.82),rgba(241,248,243,.7));box-shadow:0 20px 38px -32px #356b4e}.f25-column:nth-child(2){background:linear-gradient(155deg,#f4f3fc,#e9f3ed)}.f25-column:nth-child(3){background:linear-gradient(155deg,#fcf3ef,#f1f6ee)}.f25-column-head{padding:16px 16px 22px;display:flex;justify-content:space-between;align-items:start;gap:12px;border-bottom:1px solid var(--f25-line)}.f25-column-head span{font:700 .7rem system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#517765}.f25-column-head h3{font:normal 1.8rem/1.1 Georgia,serif;margin:8px 0 0}.f25-column-head b{font:normal 2.2rem/1 Georgia,serif;color:#48745f}.f25-list{display:grid;gap:8px;padding-top:10px}.f25-card{width:100%;text-align:left;border:1px solid transparent;border-radius:17px;background:rgba(255,255,255,.68);padding:14px 15px;cursor:pointer;color:var(--f25-ink)}.f25-card:hover{transform:translateX(3px);border-color:#aac9b7;background:#fff;box-shadow:0 12px 25px -20px #15553b}.f25-card strong{display:block;font:650 1rem system-ui,sans-serif}.f25-card small{display:block;margin-top:4px;color:#63776a;font:.78rem/1.35 system-ui,sans-serif}.f25-card .f25-arrow{float:right;font-size:1.2rem;color:#658b72}
.f25-lens{background:radial-gradient(ellipse at 100% 15%,#e3ebf9 0,transparent 38%)}.f25-lens-mark{font:normal clamp(3rem,8vw,8rem)/1 Georgia,serif;color:rgba(53,110,81,.16)}.f25-chart{border-radius:26px;background:#142c24;padding:25px;box-shadow:0 36px 55px -38px #173c2b;overflow:auto}.f25-chart-head{display:flex;justify-content:space-between;gap:20px;color:#d7ede0;font:.72rem/1.3 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}.f25-chart-row{display:grid;grid-template-columns:minmax(145px,245px) minmax(260px,1fr) 68px;gap:16px;align-items:center;min-height:42px;color:#f2fbf5;font:.79rem/1.25 system-ui,sans-serif}.f25-chart-row+.f25-chart-row{border-top:1px solid rgba(255,255,255,.08)}.f25-chart-row button{border:0;background:none;color:inherit;text-align:left;padding:6px 0;cursor:pointer;font:inherit}.f25-chart-row button:hover{text-decoration:underline}.f25-chart-row small{color:#aac7b4;display:block}.f25-track{position:relative;height:14px;border-radius:20px;background:rgba(255,255,255,.09)}.f25-range{position:absolute;top:3px;height:8px;border-radius:8px;background:#94d1bc}.f25-dot{position:absolute;top:-2px;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:#e7fcf0;border:3px solid #85c7ab;box-shadow:0 0 0 4px rgba(126,222,177,.13)}.f25-chart-row output{text-align:right;font-weight:700;color:#e6ffe9}.f25-chart-note{font:.82rem/1.55 system-ui,sans-serif;color:#617467;max-width:920px;margin:18px 0 0}.f25-chart-note a,.f25-method a{color:#276447;text-underline-offset:3px}
.f25-edge-grid,.f25-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.f25-edge-grid article{border:1px solid var(--f25-line);border-radius:22px;padding:25px;background:#fff;min-height:224px;display:flex;flex-direction:column}.f25-edge-grid span{font:700 .7rem system-ui,sans-serif;letter-spacing:.16em;color:#448569}.f25-edge-grid h3{font:normal 1.6rem/1.16 Georgia,serif;margin:20px 0 8px}.f25-edge-grid h3 b{color:#73aa8a}.f25-edge-grid p{font:.86rem/1.5 system-ui,sans-serif;color:#52685c}.f25-edge-grid a{margin-top:auto;color:#226644;font:700 .8rem system-ui,sans-serif}
.f25-method{background:#eaf0e9}.f25-method-grid>div{padding:0 18px 0 0}.f25-method-grid h3{font:normal 1.65rem/1.2 Georgia,serif}.f25-method-grid p{font:.86rem/1.65 system-ui,sans-serif;color:#445e4e}.f25-source-line{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.f25-source-line a{display:inline-block;border:1px solid rgba(44,96,62,.25);border-radius:30px;padding:10px 14px;text-decoration:none;font:650 .77rem system-ui,sans-serif}.f25-source-line a:hover{background:#fff}
.f25-review{margin-top:34px;border-top:1px solid var(--f25-line);border-bottom:1px solid var(--f25-line);font:.85rem/1.6 system-ui,sans-serif;color:#435d4c}.f25-review summary{cursor:pointer;padding:18px 2px;font-weight:700;color:#1d5839}.f25-review>div{padding:0 3px 18px;max-width:1000px}.f25-review p{margin:8px 0}.f25-review a{color:#1d5839}
.f25-end{padding-top:26px;padding-bottom:26px;display:flex;justify-content:space-between;align-items:center;font:.78rem system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em}.f25-end a{color:#245c40}
.f25-next{max-width:1440px;margin:auto;padding:0 clamp(24px,6vw,92px) 36px}
.f25-dialog{border:0;padding:0;border-radius:26px;max-width:min(680px,calc(100vw - 24px));max-height:min(85vh,900px);width:100%;box-shadow:0 40px 100px rgba(11,40,28,.3);background:#fbfdf9;color:#173728}.f25-dialog::backdrop{background:rgba(9,29,20,.6);backdrop-filter:blur(7px)}.f25-dialog-content{padding:clamp(20px,4vw,42px);overflow:auto;max-height:85vh}.f25-close{float:right;border:1px solid var(--f25-line);border-radius:50%;background:#fff;width:36px;height:36px;font:1.4rem sans-serif;cursor:pointer}.f25-profile-kicker{font:700 .7rem system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#468061}.f25-profile h2{font:normal clamp(2.6rem,5vw,4.5rem)/1 Georgia,serif;letter-spacing:-.05em;margin:12px 0}.f25-profile p{font:.93rem/1.6 system-ui,sans-serif;color:#465f50}.f25-profile .f25-detail{padding:17px;background:#edf5ee;border-radius:16px;margin:18px 0;font:.83rem/1.5 system-ui,sans-serif}.f25-profile h3{font:normal 1.5rem Georgia,serif;margin:30px 0 12px}.f25-evidence{border-top:1px solid var(--f25-line);padding:13px 0}.f25-evidence a{color:#246743;font-weight:700}.f25-evidence small{display:block;color:#678073;margin-top:5px}.f25-evidence p{margin:5px 0}.f25-share{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.f25-share button,.f25-share a{border:1px solid var(--f25-line);background:#fff;padding:11px 14px;border-radius:24px;color:#27593e;font:700 .76rem system-ui,sans-serif;text-decoration:none;cursor:pointer}.f25-share button:hover,.f25-share a:hover{background:#eaf3eb}.f25-share-status{font-size:.76rem!important}
@keyframes f25-orbit{to{transform:rotate(360deg)}}
@media(max-width:900px){.f25-map{grid-template-columns:1fr}.f25-list{grid-template-columns:repeat(2,minmax(0,1fr))}.f25-edge-grid,.f25-method-grid{grid-template-columns:1fr}.f25-hero{min-height:auto}.f25-halo{width:500px;height:500px;right:-290px}.f25-section-head{align-items:start}.f25-aside{display:none}}
@media(max-width:600px){.f25-hero h1{font-size:3.35rem}.f25-kicker{margin-top:48px;display:block}.f25-kicker span{display:inline-block;margin-top:12px}.f25-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:45px}.f25-metrics div{padding:16px 10px 16px 0}.f25-metrics strong{font-size:2rem}.f25-section{padding-top:64px;padding-bottom:64px}.f25-list{grid-template-columns:1fr}.f25-chart{padding:16px}.f25-chart-row{grid-template-columns:140px minmax(170px,1fr) 42px;gap:7px}.f25-chart-head{font-size:.65rem}.f25-end{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.f25-halo{animation:none}.f25-page button,.f25-page a{transition:none}}
.f25-explainer{background:#f2f5ef}.f25-explainer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.f25-explainer-grid article{padding:26px;border:1px solid rgba(29,73,54,.15);border-radius:22px;background:rgba(255,255,255,.82);box-shadow:0 18px 32px -30px #37654c}.f25-explainer-grid span{font:700 .7rem/1.3 system-ui,sans-serif;letter-spacing:.15em;color:#3e7a58}.f25-explainer-grid h3{margin:16px 0 9px;font:400 1.55rem/1.18 Georgia,serif}.f25-explainer-grid p{margin:0;color:#4d6657;font:.88rem/1.6 system-ui,sans-serif}.f25-explainer-grid a,.f25-book-bridge a{color:#246641;text-underline-offset:3px}.f25-book-bridge{margin:27px 0 0;padding:18px 22px;border-left:3px solid #4e9a6a;background:rgba(222,238,223,.7);color:#355642;font:.95rem/1.6 system-ui,sans-serif}.f25-book-bridge em{font-family:Georgia,serif;font-size:1.08em}@media(max-width:900px){.f25-explainer-grid{grid-template-columns:1fr}}@media(max-width:600px){.f25-explainer-grid article{padding:21px}}

/* Source-led organization profiles. Missing fields stay absent rather than appearing as zero. */
.f25-dialog{max-width:min(850px,calc(100vw - 24px));max-height:min(92vh,1060px)}
.f25-dialog-content{max-height:92vh;padding:clamp(20px,4vw,40px)}
.f25-profile{--role:#285f49;--role-soft:#e9f3ec}
.f25-role-builders{--role:#4647a6;--role-soft:#ededfa}
.f25-role-deployers{--role:#a05743;--role-soft:#fbf0eb}
.f25-profile-head{display:flex;align-items:center;gap:18px;padding-right:48px}
.f25-monogram{flex:none;display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--role);color:#fff;font:700 1.25rem system-ui,sans-serif;letter-spacing:.04em}
.f25-profile-kicker{margin:0!important;color:var(--role)!important}
.f25-profile h2{font-size:clamp(2.4rem,5vw,4rem);margin:5px 0 0}
.f25-profile-tags{display:flex;flex-wrap:wrap;gap:7px;margin:21px 0 16px}
.f25-profile-tags span{border:1px solid rgba(28,62,45,.16);border-radius:99px;padding:7px 10px;color:#375544;background:#fff;font:650 .72rem/1.2 system-ui,sans-serif}
.f25-profile-tags .f25-role-tag{background:var(--role);border-color:var(--role);color:#fff}
.f25-profile-tags .f25-boundary-tag{background:#f2f3ef;color:#5d695e}
.f25-editorial-line{font:normal clamp(1.12rem,2.4vw,1.42rem)/1.36 Georgia,serif!important;color:#183728!important;max-width:38ch;margin:0 0 22px!important}
.f25-profile-feature{position:relative;overflow:hidden;padding:clamp(20px,3.5vw,31px);border:1px solid color-mix(in srgb,var(--role) 22%,white);border-radius:23px;background:radial-gradient(ellipse at 90% 4%,color-mix(in srgb,var(--role) 16%,white),transparent 50%),var(--role-soft)}
.f25-profile-feature::after{content:"";position:absolute;width:200px;height:200px;right:-80px;bottom:-100px;border:1px solid color-mix(in srgb,var(--role) 20%,transparent);border-radius:50%;pointer-events:none}
.f25-feature-kicker{margin:0 0 12px!important;color:var(--role)!important;text-transform:uppercase;letter-spacing:.13em;font:750 .69rem/1.3 system-ui,sans-serif!important}
.f25-feature-value{display:block;color:#183728;font:normal clamp(3.4rem,9vw,6rem)/.95 Georgia,serif;letter-spacing:-.055em;overflow-wrap:anywhere}
.f25-feature-label{max-width:44ch;margin:9px 0 0!important;color:#254736!important;font:650 clamp(.98rem,2vw,1.18rem)/1.38 system-ui,sans-serif!important}
.f25-feature-period{margin:11px 0 12px!important;color:#526d5b!important;font:.81rem/1.3 system-ui,sans-serif!important}
.f25-profile-feature>a{position:relative;z-index:1;color:var(--role);font:750 .8rem system-ui,sans-serif;text-underline-offset:3px}
.f25-profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0}
.f25-profile-fact{min-width:0;border:1px solid var(--f25-line);border-radius:13px;background:#fff;padding:13px 14px}
.f25-profile-fact small{display:block;color:#668071;font:700 .66rem system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
.f25-profile-fact strong,.f25-profile-fact a{font:650 .82rem/1.4 system-ui,sans-serif;color:#214835;overflow-wrap:anywhere}
.f25-identity-section{margin:21px 0;padding:18px;border:1px solid var(--f25-line);border-radius:17px;background:#fff}
.f25-identity-section h3{margin:0 0 5px;font:700 1.14rem/1.25 Georgia,serif;color:#183728}
.f25-identity-section>a,.f25-identity-scope{font:650 .8rem/1.4 system-ui,sans-serif;color:var(--role);text-decoration:none}
.f25-profile-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0 0;font:.82rem/1.4 system-ui,sans-serif}
.f25-identity-field{min-width:0;padding:12px 13px;border-radius:11px;background:#f5f7f3}
.f25-profile-identity dt{color:#6a7b6e;font:700 .68rem/1.3 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.f25-profile-identity dd{margin:6px 0 0;color:#1d4432;font-weight:650;overflow-wrap:anywhere}.f25-profile-identity a{color:var(--role)}
.f25-identity-date{margin:12px 0 0!important;color:#67776b!important;font:.72rem/1.4 system-ui,sans-serif!important}
.f25-profile-methods{margin-top:18px;border:1px solid var(--f25-line);border-radius:15px;background:#fff;padding:0 18px}
.f25-profile-methods summary{cursor:pointer;padding:16px 0;color:var(--role);font:750 .9rem system-ui,sans-serif}
.f25-profile-methods[open] summary{border-bottom:1px solid var(--f25-line)}
.f25-profile-methods .f25-limit{background:#f5f6f2;border-radius:10px;padding:11px 13px;font:.82rem/1.5 system-ui,sans-serif;color:#405e4b}
.f25-profile-source-note{margin:14px 0 0!important;color:#718074!important;font:.72rem system-ui,sans-serif!important;text-transform:uppercase;letter-spacing:.08em}
.f25-share{margin-top:16px}.f25-share button,.f25-share a{border-color:color-mix(in srgb,var(--role) 20%,white);color:var(--role)}
.f25-share button:first-child{background:var(--role);color:#fff}
@media(max-width:600px){.f25-dialog-content{padding:22px}.f25-profile-head{gap:12px;padding-right:25px}.f25-monogram{width:46px;height:46px;border-radius:13px;font-size:1rem}.f25-profile-facts{grid-template-columns:1fr 1fr}.f25-profile-fact:first-child{grid-column:1/-1}.f25-profile-tags{margin-top:17px}.f25-profile-feature{padding:20px}.f25-profile-identity{grid-template-columns:1fr}}
