:root {
	--ohf-green: #0f5b3f;
	--ohf-green-dark: #063725;
	--ohf-green-deep: #031f16;
	--ohf-green-soft: #edf7f2;
	--ohf-blue: #dff2f7;
	--ohf-blue-strong: #1f7b97;
	--ohf-gold: #d6a21f;
	--ohf-gold-bright: #efc247;
	--ohf-ink: #17241e;
	--ohf-muted: #607268;
	--ohf-line: #d9e5df;
	--ohf-bg: #f7faf8;
	--ohf-white: #ffffff;
	--ohf-radius: 14px;
	--ohf-radius-sm: 8px;
	--ohf-shadow: 0 24px 70px rgba(3, 31, 22, 0.14);
	--ohf-shadow-soft: 0 14px 34px rgba(3, 31, 22, 0.08);
	--ohf-container: 1200px;
	--ohf-content: 780px;
	--ohf-header-height: 82px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--ohf-bg);
	color: var(--ohf-ink);
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	letter-spacing: 0;
	text-rendering: optimizeLegibility;
}
body.nav-open { overflow: hidden; }
img, svg { display: block; max-width: 100%; height: auto; }
img { background: var(--ohf-green-soft); }
button, input, textarea, select { font: inherit; letter-spacing: 0; }
a { color: var(--ohf-green); text-decoration-thickness: 0.08em; text-underline-offset: 0.18em; }
a:hover { color: var(--ohf-green-dark); }
:focus-visible { outline: 3px solid var(--ohf-gold-bright); outline-offset: 4px; }
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 0.75rem;
	color: inherit;
	font-family: "Fraunces", Georgia, serif;
	font-weight: 800;
	line-height: 1.06;
	letter-spacing: 0;
}
h1 { font-size: 2.85rem; }
h2 { font-size: 2.08rem; }
h3 { font-size: 1.22rem; }
p { margin: 0 0 1rem; }
address { font-style: normal; }
.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.screen-reader-text:focus,
.skip-link:focus {
	clip: auto;
	height: auto;
	left: 1rem;
	top: 1rem;
	width: auto;
	z-index: 100000;
	padding: 0.75rem 1rem;
	background: var(--ohf-white);
	color: var(--ohf-green-dark);
	border: 2px solid var(--ohf-green);
	border-radius: var(--ohf-radius-sm);
	box-shadow: var(--ohf-shadow);
}
.section-inner,
.site-header__inner,
.site-footer__main { width: min(100% - 2rem, var(--ohf-container)); margin-inline: auto; }
.section-kicker {
	margin: 0 0 0.7rem;
	color: var(--ohf-green);
	font-size: 0.78rem;
	font-weight: 900;
	line-height: 1.35;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
.section-heading { max-width: 780px; margin-bottom: 2.2rem; }
.section-heading p { color: var(--ohf-muted); font-size: 1.02rem; }
.section-heading--center { margin-inline: auto; text-align: center; }
.section-heading--split { display: grid; gap: 1rem; max-width: none; }
.section-panel { background: var(--ohf-white); }
.button,
.wp-block-button__link,
input[type="submit"] {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0.9rem 1.18rem;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: var(--ohf-radius-sm);
	background: var(--ohf-green);
	color: var(--ohf-white);
	font-family: "Inter", sans-serif;
	font-weight: 900;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}
.button:hover,
.wp-block-button__link:hover,
input[type="submit"]:hover { background: var(--ohf-green-dark); color: var(--ohf-white); }
.button--gold,
.footer-donate { background: var(--ohf-gold); color: #201604; }
.button--gold:hover,
.footer-donate:hover { background: var(--ohf-gold-bright); color: #201604; }
.button--light { background: var(--ohf-white); color: var(--ohf-green-dark); }
.button--light:hover { background: var(--ohf-blue); color: var(--ohf-green-dark); }
.button--outline { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.45); color: var(--ohf-white); }
.button--outline:hover { background: var(--ohf-white); border-color: var(--ohf-white); color: var(--ohf-green-dark); }
.button--ripple::after {
	content: "";
	position: absolute;
	inset: auto auto -42px -42px;
	width: 84px;
	height: 84px;
	border-radius: 50%;
	background: rgba(255,255,255,0.28);
	transform: scale(0);
}
.button--ripple:hover::after { transform: scale(5); opacity: 0; transition: transform 550ms ease, opacity 650ms ease; }
.text-link,
.program-card__link,
.footer-cta { display: inline-flex; align-items: center; min-height: 38px; font-weight: 900; color: var(--ohf-green); }
.program-card__link::after,
.text-link::after,
.footer-cta::after {
	content: "";
	width: 0.45rem;
	height: 0.45rem;
	margin-left: 0.45rem;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
}
.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: rgba(255,255,255,0.98);
	border-bottom: 1px solid rgba(217,229,223,0.95);
	box-shadow: 0 12px 34px rgba(3,31,22,0.08);
	transition: background-color 180ms ease, box-shadow 180ms ease, border-color 180ms ease, color 180ms ease;
}

/* Version 3.2.0: verified impact and accountability surfaces. */
.ohf-impact-dashboard,
.ohf-outreach-report-library,
.ohf-annual-report-center,
.ohf-report-single,
.ohf-annual-report-single,
.ohf-ghana-coverage,
.ohf-coverage-layout,
.ohf-report-card,
.ohf-report-card__body,
.ohf-chart-card,
.ohf-topic-grid > *,
.ohf-report-grid > * { min-width: 0; }

.ohf-impact-verification-note { grid-column: 1 / -1; max-width: 70rem; }
.impact-card__period { display: block; margin-top: 0.65rem; color: var(--ohf-muted); font-size: 0.84rem; font-weight: 750; overflow-wrap: anywhere; }
.hero-stat-card--empty { grid-column: 1 / -1; }
.hero-stat-card--empty strong { font-size: clamp(1.1rem, 3vw, 1.55rem); }

.ohf-report-filters { grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr)); align-items: end; }
.ohf-report-filters label { display: grid; gap: 0.35rem; min-width: 0; font-weight: 800; }
.ohf-report-filters input,
.ohf-report-filters select { width: 100%; min-width: 0; }
.ohf-report-filters .button { width: 100%; white-space: normal; }
.ohf-report-results .navigation.pagination { margin-top: 2rem; }

.ohf-status-badge { display: inline-flex; max-width: 100%; margin: 0 0.65rem 0.75rem 0; padding: 0.3rem 0.65rem; border-radius: 999px; background: var(--ohf-green-soft); color: var(--ohf-green-dark); font-size: 0.78rem; font-weight: 850; overflow-wrap: anywhere; }
.ohf-outreach-report-card .text-link { display: inline-flex; }

.ohf-report-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); }
.ohf-report-card { display: grid; overflow: hidden; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-report-card--featured { margin-bottom: 2.5rem; }
.ohf-report-card__cover { display: block; overflow: hidden; background: var(--ohf-green-soft); }
.ohf-report-card__cover img { width: 100%; height: 100%; max-height: 30rem; object-fit: cover; }
.ohf-report-card__body { padding: clamp(1rem, 3vw, 1.5rem); }
.ohf-report-card__body h3 { overflow-wrap: anywhere; }
.ohf-file-meta { color: var(--ohf-muted); font-size: 0.88rem; font-weight: 750; overflow-wrap: anywhere; }
.ohf-card-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; }
.ohf-card-actions .button { white-space: normal; text-align: center; }

.ohf-report-single,
.ohf-annual-report-single { display: grid; gap: clamp(2rem, 5vw, 4rem); }
.ohf-report-facts { display: grid; gap: 0.75rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); margin-bottom: 1.5rem; }
.ohf-report-facts > div { padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); }
.ohf-report-facts strong,
.ohf-report-facts span { display: block; overflow-wrap: anywhere; }
.ohf-report-facts span { margin-top: 0.35rem; color: var(--ohf-muted); }
.ohf-report-section,
.ohf-report-download,
.ohf-report-support-cta { padding: clamp(1rem, 4vw, 2rem); border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); overflow-wrap: anywhere; }
.ohf-report-download { background: var(--ohf-green-soft); }
.ohf-report-support-cta { color: var(--ohf-white); background: var(--ohf-green-dark); }
.ohf-report-support-cta h2 { color: var(--ohf-white); }
.ohf-report-gallery { display: grid; gap: 0.75rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); }
.ohf-report-gallery figure { margin: 0; overflow: hidden; border-radius: var(--ohf-radius-sm); }
.ohf-report-gallery img { width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.ohf-annual-report-lead { display: grid; gap: 1.5rem; align-items: start; }
.ohf-annual-report-cover { margin: 0; overflow: hidden; border-radius: var(--ohf-radius); box-shadow: var(--ohf-shadow); }

.ohf-topic-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); }
.ohf-topic-grid > article { padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); overflow-wrap: anywhere; }
.ohf-accountability-grid,
.ohf-accountability-links,
.ohf-financial-summaries { margin-block: 2.5rem; }

.ohf-table-wrap { width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
.ohf-table-wrap table { width: 100%; min-width: 36rem; border-collapse: collapse; }
.ohf-table-wrap caption { padding: 0.75rem 0; color: var(--ohf-ink); font-weight: 850; text-align: left; }
.ohf-table-wrap th,
.ohf-table-wrap td { padding: 0.75rem; border-bottom: 1px solid var(--ohf-line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.ohf-chart-table { margin-top: 0.8rem; }
.ohf-chart-table summary { cursor: pointer; color: var(--ohf-green-dark); font-weight: 850; }
.ohf-chart-card { overflow: hidden; }
.ohf-chart { max-width: 100%; overflow: hidden; }
.ohf-chart svg { display: block; max-width: 100%; }
.ohf-chart-alternative { color: var(--ohf-muted); font-size: 0.9rem; }

.ohf-coverage-layout { display: grid; gap: 1.5rem; align-items: start; }
.ohf-coverage-map { display: grid; gap: 0.65rem; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: clamp(0.75rem, 3vw, 1.25rem); border-radius: var(--ohf-radius); background: linear-gradient(145deg, var(--ohf-green-soft), var(--ohf-blue)); }
.ohf-coverage-region { display: grid; gap: 0.3rem; min-width: 0; padding: 0.8rem; border: 1px solid rgba(15,91,63,0.18); border-radius: var(--ohf-radius-sm); background: rgba(255,255,255,0.82); color: var(--ohf-ink); text-decoration: none; overflow-wrap: anywhere; }
.ohf-coverage-region span { color: var(--ohf-muted); font-size: 0.78rem; font-weight: 700; }
.ohf-coverage-region.is-active { background: var(--ohf-green); color: var(--ohf-white); }
.ohf-coverage-region.is-active span { color: rgba(255,255,255,0.86); }
.ohf-coverage-region.is-active:hover { background: var(--ohf-green-dark); transform: translateY(-2px); }
.ohf-coverage-alternative { padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); }
.ohf-coverage-alternative ul { margin: 0; padding-left: 1.2rem; }
.ohf-coverage-alternative li { margin-bottom: 0.55rem; overflow-wrap: anywhere; }

@media (min-width: 48rem) {
	.ohf-report-card--featured { grid-template-columns: minmax(15rem, 0.7fr) minmax(0, 1.3fr); }
	.ohf-annual-report-lead { grid-template-columns: minmax(14rem, 0.55fr) minmax(0, 1.45fr); }
	.ohf-coverage-map { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.ohf-coverage-layout { grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr); }
}

@media (max-width: 30rem) {
	.ohf-coverage-map { grid-template-columns: 1fr; }
	.ohf-chart-bar { grid-template-columns: minmax(0, 1fr); }
	.ohf-table-wrap table { min-width: 32rem; }
	.ohf-card-actions > * { width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
	.ohf-coverage-region,
	.ohf-chart-bar__fill { transition: none !important; }
	.ohf-coverage-region.is-active:hover { transform: none; }
}
.admin-bar .site-header { top: 32px; }
.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) {
	background: linear-gradient(180deg, rgba(3,31,22,0.72), rgba(3,31,22,0));
	border-bottom-color: transparent;
	box-shadow: none;
}
.site-header__inner {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.75rem;
	min-height: var(--ohf-header-height);
	padding-block: 0.65rem;
}
.site-branding { min-width: 0; }
.site-branding__text { display: inline-flex; align-items: center; gap: 0.72rem; max-width: 100%; color: var(--ohf-green-dark); text-decoration: none; }
.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .site-branding__text,
.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu a,
.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .menu-toggle { color: var(--ohf-white); }
.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .site-description { color: rgba(255,255,255,0.76); }
.site-branding__mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background: var(--ohf-green);
	color: var(--ohf-white);
	font-weight: 950;
	box-shadow: 0 12px 24px rgba(15,91,63,0.25);
}
.site-title { display: block; font-family: "Inter", sans-serif; font-size: 1rem; font-weight: 950; line-height: 1.1; }
.site-description { display: block; max-width: 280px; color: var(--ohf-muted); font-size: 0.78rem; line-height: 1.3; }
.custom-logo-link img { width: auto; max-width: 218px; max-height: 58px; background: transparent; }
.site-header__actions { display: inline-flex; align-items: center; gap: 0.55rem; }
.menu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 5px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid rgba(217,229,223,0.72);
	border-radius: var(--ohf-radius-sm);
	background: rgba(255,255,255,0.9);
	color: var(--ohf-green-dark);
	cursor: pointer;
}
.menu-toggle__bar { width: 20px; height: 2px; border-radius: 999px; background: currentColor; }
.site-navigation {
	position: absolute;
	top: calc(100% + 1px);
	left: 0;
	right: 0;
	display: none;
	padding: 0.8rem 1rem 1rem;
	background: var(--ohf-white);
	border: 1px solid var(--ohf-line);
	border-top: 0;
	border-radius: 0 0 var(--ohf-radius) var(--ohf-radius);
	box-shadow: var(--ohf-shadow);
}
.site-header.is-open .site-navigation,
.site-navigation.is-open { display: block; }
.primary-menu,
.footer-menu { list-style: none; margin: 0; padding: 0; }
.primary-menu { display: flex; flex-direction: column; gap: 0.12rem; }
.primary-menu a { display: flex; align-items: center; min-height: 44px; padding: 0.65rem 0; color: var(--ohf-ink); font-weight: 800; text-decoration: none; }
.primary-menu a:hover { color: var(--ohf-green); }
.primary-menu .menu-donate-link { justify-content: center; margin-top: 0.35rem; padding: 0.72rem 1rem; border-radius: var(--ohf-radius-sm); background: var(--ohf-gold); color: #201604; }
.hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 100svh;
	overflow: hidden;
	background: var(--ohf-green-deep);
	color: var(--ohf-white);
	isolation: isolate;
}
.hero__image,
.page-hero__image,
.donation-band__image { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.hero__overlay {
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgba(3,31,22,0.93) 0%, rgba(3,31,22,0.78) 48%, rgba(3,31,22,0.38) 100%);
}
.hero__content { width: min(100% - 2rem, var(--ohf-container)); margin-inline: auto; padding-block: calc(var(--ohf-header-height) + 4rem) 4rem; }
.hero__content--split { display: grid; gap: 2rem; align-items: center; }
.hero__copy { max-width: 760px; }
.hero .section-kicker,
.donation-band .section-kicker { color: var(--ohf-gold-bright); }
.hero h1 { max-width: 900px; font-size: 2.75rem; }
.hero__lead { max-width: 720px; color: rgba(255,255,255,0.92); font-size: 1.08rem; }
.hero__actions,
.donation-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.6rem; }
.hero-stat-panel { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.85rem; max-width: 520px; }
.hero-stat-card {
	padding: 1rem;
	border: 1px solid rgba(255,255,255,0.2);
	border-radius: var(--ohf-radius);
	background: rgba(255,255,255,0.12);
	box-shadow: 0 18px 60px rgba(0,0,0,0.18);
	backdrop-filter: blur(14px);
}
.hero-stat-card__icon,
.impact-card__icon,
.why-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 12px; background: var(--ohf-blue); color: var(--ohf-green-dark); }
.hero-stat-card__icon { background: rgba(239,194,71,0.2); color: var(--ohf-gold-bright); }
.hero-stat-card svg,
.impact-card__icon svg,
.why-card__icon svg { width: 23px; height: 23px; fill: currentColor; }
.hero-stat-card strong { display: block; margin-top: 0.8rem; font-size: 1.15rem; font-weight: 950; line-height: 1.15; }
.hero-stat-card span:last-child { display: block; margin-top: 0.25rem; color: rgba(255,255,255,0.78); font-size: 0.86rem; font-weight: 800; }
.impact-section,
.programs-section,
.why-section,
.featured-section,
.stories-section,
.news-section,
.partners-logo-section,
.newsletter-section,
.content-section,
.volunteer-band { padding-block: 4.5rem; }
.impact-section { background: linear-gradient(180deg, var(--ohf-bg), var(--ohf-white)); }
.impact-grid,
.program-grid,
.post-grid,
.why-grid,
.story-grid { display: grid; gap: 1rem; }
.impact-card,
.program-card,
.post-card,
.why-card,
.story-card,
.widget,
.no-results,
.newsletter-panel {
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.impact-card { position: relative; padding: 1.3rem; overflow: hidden; }
.impact-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, var(--ohf-green), var(--ohf-blue-strong), var(--ohf-gold)); }
.impact-card__value { display: block; margin-top: 1rem; color: var(--ohf-green); font-size: 1.75rem; font-weight: 950; line-height: 1; }
.impact-card__label { display: block; margin-top: 0.45rem; color: var(--ohf-ink); font-weight: 900; line-height: 1.35; }
.impact-card p { margin: 0.65rem 0 0; color: var(--ohf-muted); font-size: 0.94rem; }
.program-card,
.post-card { overflow: hidden; }
.program-card__media,
.post-card__media,
.post-card > img { display: block; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; background: var(--ohf-blue); }
.program-card__media img,
.post-card__media img,
.post-card > img { width: 100%; height: 100%; object-fit: cover; }
.program-card__body,
.post-card__body { padding: 1.3rem; }
.program-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; margin-top: -3rem; margin-bottom: 1rem; border: 4px solid var(--ohf-white); border-radius: 14px; background: var(--ohf-green); color: var(--ohf-white); box-shadow: 0 14px 30px rgba(7,59,42,0.2); }
.program-card__icon svg { width: 26px; height: 26px; fill: currentColor; }
.program-card h3 a,
.post-card h3 a { color: var(--ohf-ink); text-decoration: none; }
.program-card h3 a:hover,
.post-card h3 a:hover { color: var(--ohf-green); }
.program-card p,
.post-card p { color: var(--ohf-muted); }
.why-section { background: var(--ohf-green-deep); color: var(--ohf-white); }
.why-section .section-kicker { color: var(--ohf-gold-bright); }
.why-section .section-heading p,
.why-card p { color: rgba(255,255,255,0.76); }
.why-card { padding: 1.35rem; background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.14); box-shadow: none; }
.why-card__icon { margin-bottom: 1rem; background: rgba(239,194,71,0.16); color: var(--ohf-gold-bright); }
.story-card { padding: 1.35rem; background: linear-gradient(180deg, var(--ohf-white), var(--ohf-green-soft)); }
.story-card__label { margin-bottom: 0.75rem; color: var(--ohf-green); font-weight: 950; text-transform: uppercase; font-size: 0.78rem; letter-spacing: 0.08em; }
.entry-meta { margin-bottom: 0.6rem; color: var(--ohf-muted); font-size: 0.88rem; font-weight: 800; }
.ohf-media-center { display: grid; gap: 2.5rem; margin-block: 2rem; }
.entry-content .ohf-media-center,
.entry-content .ohf-newsroom,
.entry-content .ohf-download-center,
.entry-content .ohf-media-kit,
.entry-content .ohf-video-library,
.entry-content .ohf-photo-library,
.entry-content .ohf-success-stories { width: min(100vw - 2rem, var(--ohf-container)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.ohf-media-nav { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1.5rem; padding: 0.6rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-media-nav a { display: inline-flex; align-items: center; min-height: 38px; padding: 0.55rem 0.75rem; border-radius: var(--ohf-radius-sm); background: var(--ohf-bg); color: var(--ohf-green-dark); font-size: 0.9rem; font-weight: 900; text-decoration: none; }
.ohf-media-nav a:hover { background: var(--ohf-blue); color: var(--ohf-green-dark); }
.ohf-media-spotlight,
.ohf-media-kit__panel,
.ohf-video-feature,
.ohf-newsletter-signup,
.ohf-featured-article { display: grid; gap: 1.2rem; align-items: center; padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-media-spotlight { background: linear-gradient(135deg, var(--ohf-white), var(--ohf-blue)); }
.ohf-media-center__group { display: grid; gap: 1rem; }
.ohf-media-center__header { display: grid; gap: 0.6rem; align-items: end; }
.ohf-media-center__header h3 { margin-bottom: 0.2rem; }
.ohf-media-center__header p { max-width: 720px; color: var(--ohf-muted); }
.ohf-media-center__empty { margin: 0; padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); color: var(--ohf-muted); box-shadow: var(--ohf-shadow-soft); }
.ohf-reading-progress { position: fixed; top: var(--ohf-header-height); left: 0; right: 0; z-index: 999; height: 4px; background: rgba(15,91,63,0.12); }
.admin-bar .ohf-reading-progress { top: calc(var(--ohf-header-height) + 32px); }
.ohf-reading-progress span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, var(--ohf-green), var(--ohf-gold)); }
.ohf-article-tools,
.ohf-article-footer,
.ohf-related-media { margin-block: 1.5rem; padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-article-tools__meta { display: flex; flex-wrap: wrap; gap: 0.5rem; color: var(--ohf-muted); font-size: 0.88rem; font-weight: 900; }
.ohf-article-tools__meta span { display: inline-flex; align-items: center; min-height: 30px; padding: 0.28rem 0.55rem; border-radius: 999px; background: var(--ohf-green-soft); }
.ohf-article-tools__subtitle { margin-top: 0.85rem; color: var(--ohf-green-dark); font-size: 1.1rem; font-weight: 800; }
.ohf-share { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: center; margin-top: 1rem; }
.ohf-share span { color: var(--ohf-muted); font-size: 0.85rem; font-weight: 950; text-transform: uppercase; letter-spacing: 0.08em; }
.ohf-share a { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 0.42rem 0.62rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-bg); color: var(--ohf-green-dark); font-size: 0.86rem; font-weight: 900; text-decoration: none; }
.ohf-share a:hover { background: var(--ohf-green); color: var(--ohf-white); }
.ohf-article-footer { display: grid; gap: 0.75rem; }
.ohf-featured-article { margin-bottom: 2rem; overflow: hidden; padding: 0; }
.ohf-featured-article__media { display: block; min-height: 260px; background: var(--ohf-blue); }
.ohf-featured-article__media img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; }
.ohf-featured-article__body { padding: 1.25rem; }
.ohf-featured-article h2 a { color: var(--ohf-ink); text-decoration: none; }
.ohf-newsroom__filters,
.ohf-download-center .ohf-filter-form,
.ohf-video-library .ohf-filter-form,
.ohf-success-stories .ohf-filter-form { margin-bottom: 1.5rem; }
.ohf-download-list { display: grid; gap: 0.85rem; }
.ohf-download-card { display: grid; gap: 1rem; align-items: center; padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-download-card h3 { margin-bottom: 0.35rem; }
.ohf-media-kit { display: grid; gap: 1.5rem; }
.ohf-media-kit__logo { display: flex; align-items: center; justify-content: center; min-height: 150px; padding: 1rem; border: 1px dashed var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-bg); color: var(--ohf-green); font-size: 2rem; font-weight: 950; }
.ohf-media-kit__logo img { max-height: 120px; background: transparent; }
.ohf-media-kit__grid { display: grid; gap: 1rem; }
.ohf-media-kit__grid section { padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-brand-swatches { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; }
.ohf-brand-swatches span { display: flex; align-items: end; min-height: 74px; padding: 0.55rem; border-radius: var(--ohf-radius-sm); background: var(--swatch); color: #fff; font-size: 0.82rem; font-weight: 950; box-shadow: inset 0 0 0 1px rgba(0,0,0,0.08); }
.ohf-brand-swatches span:nth-child(2) { color: var(--ohf-green-dark); }
.ohf-video-feature { margin-bottom: 1.5rem; }
.ohf-video-frame { position: relative; overflow: hidden; aspect-ratio: 16 / 9; border-radius: var(--ohf-radius); background: var(--ohf-green-deep); }
.ohf-video-frame iframe,
.ohf-video-player { width: 100%; height: 100%; border: 0; }
.ohf-video-player { aspect-ratio: 16 / 9; border-radius: var(--ohf-radius); background: var(--ohf-green-deep); }
.ohf-video-caption-note { margin: 0.55rem 0 0; color: var(--ohf-muted); font-size: 0.9rem; font-weight: 800; }
.ohf-newsletter-signup { margin-top: 2rem; background: linear-gradient(135deg, var(--ohf-green-soft), var(--ohf-white)); }
.ohf-newsletter-form { display: grid; gap: 0.65rem; }
.donation-band { position: relative; isolation: isolate; overflow: hidden; padding-block: 5rem; background: var(--ohf-green-deep); color: var(--ohf-white); }
.donation-band__overlay { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(3,31,22,0.92), rgba(3,31,22,0.72)); }
.donation-layout--center { display: grid; justify-items: start; max-width: 760px; margin-inline: auto; text-align: left; }
.donation-band p { color: rgba(255,255,255,0.9); font-size: 1.05rem; }
.logo-slider { overflow: hidden; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.logo-track { display: flex; gap: 1rem; min-width: max-content; padding: 1rem; }
.partner-logo { display: inline-flex; align-items: center; justify-content: center; min-width: 190px; min-height: 96px; padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); color: var(--ohf-muted); font-weight: 900; text-align: center; text-decoration: none; filter: grayscale(1); opacity: 0.72; }
.partner-logo:hover { filter: grayscale(0); opacity: 1; color: var(--ohf-green); }
.partner-logo img { max-height: 58px; width: auto; object-fit: contain; background: transparent; }
.newsletter-section { background: var(--ohf-bg); }
.newsletter-panel { display: grid; gap: 1.25rem; align-items: center; padding: 1.5rem; background: linear-gradient(135deg, var(--ohf-white), var(--ohf-blue)); }
.newsletter-form { display: grid; gap: 0.65rem; }
.search-form { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; }
.search-form label { flex: 1 1 220px; }
.search-field,
.newsletter-form input,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="search"],
textarea { width: 100%; min-height: 46px; padding: 0.82rem 0.92rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); color: var(--ohf-ink); }
textarea { min-height: 150px; }
.page-hero { position: relative; isolation: isolate; background: var(--ohf-green-soft); }
.page-hero--compact { padding-block: calc(var(--ohf-header-height) + 3rem) 4.5rem; }
.page-hero--image { display: flex; align-items: end; min-height: 480px; overflow: hidden; color: var(--ohf-white); }
.page-hero--image .page-hero__content { padding-block: calc(var(--ohf-header-height) + 4rem) 4rem; }
.page-hero--image .hero__overlay { background: linear-gradient(90deg, rgba(3,31,22,0.88), rgba(3,31,22,0.55)); }
.page-hero--image .hero__lead { color: rgba(255,255,255,0.92); }
.page-hero--image .section-kicker { color: var(--ohf-gold-bright); }
.page-hero h1 { max-width: 860px; }
.archive-description { max-width: 720px; color: var(--ohf-muted); }
.content-layout { width: min(100% - 2rem, var(--ohf-content)); margin-inline: auto; }
.content-layout--with-sidebar { width: min(100% - 2rem, var(--ohf-container)); display: grid; gap: 2rem; }
.entry-content > * { margin-top: 0; margin-bottom: 1.25rem; }
.entry-content > :last-child { margin-bottom: 0; }
.entry-content h2,
.entry-content h3,
.entry-content h4 { margin-top: 2rem; }
.entry-content ul,
.entry-content ol { padding-left: 1.4rem; }
.entry-content blockquote { margin-inline: 0; padding: 1rem 1.25rem; border-left: 4px solid var(--ohf-green); background: var(--ohf-green-soft); }
.entry-content .alignwide { width: min(100vw - 2rem, var(--ohf-container)); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.entry-content .alignfull { width: 100vw; max-width: none; margin-left: 50%; transform: translateX(-50%); }
.entry-featured-image { margin: 0 0 2rem; }
.entry-featured-image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--ohf-radius); }
.page-links,
.post-navigation,
.posts-navigation,
.pagination { margin-top: 2rem; }
.nav-links { display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: space-between; }
.nav-subtitle { display: block; color: var(--ohf-muted); font-size: 0.85rem; font-weight: 800; }
.nav-title { display: block; font-weight: 900; }
.widget,
.no-results,
.comments-area { padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); }
.widget + .widget { margin-top: 1rem; }
.widget-title,
.comments-title { font-size: 1.2rem; }
.comment-list { padding-left: 1.25rem; }
.comment-form { display: grid; gap: 1rem; }
.site-footer { background: var(--ohf-green-deep); color: rgba(255,255,255,0.88); }
.site-footer a { color: var(--ohf-white); }
.site-footer__main { padding-block: 4rem 1.5rem; }
.footer-grid { display: grid; gap: 2rem; }
.footer-heading { margin-bottom: 0.85rem; color: var(--ohf-white); font-family: "Inter", sans-serif; font-size: 1.02rem; font-weight: 950; }
.footer-column p { color: rgba(255,255,255,0.82); }
.footer-menu { display: grid; gap: 0.4rem; }
.footer-menu a { display: inline-flex; min-height: 34px; text-decoration: none; }
.footer-menu a:hover,
.footer-cta:hover { color: var(--ohf-gold-bright); }
.footer-donate { margin-top: 1rem; }
.site-footer__bottom { display: grid; gap: 0.5rem; margin-top: 2.5rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,0.16); font-size: 0.9rem; }
.site-footer__bottom p { margin: 0; }

.footer-heading--secondary { margin-top: 1.6rem; }
.footer-social { display: flex; flex-wrap: wrap; gap: 0.55rem; margin-top: 1rem; }
.footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid rgba(255,255,255,0.2); border-radius: 50%; background: rgba(255,255,255,0.08); color: var(--ohf-white); font-size: 0.8rem; font-weight: 950; text-decoration: none; }
.footer-social a:hover { background: var(--ohf-gold); color: #201604; }
.footer-social-note { margin-top: 1rem; max-width: 26rem; color: rgba(255,255,255,0.72); font-size: 0.92rem; }
.footer-newsletter { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.5rem; margin-top: 0.8rem; }
.footer-newsletter input { min-width: 0; min-height: 42px; border-color: rgba(255,255,255,0.2); background: rgba(255,255,255,0.08); color: var(--ohf-white); }
.footer-newsletter input::placeholder { color: rgba(255,255,255,0.68); }
.footer-newsletter button { min-height: 42px; padding: 0.65rem 0.85rem; border: 0; border-radius: var(--ohf-radius-sm); background: var(--ohf-gold); color: #201604; font-weight: 950; cursor: pointer; }
.footer-newsletter button:hover { background: var(--ohf-gold-bright); }
@media (max-width: 430px) { .footer-newsletter { grid-template-columns: 1fr; } }

.wp-block-image img,
.wp-block-cover,
.wp-block-media-text { border-radius: var(--ohf-radius); }
.wp-block-cover { padding: 2rem; }
.wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table th,
.wp-block-table td { padding: 0.75rem; border: 1px solid var(--ohf-line); }
.reveal-up,
.reveal-left { opacity: 1; transform: none; }
@media (min-width: 560px) {
	.impact-grid,
	.why-grid,
	.story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-footer__bottom { grid-template-columns: 1fr auto; align-items: center; }
}
@media (min-width: 700px) {
	h1 { font-size: 3.55rem; }
	h2 { font-size: 2.65rem; }
	.hero h1 { font-size: 4.35rem; }
	.hero__lead { font-size: 1.2rem; }
	.section-heading--split { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
	.ohf-media-center__header { grid-template-columns: minmax(0, 1fr) auto; }
	.ohf-media-spotlight,
	.ohf-media-kit__panel,
	.ohf-video-feature,
	.ohf-newsletter-signup,
	.ohf-download-card { grid-template-columns: minmax(0, 1fr) auto; }
	.ohf-featured-article { grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.85fr); }
	.ohf-featured-article__media,
	.ohf-featured-article__media img { min-height: 100%; }
	.ohf-media-kit__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.program-grid,
	.post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.newsletter-panel { grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr); padding: 2rem; }
}
@media (min-width: 860px) {
	.content-layout--with-sidebar { grid-template-columns: minmax(0, 1fr) minmax(280px, 0.48fr); }
	.content-layout__sidebar { position: sticky; top: 110px; align-self: start; }
}
@media (min-width: 980px) {
	.site-header__inner { grid-template-columns: minmax(230px, auto) minmax(0, 1fr) auto; }
	.menu-toggle { display: none; }
	body.nav-open { overflow: auto; }
	.site-navigation { position: static; display: block; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
	.primary-menu { flex-direction: row; align-items: center; justify-content: center; gap: 0.1rem; }
	.primary-menu a { padding: 0.6rem 0.62rem; font-size: 0.92rem; }
	.primary-menu .menu-donate-link { margin-top: 0; margin-left: 0.25rem; padding-inline: 0.9rem; }
	.hero__content--split { grid-template-columns: minmax(0, 1fr) minmax(360px, 0.48fr); }
	.program-grid--six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.footer-grid { grid-template-columns: 1.25fr 0.9fr 1fr 1fr; }
}
@media (min-width: 1120px) {
	.impact-grid,
	.why-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.primary-menu a { padding-inline: 0.78rem; }
}
@media (max-width: 600px) {
	.admin-bar .site-header { top: 0; }
}
@media (max-width: 430px) {
	.site-header__inner { width: min(100% - 1rem, var(--ohf-container)); gap: 0.45rem; }
	.site-description { display: none; }
	.hero__content { padding-block: calc(var(--ohf-header-height) + 3rem) 3.25rem; }
	.hero h1 { font-size: 2.35rem; }
	.hero-stat-panel { grid-template-columns: 1fr; }
	.button,
	.wp-block-button__link { width: 100%; }
	.hero__actions,
	.donation-actions { width: 100%; }
}
@media (prefers-reduced-motion: no-preference) {
	.button,
	.wp-block-button__link,
	.primary-menu a,
	.program-card,
	.post-card,
	.why-card,
	.story-card,
	.impact-card,
	.program-card__media img,
	.post-card__media img,
	.partner-logo { transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease, filter 180ms ease, opacity 180ms ease; }
	.program-card:hover,
	.post-card:hover,
	.why-card:hover,
	.story-card:hover,
	.impact-card:hover { transform: translateY(-5px); box-shadow: var(--ohf-shadow); }
	.program-card:hover .program-card__media img,
	.post-card:hover .post-card__media img { transform: scale(1.035); }
	.reveal-up,
	.reveal-left { opacity: 0; transition: opacity 650ms ease, transform 650ms ease; }
	.reveal-up { transform: translateY(24px); }
	.reveal-left { transform: translateX(26px); }
	.reveal-up.is-visible,
	.reveal-left.is-visible { opacity: 1; transform: none; }
	.logo-track { animation: ohf-logo-scroll 28s linear infinite; }
	.logo-slider:hover .logo-track { animation-play-state: paused; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}
@keyframes ohf-logo-scroll {
	from { transform: translateX(0); }
	to { transform: translateX(-18%); }
}


/* Platform management components */
.platform-details { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid var(--ohf-line); }
.platform-details__grid { display: grid; gap: 1rem; }
.platform-detail { padding: 1.2rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.platform-detail h3 { margin-bottom: 0.45rem; font-family: "Inter", sans-serif; font-size: 0.95rem; color: var(--ohf-green); }
.platform-detail ul { margin: 0; padding-left: 1.1rem; }
.ohf-filter-form { display: grid; gap: 0.75rem; margin-bottom: 2rem; padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-map { display: grid; gap: 1.25rem; margin-bottom: 3rem; }
.ohf-map__visual { display: grid; gap: 0.65rem; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: linear-gradient(135deg, var(--ohf-green-soft), var(--ohf-blue)); }
.ohf-map__region { min-height: 68px; padding: 0.85rem; border: 1px solid rgba(15,91,63,0.18); border-radius: var(--ohf-radius-sm); background: rgba(255,255,255,0.8); color: var(--ohf-green-dark); font-weight: 900; cursor: pointer; text-align: left; }
.ohf-map__region:hover,
.ohf-map__region.is-active { background: var(--ohf-green); color: var(--ohf-white); transform: translateY(-2px); }
.ohf-map__panel { padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-map__panel h3 { margin-bottom: 1rem; }
.ohf-map-list { display: grid; gap: 0.8rem; margin: 0; padding: 0; list-style: none; }
.ohf-map-list li { padding: 0.8rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-bg); }
.ohf-map-meta { color: var(--ohf-muted); font-size: 0.9rem; font-weight: 700; }
.ohf-map-photos { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-top: 1rem; }
.ohf-map-photos img { width: 92px; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--ohf-radius-sm); }
.ohf-lightbox { position: fixed; inset: 0; z-index: 10000; display: none; place-items: center; padding: 1rem; background: rgba(3,31,22,0.88); }
.ohf-lightbox.is-open { display: grid; }
.ohf-lightbox img { max-width: min(100%, 1100px); max-height: 84vh; border-radius: var(--ohf-radius); background: var(--ohf-white); }
.ohf-lightbox button { position: absolute; top: 1rem; right: 1rem; width: 44px; height: 44px; border: 0; border-radius: 50%; background: var(--ohf-white); color: var(--ohf-green-dark); font-weight: 950; cursor: pointer; }
.report-grid .post-card,
.gallery-grid .post-card { min-height: 100%; }
@media (min-width: 700px) {
	.platform-details__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ohf-filter-form { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
	.ohf-map { grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.65fr); align-items: start; }
}


/* Phase 3 fundraising and engagement forms */
.ohf-form-shell { display: grid; gap: 1.25rem; margin-top: 2rem; }
.ohf-form-intro { padding: 1.35rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: linear-gradient(135deg, var(--ohf-white), var(--ohf-green-soft)); box-shadow: var(--ohf-shadow-soft); }
.ohf-form-intro h2 { max-width: 760px; }
.ohf-form-intro p:last-child { margin-bottom: 0; color: var(--ohf-muted); }
.ohf-form { display: grid; gap: 1.15rem; width: 100%; padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-form-required-note { margin: 0; color: var(--ohf-muted); font-size: 0.9rem; font-weight: 750; }
.ohf-form-grid { display: grid; gap: 1rem; }
.ohf-form-field { display: grid; gap: 0.38rem; color: var(--ohf-ink); font-weight: 850; }
.ohf-form-field span,
.ohf-fieldset legend { color: var(--ohf-green-dark); font-size: 0.94rem; font-weight: 950; }
.ohf-required-marker { color: #842f23; }
.ohf-form-field .ohf-optional-marker,
.ohf-fieldset .ohf-optional-marker { color: var(--ohf-muted); font-weight: 700; }
.newsletter-form,
.footer-newsletter,
.ohf-newsletter-form { position: relative; }
.ohf-compact-required-marker { position: absolute; z-index: 1; inset-block-start: 0.72rem; inset-inline-start: 0.55rem; line-height: 1; }
.newsletter-form input[type="email"],
.footer-newsletter input[type="email"],
.ohf-newsletter-form input[type="email"] { padding-inline-start: 1.45rem; }
.footer-newsletter .ohf-compact-required-marker { color: var(--ohf-gold-bright); }
.ohf-form-field small { color: var(--ohf-muted); font-size: 0.84rem; font-weight: 700; }
.ohf-form-field--full { grid-column: 1 / -1; }
.ohf-form-field--compact { max-width: 260px; margin-top: 0.8rem; }
.ohf-form input[type="text"],
.ohf-form input[type="email"],
.ohf-form input[type="url"],
.ohf-form input[type="number"],
.ohf-form input[type="file"],
.ohf-form select,
.ohf-form textarea { width: 100%; min-height: 48px; padding: 0.82rem 0.92rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); color: var(--ohf-ink); font-weight: 650; }
.ohf-form input[type="file"] { padding: 0.68rem; }
.ohf-form input,
.ohf-form select,
.ohf-form textarea { scroll-margin-block-start: calc(var(--ohf-header-height) + 2rem); }
.ohf-form select { appearance: auto; }
.ohf-form textarea { min-height: 144px; resize: vertical; }
.ohf-fieldset { min-width: 0; margin: 0; padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-bg); }
.ohf-choice-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); gap: 0.75rem; margin-top: 0.75rem; }
.ohf-choice-card { display: flex; align-items: center; gap: 0.55rem; min-height: 58px; padding: 0.85rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); color: var(--ohf-green-dark); font-weight: 950; cursor: pointer; }
.ohf-choice-card input { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; accent-color: var(--ohf-green); }
.ohf-choice-card:has(input:checked) { border-color: var(--ohf-green); background: var(--ohf-green-soft); box-shadow: inset 0 0 0 1px var(--ohf-green); }
.ohf-choice-card:has(input:focus-visible) { outline: 3px solid var(--ohf-gold-bright); outline-offset: 3px; }
.ohf-checkbox { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 0.6rem; color: var(--ohf-muted); font-weight: 760; }
.ohf-checkbox input { width: 1.1rem; height: 1.1rem; margin-top: 0.25rem; accent-color: var(--ohf-green); }
.ohf-checkbox > span:not(.ohf-field-error) { flex: 1 1 12rem; }
.ohf-checkbox .ohf-field-error { flex: 0 0 100%; padding-inline-start: 1.7rem; }
.ohf-field-error { display: block; width: 100%; color: #842f23; font-size: 0.86rem; font-weight: 850; line-height: 1.45; }
.ohf-form [aria-invalid="true"],
.newsletter-form [aria-invalid="true"],
.footer-newsletter [aria-invalid="true"],
.ohf-newsletter-form [aria-invalid="true"] { border-color: #842f23; box-shadow: 0 0 0 2px rgba(132,47,35,0.14); }
.newsletter-form .ohf-field-error,
.footer-newsletter .ohf-field-error,
.ohf-newsletter-form .ohf-field-error { grid-column: 1 / -1; }
.ohf-form-notice { display: flex; align-items: flex-start; gap: 0.75rem; width: 100%; padding: 1rem; border-radius: var(--ohf-radius-sm); box-shadow: var(--ohf-shadow-soft); font-weight: 850; line-height: 1.55; overflow-wrap: anywhere; scroll-margin-block-start: calc(var(--ohf-header-height) + 2rem); }
.ohf-form-notice:focus { outline: 3px solid var(--ohf-gold-bright); outline-offset: 4px; }
.ohf-form-notice__icon { display: inline-grid; flex: 0 0 1.65rem; place-items: center; width: 1.65rem; height: 1.65rem; margin-top: 0.05rem; border-radius: 50%; font-size: 0.9rem; font-weight: 950; line-height: 1; }
.ohf-form-notice__content { flex: 1 1 auto; min-width: 0; }
.ohf-form-notice__summary { margin: 0.55rem 0 0; padding-inline-start: 1.25rem; }
.ohf-form-notice__summary a { color: inherit; text-decoration: underline; text-decoration-thickness: 0.1em; text-underline-offset: 0.16em; }
.ohf-form-notice--success { border: 1px solid rgba(15,91,63,0.32); border-inline-start: 5px solid var(--ohf-gold); background: var(--ohf-green-soft); color: var(--ohf-green-dark); }
.ohf-form-notice--success .ohf-form-notice__icon { background: var(--ohf-green); color: var(--ohf-white); box-shadow: 0 0 0 2px rgba(214,162,31,0.45); }
.ohf-form-notice--error { border: 1px solid rgba(132,47,35,0.38); border-inline-start-width: 5px; background: #fff4f1; color: #842f23; }
.ohf-form-notice--error .ohf-form-notice__icon { background: #842f23; color: var(--ohf-white); }
.ohf-form-notice--info { border: 1px solid rgba(31,99,141,0.38); border-inline-start: 5px solid var(--ohf-gold); background: var(--ohf-blue); color: var(--ohf-green-dark); }
.ohf-form-notice--info .ohf-form-notice__icon { background: var(--ohf-blue-strong); color: var(--ohf-white); }
.ohf-form [type="submit"].is-loading,
.newsletter-form [type="submit"].is-loading,
.footer-newsletter [type="submit"].is-loading,
.ohf-newsletter-form [type="submit"].is-loading { cursor: wait; opacity: 0.78; }
.ohf-form [type="submit"]:disabled,
.newsletter-form [type="submit"]:disabled,
.footer-newsletter [type="submit"]:disabled,
.ohf-newsletter-form [type="submit"]:disabled { pointer-events: none; }
.ohf-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.ohf-receipt-card { padding: 1.35rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-receipt-list { display: grid; gap: 0.8rem; margin: 0 0 1.2rem; }
.ohf-receipt-list div { display: grid; gap: 0.25rem; padding: 0.8rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-bg); }
.ohf-receipt-list dt { color: var(--ohf-muted); font-size: 0.82rem; font-weight: 950; text-transform: uppercase; letter-spacing: 0.05em; }
.ohf-receipt-list dd { margin: 0; color: var(--ohf-ink); font-weight: 900; overflow-wrap: anywhere; }
.ohf-impact-shortcode { margin-block: 1.5rem; }
@media (min-width: 700px) {
	.ohf-form { padding: 1.6rem; }
	.ohf-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ohf-choice-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ohf-receipt-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 430px) {
	.ohf-form { padding: 1rem; }
	.ohf-choice-grid { grid-template-columns: 1fr; }
}


/* Phase 4 outreach operations */
.ohf-calendar { display: grid; gap: 1.25rem; }
.ohf-calendar-filter { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); align-items: end; }
.ohf-calendar-filter label { display: grid; gap: 0.35rem; }
.ohf-calendar-filter select,
.ohf-calendar-filter input[type="month"] { width: 100%; min-height: 46px; padding: 0.75rem 0.85rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); color: var(--ohf-ink); }
.ohf-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 0.55rem; }
.ohf-calendar-grid--head strong { padding: 0.55rem; border-radius: var(--ohf-radius-sm); background: var(--ohf-green); color: var(--ohf-white); font-size: 0.82rem; text-align: center; }
.ohf-calendar-day { min-height: 136px; padding: 0.65rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-calendar-day--blank { background: transparent; border-color: transparent; box-shadow: none; }
.ohf-calendar-day__number { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; margin-bottom: 0.45rem; border-radius: 50%; background: var(--ohf-green-soft); color: var(--ohf-green-dark); font-weight: 950; }
.ohf-calendar-event { display: grid; gap: 0.18rem; margin-top: 0.4rem; padding: 0.55rem; border-left: 4px solid var(--ohf-green); border-radius: var(--ohf-radius-sm); background: var(--ohf-green-soft); color: var(--ohf-green-dark); font-size: 0.83rem; line-height: 1.28; text-decoration: none; }
.ohf-calendar-event:hover { background: var(--ohf-blue); color: var(--ohf-green-dark); }
.ohf-calendar-event span,
.ohf-calendar-event small { color: var(--ohf-muted); font-weight: 750; }
.ohf-status-confirmed { border-left-color: var(--ohf-blue-strong); }
.ohf-status-ongoing { border-left-color: var(--ohf-gold); }
.ohf-status-completed { border-left-color: var(--ohf-green); }
.ohf-status-cancelled { border-left-color: #9b3224; background: #fff4f1; }
.ohf-calendar-list { display: grid; gap: 0.85rem; }
.ohf-calendar-list__item { padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-empty-state { padding: 1rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); color: var(--ohf-muted); font-weight: 800; }
.ohf-report { display: grid; gap: 1rem; margin-top: 2rem; padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-report__header { display: grid; gap: 1rem; align-items: start; }
.ohf-project-outreach .post-card { min-height: 100%; }
.ohf-map--where .ohf-map__panel .ohf-map-meta::before { content: "Coverage: "; font-weight: 950; color: var(--ohf-green-dark); }
@media (min-width: 760px) {
	.ohf-report__header { grid-template-columns: minmax(0, 1fr) auto; }
}
@media (max-width: 700px) {
	.ohf-calendar-grid { grid-template-columns: 1fr; }
	.ohf-calendar-grid--head { display: none; }
	.ohf-calendar-day--blank { display: none; }
	.ohf-calendar-day { min-height: auto; }
}
@media print {
	.site-header,
	.site-footer,
	.page-hero,
	.post-navigation,
	.ohf-print-report { display: none !important; }
	body { background: #fff; color: #000; }
	.ohf-report { box-shadow: none; border: 0; padding: 0; }
	.platform-detail,
	.impact-card { box-shadow: none; break-inside: avoid; }
}


/* Phase 5 impact dashboard and advanced search */
.ohf-impact-dashboard { display: grid; gap: 1.5rem; }
.ohf-impact-filter,
.ohf-advanced-search-form { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); align-items: end; }
.ohf-impact-filter label,
.ohf-advanced-search-form label { display: grid; gap: 0.35rem; color: var(--ohf-green-dark); font-size: 0.9rem; font-weight: 950; }
.ohf-impact-filter select,
.ohf-impact-filter input,
.ohf-advanced-search-form select,
.ohf-advanced-search-form input { width: 100%; min-height: 46px; padding: 0.75rem 0.85rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-white); color: var(--ohf-ink); }
.ohf-impact-dashboard__stats { margin-top: 0.25rem; }
.ohf-chart-grid { display: grid; gap: 1rem; }
.ohf-chart-card { padding: 1.2rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-chart-card h3 { margin-bottom: 1rem; font-family: "Inter", sans-serif; font-size: 1rem; color: var(--ohf-green-dark); }
.ohf-chart { min-height: 220px; }
.ohf-chart svg { width: 100%; height: auto; background: linear-gradient(180deg, var(--ohf-white), var(--ohf-green-soft)); border-radius: var(--ohf-radius-sm); }
.ohf-chart-axis { stroke: var(--ohf-line); stroke-width: 2; }
.ohf-chart-line { fill: none; stroke: var(--ohf-green); stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; }
.ohf-chart-dot { fill: var(--ohf-gold); stroke: var(--ohf-green-dark); stroke-width: 2; }
.ohf-chart-legend { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-top: 0.8rem; color: var(--ohf-muted); font-size: 0.82rem; font-weight: 800; }
.ohf-chart-legend span { padding: 0.25rem 0.45rem; border-radius: 999px; background: var(--ohf-green-soft); }
.ohf-chart-bars { display: grid; gap: 0.7rem; }
.ohf-chart-bar { display: grid; grid-template-columns: minmax(100px, 0.45fr) minmax(120px, 1fr) auto; gap: 0.7rem; align-items: center; }
.ohf-chart-bar__label { color: var(--ohf-ink); font-size: 0.88rem; font-weight: 850; overflow-wrap: anywhere; }
.ohf-chart-bar__track { height: 14px; overflow: hidden; border-radius: 999px; background: var(--ohf-green-soft); }
.ohf-chart-bar__fill { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--ohf-green), var(--ohf-blue-strong)); }
.ohf-chart-bar__value { color: var(--ohf-green-dark); font-size: 0.88rem; }
.ohf-advanced-search { display: grid; gap: 1.5rem; }
.ohf-search-count { color: var(--ohf-muted); font-weight: 900; }
.ohf-search-tags { color: var(--ohf-green); font-size: 0.86rem; font-weight: 900; }
.ohf-impact-page-band { padding-block: 4.5rem; }
.ohf-impact-page-band--soft { background: var(--ohf-green-soft); }
.ohf-impact-highlight-grid { display: grid; gap: 1rem; }
.ohf-impact-highlight { padding: 1.2rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.ohf-impact-highlight h3 { font-family: "Inter", sans-serif; font-size: 1rem; color: var(--ohf-green-dark); }
@media (min-width: 760px) {
	.ohf-chart-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ohf-impact-highlight-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
	.ohf-chart-bar { grid-template-columns: 1fr; gap: 0.35rem; }
	.ohf-chart { min-height: 0; }
}


/* Phase 6 production polish */
.has-open-lightbox { overflow: hidden; }
.ohf-lightbox[aria-hidden="true"] { display: none; }
.ohf-lightbox button:focus-visible { outline-color: var(--ohf-gold); }
.ohf-not-found .section-inner { max-width: 900px; }
.ohf-not-found__search { max-width: 620px; margin-top: 1.5rem; }
.ohf-not-found__search .search-form { display: grid; gap: 0.7rem; }
.ohf-not-found__links { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.25rem; }
.post-card__media img { width: 100%; height: 100%; object-fit: cover; }
.post-card:focus-within { border-color: rgba(15, 91, 63, 0.42); box-shadow: var(--ohf-shadow); }
.no-results, .ohf-empty-state { color: var(--ohf-muted); }
@media (min-width: 680px) {
	.ohf-not-found__search .search-form { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
}
@media (max-width: 520px) {
	.ohf-not-found__links .button { width: 100%; }
}


/* Version 2.2.0 public experience polish */
:root {
	--ohf-green: #0c6b4d;
	--ohf-green-dark: #07422f;
	--ohf-green-deep: #021a14;
	--ohf-green-soft: #edf8f3;
	--ohf-blue: #e5f3f7;
	--ohf-blue-strong: #1e7994;
	--ohf-gold: #d8a62a;
	--ohf-gold-bright: #f0c65a;
	--ohf-coral: #c75b45;
	--ohf-ink: #12231b;
	--ohf-muted: #52685e;
	--ohf-line: #d7e6df;
	--ohf-bg: #f6faf8;
	--ohf-radius: 8px;
	--ohf-radius-sm: 6px;
	--ohf-shadow: 0 24px 54px rgba(2, 26, 20, 0.15);
	--ohf-shadow-soft: 0 14px 28px rgba(2, 26, 20, 0.08);
}

body { background: var(--ohf-bg); }
h1 { font-size: 2.95rem; }
h2 { font-size: 2.18rem; }
h3 { font-size: 1.28rem; line-height: 1.18; }
.section-inner,
.site-header__inner,
.site-footer__main { width: min(100% - 2.25rem, var(--ohf-container)); }
.section-heading { margin-bottom: 2.5rem; }
.section-heading p,
.archive-description,
.page-hero p { max-width: 760px; }
.section-heading--center p { margin-inline: auto; }

.button,
.wp-block-button__link,
input[type="submit"] {
	border-radius: var(--ohf-radius-sm);
	box-shadow: 0 12px 26px rgba(2, 26, 20, 0.11);
}
.button:active,
.wp-block-button__link:active,
input[type="submit"]:active { transform: translateY(1px); }
.button--ghost {
	border-color: rgba(15, 91, 63, 0.18);
	background: var(--ohf-white);
	color: var(--ohf-green-dark);
}
.button--ghost:hover { background: var(--ohf-green-soft); color: var(--ohf-green-dark); }

.site-header { box-shadow: 0 10px 30px rgba(2, 26, 20, 0.08); }
.site-branding__mark { border-radius: var(--ohf-radius); }
.primary-menu a {
	border-radius: var(--ohf-radius-sm);
	transition: background-color 180ms ease, color 180ms ease;
}
.primary-menu a:hover { background: rgba(15, 91, 63, 0.08); }
.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu a:hover {
	background: rgba(255,255,255,0.14);
	color: var(--ohf-white);
}

.breadcrumbs {
	margin-bottom: 1rem;
	color: rgba(255,255,255,0.82);
	font-size: 0.86rem;
	font-weight: 850;
}
.page-hero--compact .breadcrumbs { color: var(--ohf-muted); }
.breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin: 0;
	padding: 0;
	list-style: none;
}
.breadcrumbs li { display: inline-flex; align-items: center; min-height: 30px; }
.breadcrumbs li + li::before {
	content: "";
	width: 0.38rem;
	height: 0.38rem;
	margin-inline: 0.28rem 0.55rem;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	opacity: 0.7;
	transform: rotate(45deg);
}
.breadcrumbs a { color: inherit; text-decoration: none; }
.breadcrumbs a:hover { color: var(--ohf-gold-bright); }
.page-hero--compact .breadcrumbs a:hover { color: var(--ohf-green); }

.hero { min-height: 100svh; }
.hero__overlay {
	background:
		linear-gradient(90deg, rgba(2,26,20,0.96) 0%, rgba(2,26,20,0.78) 46%, rgba(2,26,20,0.34) 100%),
		linear-gradient(180deg, rgba(2,26,20,0.12), rgba(2,26,20,0.48));
}
.hero__content { padding-block: calc(var(--ohf-header-height) + 5rem) 5.25rem; }
.hero h1 { font-size: 2.9rem; max-width: 840px; }
.hero__lead { max-width: 700px; }
.hero-trust-list,
.trust-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	margin: 1.25rem 0 0;
	padding: 0;
	list-style: none;
}
.hero-trust-list li,
.trust-list li {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0.4rem 0.68rem;
	border: 1px solid rgba(255,255,255,0.22);
	border-radius: var(--ohf-radius-sm);
	background: rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.92);
	font-size: 0.86rem;
	font-weight: 900;
}
.trust-list:not(.trust-list--light) li {
	border-color: rgba(15, 91, 63, 0.18);
	background: var(--ohf-green-soft);
	color: var(--ohf-green-dark);
}
.hero-scroll-cue {
	position: absolute;
	left: 50%;
	bottom: 1.5rem;
	display: none;
	width: 34px;
	height: 54px;
	border: 1px solid rgba(255,255,255,0.5);
	border-radius: 999px;
	color: var(--ohf-white);
	transform: translateX(-50%);
}
.hero-scroll-cue span {
	position: absolute;
	left: 50%;
	top: 11px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	transform: translateX(-50%);
}

.hero-stat-panel { gap: 0.9rem; }
.hero-stat-card {
	border-radius: var(--ohf-radius);
	background: rgba(255,255,255,0.13);
}
.impact-card,
.program-card,
.post-card,
.why-card,
.story-card,
.widget,
.no-results,
.newsletter-panel,
.ohf-form,
.ohf-form-intro,
.ohf-receipt-card,
.ohf-chart-card,
.ohf-impact-highlight,
.platform-detail,
.ohf-map__panel,
.ohf-empty-state {
	border-radius: var(--ohf-radius);
}
.impact-card {
	display: grid;
	align-content: start;
	min-height: 100%;
	padding: 1.45rem;
}
.impact-card__value { font-size: 1.95rem; }

.program-card,
.post-card {
	position: relative;
	min-height: 100%;
	border-color: rgba(15, 91, 63, 0.14);
}
.program-card__media,
.post-card__media,
.post-card > img { aspect-ratio: 16 / 11; }
.program-card__body,
.post-card__body { padding: 1.45rem; }
.program-card__meta {
	margin: -0.25rem 0 0.55rem;
	color: var(--ohf-coral);
	font-size: 0.78rem;
	font-weight: 950;
	line-height: 1.3;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
.program-card__icon { border-radius: var(--ohf-radius); }
.program-card__link,
.text-link { text-decoration: none; }

.featured-section .post-grid .post-card:first-child {
	grid-column: 1 / -1;
}
.featured-section .post-grid .post-card:first-child .post-card__media,
.featured-section .post-grid .post-card:first-child > img { aspect-ratio: 16 / 8; }

.why-section {
	background:
		linear-gradient(135deg, rgba(2,26,20,0.98), rgba(7,66,47,0.96)),
		var(--ohf-green-deep);
}
.why-card {
	border-color: rgba(255,255,255,0.18);
	background: rgba(255,255,255,0.09);
}

.story-grid--carousel {
	display: flex;
	grid-template-columns: none;
	gap: 1rem;
	overflow-x: auto;
	padding: 0.2rem 0.1rem 0.8rem;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
}
.story-grid--carousel .story-card {
	position: relative;
	flex: 0 0 min(88%, 430px);
	scroll-snap-align: start;
}
.story-card {
	padding: 1.55rem;
	background: var(--ohf-white);
}
.story-card::before {
	content: "\201C";
	display: block;
	height: 0.72em;
	color: var(--ohf-gold);
	font-family: Georgia, serif;
	font-size: 4rem;
	line-height: 0.8;
}
.carousel-controls {
	display: flex;
	justify-content: center;
	gap: 0.7rem;
	margin-top: 1.1rem;
}
.carousel-button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--ohf-line);
	border-radius: 50%;
	background: var(--ohf-white);
	color: var(--ohf-green-dark);
	font-size: 0;
	cursor: pointer;
	box-shadow: var(--ohf-shadow-soft);
}
.carousel-button::before {
	content: "";
	width: 0.62rem;
	height: 0.62rem;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
}
.carousel-button[data-carousel-prev]::before { transform: rotate(225deg); }
.carousel-button:hover {
	background: var(--ohf-green);
	color: var(--ohf-white);
}

.donation-band { padding-block: 5.6rem; }
.donation-band__overlay {
	background:
		linear-gradient(90deg, rgba(2,26,20,0.94), rgba(2,26,20,0.72)),
		linear-gradient(180deg, rgba(2,26,20,0.12), rgba(2,26,20,0.42));
}
.donation-layout--center { max-width: 820px; }
.donation-band h2,
.site-cta h2 { max-width: 780px; }

.partner-logo-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 0.8rem;
}
.partner-logo-grid .partner-logo,
.partner-logo-grid .partner-logo--placeholder {
	min-width: 0;
	min-height: 108px;
}
.partner-logo {
	border-radius: var(--ohf-radius);
	transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease, opacity 180ms ease, border-color 180ms ease;
}
.partner-logo:hover {
	border-color: rgba(15, 91, 63, 0.32);
	box-shadow: var(--ohf-shadow-soft);
	transform: translateY(-3px);
}

.page-hero--compact {
	position: relative;
	overflow: hidden;
	padding-block: calc(var(--ohf-header-height) + 3.5rem) 4.5rem;
	background:
		linear-gradient(135deg, var(--ohf-green-soft), var(--ohf-blue) 58%, #fff8e7);
}
.page-hero--compact::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 6px;
	background: linear-gradient(90deg, var(--ohf-green), var(--ohf-blue-strong), var(--ohf-gold));
}
.page-hero--image {
	min-height: 520px;
	align-items: end;
}
.page-hero--image .page-hero__content { padding-block: calc(var(--ohf-header-height) + 4.5rem) 4.5rem; }
.page-hero--image .hero__overlay {
	background:
		linear-gradient(90deg, rgba(2,26,20,0.9), rgba(2,26,20,0.58)),
		linear-gradient(180deg, rgba(2,26,20,0.1), rgba(2,26,20,0.36));
}
.page-hero h1 { font-size: 2.75rem; }
.page-hero .hero__lead,
.page-hero--image .archive-description { max-width: 780px; color: rgba(255,255,255,0.92); }
.page-hero--compact .archive-description,
.page-hero--compact p { color: var(--ohf-muted); }

.content-section { padding-block: 4.8rem; }
.entry-content {
	color: var(--ohf-ink);
	font-size: 1.04rem;
}
.entry-content > h2 {
	margin-top: 2.5rem;
	padding-top: 1rem;
	border-top: 1px solid var(--ohf-line);
}
.entry-content > h2:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}
.entry-content > ul,
.entry-content > ol {
	display: grid;
	gap: 0.55rem;
}
.entry-content li::marker { color: var(--ohf-green); font-weight: 950; }
.entry-content blockquote {
	border-left: 0;
	border-radius: var(--ohf-radius);
	background: linear-gradient(135deg, var(--ohf-green-soft), var(--ohf-blue));
	box-shadow: inset 5px 0 0 var(--ohf-green);
}
.entry-content .wp-block-columns {
	gap: 1rem;
	margin-block: 1.5rem;
}
.entry-content .wp-block-column {
	min-width: 0;
	padding: 1.2rem;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.entry-content .wp-block-column > :last-child { margin-bottom: 0; }
.wp-block-table {
	overflow-x: auto;
	border-radius: var(--ohf-radius);
	box-shadow: var(--ohf-shadow-soft);
}
.wp-block-table table {
	overflow: hidden;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
}
.wp-block-table th {
	background: var(--ohf-green);
	color: var(--ohf-white);
	text-align: left;
}
.wp-block-table tr:nth-child(even) td { background: var(--ohf-bg); }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="number"],
select,
textarea,
.newsletter-form input {
	border-color: rgba(15, 91, 63, 0.2);
	border-radius: var(--ohf-radius-sm);
	box-shadow: inset 0 1px 0 rgba(2,26,20,0.04);
}
input:focus,
select:focus,
textarea:focus {
	border-color: var(--ohf-green);
	outline: 3px solid rgba(216,166,42,0.32);
	outline-offset: 2px;
}
.ohf-form-notice {
	border-radius: var(--ohf-radius);
}

.site-cta {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-block: 5.25rem;
	background: var(--ohf-green-deep);
	color: var(--ohf-white);
}
.site-cta__image {
	position: absolute;
	inset: 0;
	z-index: -2;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.site-cta__overlay {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(90deg, rgba(2,26,20,0.94), rgba(2,26,20,0.62)),
		linear-gradient(180deg, rgba(2,26,20,0.08), rgba(2,26,20,0.45));
}
.site-cta__copy { max-width: 820px; }
.site-cta p { color: rgba(255,255,255,0.9); font-size: 1.05rem; }
.site-cta .section-kicker { color: var(--ohf-gold-bright); }

@media (min-width: 700px) {
	h1 { font-size: 3.75rem; }
	h2 { font-size: 2.78rem; }
	.hero h1 { font-size: 4.35rem; }
	.page-hero h1 { font-size: 3.55rem; }
	.story-grid--carousel .story-card { flex-basis: min(48%, 520px); }
	.featured-section .post-grid .post-card:first-child {
		display: grid;
		grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.8fr);
		align-items: stretch;
	}
	.featured-section .post-grid .post-card:first-child .post-card__media,
	.featured-section .post-grid .post-card:first-child > img {
		aspect-ratio: auto;
		height: 100%;
		min-height: 360px;
	}
}

@media (min-width: 980px) {
	.hero__content--split { grid-template-columns: minmax(0, 1fr) minmax(380px, 0.46fr); }
	.hero-scroll-cue { display: block; }
	.story-grid--carousel .story-card { flex-basis: 31.8%; }
	.content-section { padding-block: 5.4rem; }
}

@media (max-width: 700px) {
	.section-inner,
	.site-header__inner,
	.site-footer__main { width: min(100% - 1.5rem, var(--ohf-container)); }
	.hero__content { padding-block: calc(var(--ohf-header-height) + 3.25rem) 3.5rem; }
	.page-hero--image { min-height: 460px; }
	.page-hero h1,
	.hero h1 { font-size: 2.45rem; }
	.section-heading { margin-bottom: 1.7rem; }
	.impact-section,
	.programs-section,
	.why-section,
	.featured-section,
	.stories-section,
	.news-section,
	.partners-logo-section,
	.newsletter-section,
	.content-section,
	.volunteer-band { padding-block: 3.4rem; }
	.hero-trust-list,
	.trust-list { gap: 0.45rem; }
	.hero-trust-list li,
	.trust-list li { width: 100%; justify-content: center; text-align: center; }
	.program-card__body,
	.post-card__body,
	.story-card,
	.impact-card { padding: 1.2rem; }
	.partner-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.entry-content .wp-block-column { padding: 1rem; }
}

@media (max-width: 430px) {
	.page-hero h1,
	.hero h1 { font-size: 2.18rem; }
	.hero-stat-panel { gap: 0.65rem; }
	.partner-logo-grid { grid-template-columns: 1fr; }
	.carousel-controls { justify-content: flex-start; }
}

@media (prefers-reduced-motion: no-preference) {
	.hero-scroll-cue span { animation: ohf-scroll-cue 1.45s ease-in-out infinite; }
}

@keyframes ohf-scroll-cue {
	0% { opacity: 0; transform: translate(-50%, 0); }
	35% { opacity: 1; }
	100% { opacity: 0; transform: translate(-50%, 18px); }
}


/* Version 2.3.0 elite nonprofit experience */
:root {
	--ohf-container: 1240px;
	--ohf-content: 820px;
	--ohf-green: #075f46;
	--ohf-green-dark: #053d2f;
	--ohf-green-deep: #021611;
	--ohf-green-soft: #eef8f4;
	--ohf-blue: #e7f4f8;
	--ohf-blue-strong: #1f7d95;
	--ohf-gold: #d9a72f;
	--ohf-gold-bright: #f4c95e;
	--ohf-coral: #bd5f4b;
	--ohf-ink: #102019;
	--ohf-muted: #50655d;
	--ohf-line: #d6e5de;
	--ohf-radius: 8px;
	--ohf-radius-sm: 6px;
	--ohf-space-section: 6rem;
	--ohf-shadow: 0 26px 70px rgba(2, 22, 17, 0.17);
	--ohf-shadow-soft: 0 16px 38px rgba(2, 22, 17, 0.09);
}

body {
	background:
		linear-gradient(180deg, #fbfdfc 0%, var(--ohf-bg) 42%, #ffffff 100%);
}
.section-inner,
.site-header__inner,
.site-footer__main { width: min(100% - 2.5rem, var(--ohf-container)); }
.impact-section,
.programs-section,
.why-section,
.featured-section,
.stories-section,
.news-section,
.partners-logo-section,
.newsletter-section,
.content-section,
.volunteer-band { padding-block: var(--ohf-space-section); }
.section-heading { margin-bottom: 3rem; }
.section-heading h2 { max-width: 920px; }
.section-heading--center h2 { margin-inline: auto; }
.button--large {
	min-height: 58px;
	padding: 1.05rem 1.55rem;
	font-size: 1.02rem;
}
.primary-menu .menu-donate-link {
	box-shadow: 0 16px 34px rgba(216, 166, 42, 0.25);
}

.hero--agency::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	z-index: -1;
	height: 32%;
	background: linear-gradient(180deg, rgba(2,22,17,0), rgba(2,22,17,0.52));
	pointer-events: none;
}
.hero__image {
	will-change: transform;
	transform: scale(1.045);
}
.hero__overlay {
	background:
		linear-gradient(90deg, rgba(2,22,17,0.97) 0%, rgba(2,22,17,0.8) 44%, rgba(2,22,17,0.28) 100%),
		radial-gradient(circle at 72% 26%, rgba(244,201,94,0.18), rgba(244,201,94,0) 28%),
		linear-gradient(180deg, rgba(2,22,17,0.12), rgba(2,22,17,0.48));
}
.hero__motion-field,
.hero-floating-icons {
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
}
.hero-orbit {
	position: absolute;
	display: block;
	border: 1px solid rgba(255,255,255,0.16);
	border-radius: 50%;
	box-shadow: inset 0 0 32px rgba(255,255,255,0.05);
}
.hero-orbit--one { right: 8%; top: 18%; width: 300px; height: 300px; }
.hero-orbit--two { right: 24%; bottom: 12%; width: 170px; height: 170px; }
.hero-orbit--three { left: 48%; top: 20%; width: 92px; height: 92px; }
.hero-floating-icon {
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border: 1px solid rgba(255,255,255,0.22);
	border-radius: var(--ohf-radius);
	background: rgba(255,255,255,0.13);
	color: var(--ohf-gold-bright);
	box-shadow: 0 18px 42px rgba(0,0,0,0.22);
	backdrop-filter: blur(16px);
}
.hero-floating-icon svg { width: 26px; height: 26px; fill: currentColor; }
.hero-floating-icon--1 { right: 10%; top: 24%; }
.hero-floating-icon--2 { right: 34%; top: 18%; }
.hero-floating-icon--3 { right: 6%; bottom: 24%; }
.hero-floating-icon--4 { right: 28%; bottom: 13%; }
.hero-floating-icon--5 { left: 50%; bottom: 28%; }
.hero-stat-panel--premium {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-self: end;
	padding: 0.75rem;
	border: 1px solid rgba(255,255,255,0.16);
	border-radius: calc(var(--ohf-radius) + 6px);
	background: rgba(255,255,255,0.08);
	box-shadow: 0 28px 80px rgba(0,0,0,0.26);
	backdrop-filter: blur(18px);
}
.hero-stat-panel--premium .hero-stat-card {
	min-height: 148px;
	box-shadow: none;
}
.hero-stat-card strong {
	color: var(--ohf-white);
	font-size: 1.42rem;
}
.hero .button--gold {
	background: linear-gradient(135deg, var(--ohf-gold-bright), var(--ohf-gold));
}

.impact-section {
	background:
		linear-gradient(180deg, #ffffff 0%, var(--ohf-green-soft) 100%);
}
.impact-grid { gap: 1.05rem; }
.impact-card::before { height: 5px; }
.impact-card__value { font-size: 2.2rem; }
.impact-intelligence {
	display: grid;
	gap: 1rem;
	margin-top: 2rem;
}
.impact-chart-card,
.impact-map-preview,
.impact-timeline {
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: rgba(255,255,255,0.92);
	box-shadow: var(--ohf-shadow-soft);
}
.impact-chart-card,
.impact-map-preview { padding: 1.35rem; }
.impact-chart-card__header h3,
.impact-map-preview h3,
.impact-timeline h3 {
	font-family: "Inter", sans-serif;
	font-size: 1rem;
	line-height: 1.3;
}
.impact-line-chart {
	display: flex;
	align-items: end;
	gap: 0.65rem;
	min-height: 230px;
	margin: 1.25rem 0;
	padding: 1rem;
	border-radius: var(--ohf-radius);
	background:
		linear-gradient(180deg, rgba(15, 91, 63, 0.08), rgba(31, 125, 149, 0.08)),
		repeating-linear-gradient(180deg, transparent 0 42px, rgba(15,91,63,0.12) 43px);
}
.impact-line-chart span {
	flex: 1;
	min-width: 20px;
	border-radius: var(--ohf-radius-sm) var(--ohf-radius-sm) 0 0;
	background: linear-gradient(180deg, var(--ohf-gold-bright), var(--ohf-green));
	box-shadow: 0 12px 24px rgba(15,91,63,0.18);
	transform-origin: bottom;
}
.impact-map-preview__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.45rem;
	margin: 1.1rem 0;
}
.impact-map-preview__grid span {
	min-height: 48px;
	border: 1px solid rgba(15,91,63,0.16);
	border-radius: var(--ohf-radius-sm);
	background: linear-gradient(135deg, var(--ohf-green-soft), var(--ohf-blue));
}
.impact-map-preview__grid span:nth-child(2n),
.impact-map-preview__grid span:nth-child(5),
.impact-map-preview__grid span:nth-child(9) {
	background: linear-gradient(135deg, var(--ohf-green), var(--ohf-blue-strong));
}
.impact-timeline {
	display: grid;
	gap: 0;
	overflow: hidden;
}
.impact-timeline article {
	position: relative;
	padding: 1.15rem 1.25rem 1.15rem 3.25rem;
	border-bottom: 1px solid var(--ohf-line);
}
.impact-timeline article::before {
	content: "";
	position: absolute;
	left: 1.35rem;
	top: 1.35rem;
	width: 0.76rem;
	height: 0.76rem;
	border-radius: 50%;
	background: var(--ohf-gold);
	box-shadow: 0 0 0 6px rgba(216,166,42,0.16);
}
.impact-timeline span {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--ohf-green);
	font-size: 0.75rem;
	font-weight: 950;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
.impact-timeline p { color: var(--ohf-muted); }
.impact-timeline .button { justify-self: start; margin: 1.25rem; }

.program-grid--six { gap: 1.2rem; }
.program-card {
	background: linear-gradient(180deg, var(--ohf-white), #fbfdfc);
}
.program-card::after,
.project-feature-card::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 4px;
	background: linear-gradient(90deg, var(--ohf-green), var(--ohf-blue-strong), var(--ohf-gold));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 220ms ease;
}
.program-card:hover::after,
.project-feature-card:hover::after { transform: scaleX(1); }
.program-card__media::after,
.project-feature-card__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(2,22,17,0), rgba(2,22,17,0.28));
	opacity: 0;
	transition: opacity 180ms ease;
}
.program-card:hover .program-card__media::after,
.project-feature-card:hover .project-feature-card__media::after { opacity: 1; }

.project-showcase-grid {
	display: grid;
	gap: 1.1rem;
}
.project-feature-card {
	position: relative;
	display: grid;
	overflow: hidden;
	border: 1px solid rgba(15,91,63,0.14);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.project-feature-card__media {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 11;
	background: var(--ohf-blue);
}
.project-feature-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 220ms ease;
}
.project-feature-card:hover .project-feature-card__media img { transform: scale(1.04); }
.project-feature-card__badge {
	position: absolute;
	left: 1rem;
	top: 1rem;
	z-index: 2;
	padding: 0.36rem 0.62rem;
	border: 1px solid rgba(255,255,255,0.34);
	border-radius: var(--ohf-radius-sm);
	background: rgba(2,22,17,0.62);
	color: var(--ohf-white);
	font-size: 0.76rem;
	font-weight: 950;
	backdrop-filter: blur(10px);
}
.project-feature-card__body { padding: 1.35rem; }
.project-feature-card__body h3 a {
	color: var(--ohf-ink);
	text-decoration: none;
}
.project-feature-card__body h3 a:hover { color: var(--ohf-green); }
.project-feature-card__body p { color: var(--ohf-muted); }

.donation-layout--premium {
	display: grid;
	gap: 1.5rem;
	align-items: center;
}
.donation-layout__copy { max-width: 760px; }
.donation-impact-panel {
	padding: 1.2rem;
	border: 1px solid rgba(255,255,255,0.2);
	border-radius: var(--ohf-radius);
	background: rgba(255,255,255,0.12);
	box-shadow: 0 26px 70px rgba(0,0,0,0.22);
	backdrop-filter: blur(16px);
}
.donation-impact-panel h3 {
	font-family: "Inter", sans-serif;
	font-size: 1.08rem;
}
.donation-amount-grid {
	display: grid;
	gap: 0.75rem;
	margin-top: 1rem;
}
.donation-amount-card {
	display: grid;
	gap: 0.22rem;
	padding: 0.95rem;
	border: 1px solid rgba(255,255,255,0.18);
	border-radius: var(--ohf-radius-sm);
	background: rgba(255,255,255,0.1);
	color: var(--ohf-white);
	text-decoration: none;
}
.donation-amount-card:hover {
	background: rgba(255,255,255,0.18);
	color: var(--ohf-white);
	transform: translateY(-2px);
}
.donation-amount-card strong { color: var(--ohf-gold-bright); font-size: 1.2rem; }
.donation-amount-card span { color: rgba(255,255,255,0.82); font-weight: 750; }
.payment-trust-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 1rem;
}
.payment-trust-row span {
	padding: 0.34rem 0.52rem;
	border-radius: var(--ohf-radius-sm);
	background: rgba(255,255,255,0.92);
	color: var(--ohf-green-dark);
	font-size: 0.78rem;
	font-weight: 950;
}

.story-card cite {
	display: block;
	margin: 1rem 0 0;
	color: var(--ohf-green-dark);
	font-style: normal;
	font-weight: 950;
}
.partner-filter-bar {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.55rem;
	margin: -1rem 0 1.6rem;
}
.partner-filter-button {
	min-height: 40px;
	padding: 0.55rem 0.8rem;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius-sm);
	background: var(--ohf-white);
	color: var(--ohf-green-dark);
	font-weight: 900;
	cursor: pointer;
}
.partner-filter-button:hover,
.partner-filter-button.is-active {
	background: var(--ohf-green);
	border-color: var(--ohf-green);
	color: var(--ohf-white);
}
.partner-logo[hidden] { display: none; }
.partner-logo-grid {
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.footer-impact-cta {
	display: grid;
	gap: 1rem;
	align-items: end;
	margin-bottom: 3rem;
	padding: 1.35rem;
	border: 1px solid rgba(255,255,255,0.15);
	border-radius: var(--ohf-radius);
	background: linear-gradient(135deg, rgba(255,255,255,0.1), rgba(255,255,255,0.04));
}
.footer-impact-cta h2 {
	max-width: 780px;
	font-size: 1.8rem;
}
.footer-grid {
	grid-template-columns: 1fr;
	align-items: start;
}
.footer-column--foundation,
.footer-column--newsletter {
	padding: 1.1rem;
	border: 1px solid rgba(255,255,255,0.13);
	border-radius: var(--ohf-radius);
	background: rgba(255,255,255,0.05);
}
.footer-social a {
	width: auto;
	min-height: 38px;
	padding: 0.42rem 0.68rem;
	border-radius: var(--ohf-radius-sm);
	font-size: 0.78rem;
}
.footer-legal {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
}
.footer-legal a {
	color: rgba(255,255,255,0.82);
	text-decoration: none;
}
.footer-legal a:hover { color: var(--ohf-gold-bright); }

@media (min-width: 700px) {
	.impact-intelligence { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.impact-chart-card--large { grid-column: 1 / -1; }
	.project-showcase-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.project-showcase-grid .project-feature-card:first-child { grid-column: 1 / -1; }
	.project-showcase-grid .project-feature-card:first-child {
		grid-template-columns: minmax(0, 1.12fr) minmax(300px, 0.75fr);
	}
	.project-showcase-grid .project-feature-card:first-child .project-feature-card__media {
		aspect-ratio: auto;
		min-height: 380px;
	}
	.donation-layout--premium { grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr); }
	.footer-impact-cta { grid-template-columns: minmax(0, 1fr) auto; padding: 1.6rem; }
	.footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 980px) {
	.hero-stat-panel--premium { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 620px; }
	.impact-intelligence { grid-template-columns: minmax(0, 1.2fr) minmax(270px, 0.58fr) minmax(280px, 0.68fr); }
	.impact-chart-card--large { grid-column: auto; }
	.project-showcase-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.project-showcase-grid .project-feature-card:first-child { grid-column: span 2; }
	.footer-grid { grid-template-columns: 1.35fr 0.85fr 0.85fr 0.9fr 0.95fr 1.15fr; }
}

@media (max-width: 700px) {
	:root { --ohf-space-section: 3.75rem; }
	.section-inner,
	.site-header__inner,
	.site-footer__main { width: min(100% - 1.35rem, var(--ohf-container)); }
	.hero-floating-icons,
	.hero__motion-field { display: none; }
	.hero-stat-panel--premium { grid-template-columns: 1fr; }
	.hero-stat-panel--premium .hero-stat-card { min-height: auto; }
	.impact-line-chart { min-height: 170px; }
	.donation-impact-panel { padding: 1rem; }
	.partner-filter-bar { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 0.35rem; }
	.partner-filter-button { flex: 0 0 auto; }
	.footer-impact-cta h2 { font-size: 1.45rem; }
}

@media (prefers-reduced-motion: no-preference) {
	.hero-orbit--one { animation: ohf-drift-ring 18s linear infinite; }
	.hero-orbit--two { animation: ohf-drift-ring 14s linear infinite reverse; }
	.hero-orbit--three { animation: ohf-drift-ring 20s linear infinite; }
	.hero-floating-icon { animation: ohf-float-icon 5.5s ease-in-out infinite; }
	.hero-floating-icon--2,
	.hero-floating-icon--4 { animation-delay: 900ms; }
	.hero-floating-icon--3,
	.hero-floating-icon--5 { animation-delay: 1500ms; }
	.impact-line-chart span { animation: ohf-grow-bar 900ms ease both; }
}

@keyframes ohf-drift-ring {
	from { transform: rotate(0deg) translateY(0); }
	50% { transform: rotate(180deg) translateY(10px); }
	to { transform: rotate(360deg) translateY(0); }
}
@keyframes ohf-float-icon {
	0%, 100% { transform: translate3d(0,0,0); }
	50% { transform: translate3d(0,-12px,0); }
}
@keyframes ohf-grow-bar {
	from { transform: scaleY(0.2); opacity: 0.4; }
	to { transform: scaleY(1); opacity: 1; }
}

/* Partnership & Grants Center */
.entry-content .ohf-partnership-center,
.entry-content .ohf-equipment-program {
	width: min(100vw - 2rem, var(--ohf-container));
	max-width: none;
	margin-left: 50%;
	transform: translateX(-50%);
}
.ohf-partnership-center,
.ohf-equipment-program {
	display: grid;
	gap: 2.2rem;
	margin-block: 2rem;
}
.ohf-partnership-intro {
	display: grid;
	gap: 0.85rem;
	padding: 1.35rem;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: linear-gradient(135deg, var(--ohf-white), var(--ohf-green-soft));
	box-shadow: var(--ohf-shadow-soft);
}
.ohf-partnership-intro h2 {
	max-width: 880px;
}
.ohf-partnership-intro p {
	max-width: 860px;
	color: var(--ohf-muted);
}
.ohf-partnership-actions,
.ohf-partnership-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
}
.ohf-partnership-actions {
	margin-top: 0.4rem;
}
.ohf-partnership-nav {
	padding: 0.75rem;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.ohf-partnership-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0.48rem 0.7rem;
	border-radius: var(--ohf-radius-sm);
	background: var(--ohf-bg);
	color: var(--ohf-green-dark);
	font-size: 0.88rem;
	font-weight: 900;
	text-decoration: none;
}
.ohf-partnership-nav a:hover {
	background: var(--ohf-blue);
	color: var(--ohf-green-dark);
}
.ohf-pill-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}
.ohf-pill-grid span,
.ohf-partner-meta li {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0.36rem 0.58rem;
	border: 1px solid rgba(15,91,63,0.16);
	border-radius: var(--ohf-radius-sm);
	background: var(--ohf-green-soft);
	color: var(--ohf-green-dark);
	font-size: 0.84rem;
	font-weight: 900;
}
.ohf-confidence-grid {
	display: grid;
	gap: 1rem;
}
.ohf-sponsorship-card .post-card__body {
	display: grid;
	gap: 0.45rem;
}
.ohf-faq-list {
	display: grid;
	gap: 0.75rem;
}
.ohf-faq-list details {
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.ohf-faq-list summary {
	padding: 1rem;
	color: var(--ohf-green-dark);
	font-weight: 950;
	cursor: pointer;
}
.ohf-faq-list details p {
	margin: 0;
	padding: 0 1rem 1rem;
	color: var(--ohf-muted);
}
.ohf-partner-directory-filter {
	grid-template-columns: 1fr;
}
.ohf-partner-card {
	display: grid;
}
.ohf-partner-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 150px;
	padding: 1rem;
	background: linear-gradient(135deg, var(--ohf-white), var(--ohf-blue));
	border-bottom: 1px solid var(--ohf-line);
}
.ohf-partner-card__logo img {
	max-height: 96px;
	width: auto;
	background: transparent;
	object-fit: contain;
}
.ohf-partner-card__logo span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: var(--ohf-radius);
	background: var(--ohf-green);
	color: var(--ohf-white);
	font-size: 1.8rem;
	font-weight: 950;
}
.ohf-partner-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0.85rem 0 1rem;
	padding: 0;
	list-style: none;
}
.ohf-empty-state {
	padding: 1rem;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	color: var(--ohf-muted);
	box-shadow: var(--ohf-shadow-soft);
}

@media (min-width: 700px) {
	.ohf-partnership-intro {
		padding: 1.6rem;
	}
	.ohf-confidence-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.ohf-partner-directory-filter {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.ohf-partner-directory-filter .button {
		justify-self: start;
	}
}

@media (min-width: 980px) {
	.ohf-confidence-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	.ohf-partner-directory-filter {
		grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
	}
	.ohf-partner-directory-filter .button {
		justify-self: stretch;
	}
}

/* Homepage statistics layout */
.hero__content--split {
	gap: 2.75rem;
}
.hero-stat-panel,
.hero-stat-panel--premium,
.impact-section .impact-grid {
	display: grid;
	grid-template-columns: 1fr;
	grid-auto-rows: minmax(218px, 1fr);
	align-items: stretch;
	gap: 1rem;
	min-width: 0;
}
.hero-stat-panel,
.hero-stat-panel--premium {
	width: 100%;
	max-width: 760px;
	margin-top: 1.5rem;
}
.hero-stat-panel--premium {
	align-self: center;
	padding: 1rem;
	border-color: rgba(239,194,71,0.2);
	background: rgba(6,55,37,0.38);
}
.hero-stat-card,
.hero-stat-panel--premium .hero-stat-card,
.impact-section .impact-card {
	display: grid;
	grid-template-rows: auto auto auto 1fr;
	align-content: start;
	align-items: start;
	gap: 0.58rem;
	min-width: 0;
	min-height: 218px;
	height: 100%;
	padding: 1.2rem;
	overflow-wrap: anywhere;
	word-break: normal;
}
.hero-stat-card {
	border-color: rgba(239,194,71,0.22);
	background: rgba(255,255,255,0.13);
}
.hero-stat-card__icon,
.impact-section .impact-card__icon {
	width: 48px;
	height: 48px;
	border-radius: 14px;
}
.hero-stat-card__icon {
	background: rgba(239,194,71,0.18);
	color: var(--ohf-gold-bright);
}
.hero-stat-card strong,
.impact-section .impact-card__value {
	display: block;
	margin: 0;
	max-width: 100%;
	font-size: 2rem;
	font-weight: 950;
	line-height: 1.05;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}
.hero-stat-card strong {
	color: var(--ohf-white);
}
.hero-stat-card__label,
.impact-section .impact-card__label {
	display: block;
	max-width: 14rem;
	margin: 0;
	font-size: 0.96rem;
	font-weight: 950;
	line-height: 1.28;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}
.hero-stat-card__label {
	color: rgba(255,255,255,0.92);
}
.hero-stat-card__description,
.impact-section .impact-card p {
	display: block;
	max-width: 18rem;
	margin: 0;
	color: rgba(255,255,255,0.76);
	font-size: 0.84rem;
	font-weight: 650;
	line-height: 1.48;
	overflow-wrap: anywhere;
}
.impact-section .impact-card {
	padding: 1.35rem;
}
.impact-section .impact-card p {
	color: var(--ohf-muted);
	font-size: 0.94rem;
	line-height: 1.55;
}

@media (min-width: 700px) {
	.hero-stat-panel,
	.hero-stat-panel--premium,
	.impact-section .impact-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: minmax(232px, 1fr);
	}
	.hero-stat-card,
	.hero-stat-panel--premium .hero-stat-card,
	.impact-section .impact-card {
		min-height: 232px;
	}
}

@media (min-width: 1120px) {
	.hero__content--split {
		grid-template-columns: minmax(0, 0.92fr) minmax(620px, 0.72fr);
		gap: 3.25rem;
	}
	.hero-stat-panel,
	.hero-stat-panel--premium,
	.impact-section .impact-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		grid-auto-rows: minmax(232px, 1fr);
	}
}

@media (max-width: 430px) {
	.hero-stat-panel,
	.hero-stat-panel--premium,
	.impact-section .impact-grid {
		grid-auto-rows: minmax(210px, 1fr);
	}
	.hero-stat-card,
	.hero-stat-panel--premium .hero-stat-card,
	.impact-section .impact-card {
		min-height: 210px;
		padding: 1rem;
	}
	.hero-stat-card strong,
	.impact-section .impact-card__value {
		font-size: 1.75rem;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.hero-stat-card,
	.impact-section .impact-card,
	.hero-stat-card__icon,
	.impact-section .impact-card__icon {
		transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, color 180ms ease, border-color 180ms ease;
	}
	.hero-stat-card:hover,
	.impact-section .impact-card:hover {
		transform: translateY(-6px);
		box-shadow: 0 24px 70px rgba(3,31,22,0.22);
	}
	.hero-stat-card:hover .hero-stat-card__icon,
	.impact-section .impact-card:hover .impact-card__icon {
		background: var(--ohf-gold-bright);
		color: var(--ohf-green-dark);
	}
}

/* Phase 9 navigation refactor: compact dropdowns and mobile accordions. */
.site-header {
	backdrop-filter: none;
}
.site-header__actions {
	justify-self: end;
}
body.nav-open {
	overflow: auto;
}
.site-navigation {
	position: absolute;
	top: calc(100% + 0.55rem);
	left: 1rem;
	right: 1rem;
	display: block;
	max-height: calc(100dvh - var(--ohf-header-height) - 2rem);
	padding: 0.65rem;
	overflow-y: auto;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	background: var(--ohf-white);
	border: 1px solid rgba(217,230,223,0.92);
	border-radius: 14px;
	box-shadow: 0 22px 58px rgba(2,26,20,0.18);
	transform: translateY(-8px);
}
.site-header.is-open .site-navigation,
.site-navigation.is-open {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}
.primary-menu {
	display: flex;
	flex-direction: column;
	gap: 0.22rem;
}
.primary-menu .menu-item {
	position: relative;
	min-width: 0;
}
.primary-menu > .menu-item-has-children {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: 0.25rem;
}
.primary-menu a {
	min-width: 0;
	min-height: 42px;
	padding: 0.68rem 0.75rem;
	border-radius: 10px;
	color: var(--ohf-ink);
	font-size: 0.95rem;
	font-weight: 850;
	line-height: 1.25;
	overflow-wrap: anywhere;
}
.primary-menu a:hover,
.primary-menu a:focus-visible {
	background: rgba(15,91,63,0.08);
	color: var(--ohf-green-dark);
}
.primary-menu a:focus-visible,
.submenu-toggle:focus-visible {
	outline: 3px solid rgba(244,201,94,0.65);
	outline-offset: 2px;
}
.submenu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid rgba(15,91,63,0.14);
	border-radius: 10px;
	background: rgba(15,91,63,0.06);
	color: var(--ohf-green-dark);
	cursor: pointer;
}
.submenu-toggle span {
	width: 0.48rem;
	height: 0.48rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translate(-1px, -1px);
	transform-origin: center;
}
.primary-menu .is-submenu-open > .submenu-toggle span {
	transform: rotate(225deg) translate(-1px, -1px);
}
.primary-menu .sub-menu {
	grid-column: 1 / -1;
	display: none;
	gap: 0.08rem;
	margin: 0.18rem 0 0.45rem;
	padding: 0.35rem;
	list-style: none;
	background: rgba(15,91,63,0.055);
	border-left: 2px solid rgba(216,166,42,0.7);
	border-radius: 12px;
}
.primary-menu .is-submenu-open > .sub-menu {
	display: grid;
}
.primary-menu .sub-menu a {
	min-height: 38px;
	padding: 0.58rem 0.7rem;
	color: var(--ohf-ink);
	font-size: 0.9rem;
	font-weight: 800;
}
.primary-menu .menu-donate-link {
	justify-content: center;
	margin-top: 0.3rem;
	padding: 0.74rem 1rem;
	background: var(--ohf-gold);
	color: #201604;
	box-shadow: 0 16px 34px rgba(216,166,42,0.25);
}
.primary-menu .menu-donate-link:hover,
.primary-menu .menu-donate-link:focus-visible {
	background: var(--ohf-gold-bright);
	color: #201604;
}

@media (max-width: 1059px) {
	.site-header__inner {
		grid-template-columns: minmax(0, 1fr) auto;
	}
	.site-header__actions,
	.menu-toggle {
		display: inline-flex;
	}
}

@media (min-width: 1060px) {
	.site-header__inner {
		grid-template-columns: minmax(210px, auto) minmax(0, 1fr);
	}
	.site-header__actions,
	.menu-toggle {
		display: none;
	}
	.site-navigation {
		position: static;
		display: block;
		max-height: none;
		padding: 0;
		overflow: visible;
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		transform: none;
	}
	.primary-menu {
		flex-direction: row;
		align-items: center;
		justify-content: flex-end;
		gap: 0.12rem;
	}
	.primary-menu > .menu-item {
		display: block;
	}
	.primary-menu > .menu-item > a {
		min-height: 42px;
		padding: 0.56rem 0.52rem;
		white-space: nowrap;
		font-size: 0.82rem;
	}
	.primary-menu > .menu-item-has-children > a {
		position: relative;
		padding-right: 1.4rem;
	}
	.primary-menu > .menu-item-has-children > a::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 0.5rem;
		width: 0.36rem;
		height: 0.36rem;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: translateY(-65%) rotate(45deg);
	}
	.submenu-toggle {
		display: none;
	}
	.primary-menu .sub-menu {
		position: absolute;
		top: calc(100% + 0.48rem);
		left: 0;
		z-index: 1002;
		display: grid;
		min-width: 236px;
		max-width: min(320px, calc(100vw - 2rem));
		margin: 0;
		padding: 0.48rem;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		background: var(--ohf-white);
		border: 1px solid rgba(217,230,223,0.95);
		border-left: 1px solid rgba(217,230,223,0.95);
		border-radius: 14px;
		box-shadow: 0 24px 64px rgba(2,26,20,0.18);
		transform: translateY(8px);
	}
	.primary-menu > .menu-item:nth-last-child(-n+4) > .sub-menu {
		right: 0;
		left: auto;
	}
	.primary-menu > .menu-item:hover > .sub-menu,
	.primary-menu > .menu-item:focus-within > .sub-menu,
	.primary-menu > .menu-item.is-submenu-open > .sub-menu {
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
		transform: translateY(0);
	}
	.primary-menu .sub-menu a {
		min-height: 38px;
		padding: 0.58rem 0.68rem;
		white-space: normal;
		font-size: 0.9rem;
		line-height: 1.28;
	}
	.primary-menu .menu-donate-link {
		margin-top: 0;
		margin-left: 0.2rem;
		padding-inline: 0.82rem;
	}
	.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu > .menu-item > a {
		color: var(--ohf-white);
	}
	.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu > .menu-item > a:hover,
	.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu > .menu-item > a:focus-visible {
		background: rgba(255,255,255,0.14);
		color: var(--ohf-white);
	}
	.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu .sub-menu a {
		color: var(--ohf-ink);
	}
	.site-header[data-transparent-header="true"]:not(.is-scrolled):not(.is-open) .primary-menu .menu-donate-link {
		color: #201604;
	}
}

@media (min-width: 1200px) {
	.primary-menu {
		gap: 0.18rem;
	}
	.primary-menu > .menu-item > a {
		padding-inline: 0.68rem;
		font-size: 0.88rem;
	}
	.primary-menu > .menu-item-has-children > a {
		padding-right: 1.55rem;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.site-navigation,
	.primary-menu .sub-menu,
	.submenu-toggle,
	.submenu-toggle span {
		transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
	}
	.primary-menu > .menu-item > a:hover {
		transform: translateY(-1px);
	}
}

/* Dedicated Partner pathway pages. */
.partner-pathway-hero {
	min-height: 620px;
}
.partner-pathway-hero .hero__overlay {
	background:
		linear-gradient(90deg, rgba(2,26,20,0.96) 0%, rgba(2,26,20,0.79) 53%, rgba(2,26,20,0.36) 100%),
		linear-gradient(180deg, rgba(2,26,20,0.05), rgba(2,26,20,0.48));
}
.partner-pathway-hero__content {
	display: grid;
	align-content: end;
	justify-items: start;
	gap: 0.25rem;
}
.partner-pathway-hero__content h1 {
	max-width: 920px;
}
.partner-pathway-hero__content .hero__lead {
	max-width: 820px;
	margin-top: 0.6rem;
	font-size: 1.08rem;
}
.partner-pathway-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.7rem;
	margin-top: 1.15rem;
}
.partner-pathway-hero__signals {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	margin: 1.35rem 0 0;
	padding: 0;
	list-style: none;
}
.partner-pathway-hero__signals li {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0.4rem 0.68rem;
	border: 1px solid rgba(255,255,255,0.28);
	border-radius: 999px;
	background: rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.94);
	font-size: 0.82rem;
	font-weight: 850;
	backdrop-filter: blur(8px);
}
.partner-pathway-hero__signals li::before {
	content: "";
	width: 0.45rem;
	height: 0.45rem;
	margin-right: 0.46rem;
	border-radius: 50%;
	background: var(--ohf-gold-bright);
	box-shadow: 0 0 0 3px rgba(239,194,71,0.14);
}
.partner-pathway-page {
	background:
		radial-gradient(circle at 8% 12%, rgba(223,242,247,0.72), transparent 24rem),
		var(--ohf-bg);
}
.partner-pathway-layout {
	display: grid;
	gap: 2rem;
	width: min(100% - 2rem, var(--ohf-container));
	margin-inline: auto;
}
.partner-pathway-page__content {
	min-width: 0;
	padding: clamp(1.2rem, 3vw, 2.4rem);
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.partner-pathway-page__content > p:first-of-type {
	color: var(--ohf-green-dark);
	font-size: 1.12rem;
	font-weight: 650;
}
.partner-pathway-page__content .wp-block-group,
.partner-pathway-page__content .ohf-partner-inquiry {
	margin-top: 2.6rem;
	padding: clamp(1rem, 2.5vw, 1.7rem);
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: linear-gradient(135deg, var(--ohf-green-soft), var(--ohf-white));
}
.partner-pathway-page__content .wp-block-group > :last-child,
.partner-pathway-page__content .ohf-partner-inquiry > :last-child {
	margin-bottom: 0;
}
.partner-pathway-page__content .ohf-form,
.partner-pathway-page__content .ohf-equipment-program {
	margin-top: 1.25rem;
}
.partner-pathway-page__content .ohf-equipment-program {
	width: 100%;
	margin-left: 0;
	transform: none;
}
.ohf-standalone-faqs {
	display: grid;
	gap: 2rem;
}
.ohf-standalone-faqs .ohf-faq-list details {
	overflow: hidden;
}
.ohf-standalone-faqs .ohf-faq-list summary {
	padding: 1.15rem;
}
.ohf-standalone-faqs .ohf-faq-list details p {
	padding: 0 1.15rem 1.15rem;
}
.ohf-faq-cta {
	margin: 0;
}
.partner-pathway-page__sidebar {
	display: grid;
	align-content: start;
	gap: 1rem;
}
.partner-pathway-nav,
.partner-pathway-contact-card {
	padding: 1.15rem;
	border: 1px solid var(--ohf-line);
	border-radius: var(--ohf-radius);
	background: var(--ohf-white);
	box-shadow: var(--ohf-shadow-soft);
}
.partner-pathway-nav ul {
	display: grid;
	gap: 0.28rem;
	margin: 0;
	padding: 0;
	list-style: none;
}
.partner-pathway-nav a {
	display: flex;
	align-items: center;
	min-height: 42px;
	padding: 0.58rem 0.65rem;
	border-radius: var(--ohf-radius-sm);
	color: var(--ohf-ink);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.3;
	text-decoration: none;
}
.partner-pathway-nav a:hover {
	background: var(--ohf-green-soft);
	color: var(--ohf-green-dark);
}
.partner-pathway-nav a[aria-current="page"] {
	background: var(--ohf-green);
	color: var(--ohf-white);
}
.partner-pathway-contact-card {
	background: linear-gradient(145deg, var(--ohf-green-deep), var(--ohf-green));
	color: var(--ohf-white);
}
.partner-pathway-contact-card h2 {
	font-size: 1.4rem;
}
.partner-pathway-contact-card p {
	color: rgba(255,255,255,0.82);
}
.partner-pathway-contact-card .button {
	width: 100%;
	background: var(--ohf-gold-bright);
	color: #201604;
}
.partner-pathway-contact-card .button:hover {
	background: var(--ohf-white);
	color: var(--ohf-green-dark);
}

@media (min-width: 860px) {
	.partner-pathway-layout {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 0.36fr);
		align-items: start;
	}
	.partner-pathway-page__sidebar {
		position: sticky;
		top: calc(var(--ohf-header-height) + 1.25rem);
	}
}

@media (min-width: 1100px) {
	.partner-pathway-hero__content .hero__lead {
		font-size: 1.18rem;
	}
	.partner-pathway-page__content {
		padding: 2.5rem;
	}
}

@media (max-width: 699px) {
	.partner-pathway-hero {
		min-height: 580px;
	}
	.partner-pathway-hero__content {
		padding-block: calc(var(--ohf-header-height) + 3.5rem) 3.2rem;
	}
	.partner-pathway-hero__content h1 {
		font-size: clamp(2.15rem, 11vw, 3rem);
	}
	.partner-pathway-hero__actions,
	.partner-pathway-hero__actions .button {
		width: 100%;
	}
	.partner-pathway-hero__signals {
		gap: 0.4rem;
	}
	.partner-pathway-hero__signals li {
		font-size: 0.76rem;
	}
	.partner-pathway-page {
		padding-block: 3.2rem;
	}
}

/* GiveWP-owned donation experience (v3.1.0) */
.page-hero--donation { min-height: clamp(540px, 68vh, 720px); }
.page-hero--donation .page-hero__content { max-width: 880px; }
.donation-hero-trust { display: flex; flex-wrap: wrap; gap: 0.55rem; margin-top: 1.4rem; }
.donation-hero-trust span { padding: 0.48rem 0.7rem; border: 1px solid rgba(255,255,255,0.32); border-radius: 999px; background: rgba(3,31,22,0.52); color: var(--ohf-white); font-size: 0.78rem; font-weight: 850; line-height: 1.3; }
.donation-subnav { position: relative; z-index: 8; border-block: 1px solid var(--ohf-line); background: var(--ohf-white); box-shadow: 0 8px 24px rgba(3,31,22,0.05); }
.donation-subnav__inner { display: flex; gap: 0.35rem; overflow-x: auto; padding-block: 0.7rem; scrollbar-width: thin; }
.donation-subnav a { flex: 0 0 auto; padding: 0.55rem 0.72rem; border-radius: var(--ohf-radius-sm); color: var(--ohf-green-dark); font-size: 0.86rem; font-weight: 850; text-decoration: none; white-space: nowrap; }
.donation-subnav a:hover,
.donation-subnav a:focus-visible { background: var(--ohf-green-soft); color: var(--ohf-green-dark); }
.ohf-test-mode-notice { margin-block: 1rem; padding: 0.9rem 1rem; border: 2px solid #8a5c00; border-radius: var(--ohf-radius-sm); background: #fff6d6; color: #513600; }
.donation-page-grid { display: grid; gap: 1.5rem; align-items: start; }
.donation-checkout-column,
.donation-context-column,
.ohf-givewp-shell,
.ohf-givewp-embed { min-width: 0; }
.donation-checkout-column { padding: clamp(1rem, 3vw, 2rem); border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.donation-context-column { display: grid; gap: 1rem; }
.donation-side-card { padding: 1.2rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.donation-side-card--highlight { border-color: rgba(214,162,31,0.55); background: linear-gradient(145deg, #fff9e6, var(--ohf-white)); }
.donation-side-card h2 { font-size: 1.3rem; }
.donation-area-list,
.donation-impact-list { display: grid; gap: 0.55rem; margin: 0; padding: 0; list-style: none; }
.donation-area-list li,
.donation-impact-list li { position: relative; padding: 0.62rem 0.7rem 0.62rem 2rem; border-radius: var(--ohf-radius-sm); background: var(--ohf-bg); color: var(--ohf-green-dark); font-weight: 800; overflow-wrap: anywhere; }
.donation-area-list li::before,
.donation-impact-list li::before { content: "✓"; position: absolute; inset-inline-start: 0.72rem; color: var(--ohf-green); font-weight: 950; }
.donation-impact-list li::before { content: "•"; color: var(--ohf-gold); }
.ohf-givewp-shell { display: grid; gap: 1rem; margin-top: 1.35rem; }
.ohf-givewp-shell__trust { display: grid; gap: 0.25rem; padding: 1rem; border-inline-start: 5px solid var(--ohf-green); border-radius: var(--ohf-radius-sm); background: var(--ohf-green-soft); color: var(--ohf-green-dark); }
.ohf-givewp-shell__trust span { color: var(--ohf-muted); font-size: 0.9rem; }
.ohf-givewp-shell__trust .ohf-gateway-ready { color: var(--ohf-green-dark); font-weight: 850; }
.ohf-givewp-embed { width: 100%; max-width: 100%; overflow: visible; }
.ohf-givewp-embed iframe,
.ohf-givewp-embed .give-embed-form,
.ohf-givewp-embed .give-form-wrap,
.ohf-givewp-embed form[id*="give-form"],
.ohf-givewp-embed .givewp-donation-form { display: block; width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
.ohf-givewp-embed iframe { border: 0; }
.ohf-givewp-embed input:not([type="checkbox"]):not([type="radio"]),
.ohf-givewp-embed select,
.ohf-givewp-embed textarea { max-width: 100%; }
.ohf-givewp-embed .give-donation-amount,
.ohf-givewp-embed .give-total-wrap,
.ohf-givewp-embed .give-gateway-option,
.ohf-givewp-embed #give-gateway-radio-list { min-width: 0; max-width: 100%; }
.ohf-givewp-embed #give-gateway-radio-list { display: flex; flex-wrap: wrap; gap: 0.65rem; margin: 0; padding: 0; }
.ohf-givewp-embed #give-gateway-radio-list > li { flex: 1 1 180px; min-width: 0; margin: 0; }
.ohf-givewp-embed #give-gateway-radio-list label { display: inline-flex; align-items: flex-start; gap: 0.45rem; max-width: 100%; overflow-wrap: anywhere; }
.ohf-givewp-embed :is(button, input, select, textarea, a):focus-visible { outline: 3px solid var(--ohf-gold-bright); outline-offset: 3px; }
.give-modal,
.give-form-grid-content { max-width: calc(100vw - 1rem); }
.give-modal { z-index: 100000; }
.ohf-admin-only-help { padding: 0.85rem; border: 1px dashed var(--ohf-line); background: var(--ohf-bg); color: var(--ohf-muted); font-size: 0.9rem; }
.donor-confidence-grid { display: grid; gap: 1rem; }
.donor-confidence-grid article { padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.donor-confidence-grid h3 { color: var(--ohf-green-dark); }
.donor-confidence-grid p { margin-bottom: 0; color: var(--ohf-muted); }
.donation-help-strip { background: var(--ohf-green-deep); color: var(--ohf-white); }
.donation-help-strip__inner { display: grid; gap: 1.2rem; align-items: center; }
.donation-help-strip p { color: rgba(255,255,255,0.82); }
.donation-help-strip .section-kicker { color: var(--ohf-gold-bright); }
.donation-info-layout { display: grid; gap: 1.5rem; align-items: start; }
.donation-info-content { min-width: 0; padding: clamp(1rem, 3vw, 2rem); border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.donation-info-aside { min-width: 0; padding: 1.25rem; border-radius: var(--ohf-radius); background: linear-gradient(145deg, var(--ohf-green-deep), var(--ohf-green)); color: var(--ohf-white); box-shadow: var(--ohf-shadow); }
.donation-info-aside h2 { font-size: 1.45rem; }
.donation-info-aside p { color: rgba(255,255,255,0.85); }
.donation-info-aside .button { width: 100%; }
.donation-info-aside__note { margin: 0.85rem 0 0; font-size: 0.82rem; }
.ohf-faq-list { display: grid; gap: 0.75rem; margin-block: 1rem 2rem; }
.ohf-faq-list details { border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius-sm); background: var(--ohf-bg); }
.ohf-faq-list summary { padding: 0.9rem 2.5rem 0.9rem 1rem; color: var(--ohf-green-dark); font-weight: 900; cursor: pointer; }
.ohf-faq-list details[open] summary { border-bottom: 1px solid var(--ohf-line); background: var(--ohf-green-soft); }
.ohf-faq-list details p { margin: 0; padding: 1rem; }
.donation-flow-layout { display: grid; gap: 1.25rem; }
.donation-flow-layout .ohf-receipt-card { min-width: 0; overflow-x: auto; }
.donation-next-steps { padding: 1.25rem; border: 1px solid var(--ohf-line); border-radius: var(--ohf-radius); background: var(--ohf-white); box-shadow: var(--ohf-shadow-soft); }
.donation-next-steps :is(ul, ol) { padding-inline-start: 1.35rem; }
.donation-flow-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; margin-top: 1.2rem; }
.button--outline-dark { border-color: var(--ohf-green); background: transparent; color: var(--ohf-green-dark); }
.button--outline-dark:hover { background: var(--ohf-green-soft); color: var(--ohf-green-dark); }

@media (min-width: 768px) {
	.donation-page-grid { grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr); }
	.donor-confidence-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.donation-help-strip__inner { grid-template-columns: minmax(0, 1fr) auto; }
	.donation-info-layout { grid-template-columns: minmax(0, 1fr) minmax(250px, 0.34fr); }
	.donation-info-aside { position: sticky; top: calc(var(--ohf-header-height) + 1rem); }
}
@media (min-width: 1024px) {
	.donation-page-grid { gap: 2rem; grid-template-columns: minmax(0, 1fr) 360px; }
	.donor-confidence-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.donation-checkout-column { padding: 2.25rem; }
}
@media (max-width: 430px) {
	.page-hero--donation { min-height: 600px; }
	.page-hero--donation .page-hero__content h1 { font-size: clamp(2rem, 11vw, 2.7rem); }
	.donation-hero-trust { display: grid; }
	.donation-hero-trust span { width: 100%; }
	.donation-checkout-column,
	.donation-side-card,
	.donation-info-content,
	.donation-next-steps,
	.ohf-receipt-card { padding: 1rem; }
	.donation-flow-actions,
	.donation-flow-actions .button { width: 100%; }
	.ohf-givewp-embed #give-gateway-radio-list { display: grid; }
	.ohf-givewp-embed #give-gateway-radio-list > li { width: 100%; }
}
@media print {
	.donation-subnav,
	.donation-help-strip,
	.donation-flow-actions,
	.ohf-test-mode-notice { display: none !important; }
	.ohf-receipt-card { border: 0; box-shadow: none; overflow: visible; }
}

/* Keep reporting filters fluid after legacy directory grid rules. */
.ohf-filter-form.ohf-report-filters {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
	align-items: end;
}
@media (max-width: 30rem) {
	.ohf-filter-form.ohf-report-filters { grid-template-columns: minmax(0, 1fr); }
}
@media print {
	.ohf-report-filters,
	.ohf-chart,
	.ohf-report-support-cta { display: none !important; }
	.ohf-chart-table { display: block; }
}
