/* Reusable project layouts and form controls. */
.project-detail-hero{background:var(--pale);border-bottom:4px solid var(--lime);padding:28px 0 56px}
.project-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:60px}
.project-hero-grid h1{font-size:clamp(2.25rem,3.7vw,3.65rem);line-height:1.13}
.project-subtitle{font-weight:700;color:var(--green);font-size:1rem;margin-bottom:14px}
.project-hero-grid .lead{font-size:1.125rem;line-height:1.75}
.project-hero-grid .button{margin-top:6px}
.project-hero-image{padding:0 0 13px 13px;position:relative;isolation:isolate}
.project-hero-image:after{content:'';position:absolute;z-index:-1;inset:26px 22px 0 0;background:var(--lime)}
.project-hero-image img{width:100%;aspect-ratio:1.3;object-fit:cover;background:#fff}
.project-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-bottom:1px solid var(--border)}
.project-metrics>div{display:flex;flex-direction:column;padding:30px 28px;border-right:1px solid var(--border)}
.project-metrics>div:first-child{padding-left:0}.project-metrics>div:last-child{border:0}
.project-metrics dt{font-size:.8125rem;font-weight:600;margin-top:7px}.project-metrics dd{order:-1;margin:0;color:var(--navy);font-size:2rem;font-weight:800;line-height:1.25;letter-spacing:-.03em}
.project-detail-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:70px;align-items:start}
.project-contents{position:sticky;top:30px;border-top:3px solid var(--green);padding-top:22px}
.project-contents nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--border);font-size:.875rem;line-height:1.5;text-decoration:none;color:var(--navy)}
.project-contents nav a:hover{color:var(--green)}.project-contents nav a span{color:var(--green);flex-shrink:0}
.project-back{display:inline-flex;gap:14px;align-items:center;margin-top:27px;text-decoration:none;color:var(--green);font-size:.8125rem;font-weight:700}
.project-content{min-width:0}.project-content-section{padding:0 0 45px;margin:0 0 45px;border-bottom:1px solid var(--border);scroll-margin-top:30px}.project-content-section:last-child{margin-bottom:0;padding-bottom:0;border:0}
.project-content-section>h2{font-size:clamp(1.8rem,2.5vw,2.35rem)}
.project-section-body>p:first-child{font-size:1rem;color:var(--text)}
.project-section-body>.button{margin:5px 12px 12px 0}
.project-section-body>figure{margin:28px 0}.project-section-body>figure img{width:100%;max-height:440px;object-fit:contain;background:var(--pale)}
.project-section-body>figure img[src$='.svg'],.project-preamble img[src$='.svg']{width:auto;max-width:240px;max-height:110px;object-fit:contain;margin:25px 0;background:none}
.project-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:25px 0}
.project-feature-item{padding:24px;background:var(--pale);border-top:3px solid var(--green)}
.project-feature-item h4{font-size:1.05rem;line-height:1.5;margin:0;letter-spacing:-.015em}
.project-feature-item p{font-size:.9375rem;margin:14px 0 0}.project-feature-item ul{padding-left:20px;margin-bottom:0}
.project-partners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:25px 0}
.project-partner{border:1px solid var(--border);padding:25px;display:flex;flex-direction:column;align-items:start;min-width:0}
.project-partner figure{width:100%;margin:0 0 18px;display:flex;align-items:center;min-height:100px}
.project-partner figure img{max-width:100%;width:auto;height:85px;object-fit:contain;margin:0}
.project-partner p{font-size:.875rem;margin:0 0 20px}
.project-partner>.button{margin-top:auto;font-size:.8125rem;padding:11px 16px}
.priority-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:28px}
.priority-card{border:1px solid var(--border);display:flex;flex-direction:column;min-width:0}
.priority-card>img{width:100%;aspect-ratio:1.65;object-fit:cover;background:var(--pale)}
.priority-card>div{padding:25px;flex:1;display:flex;flex-direction:column}.priority-card h3{font-size:1.35rem;line-height:1.35}
.priority-card .prose{font-size:.875rem}.priority-card .prose>p:first-child{font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--green);font-weight:800}
.priority-card .prose p{margin-bottom:15px}.priority-card .button{font-size:.75rem;min-height:44px;padding:11px 14px;gap:12px;margin:6px 7px 0 0}
/* Rich content remains usable across migrated project and article pages. */
.prose details{border:1px solid var(--border);margin:14px 0;background:#fff}
.prose summary{list-style:none;position:relative;padding:20px 58px 20px 22px;font-weight:700;color:var(--navy);line-height:1.5}
.prose summary::-webkit-details-marker,.data-tables summary::-webkit-details-marker{display:none}
.prose summary h2,.prose summary h3,.prose summary h4{font-size:1rem;line-height:1.5;margin:0;letter-spacing:0}
.prose summary:after,.data-tables summary:after{content:'+';position:absolute;right:21px;top:50%;transform:translateY(-50%);font-size:1.6rem;font-weight:400;line-height:1;color:var(--green)}
.prose details[open]>summary,.data-tables details[open]>summary{background:var(--pale);border-bottom:1px solid var(--border)}
.prose details[open]>summary:after,.data-tables details[open]>summary:after{content:'−'}
.prose details>:not(summary){margin:20px 22px}.prose details>ul{padding-left:22px}.prose details>p:last-child{margin-bottom:24px}
.prose blockquote{margin:30px 0;padding:25px 28px;border-left:4px solid var(--green);background:var(--pale);font-size:1.125rem;color:var(--navy)}
.prose blockquote p:last-child{margin-bottom:0}.prose hr{border:0;border-top:1px solid var(--border);margin:32px 0}
.prose li::marker{color:var(--green)}.prose table{display:block;overflow-x:auto;margin-block:25px}
.data-tables summary{list-style:none;position:relative;padding-right:55px}
/* Consistent fields, including the no-JavaScript select fallback. */
.field input,.field select,.field textarea{appearance:none;-webkit-appearance:none;border:1px solid #9eabb8;border-radius:3px;background-color:#fff;color:var(--navy);box-shadow:0 1px 2px #081e3f05;line-height:1.5;font-size:1rem;transition:border-color .15s,box-shadow .15s}
.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--green)}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #00843f22}
.field input::placeholder,.field textarea::placeholder{color:#637185;opacity:1}
.field select{padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m5 7.5 5 5 5-5' stroke='%23002a59' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat}
.field select:disabled,.field input:disabled{background-color:var(--pale);color:#647184;cursor:not-allowed}
.field input[type=search]::-webkit-search-cancel-button{appearance:none;width:18px;height:18px;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m6 6 8 8M14 6l-8 8' stroke='%23081e3f' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/18px no-repeat}
.check-label input{appearance:none;-webkit-appearance:none;background:#fff;border:1.5px solid #8a99aa;border-radius:3px;display:grid;place-content:center;transition:background .15s,border-color .15s}
.check-label input:checked{background:var(--green);border-color:var(--green)}
.check-label input:checked:after{content:'';width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translateY(-1px)}
.check-label input:focus-visible{outline:3px solid #00843f55;outline-offset:3px}.check-label:hover input{border-color:var(--green)}
.select-control{position:relative;min-width:0}.select-trigger{position:relative;width:100%;min-height:53px;display:flex;align-items:center;text-align:left;gap:12px;padding:13px 44px 13px 14px;border:1px solid #9eabb8;border-radius:3px;box-shadow:0 1px 2px #081e3f05;background:#fff;color:var(--navy);font:inherit;font-size:1rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}
.select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.select-trigger:after{content:'';position:absolute;right:18px;top:20px;width:8px;height:8px;border-right:1.7px solid var(--ocean);border-bottom:1.7px solid var(--ocean);transform:rotate(45deg);transition:transform .15s}
.select-trigger:hover{border-color:var(--green)}.select-trigger:focus-visible,.select-trigger[aria-expanded=true]{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #00843f22}
.select-trigger[aria-expanded=true]:after{transform:translateY(4px) rotate(225deg)}
.select-options{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:30;list-style:none;padding:6px;margin:0;background:#fff;border:1px solid var(--border);border-radius:5px;box-shadow:0 12px 32px #081e3f26;max-height:280px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#acb7c2 var(--pale)}
.select-options[hidden]{display:none}.select-option{position:relative;padding:11px 35px 11px 12px;cursor:pointer;color:var(--navy);font-size:.9375rem;line-height:1.5;border-radius:2px;overflow-wrap:anywhere}
.select-option.is-active{background:var(--pale);box-shadow:inset 3px 0 var(--green)}.select-option[aria-selected=true]{color:var(--green);font-weight:700}
.select-option[aria-selected=true]:after{content:'✓';position:absolute;right:13px;top:11px;font-weight:800}.select-option[aria-disabled=true]{opacity:.5;cursor:not-allowed}
@media(max-width:1100px){.project-hero-grid{gap:35px}.project-detail-layout{grid-template-columns:220px minmax(0,1fr);gap:40px}.project-metrics>div{padding-inline:22px}.priority-grid{gap:18px}.priority-card>div{padding:20px}}
@media(max-width:850px){.project-hero-grid{grid-template-columns:1fr 1fr;gap:28px}.project-hero-grid h1{font-size:2.35rem}.project-subtitle{font-weight:700;color:var(--green);font-size:1rem;margin-bottom:14px}
.project-hero-grid .lead{font-size:1rem}.project-detail-layout{grid-template-columns:1fr;gap:35px}.project-contents{position:static}.project-contents nav{display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.project-back{margin-top:20px}.project-metrics dd{font-size:1.6rem}.project-content-section{padding-bottom:35px;margin-bottom:35px}}
@media(max-width:640px){.project-detail-hero{padding-bottom:35px}.project-hero-grid{grid-template-columns:1fr;gap:30px}.project-hero-grid h1{font-size:2.3rem}.project-hero-image img{aspect-ratio:1.7}.project-metrics{grid-template-columns:1fr 1fr}.project-metrics>div,.project-metrics>div:first-child{padding:22px 18px;border-bottom:1px solid var(--border)}.project-metrics>div:nth-child(even){border-right:0}.project-metrics>div:nth-last-child(-n+2){border-bottom:0}.project-metrics dd{font-size:1.6rem}.project-metrics dt{font-size:.75rem}.project-contents nav{grid-template-columns:1fr}.project-contents nav a{padding:13px 0}.project-feature-list,.project-partners,.priority-grid{grid-template-columns:1fr}.project-feature-item{padding:22px}.project-content-section>h2{font-size:1.8rem}.project-partner{padding:22px}.priority-card>div{padding:24px}.prose summary{padding:18px 48px 18px 18px}.prose summary h4{font-size:.9375rem}.prose details>:not(summary){margin-inline:18px}.select-options{max-height:240px}.select-option{padding-block:12px}}
@media(forced-colors:active){.check-label input{appearance:auto}.select-trigger,.select-options{border:1px solid ButtonText}.select-option.is-active{outline:2px solid Highlight}.select-option[aria-selected=true]{color:Highlight}}
.preview-banner{padding:16px 30px;background:var(--lime);color:var(--navy);display:flex;align-items:center;justify-content:center;gap:25px;font-size:.875rem;flex-wrap:wrap}.preview-banner a{font-weight:800}.project-card .image-fallback{min-height:180px}
/* Featured funding opportunity */
.featured-grant{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(230px,1fr);gap:40px;padding:40px;background:var(--navy);color:#fff;border-radius:5px;margin-bottom:30px;border-top:4px solid var(--lime)}.featured-grant .eyebrow{color:var(--lime);display:block;margin-bottom:22px}.featured-grant h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.25;color:#fff;margin:10px 0 18px}.featured-grant h2 a{text-decoration:none}.featured-grant h2 a:hover{color:var(--lime);text-decoration:underline}.featured-grant-main>p{color:#d4deea;line-height:1.75}.featured-grant-main .featured-provider{font-size:.8125rem;color:#aabbd0}.featured-grant .button{margin-top:24px}.featured-grant-details{border-left:1px solid #ffffff30;padding-left:32px;align-self:stretch}.featured-grant-details .status{display:inline-block;background:var(--lime);color:var(--navy);padding:5px 12px;font-size:.75rem;font-weight:800;border-radius:3px}.featured-grant-details dl{margin:22px 0 0}.featured-grant-details dl>div+div{margin-top:22px}.featured-grant-details dt{color:#aabbd0;font-size:.75rem;margin-bottom:6px}.featured-grant-details dd{margin:0;font-weight:700;font-size:1rem;overflow-wrap:anywhere}
@media(max-width:700px){.featured-grant{grid-template-columns:1fr;gap:28px;padding:27px}.featured-grant-details{border-left:0;border-top:1px solid #ffffff30;padding:25px 0 0}.featured-grant-details dl{display:grid;grid-template-columns:1fr 1fr;gap:20px}.featured-grant-details dl>div+div{margin-top:0}}

.regional-change-badge{display:inline-block;vertical-align:middle;margin-left:.6em;padding:.2em .65em;border:1px solid #b5d8c1;border-radius:4px;background:#e7f4eb;color:#176235;font-size:.7rem;font-weight:800;line-height:1.5;letter-spacing:.02em;white-space:nowrap}.regional-change-note{margin:22px 0;padding:16px 20px;border-left:3px solid #00843f;background:#f0f7f2}.regional-change-note strong{display:block}

/* Regional profile: topic navigation, report search and readable comparison tables. */
.regional-report-meta{font-size:.75rem;color:var(--text);text-align:right;line-height:1.7}.regional-intro{max-width:760px}.regional-explorer{display:grid;grid-template-columns:235px minmax(0,1fr);gap:40px;margin-top:32px;align-items:start}.regional-topics{position:sticky;top:24px}.regional-topics h3{font-size:.875rem;letter-spacing:0;margin-bottom:16px}.regional-topics nav{display:grid;border-top:1px solid var(--border)}.regional-topics nav a{display:flex;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--border);text-decoration:none;font-size:.8125rem;font-weight:700}.regional-topics nav a>span{font-size:.7rem;opacity:.75}.regional-topics nav a[aria-current]{background:var(--navy);color:#fff;border-left:3px solid var(--lime);padding-left:11px}.regional-reading-note{margin-top:28px;padding:18px;background:var(--pale);border-top:3px solid var(--lime)}.regional-reading-note p{font-size:.75rem;margin:0 0 12px}.regional-reading-note p:last-child{margin:0}.regional-results{min-width:0}.regional-search{padding:24px;background:var(--pale);border-top:3px solid var(--green)}.regional-search>label:first-of-type{display:block;font-size:.8125rem;font-weight:800;color:var(--navy);margin-bottom:9px}.regional-search-row{display:flex;gap:10px}.regional-search-row input{min-width:0;flex:1;border:1px solid #b6c1cc;background:#fff;border-radius:0;padding:12px 14px;font-size:.875rem;color:var(--navy)}.regional-updated-toggle{display:flex;align-items:center;gap:9px;font-size:.75rem;margin-top:16px;cursor:pointer}.regional-updated-toggle input{width:17px;height:17px;accent-color:var(--green);margin:0}.regional-updated-toggle span{color:var(--green)}.regional-results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:24px 0 16px}.regional-results-heading p{font-size:.8125rem;margin:0}.regional-result-actions{display:flex;gap:16px;flex-wrap:wrap}.regional-result-actions button,.regional-result-actions a{background:none;border:0;padding:0;font:700 .75rem Muli,Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;color:var(--green)}.regional-result-actions [hidden]{display:none}.regional-table-list details{margin:0 0 14px;scroll-margin-top:24px}.regional-table-list summary{padding:22px 55px 22px 24px}.regional-table-kicker{display:block;color:var(--green);font-size:.625rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.regional-table-heading{display:block;font-size:1rem;line-height:1.5}.regional-table-list details[open]>summary{background:#f0f5f3}.regional-table-tools{display:flex;justify-content:space-between;gap:15px;padding:16px 24px;font-size:.6875rem;background:#fafbfc}.regional-table-tools a{color:var(--green);font-weight:700;white-space:nowrap}.regional-table-list .table-scroll{padding:0;isolation:isolate;max-width:100%}.regional-table-list table{width:100%;font-variant-numeric:tabular-nums;line-height:1.5}.regional-table-list caption{text-align:left;padding:20px 24px;font-weight:700;color:var(--navy);font-size:.8125rem;caption-side:top}.regional-table-list th,.regional-table-list td{min-width:82px;padding:12px;text-align:right;border:0;border-bottom:1px solid var(--border);border-right:1px solid var(--border);vertical-align:middle}.regional-table-list thead th{background:var(--navy);color:#fff;font-size:.7rem;border-color:#344a66}.regional-table-list tbody th:first-child,.regional-table-list thead tr:first-child th:first-child{min-width:175px;text-align:left;position:sticky;left:0;z-index:1}.regional-table-list tbody th{font-weight:600;background:#fff}.regional-table-list tbody td{background:#fff}.regional-table-list tbody tr:nth-child(even)>*{background:#f7f9fa}.regional-table-list tbody .regional-comparison-row>*{background:#edf5ef;color:var(--navy);font-weight:800}.regional-table-notes{padding:8px 24px 18px;background:#fafbfc;border-top:1px solid var(--border)}.regional-table-notes p{font-size:.6875rem;line-height:1.7;margin:10px 0 0;overflow-wrap:anywhere}.regional-empty{padding:36px 28px;border:1px solid var(--border);background:var(--pale)}.regional-empty h3{font-size:1.35rem}.regional-empty p{font-size:.875rem}@media(max-width:1000px){.regional-explorer{grid-template-columns:190px minmax(0,1fr);gap:24px}.regional-search{padding:18px}}@media(max-width:760px){.regional-explorer{grid-template-columns:1fr;gap:24px}.regional-topics{position:static}.regional-topics nav{display:flex;gap:8px;flex-wrap:wrap;border:0}.regional-topics nav a{border:1px solid var(--border);padding:10px 12px;gap:10px}.regional-topics nav a[aria-current]{padding-left:10px}.regional-reading-note{display:none}.regional-report-meta{text-align:left}.regional-table-list summary{padding:18px 48px 18px 18px}.regional-table-heading{font-size:.875rem}.regional-table-list tbody th:first-child,.regional-table-list thead tr:first-child th:first-child{min-width:135px;max-width:165px}.regional-table-tools{padding:14px 18px}.regional-table-list caption{padding:18px}.regional-table-notes{padding:6px 18px 16px}}@media(max-width:440px){.regional-search-row{flex-wrap:wrap}.regional-search-row input{flex-basis:100%}.regional-search-row .button{width:100%;justify-content:center}.regional-table-tools{align-items:start}.regional-table-tools>span{max-width:150px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
