/* Image-led program discovery. */
.program-discovery {
	background: #f0f5ff;
	padding-top: 100px;
	padding-bottom: 62px;
	position: relative;
}
.program-discovery-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
	margin-bottom: 40px;
}
.program-discovery-head h2 {
	font-size: clamp(36px, 4.6vw, 64px);
	font-weight: 500;
}
.program-discovery-head .eyebrow {
	color: #23466c;
	font-size: 10px;
}
.program-discovery-head p {
	font-size: 13px;
	line-height: 1.9;
	max-width: 350px;
	color: #52667f;
	padding-bottom: 5px;
}
.program-explorer {
	display: grid;
	grid-template-columns: minmax(260px, 0.36fr) minmax(0, 1fr);
	gap: 24px;
	align-items: stretch;
}
.program-navigation {
	background: #fff;
	border: 1px solid #d3e3fc;
	border-radius: 16px;
	padding: 26px 18px;
	display: flex;
	flex-direction: column;
	box-shadow: 0 8px 25px #102d5510;
}
.program-nav-heading {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: 0 13px 22px;
	color: #6d89ad;
	font-size: 8px;
	letter-spacing: 0.12em;
}
.program-nav-heading span:first-child {
	color: #23466c;
	font-weight: 700;
}
.program-tabs {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.program-tab {
	display: flex;
	align-items: center;
	width: 100%;
	gap: 12px;
	text-align: left;
	border: 1px solid transparent;
	background: transparent;
	padding: 14px 12px;
	border-radius: 9px;
	min-height: 64px;
	transition:
		background 0.2s,
		border-color 0.2s,
		color 0.2s;
	color: #52667f;
}
.program-tab-index {
	font-size: 9px;
	color: #9bb9dd;
	min-width: 16px;
}
.program-tab-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	flex-shrink: 0;
	background: #f0f5ff;
	border-radius: 8px;
	color: #6d89ad;
	transition:
		background 0.2s,
		color 0.2s;
}
.program-tab-name {
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	flex: 1;
}
.program-tab-arrow {
	color: #6d89ad;
	font-size: 16px;
	transition: transform 0.2s;
}
.program-tab:hover {
	background: #f0f5ff;
	color: #102d55;
}
.program-tab:hover .program-tab-arrow {
	transform: translate(2px, -2px);
}
.program-tab[aria-selected="true"] {
	color: #f7f9fd;
	background: #0b2445;
	border-color: #0b2445;
	box-shadow: 0 5px 13px #0b244518;
}
.program-tab[aria-selected="true"] .program-tab-index {
	color: #9bb9dd;
}
.program-tab[aria-selected="true"] .program-tab-icon {
	background: #ffffff12;
	color: var(--program-accent);
}
.program-tab[aria-selected="true"] .program-tab-arrow {
	color: #d3e3fc;
}
.program-tab:focus-visible,
.program-feature:focus-visible {
	outline: 2px solid #23466c;
	outline-offset: 3px;
}
.program-directory-link {
	display: flex;
	justify-content: space-between;
	gap: 15px;
	padding: 22px 13px 0;
	margin-top: 22px;
	border-top: 1px solid #e6efff;
	font-size: 11px;
	font-weight: 600;
	color: #102d55;
}
.program-navigation-note {
	font-size: 10px;
	color: #6d89ad;
	line-height: 1.8;
	padding: 18px 13px 0;
	margin-top: auto;
}
.program-feature {
	display: flex;
	flex-direction: column;
	min-width: 0;
	background: #fff;
	overflow: hidden;
	border-radius: 16px;
	border: 1px solid #d3e3fc;
	box-shadow: 0 15px 45px #102d5510;
}
.program-feature-image {
	height: 375px;
	position: relative;
	isolation: isolate;
	background: #102d55;
	overflow: hidden;
}
.program-feature-image > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	animation: program-photo-enter 0.45s ease-out;
	filter: saturate(0.85);
}
.program-feature-image:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, #0b244550, transparent 30%, #0b2445a6 78%, #0b2445e6);
	pointer-events: none;
	z-index: 1;
}
.program-image-top {
	position: absolute;
	inset: 25px 28px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	color: white;
	z-index: 2;
	font-size: 11px;
}
.program-image-top > span:first-child {
	display: flex;
	gap: 9px;
	align-items: center;
	border: 1px solid #ffffff40;
	background: #0b244566;
	backdrop-filter: blur(8px);
	padding: 8px 11px;
	border-radius: 6px;
}
.program-image-top > span:last-child {
	font-size: 22px;
	font-weight: 500;
	letter-spacing: -0.04em;
}
.program-image-top i {
	font-style: normal;
	font-size: 10px;
	letter-spacing: 0;
	color: #e6efff;
	margin-left: 5px;
}
.program-image-title {
	position: absolute;
	bottom: 55px;
	left: 32px;
	right: 32px;
	z-index: 2;
	color: white;
}
.program-image-title > span {
	font-size: 8px;
	letter-spacing: 0.2em;
	display: block;
	color: #d3e3fc;
	margin-bottom: 14px;
}
.program-image-title h3 {
	font-size: clamp(26px, 3vw, 43px);
	line-height: 1.14;
	letter-spacing: -0.035em;
	font-weight: 500;
	max-width: 470px;
}
.program-image-caption {
	position: absolute;
	bottom: 22px;
	left: 32px;
	right: 32px;
	z-index: 2;
	font-size: 8px;
	letter-spacing: 0.04em;
	color: #bdd8ff;
}
.program-feature-copy {
	flex: 1;
	align-content: center;
	padding: 30px 32px 23px;
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: 22px 28px;
}
.program-feature-intro .eyebrow {
	font-size: 8px;
	color: #6d89ad;
	letter-spacing: 0.12em;
	margin-bottom: 12px;
}
.program-feature-intro p {
	font-size: 13px;
	line-height: 1.9;
	color: #23466c;
	max-width: 430px;
}
.program-focus {
	border-left: 1px solid #e6efff;
	padding-left: 26px;
}
.program-focus > span {
	font-size: 8px;
	letter-spacing: 0.12em;
	color: #6d89ad;
	display: block;
	margin-bottom: 14px;
	font-weight: 700;
}
.program-focus ul {
	padding: 0;
	margin: 0;
	list-style: none;
	display: grid;
	gap: 10px;
}
.program-focus li {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 10px;
	color: #23466c;
	line-height: 1.5;
}
.program-focus i {
	width: 4px;
	height: 4px;
	flex-shrink: 0;
	border-radius: 50%;
	background: #6d89ad;
}
.program-feature-actions {
	grid-column: 1/-1;
	display: flex;
	align-items: center;
	gap: 28px;
	border-top: 1px solid #e6efff;
	padding-top: 22px;
	flex-wrap: wrap;
}
.program-feature-actions .button {
	background: #0b2445;
	border-radius: 7px;
	gap: 24px;
	font-size: 11px;
	padding: 13px 18px;
}
.program-map-link {
	font-size: 11px;
	color: #23466c;
	display: flex;
	gap: 18px;
	align-items: center;
}
.program-evidence-link {
	grid-column: 1/-1;
	display: flex;
	justify-content: space-between;
	gap: 14px;
	color: #6d89ad;
	font-size: 9px;
	padding-top: 3px;
}
.program-evidence-link span {
	color: #23466c;
	white-space: nowrap;
}
.program-discovery-foot {
	display: flex;
	justify-content: space-between;
	gap: 25px;
	border-top: 1px solid #d3e3fc;
	margin-top: 32px;
	padding-top: 24px;
	font-size: 9px;
	color: #6d89ad;
}
.program-discovery-foot > span {
	letter-spacing: 0.14em;
	font-size: 8px;
}
.program-discovery-foot a {
	color: #23466c;
}
@keyframes program-photo-enter {
	from {
		opacity: 0.65;
		transform: scale(1.025);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}
/* A quiet frame around the geographic experience. */
.home-page .atlas {
	padding: 85px 5% 50px;
	background: linear-gradient(180deg, #f6f8fa, #e9f1f4);
	overflow: hidden;
}
.home-page .atlas-head {
	padding: 0 1%;
	margin-bottom: 38px;
	align-items: flex-end;
}
.home-page .atlas-head .eyebrow {
	color: #577785;
	font-size: 10px;
	letter-spacing: 0.16em;
}
.home-page .atlas-head h2 {
	font-size: clamp(36px, 4.5vw, 62px);
}
.home-page .atlas-head p {
	font-size: 13px;
	line-height: 1.9;
	color: #677e8b;
}
.home-page .atlas-head .source-badge {
	background: transparent;
	border: 0;
	padding: 0;
	color: #7b919e;
	display: flex;
	gap: 8px;
	align-items: center;
	margin-top: 12px;
	font-size: 9px;
}
.home-page .atlas-head .source-badge:before {
	content: "";
	width: 5px;
	height: 5px;
	background: #52667f;
	border-radius: 50%;
}
.home-page .atlas-console {
	background: radial-gradient(ellipse at 42% 49%, #153c4a, #092a37 42%, #071e2b 85%);
	border: 1px solid #254654;
	border-radius: 20px;
	padding: 25px 26px;
	box-shadow: 0 24px 65px #102d5522;
}
.home-page .atlas-console-head {
	padding: 0 3px 20px;
	margin: 0;
	font-size: 9px;
	letter-spacing: 0.12em;
	border-bottom: 1px solid #bdd8ff1c;
}
.home-page .atlas-emblem {
	color: #bdd8ff;
}
.home-page .atlas-console-status {
	color: #6d89ad;
	font-size: 8px;
	letter-spacing: 0.12em;
}
.home-page .atlas-console .impact-rail {
	display: grid;
	grid-template-columns: 1.15fr repeat(4, 1fr);
	gap: 0;
	margin: 0 0 16px;
	padding: 18px 0;
	background: none;
	border: 0;
	border-bottom: 1px solid #bdd8ff1c;
	border-radius: 0;
	box-shadow: none;
	width: auto;
}
.home-page .atlas-console .rail-heading {
	display: flex;
	align-items: center;
	font-size: 8px;
	letter-spacing: 0.14em;
	color: #9bb9dd;
	margin: 0;
	padding: 0 22px 0 5px;
	line-height: 1.8;
}
.home-page .atlas-console .rail-stat {
	padding: 0 22px;
	display: flex;
	flex-direction: column;
	border-bottom: 0;
	border-left: 1px solid #bdd8ff19;
	border-right: 0;
	gap: 3px;
}
.home-page .atlas-console .rail-stat .icon {
	display: none;
}
.home-page .atlas-console .rail-stat strong {
	font-size: 29px;
	font-weight: 500;
	letter-spacing: -0.04em;
	color: #e6efff;
	margin: 0;
	line-height: 1.3;
}
.home-page .atlas-console .rail-stat span {
	font-size: 8px;
	color: #6d89ad;
	line-height: 1.5;
}
.atlas-filter-panel {
	margin-bottom: 8px;
	border: 1px solid #bdd8ff23;
	border-radius: 9px;
	background: #d3e3fc04;
}
.atlas-filter-panel > summary {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 13px 15px;
	list-style: none;
	cursor: pointer;
	min-height: 48px;
	font-size: 10px;
	color: #d3e3fc;
}
.atlas-filter-panel > summary::-webkit-details-marker {
	display: none;
}
.atlas-filter-panel > summary:focus-visible {
	outline: 2px solid #bdd8ff;
	outline-offset: 2px;
	border-radius: 9px;
}
.atlas-filter-description {
	font-size: 9px;
	color: #6d89ad;
	flex: 1;
}
.atlas-filter-count {
	font-size: 8px;
	border: 1px solid #9bb9dd29;
	border-radius: 4px;
	padding: 3px 7px;
	color: #9bb9dd;
	margin-left: auto;
}
.atlas-filter-panel > summary > i {
	font-style: normal;
	font-size: 17px;
	font-weight: 300;
	color: #bdd8ff;
	transition: rotate 0.2s;
}
.atlas-filter-panel[open] > summary > i {
	rotate: 45deg;
}
.home-page .atlas-console .atlas-filter-panel .filterbar {
	box-shadow: none;
	border: 0;
	border-top: 1px solid #bdd8ff1c;
	border-radius: 0;
	background: #d3e3fc06;
	padding: 8px;
	margin: 0;
}
.home-page .atlas-console .bread {
	margin: 10px 3px;
	font-size: 9px;
	color: #9bb9dd;
}
.home-page .atlas-console .division-switcher {
	padding: 0 0 17px;
	margin-bottom: 18px;
	gap: 7px;
	border-color: #bdd8ff1c;
}
.home-page .division-switcher button {
	font-size: 10px;
	min-height: 40px;
	border-radius: 6px;
	padding: 9px 13px;
	background: transparent;
	border-color: #bdd8ff14;
	color: #9bb9dd;
}
.home-page .division-switcher button:hover {
	background: #bdd8ff10;
	border-color: #bdd8ff3f;
	color: #e6efff;
}
.home-page .division-switcher button.active {
	background: #d3e3fc14;
	color: #e6efff;
	border-color: #bdd8ff59;
	box-shadow: none;
}
.home-page .atlas-console .atlas-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 20px;
	align-items: start;
}
.home-page .atlas-console .map-shell {
	height: 700px;
	order: 0;
	border: 1px solid #bdd8ff16;
	background: radial-gradient(ellipse at 50% 55%, #0756ef0a, transparent 67%);
	border-radius: 12px;
	overflow: hidden;
}
.home-page .atlas-console .map-hint {
	left: 18px;
	top: 17px;
	font-size: 8px;
	gap: 12px;
	color: #9bb9dd;
	max-width: 230px;
}
.home-page .atlas-console .map-compass {
	width: 27px;
	height: 36px;
	border-right: 1px solid #bdd8ff33;
	color: #bdd8ff;
	font-size: 11px;
	padding-right: 12px;
	line-height: 1.5;
}
.home-page .atlas-console .map-controls {
	right: 14px;
	bottom: 85px;
	border: 1px solid #bdd8ff33;
	border-radius: 9px;
	background: #092d3edb;
	backdrop-filter: blur(12px);
	box-shadow: 0 8px 25px #00111b33;
	padding: 6px;
	gap: 4px;
	grid-template-columns: 44px 44px;
}
.map-control-label {
	grid-column: 1/-1;
	font-size: 5px;
	letter-spacing: 0.1em;
	color: #6d89ad;
	text-align: center;
	padding: 4px 0 6px;
}
.home-page .atlas-console .map-controls button {
	width: 44px;
	min-width: 44px;
	height: 44px;
	border: 1px solid transparent;
	background: #d3e3fc09;
	border-radius: 5px;
	color: #bdd8ff;
	font-size: 11px;
	transition:
		background 0.2s,
		color 0.2s;
}
.home-page .atlas-console .map-controls button:hover:not(:disabled) {
	background: #bdd8ff1a;
	color: #f7f9fd;
	border-color: #bdd8ff31;
}
.home-page .atlas-console .map-controls button.active {
	background: #9bb9dd29;
	color: #e6efff;
	border-color: #d3e3fc31;
}
.home-page .atlas-console #ambient-toggle {
	width: auto;
	grid-column: 1/-1;
	min-height: 36px;
	gap: 4px;
}
.home-page .atlas-console #ambient-toggle span {
	font-size: 7px;
	letter-spacing: 0;
}
.home-page .atlas-console .inspector {
	grid-column: auto;
	display: block;
	order: 0;
	margin-top: 0;
	border-color: #bdd8ff33;
	background: #12334490;
	box-shadow: none;
	border-radius: 12px;
	max-height: 700px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #23466c transparent;
}
.home-page .atlas-console .inspector-hero {
	padding: 24px;
	min-height: 182px;
}
.home-page .atlas-console .inspector h3 {
	font-size: 31px;
	line-height: 1.13;
}
.home-page .atlas-console .inspector-kicker {
	font-size: 7px;
	margin-bottom: 24px;
}
.home-page .atlas-console .inspector-body {
	padding: 22px;
}
.home-page .atlas-console .metric-card {
	background: #bdd8ff06;
	border-color: #9bb9dd1e;
	border-radius: 7px;
	padding: 13px 10px;
}
.home-page .atlas-console .metric-card strong {
	font-size: 25px;
	font-weight: 500;
	color: #e6efff;
}
.home-page .atlas-console .metric-card span {
	font-size: 8px;
	color: #9bb9dd;
}
.home-page .atlas-console .panel-label {
	font-size: 11px;
	color: #bdd8ff;
}
.home-page .atlas-console .focus-tags .tag {
	font-size: 8px;
	border-color: #9bb9dd25;
	background: transparent;
}
.home-page .atlas-console .featured-row {
	border-color: #bdd8ff19;
	padding: 11px 0;
	gap: 11px;
}
.home-page .atlas-console .featured-row strong {
	font-size: 10px;
	line-height: 1.5;
}
.home-page .atlas-console .sector-legend {
	border-color: #bdd8ff1c;
	margin-top: 20px;
	padding-top: 18px;
}
.home-page .atlas-console .sector-legend button {
	font-size: 9px;
	background: transparent;
	min-height: 38px;
}
.home-page .atlas-console .data-mode {
	margin: 14px 0 18px;
	border-color: #bdd8ff1c;
	padding-top: 18px;
}
.home-page .atlas-console .location-explorer {
	border-color: #bdd8ff1c;
	padding-top: 18px;
}
.home-page .atlas-console .map-legend {
	left: 18px;
	bottom: 18px;
	gap: 12px;
	font-size: 7px;
	color: #6d89ad;
}
.home-page .atlas-console .map-context {
	right: 16px;
	bottom: 19px;
	font-size: 7px;
	color: #9bb9dd;
}
.home-page .atlas-console .overlay-key {
	left: 18px;
	bottom: 58px;
	width: 138px;
}
.home-page .atlas-console .map-tooltip {
	left: 18px;
	top: 77px;
	padding: 17px;
	min-width: 180px;
	max-width: 205px;
	background: linear-gradient(145deg, #102d55f5, #0b2445f5);
	border-color: #bdd8ff4f;
	box-shadow: 0 12px 35px #000d;
	pointer-events: none;
	border-radius: 10px;
}
.home-page .atlas-console .map-tooltip strong {
	font-size: 23px;
	font-weight: 500;
	color: #f0f5ff;
	margin: 8px 0 13px;
	line-height: 1.15;
	display: block;
}
.division-hover-metric {
	padding-top: 12px;
	border-top: 1px solid #bdd8ff29;
	margin-bottom: 13px;
}
.division-hover-metric > b {
	display: block;
	color: #d3e3fc;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: -0.04em;
}
.division-hover-metric > span {
	font-size: 8px;
	color: #9bb9dd;
}
.division-hover-bar {
	height: 3px;
	background: #bdd8ff14;
	margin-top: 9px;
	border-radius: 3px;
	overflow: hidden;
}
.division-hover-bar > i {
	display: block;
	width: var(--hover-bar);
	height: 100%;
	background: linear-gradient(90deg, #6d89ad, #bdd8ff);
	border-radius: 3px;
}
.division-hover-details {
	display: flex;
	gap: 20px;
	margin-bottom: 13px;
}
.division-hover-details b {
	display: block;
	font-size: 14px;
	font-weight: 500;
	color: #d3e3fc;
}
.division-hover-details span {
	display: block;
	font-size: 7px;
	color: #9bb9dd;
}
.division-hover-footer {
	font-size: 7px;
	color: #6d89ad;
	border-top: 1px solid #bdd8ff1c;
	padding-top: 9px;
	line-height: 1.8;
}
.home-page .atlas-source-note {
	max-width: 1120px;
	font-size: 9px;
	color: #7b8e97;
	padding: 0 1%;
	margin-top: 23px;
	line-height: 1.9;
}
@media (min-width: 1600px) {
	.home-page .atlas-console .atlas-layout {
		grid-template-columns: minmax(0, 1fr) 350px;
	}
	.home-page .atlas-console .map-shell {
		height: 760px;
	}
	.home-page .atlas-console .inspector {
		max-height: 760px;
	}
	.program-feature-image {
		height: 430px;
	}
}
@media (max-width: 1100px) {
	.program-explorer {
		grid-template-columns: 280px minmax(0, 1fr);
		gap: 18px;
	}
	.program-navigation {
		padding: 22px 12px;
	}
	.program-feature-copy {
		flex: 1;
		align-content: center;
		padding: 25px;
		grid-template-columns: 1fr;
		gap: 18px;
	}
	.program-focus {
		border: 0;
		border-top: 1px solid #e6efff;
		padding: 15px 0 0;
	}
	.program-focus ul {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 18px;
	}
	.program-focus > span {
		margin-bottom: 10px;
	}
	.program-feature-image {
		height: 360px;
	}
	.home-page .atlas-console .atlas-layout {
		grid-template-columns: minmax(0, 1fr) 285px;
		gap: 15px;
	}
	.home-page .atlas-console .inspector-body {
		padding: 17px;
	}
	.home-page .atlas-console .metric-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.home-page .atlas-console .map-shell {
		height: 680px;
	}
	.home-page .atlas-console .inspector {
		max-height: 680px;
	}
}
@media (max-width: 900px) {
	.program-discovery-head {
		display: block;
	}
	.program-discovery-head p {
		margin-top: 20px;
	}
	.program-explorer {
		grid-template-columns: 1fr;
	}
	.program-navigation {
		padding: 20px;
	}
	.program-tabs {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 8px;
	}
	.program-tab {
		padding: 12px 8px;
		gap: 7px;
		min-height: 84px;
		flex-wrap: wrap;
		align-content: center;
	}
	.program-tab-index {
		display: none;
	}
	.program-tab-icon {
		width: 28px;
		height: 28px;
	}
	.program-tab-name {
		font-size: 10px;
		min-width: 70px;
	}
	.program-tab-arrow {
		display: none;
	}
	.program-navigation-note {
		display: none;
	}
	.program-directory-link {
		padding-top: 15px;
		margin-top: 15px;
	}
	.program-feature-image {
		height: 410px;
	}
	.program-feature-copy {
		grid-template-columns: 1.3fr 1fr;
		padding: 30px;
	}
	.program-focus {
		border-top: 0;
		border-left: 1px solid #e6efff;
		padding: 0 0 0 22px;
	}
	.program-focus ul {
		display: grid;
	}
	.home-page .atlas-console .atlas-layout {
		grid-template-columns: 1fr;
	}
	.home-page .atlas-console .map-shell {
		height: 670px;
	}
	.home-page .atlas-console .inspector {
		max-height: none;
		display: grid;
		grid-template-columns: 0.9fr 1.4fr;
	}
	.home-page .atlas-console .inspector-hero {
		min-height: 100%;
		padding: 28px;
	}
	.home-page .atlas-console .inspector-body {
		padding: 24px;
	}
	.home-page .atlas-console .rail-heading {
		font-size: 7px;
	}
	.home-page .atlas-console .rail-stat {
		padding: 0 14px;
	}
	.home-page .atlas-console .location-explorer {
		flex-wrap: wrap;
	}
	.home-page .atlas-console .location-explorer label {
		font-size: 9px;
	}
	.home-page .atlas-console .location-explorer select {
		max-width: 130px;
	}
}
@media (max-width: 600px) {
	.program-discovery {
		padding: 60px 6% 35px;
	}
	.program-discovery-head {
		margin-bottom: 27px;
	}
	.program-discovery-head h2 {
		font-size: 39px;
		max-width: 310px;
	}
	.program-discovery-head p {
		font-size: 12px;
		line-height: 1.8;
	}
	.program-navigation {
		padding: 17px 12px;
		border-radius: 12px;
	}
	.program-nav-heading {
		padding: 0 5px 15px;
		font-size: 7px;
	}
	.program-tabs {
		grid-template-columns: repeat(2, 1fr);
		gap: 5px;
	}
	.program-tab {
		min-height: 55px;
		padding: 10px 8px;
		flex-wrap: nowrap;
		gap: 9px;
	}
	.program-tab-name {
		font-size: 10px;
		min-width: 0;
	}
	.program-tab-icon {
		width: 27px;
		height: 27px;
	}
	.program-tab-icon svg {
		width: 17px;
		height: 17px;
	}
	.program-directory-link {
		font-size: 10px;
		padding: 15px 6px 0;
	}
	.program-feature {
		border-radius: 12px;
	}
	.program-feature-image {
		height: 340px;
	}
	.program-image-top {
		inset: 18px 21px auto;
	}
	.program-image-top > span:first-child {
		font-size: 9px;
	}
	.program-image-title {
		left: 24px;
		right: 24px;
		bottom: 57px;
	}
	.program-image-title h3 {
		font-size: 31px;
	}
	.program-image-title > span {
		font-size: 7px;
	}
	.program-image-caption {
		bottom: 21px;
		left: 24px;
		font-size: 7px;
		max-width: 85%;
	}
	.program-feature-copy {
		grid-template-columns: 1fr;
		padding: 24px;
		gap: 19px;
	}
	.program-feature-intro p {
		font-size: 12px;
	}
	.program-focus {
		border-left: 0;
		border-top: 1px solid #e6efff;
		padding: 17px 0 0;
	}
	.program-focus ul {
		display: flex;
		flex-wrap: wrap;
		gap: 9px 15px;
	}
	.program-feature-actions {
		gap: 18px;
		padding-top: 19px;
	}
	.program-feature-actions .button {
		font-size: 10px;
		min-height: 44px;
	}
	.program-map-link {
		font-size: 10px;
		min-height: 44px;
		gap: 10px;
	}
	.program-evidence-link {
		font-size: 8px;
		align-items: center;
	}
	.program-discovery-foot {
		display: block;
		padding-top: 20px;
		margin-top: 25px;
	}
	.program-discovery-foot > span {
		font-size: 7px;
	}
	.program-discovery-foot a {
		display: block;
		margin-top: 14px;
		font-size: 10px;
	}
	.home-page .atlas {
		padding: 55px 4% 36px;
	}
	.home-page .atlas-head {
		display: block;
		padding: 0 3%;
		margin-bottom: 27px;
	}
	.home-page .atlas-head h2 {
		font-size: 39px;
		max-width: 330px;
	}
	.home-page .atlas-head p {
		font-size: 12px;
		margin-top: 22px;
	}
	.home-page .atlas-head .source-badge {
		font-size: 8px;
	}
	.home-page .atlas-console {
		padding: 17px 12px;
		border-radius: 15px;
	}
	.home-page .atlas-console-head {
		font-size: 7px;
		letter-spacing: 0.07em;
		padding: 0 3px 16px;
	}
	.home-page .atlas-console-status {
		font-size: 0;
	}
	.home-page .atlas-console .impact-rail {
		grid-template-columns: repeat(4, 1fr);
		padding: 16px 0;
		margin-bottom: 14px;
	}
	.home-page .atlas-console .rail-heading {
		display: none;
	}
	.home-page .atlas-console .rail-stat {
		padding: 0 9px;
	}
	.home-page .atlas-console .rail-stat:first-of-type {
		border: 0;
	}
	.home-page .atlas-console .rail-stat strong {
		font-size: 24px;
	}
	.home-page .atlas-console .rail-stat span {
		font-size: 7px;
	}
	.atlas-filter-panel > summary {
		padding: 12px;
		gap: 10px;
		font-size: 9px;
	}
	.atlas-filter-description {
		display: none;
	}
	.atlas-filter-count {
		font-size: 7px;
	}
	.home-page .atlas-console .division-switcher {
		padding-bottom: 12px;
		margin-bottom: 13px;
		flex-wrap: nowrap;
		overflow-x: auto;
	}
	.home-page .division-switcher button {
		min-height: 44px;
		font-size: 9px;
		padding: 10px 12px;
		flex-shrink: 0;
	}
	.home-page .atlas-console .atlas-layout {
		display: grid;
		gap: 14px;
	}
	.home-page .atlas-console .map-shell {
		height: 550px;
	}
	.home-page .atlas-console .map-hint {
		left: 12px;
		top: 12px;
		font-size: 7px;
		max-width: 170px;
		gap: 9px;
	}
	.home-page .atlas-console .map-controls {
		right: 9px;
		bottom: 76px;
		grid-template-columns: 44px 44px;
		padding: 4px;
		gap: 3px;
	}
	.home-page .atlas-console .map-controls button {
		width: 44px;
		min-width: 44px;
		height: 44px;
		font-size: 10px;
	}
	.map-control-label {
		font-size: 4px;
	}
	.home-page .atlas-console #ambient-toggle {
		min-height: 44px;
		font-size: 10px;
	}
	.home-page .atlas-console #ambient-toggle span {
		font-size: 6px;
	}
	.home-page .atlas-console .map-tooltip {
		top: 67px;
		left: 12px;
		max-width: 160px;
		min-width: 146px;
		padding: 12px;
	}
	.home-page .atlas-console .map-tooltip strong {
		font-size: 20px;
		margin: 7px 0 10px;
	}
	.division-hover-metric {
		padding-top: 10px;
		margin-bottom: 10px;
	}
	.division-hover-metric > b {
		font-size: 21px;
	}
	.division-hover-details {
		margin-bottom: 10px;
		gap: 14px;
	}
	.division-hover-footer {
		font-size: 6px;
	}
	.home-page .atlas-console .overlay-key {
		left: 12px;
		bottom: 58px;
		width: 110px;
	}
	.home-page .atlas-console .map-legend {
		left: 12px;
		bottom: 17px;
		gap: 8px;
		font-size: 6px;
	}
	.home-page .atlas-console .map-context {
		right: 12px;
		bottom: 37px;
		font-size: 6px;
	}
	.home-page .atlas-console .inspector {
		display: block;
	}
	.home-page .atlas-console .inspector-hero {
		min-height: 170px;
		padding: 24px;
	}
	.home-page .atlas-console .inspector-body {
		padding: 20px;
	}
	.home-page .atlas-console .metric-card strong {
		font-size: 27px;
	}
	.home-page .atlas-console .sector-legend button {
		min-height: 44px;
		font-size: 9px;
	}
	.home-page .atlas-console .data-mode {
		margin: 12px 0 18px;
	}
	.home-page .atlas-console .location-explorer label {
		width: 100%;
		font-size: 10px;
	}
	.home-page .atlas-console .location-explorer select {
		max-width: 68%;
		width: 68%;
	}
	.home-page .atlas-source-note {
		padding: 0 3%;
		font-size: 8px;
		line-height: 1.9;
	}
	.home-page .atlas-console .map-fullscreen .map-hint {
		top: 20px;
		left: 20px;
	}
	.home-page .atlas-console .map-fullscreen .map-controls {
		bottom: 90px;
		right: 15px;
	}
}
@media (prefers-reduced-motion: reduce) {
	.program-feature-image > img {
		animation: none;
	}
	.program-tab,
	.program-tab-icon,
	.program-tab-arrow {
		transition: none;
	}
}

.home-page .atlas-console .map-controls button svg {
	width: 15px;
	height: 15px;
	display: block;
	margin: auto;
}
/* Administrative explorer: visible controls, flexible columns and map labels. */
.boundary-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin: 16px 0;
	color: #d3e3fc;
	font-size: 12px;
}
.boundary-toolbar label {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}
.boundary-toolbar select,
.home-page .atlas-console .location-explorer select {
	border: 1px solid #6d89ad54;
	border-radius: 6px;
	background: #0b2839;
	color: #f0f5ff;
	min-height: 44px;
	padding: 10px;
	max-width: 100%;
}
.boundary-toolbar option,
.atlas-console select option {
	background: #0b2839;
	color: #f0f5ff;
}
#geography-count {
	color: #bdd8ff;
	font-size: 11px;
}
.home-page .atlas-console .location-explorer {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
	gap: 12px;
	margin: 0 0 20px;
	padding: 16px 0;
	border-bottom: 1px solid #bdd8ff1c;
}
.home-page .atlas-console .location-explorer > strong {
	grid-column: 1/-1;
	width: auto;
	font-size: 12px !important;
}
.home-page .atlas-console .location-explorer label {
	display: grid;
	gap: 6px;
	min-width: 0;
	width: auto;
	font-size: 12px;
}
.home-page .atlas-console .location-explorer select {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	font-size: 13px;
}
.home-page .atlas-console .location-explorer .reset-link {
	align-self: end;
	min-height: 44px;
	font-size: 12px;
}
.home-page .atlas-console .filterbar select,
.home-page .atlas-console .filterbar input {
	font-size: 13px;
	min-height: 44px;
}
.home-page .atlas-console .map-stage svg {
	overflow: hidden;
}
.home-page .atlas-console .svg-region:focus-visible {
	outline: none;
	stroke: #fff;
	stroke-width: 2.5px;
	fill: #23466c;
}
.home-page .atlas-console .svg-region:hover {
	stroke: #fff;
	stroke-width: 1.6px;
}
.home-page .atlas-console .division-label.selected {
	background: #102d55;
	border-color: #d3e3fc;
	font-weight: 700;
	z-index: 1;
}
.home-page .atlas-console .atlas-filter-panel > summary {
	font-size: 12px;
}
.home-page .atlas-source-note {
	font-size: 11px;
	line-height: 1.7;
}
@media (max-width: 900px) {
	.home-page .atlas-console .location-explorer {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.home-page .atlas-console .location-explorer label {
		font-size: 12px;
	}
}
@media (max-width: 600px) {
	.home-page .atlas-console .location-explorer {
		grid-template-columns: minmax(0, 1fr);
	}
	.home-page .atlas-console .location-explorer select {
		width: 100%;
		max-width: 100%;
		font-size: 16px;
	}
	.home-page .atlas-console .filterbar {
		grid-template-columns: minmax(0, 1fr);
	}
	.home-page .atlas-console .filterbar label {
		border-right: 0;
		border-bottom: 1px solid #bdd8ff1c;
	}
	.home-page .atlas-console .filterbar input,
	.home-page .atlas-console .filterbar select {
		font-size: 16px;
	}
	.boundary-toolbar label {
		display: grid;
		flex: 1;
		min-width: 0;
	}
	.boundary-toolbar select {
		font-size: 16px;
		width: 100%;
	}
	.home-page .atlas-console .map-controls {
		grid-template-columns: 44px 44px;
		bottom: 70px;
	}
	.home-page .atlas-console .map-shell {
		height: 560px;
	}
	.home-page .atlas-console .map-hint {
		max-width: 160px;
	}
	.home-page .atlas-source-note {
		font-size: 11px;
	}
	.home-page .atlas-console .atlas-filter-panel > summary {
		font-size: 12px;
	}
	.home-page .atlas-console .data-mode select {
		font-size: 14px;
	}
}
