/**
 * Impact pages — Impact Stories, Our Impact, Communities, Results & Outcomes.
 *
 * @package BNF
 * @since 1.25.0
 * @updated 1.29.0
 */

.bnf-impact-stories-page .bnf-internal-breadcrumb {
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

/* ——— Hero ——— */
.bnf-impact-stories-hero {
	padding-block: clamp(2rem, 4vw, 3rem) clamp(2.25rem, 4.5vw, 3.25rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-impact-stories-hero__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: clamp(1.5rem, 3.5vw, 3rem);
	align-items: end;
}

.bnf-impact-stories-hero__copy {
	max-width: 36rem;
}

.bnf-impact-stories-hero__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--md);
}

.bnf-impact-stories-hero__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-1);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.028em;
}

.bnf-impact-stories-hero__lead {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.62;
}

.bnf-impact-stories-hero__media {
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--image);
	border: 1px solid var(--wp--preset--color--bnf-border);
	aspect-ratio: 4 / 3;
	background: var(--wp--preset--color--bnf-soft);
}

.bnf-impact-stories-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 55%;
}

/* ——— Directory ——— */
.bnf-impact-stories-directory {
	padding-block: clamp(2rem, 3.75vw, 3rem) clamp(2.25rem, 4vw, 3.5rem);
	background: var(--wp--preset--color--bnf-surface);
}

.bnf-impact-stories-directory__header {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	margin-bottom: clamp(1.25rem, 2.5vw, 2rem);
	max-width: 40rem;
}

.bnf-impact-stories-directory__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-impact-stories-directory__title {
	margin: 0;
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-impact-stories-directory__host .bnf-stories-archive {
	padding-block: 0;
	background: transparent;
	border: 0;
}

.bnf-impact-stories-directory__host .bnf-stories-archive__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-impact-stories-directory__host .bnf-stories-filters {
	margin-bottom: var(--wp--preset--spacing--xl);
}

.bnf-impact-stories-directory__host .bnf-stories-grid {
	gap: var(--wp--preset--spacing--xl);
}

.bnf-impact-stories-directory__host .bnf-story-card__body {
	padding: var(--wp--preset--spacing--lg);
}

.bnf-impact-stories-directory__host .bnf-story-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.85rem;
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-impact-stories-directory__host .bnf-story-card__type,
.bnf-impact-stories-directory__host .bnf-story-card__location,
.bnf-impact-stories-directory__host .bnf-story-card__work-area {
	margin: 0;
	color: var(--wp--preset--color--bnf-forest);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: none;
}

.bnf-impact-stories-directory__host .bnf-story-card__type {
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--bnf-muted);
}

/* ——— CTA ——— */
.bnf-impact-stories-cta {
	padding-block: clamp(2rem, 3.75vw, 3rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-impact-stories-cta__shell {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-impact-stories-cta__inner {
	max-width: 40rem;
}

.bnf-impact-stories-cta__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.15;
	letter-spacing: -0.02em;
}

.bnf-impact-stories-cta__text {
	margin: 0 0 var(--wp--preset--spacing--xl);
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.62;
}

.bnf-impact-stories-cta__actions {
	margin: 0;
	gap: var(--wp--preset--spacing--md);
}

/* ——— Responsive ——— */
@media (max-width: 899px) {
	.bnf-impact-stories-hero__inner {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.bnf-impact-stories-hero__media {
		aspect-ratio: 16 / 10;
		max-width: 36rem;
	}
}

@media (max-width: 479px) {
	.bnf-impact-stories-hero,
	.bnf-impact-stories-directory,
	.bnf-impact-stories-cta {
		padding-block: 1.75rem 2rem;
	}}

/* Impact Stories page: keep tablet at 2 columns; avoid forcing 3-up density */
@media (min-width: 1024px) {
	.bnf-impact-stories-page .bnf-stories-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1200px) {
	.bnf-impact-stories-page .bnf-stories-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ==========================================================================
 * Our Impact — qualitative institutional page (no KPI surfaces)
 * ========================================================================== */

.bnf-our-impact-page .bnf-internal-breadcrumb {
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

/* ——— Hero ——— */
.bnf-our-impact-hero {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 4vw, 3rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-hero__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: clamp(1.35rem, 3vw, 2.75rem);
	align-items: end;
}

.bnf-our-impact-hero__copy {
	max-width: 34rem;
}

.bnf-our-impact-hero__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--md);
}

.bnf-our-impact-hero__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-1);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.028em;
}

.bnf-our-impact-hero__lead {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.62;
}

.bnf-our-impact-hero__media {
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--image);
	border: 1px solid var(--wp--preset--color--bnf-border);
	aspect-ratio: 4 / 3;
	background: var(--wp--preset--color--bnf-soft);
}

.bnf-our-impact-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 45%;
}

/* ——— Philosophy ——— */
.bnf-our-impact-philosophy {
	padding-block: clamp(1.75rem, 3.25vw, 2.5rem);
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-philosophy__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	max-width: 40rem;
}

.bnf-our-impact-philosophy__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-our-impact-philosophy__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-our-impact-philosophy__text {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.65;
	font-size: var(--wp--preset--font-size--body-large, 1.125rem);
}

/* ——— Work areas ——— */
.bnf-our-impact-work {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 3.75vw, 3rem);
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-our-impact-work__header {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	margin-bottom: clamp(1.15rem, 2.25vw, 1.75rem);
	max-width: 40rem;
}

.bnf-our-impact-work__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-our-impact-work__title {
	margin: 0;
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-our-impact-areas {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-our-impact-areas__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-areas__item {
	margin: 0;
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-areas__item:nth-child(odd) {
	border-right: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-areas__link {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 0.85rem 1rem;
	align-items: start;
	padding: 1rem 1.15rem;
	text-decoration: none;
	color: inherit;
	min-height: 100%;
	transition: background-color 0.15s ease;
}

.bnf-our-impact-areas__link:hover,
.bnf-our-impact-areas__link:focus-visible {
	background: var(--wp--preset--color--bnf-surface);
}

.bnf-our-impact-areas__link:focus-visible {
	outline: 2px solid var(--wp--preset--color--bnf-forest);
	outline-offset: -2px;
}

.bnf-our-impact-areas__index {
	color: var(--wp--preset--color--bnf-forest);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.4;
	padding-top: 0.15rem;
}

.bnf-our-impact-areas__name {
	display: block;
	color: var(--wp--preset--color--bnf-navy);
	font-size: 1.05rem;
	font-weight: 650;
	line-height: 1.3;
	letter-spacing: -0.015em;
}

.bnf-our-impact-areas__text {
	display: block;
	margin-top: 0.35rem;
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.9375rem;
	line-height: 1.5;
}

.bnf-our-impact-areas__arrow {
	color: var(--wp--preset--color--bnf-forest);
	font-size: 1.1rem;
	line-height: 1.4;
	padding-top: 0.1rem;
	transition: transform 0.15s ease;
}

.bnf-our-impact-areas__link:hover .bnf-our-impact-areas__arrow,
.bnf-our-impact-areas__link:focus-visible .bnf-our-impact-areas__arrow {
	transform: translateX(3px);
}

.bnf-our-impact-areas__empty {
	margin: 0;
	color: var(--wp--preset--color--bnf-muted);
	line-height: 1.55;
}

/* ——— Stories ——— */
.bnf-our-impact-stories-section {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 3.75vw, 3rem);
	background: var(--wp--preset--color--bnf-surface);
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-stories-section__header {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	margin-bottom: clamp(1.15rem, 2.25vw, 1.75rem);
	max-width: 40rem;
}

.bnf-our-impact-stories-section__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-our-impact-stories-section__title {
	margin: 0;
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-our-impact-stories {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-our-impact-stories__grid {
	list-style: none;
	margin: 0 0 var(--wp--preset--spacing--xl);
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--xl);
}

.bnf-our-impact-stories__item {
	margin: 0;
	min-width: 0;
}

.bnf-our-impact-stories__item .bnf-story-card__body {
	padding: var(--wp--preset--spacing--lg);
}

.bnf-our-impact-stories__item .bnf-story-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.85rem;
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-our-impact-stories__item .bnf-story-card__type,
.bnf-our-impact-stories__item .bnf-story-card__location,
.bnf-our-impact-stories__item .bnf-story-card__work-area {
	margin: 0;
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 600;
}

.bnf-our-impact-stories__item .bnf-story-card__type {
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--bnf-muted);
}

.bnf-our-impact-stories__item .bnf-story-card__location,
.bnf-our-impact-stories__item .bnf-story-card__work-area {
	color: var(--wp--preset--color--bnf-forest);
}

.bnf-our-impact-stories__empty {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-muted);
	line-height: 1.55;
}

.bnf-our-impact-stories__cta {
	margin: 0;
}

/* ——— Documentation ——— */
.bnf-our-impact-docs {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-docs__shell {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: clamp(1.35rem, 3vw, 2.5rem);
	align-items: end;
}

.bnf-our-impact-docs__copy {
	max-width: 32rem;
}

.bnf-our-impact-docs__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-our-impact-docs__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-our-impact-docs__text {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.6;
}

.bnf-our-impact-reports__card {
	max-width: 18rem;
}

.bnf-our-impact-reports__card .bnf-ar-card {
	background: var(--wp--preset--color--bnf-surface);
}

.bnf-our-impact-reports__cta {
	margin: var(--wp--preset--spacing--lg) 0 0;
}

/* ——— Explore CTA ——— */
.bnf-our-impact-explore {
	padding-block: clamp(1.75rem, 3.25vw, 2.5rem);
	background: var(--wp--preset--color--bnf-surface);
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-our-impact-explore__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	max-width: 44rem;
}

.bnf-our-impact-explore__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-our-impact-explore__actions {
	margin: 0;
	gap: var(--wp--preset--spacing--md);
}

/* ——— Responsive ——— */
@media (max-width: 899px) {
	.bnf-our-impact-hero__inner,
	.bnf-our-impact-docs__shell {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.bnf-our-impact-hero__media {
		aspect-ratio: 16 / 10;
		max-width: 36rem;
	}

	.bnf-our-impact-areas__list {
		grid-template-columns: 1fr;
	}

	.bnf-our-impact-areas__item:nth-child(odd) {
		border-right: 0;
	}

	.bnf-our-impact-stories__grid {
		grid-template-columns: 1fr;
	}

	.bnf-our-impact-reports__card {
		max-width: 16rem;
	}
}

@media (max-width: 479px) {
	.bnf-our-impact-hero,
	.bnf-our-impact-philosophy,
	.bnf-our-impact-work,
	.bnf-our-impact-stories-section,
	.bnf-our-impact-docs,
	.bnf-our-impact-explore {
		padding-block: 1.5rem 1.75rem;
	}
	.bnf-our-impact-areas__link {
		padding: 0.9rem 0.35rem 0.9rem 0;
	}
}

/* ==========================================================================
 * Communities — place-oriented editorial page (no Community CPT / no map)
 * ========================================================================== */

.bnf-communities-page .bnf-internal-breadcrumb {
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

/* ——— Hero ——— */
.bnf-communities-hero {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 4vw, 3rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-communities-hero__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: clamp(1.35rem, 3vw, 2.75rem);
	align-items: end;
}

.bnf-communities-hero__copy {
	max-width: 34rem;
}

.bnf-communities-hero__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--md);
}

.bnf-communities-hero__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-1);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.028em;
	text-wrap: balance;
}

.bnf-communities-hero__lead {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.62;
}

.bnf-communities-hero__media {
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--image);
	border: 1px solid var(--wp--preset--color--bnf-border);
	aspect-ratio: 4 / 3;
	background: var(--wp--preset--color--bnf-soft);
}

.bnf-communities-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

/* ——— Approach ——— */
.bnf-communities-approach {
	padding-block: clamp(1.75rem, 3.25vw, 2.5rem);
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-communities-approach__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	max-width: 40rem;
}

.bnf-communities-approach__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-communities-approach__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.bnf-communities-approach__text {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.65;
	font-size: var(--wp--preset--font-size--body-large, 1.125rem);
}

/* ——— Places ——— */
.bnf-communities-places-section {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 3.75vw, 3rem);
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-communities-places-section__header {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	margin-bottom: clamp(1.15rem, 2.25vw, 1.75rem);
	max-width: 40rem;
}

.bnf-communities-places-section__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-communities-places-section__title {
	margin: 0;
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.bnf-communities-places {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-communities-places__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--lg);
}

.bnf-communities-places__item {
	margin: 0;
	min-width: 0;
}

.bnf-communities-place {
	height: 100%;
	padding: 1.1rem 1.15rem;
	background: var(--wp--preset--color--bnf-surface);
	border: 1px solid var(--wp--preset--color--bnf-border);
	border-radius: var(--wp--custom--radius--image, 0.5rem);
}

.bnf-communities-place__name {
	margin: 0 0 0.35rem;
	color: var(--wp--preset--color--bnf-navy);
	font-size: 1.05rem;
	font-weight: 650;
	line-height: 1.3;
	letter-spacing: -0.015em;
}

.bnf-communities-place__meta {
	margin: 0 0 0.55rem;
	color: var(--wp--preset--color--bnf-forest);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 600;
	line-height: 1.45;
}

.bnf-communities-place__text {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.9375rem;
	line-height: 1.55;
}

.bnf-communities-place__projects {
	list-style: none;
	margin: 0.75rem 0 0;
	padding: 0.75rem 0 0;
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-communities-place__project {
	margin: 0 0 0.35rem;
	font-size: 0.9rem;
	line-height: 1.4;
}

.bnf-communities-place__project:last-child {
	margin-bottom: 0;
}

.bnf-communities-place__project a {
	color: var(--wp--preset--color--bnf-forest);
	text-decoration: none;
	font-weight: 600;
}

.bnf-communities-place__project a:hover,
.bnf-communities-place__project a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

/* Intentional empty state — no map, no fake pins */
.bnf-communities-places__empty {
	max-width: 36rem;
	padding: clamp(1.35rem, 2.5vw, 1.85rem) clamp(1.25rem, 2.5vw, 1.75rem);
	border: 1px solid var(--wp--preset--color--bnf-border);
	border-radius: var(--wp--custom--radius--image, 0.5rem);
	background: var(--wp--preset--color--bnf-surface);
}

.bnf-communities-places__empty-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	margin-bottom: 0.85rem;
	color: var(--wp--preset--color--bnf-forest);
	border: 1px solid var(--wp--preset--color--bnf-border);
	border-radius: 999px;
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-communities-places__empty-icon svg {
	display: block;
}

.bnf-communities-places__empty-title {
	margin: 0 0 0.55rem;
	color: var(--wp--preset--color--bnf-navy);
	font-size: 1.1rem;
	font-weight: 650;
	line-height: 1.35;
	letter-spacing: -0.015em;
}

.bnf-communities-places__empty-text {
	margin: 0 0 1rem;
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.975rem;
	line-height: 1.6;
}

.bnf-communities-places__empty-cta {
	margin: 0;
}

/* ——— Stories ———
 * Visual chrome lives on .bnf-communities-stories (not the host), so browsers
 * without :has() do not show an empty bordered host when the shortcode is blank.
 * Modern browsers still hide the empty host entirely via :has().
 */
.bnf-communities-stories-host:not(:has(.bnf-communities-stories)) {
	display: none;
}

.bnf-communities-stories {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 3.75vw, 3rem);
	background: var(--wp--preset--color--bnf-surface);
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-communities-stories__header {
	margin-bottom: clamp(1.15rem, 2.25vw, 1.75rem);
	max-width: 40rem;
}

.bnf-communities-stories__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-communities-stories__title {
	margin: 0;
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-communities-stories__grid {
	list-style: none;
	margin: 0 0 var(--wp--preset--spacing--xl);
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--xl);
}

.bnf-communities-stories__item {
	margin: 0;
	min-width: 0;
}

.bnf-communities-stories__item .bnf-story-card__body {
	padding: var(--wp--preset--spacing--lg);
}

.bnf-communities-stories__item .bnf-story-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.85rem;
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-communities-stories__item .bnf-story-card__type {
	margin: 0;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--wp--preset--color--bnf-muted);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 600;
}

.bnf-communities-stories__item .bnf-story-card__location,
.bnf-communities-stories__item .bnf-story-card__work-area {
	margin: 0;
	color: var(--wp--preset--color--bnf-forest);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 600;
}

.bnf-communities-stories__cta {
	margin: 0;
}

/* ——— Explore ——— */
.bnf-communities-explore {
	padding-block: clamp(1.75rem, 3.25vw, 2.5rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-top: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-communities-explore__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	max-width: 48rem;
}

.bnf-communities-explore__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-communities-explore__actions {
	margin: 0;
	gap: var(--wp--preset--spacing--md);
	flex-wrap: wrap;
}

/* ——— Responsive ——— */
@media (max-width: 1023px) {
	.bnf-communities-places__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 899px) {
	.bnf-communities-hero__inner {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.bnf-communities-hero__media {
		aspect-ratio: 16 / 10;
		max-width: 36rem;
	}

	.bnf-communities-stories__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 639px) {
	.bnf-communities-places__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 479px) {
	.bnf-communities-hero,
	.bnf-communities-approach,
	.bnf-communities-places-section,
	.bnf-communities-explore {
		padding-block: 1.5rem 1.75rem;
	}

	.bnf-communities-stories {
		padding-block: 1.5rem 1.75rem;
	}}

/* ==========================================================================
 * Results & Outcomes — evidence / measurement framework (no fake KPIs)
 * ========================================================================== */

.bnf-results-outcomes-page .bnf-internal-breadcrumb {
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

/* ——— Hero ——— */
.bnf-results-outcomes-hero {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 4vw, 3rem);
	background: var(--wp--preset--color--bnf-surface-soft);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-results-outcomes-hero__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: clamp(1.35rem, 3vw, 2.75rem);
	align-items: end;
}

.bnf-results-outcomes-hero__copy {
	max-width: 36rem;
}

.bnf-results-outcomes-hero__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--md);
}

.bnf-results-outcomes-hero__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-1);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -0.028em;
}

.bnf-results-outcomes-hero__lead {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.62;
}

.bnf-results-outcomes-hero__media {
	margin: 0;
	overflow: hidden;
	border-radius: var(--wp--custom--radius--image);
	border: 1px solid var(--wp--preset--color--bnf-border);
	aspect-ratio: 4 / 3;
	background: var(--wp--preset--color--bnf-soft);
}

.bnf-results-outcomes-hero__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 55%;
}

/* ——— Measurement flow ——— */
.bnf-results-outcomes-flow {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem) clamp(2rem, 3.75vw, 3rem);
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-results-outcomes-flow__header {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	margin-bottom: clamp(1.25rem, 2.5vw, 1.85rem);
	max-width: 42rem;
}

.bnf-results-outcomes-flow__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-results-outcomes-flow__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-results-outcomes-flow__intro {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.62;
}

.bnf-results-outcomes-flow__track {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-results-outcomes-flow__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	border: 1px solid var(--wp--preset--color--bnf-border);
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-results-outcomes-flow__step {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	padding: 1.15rem 1.2rem;
	border-right: 1px solid var(--wp--preset--color--bnf-border);
	min-width: 0;
}

.bnf-results-outcomes-flow__step:last-child {
	border-right: 0;
}

.bnf-results-outcomes-flow__index {
	color: var(--wp--preset--color--bnf-forest);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 650;
	letter-spacing: 0.04em;
}

.bnf-results-outcomes-flow__name {
	color: var(--wp--preset--color--bnf-navy);
	font-size: 1.05rem;
	font-weight: 650;
	line-height: 1.3;
	letter-spacing: -0.015em;
}

.bnf-results-outcomes-flow__text {
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.925rem;
	line-height: 1.5;
}

/* ——— Data sections ——— */
.bnf-results-outcomes-section {
	padding-block: clamp(1.65rem, 3.25vw, 2.5rem);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-results-outcomes-section--outcomes {
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-results-outcomes-section--results {
	background: var(--wp--preset--color--bnf-surface);
}

.bnf-results-outcomes-section--impact {
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-results-outcomes-section__header {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	margin-bottom: clamp(1rem, 2vw, 1.5rem);
	max-width: 40rem;
}

.bnf-results-outcomes-section__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-results-outcomes-section__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-results-outcomes-section__lead {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.6;
}

.bnf-results-outcomes-list {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
}

.bnf-results-outcomes-list__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--lg);
}

.bnf-results-outcomes-list__item {
	margin: 0;
	min-width: 0;
}

.bnf-results-outcomes-card {
	height: 100%;
	padding: 1.1rem 1.15rem;
	background: var(--wp--preset--color--bnf-surface);
	border: 1px solid var(--wp--preset--color--bnf-border);
	border-radius: var(--wp--custom--radius--image, 0.5rem);
}

.bnf-results-outcomes-section--results .bnf-results-outcomes-card {
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-results-outcomes-card__kind {
	margin: 0 0 0.4rem;
	color: var(--wp--preset--color--bnf-muted);
	font-size: var(--wp--preset--font-size--meta, 0.8125rem);
	font-weight: 650;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.bnf-results-outcomes-card__title {
	margin: 0 0 0.45rem;
	color: var(--wp--preset--color--bnf-navy);
	font-size: 1.05rem;
	font-weight: 650;
	line-height: 1.3;
	letter-spacing: -0.015em;
}

.bnf-results-outcomes-card__text {
	margin: 0 0 0.75rem;
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.95rem;
	line-height: 1.55;
}

.bnf-results-outcomes-card__meta {
	margin: 0;
	padding: 0.75rem 0 0;
	border-top: 1px solid var(--wp--preset--color--bnf-border);
	display: grid;
	gap: 0.55rem;
}

.bnf-results-outcomes-card__meta div {
	display: grid;
	gap: 0.15rem;
}

.bnf-results-outcomes-card__meta dt {
	margin: 0;
	color: var(--wp--preset--color--bnf-muted);
	font-size: 0.75rem;
	font-weight: 650;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.bnf-results-outcomes-card__meta dd {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.925rem;
	line-height: 1.4;
}

.bnf-results-outcomes-card__meta a {
	color: var(--wp--preset--color--bnf-forest);
	font-weight: 600;
	text-decoration: none;
}

.bnf-results-outcomes-card__meta a:hover,
.bnf-results-outcomes-card__meta a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.bnf-results-outcomes-empty {
	max-width: 40rem;
	padding: 1.15rem 1.25rem;
	border: 1px solid var(--wp--preset--color--bnf-border);
	border-radius: var(--wp--custom--radius--image, 0.5rem);
	background: var(--wp--preset--color--bnf-surface);
}

.bnf-results-outcomes-section--results .bnf-results-outcomes-empty {
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-results-outcomes-empty__text {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	font-size: 0.975rem;
	line-height: 1.6;
}

/* ——— Docs ——— */
.bnf-results-outcomes-docs {
	padding-block: clamp(1.75rem, 3.5vw, 2.75rem);
	background: var(--wp--preset--color--bnf-surface);
	border-bottom: 1px solid var(--wp--preset--color--bnf-border);
}

.bnf-results-outcomes-docs__shell {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: clamp(1.35rem, 3vw, 2.5rem);
	align-items: end;
}

.bnf-results-outcomes-docs__copy {
	max-width: 32rem;
}

.bnf-results-outcomes-docs__eyebrow {
	margin: 0 0 var(--wp--preset--spacing--sm);
}

.bnf-results-outcomes-docs__title {
	margin: 0 0 var(--wp--preset--spacing--md);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-results-outcomes-docs__text {
	margin: 0;
	color: var(--wp--preset--color--bnf-text);
	line-height: 1.6;
}

.bnf-results-outcomes-reports__card {
	max-width: 18rem;
}

.bnf-results-outcomes-reports__cta {
	margin: var(--wp--preset--spacing--lg) 0 0;
}

/* ——— Explore ——— */
.bnf-results-outcomes-explore {
	padding-block: clamp(1.75rem, 3.25vw, 2.5rem);
	background: var(--wp--preset--color--bnf-surface-soft);
}

.bnf-results-outcomes-explore__inner {
	width: min(100% - 2.5rem, 1240px);
	margin-inline: auto;
	max-width: 48rem;
}

.bnf-results-outcomes-explore__title {
	margin: 0 0 var(--wp--preset--spacing--lg);
	color: var(--wp--preset--color--bnf-navy);
	font-size: var(--wp--preset--font-size--heading-2);
	line-height: 1.2;
	letter-spacing: -0.02em;
}

.bnf-results-outcomes-explore__actions {
	margin: 0;
	gap: var(--wp--preset--spacing--md);
	flex-wrap: wrap;
}

/* ——— Responsive ——— */
@media (max-width: 1023px) {
	.bnf-results-outcomes-flow__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.bnf-results-outcomes-flow__step:nth-child(2n) {
		border-right: 0;
	}

	.bnf-results-outcomes-flow__step:nth-child(-n + 2) {
		border-bottom: 1px solid var(--wp--preset--color--bnf-border);
	}
}

@media (max-width: 899px) {
	.bnf-results-outcomes-hero__inner,
	.bnf-results-outcomes-docs__shell {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.bnf-results-outcomes-hero__media {
		aspect-ratio: 16 / 10;
		max-width: 36rem;
	}

	.bnf-results-outcomes-list__grid {
		grid-template-columns: 1fr;
	}

	.bnf-results-outcomes-reports__card {
		max-width: 16rem;
	}
}

@media (max-width: 639px) {
	.bnf-results-outcomes-flow__list {
		grid-template-columns: 1fr;
	}

	.bnf-results-outcomes-flow__step {
		border-right: 0;
		border-bottom: 1px solid var(--wp--preset--color--bnf-border);
	}

	.bnf-results-outcomes-flow__step:last-child {
		border-bottom: 0;
	}

	.bnf-results-outcomes-flow__step:nth-child(-n + 2) {
		border-bottom: 1px solid var(--wp--preset--color--bnf-border);
	}
}

@media (max-width: 479px) {
	.bnf-results-outcomes-hero,
	.bnf-results-outcomes-flow,
	.bnf-results-outcomes-section,
	.bnf-results-outcomes-docs,
	.bnf-results-outcomes-explore {
		padding-block: 1.5rem 1.75rem;
	}}
