/* A brighter, contemporary palette: teal, coral, powder blue and navy. */
:root {
	--ink: #172536;
	--muted: #687782;
	--green: #3f8887;
	--red: #3f8887;
	--blue: #5b9ec0;
	--sage: #a7c9d9;
	--ochre: #f28a63;
	--soft-red: #f7fbfc;
	--line: #e3edf0;
}

/* Full-width navigation: links use the available header space on desktop. */
@media (min-width: 1181px) {
	/* Break the header out of Hello Elementor's centered page container. */
	body .site-header {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
	}

	.site-header .site-header__inner { width: 100%; max-width: none; gap: clamp(12px, 1.5vw, 26px); padding-inline: 40px; }
	.site-header .site-nav { position: static; flex: 1 1 auto; min-width: 0; margin-left: auto; transform: none; }
	.site-header .site-nav__list { width: 100%; justify-content: center; gap: clamp(10px, 1.2vw, 22px); }
	.site-header .site-nav__list a { font-size: clamp(11px, .85vw, 14px); white-space: nowrap; }
	.site-header .site-header__inner > .button { flex: 0 0 auto; margin-left: 0; white-space: nowrap; }
}

@media (min-width: 701px) and (max-width: 1180px) {
	body .site-header {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
	}

	.site-header .site-header__inner {
		width: 100%;
		max-width: none;
		flex-wrap: wrap;
		gap: 10px 18px;
		padding: 11px 24px 10px;
	}
	.site-header .site-brand { flex: 0 0 auto; }
	.site-header .site-header__inner > .button { flex: 0 0 auto; margin-left: auto; white-space: nowrap; }
	.site-header .site-nav { position: static; order: 3; width: 100%; margin: 0; transform: none; }
	.site-header .site-nav__list { width: 100%; justify-content: center; gap: clamp(9px, 1.7vw, 19px); }
	.site-header .site-nav__list a { font-size: 11.5px; white-space: nowrap; }
}

/* Full-bleed footer background, with its content still aligned to the site grid. */
body .site-footer {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

.home-methodology,
.team-members,
.programs-list {
	background: #f7fbfc;
}

.hero__triangle--charcoal {
	background: #52677a;
}

.results,
.site-footer,
.programs-list__cta {
	background: #172536;
}

.results__stats div {
	background: #202f3d;
	border-color: #31465a;
}

.button:hover,
.button:focus-visible {
	background: #2f6d6c;
	border-color: #2f6d6c;
}
/* Keep call-to-action labels readable inside regular page content. */
.entry-content a.button { color: #fff; }
.entry-content a.button:hover { color: #fff; }
/* Related actions in the results section. */
.results__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.results .button--results-outline { background: transparent; border-color: rgba(255,255,255,.55); color: #fff; box-shadow: none; }
.results .button--results-outline:hover { background: #fff; border-color: #fff; color: var(--ink); }
@media (max-width: 600px) { .results__actions { align-items: stretch; flex-direction: column; } .results__actions .button { justify-content: center; } }
