.remittance-page {
	--remittance-red: #e85d4f;
	--remittance-red-deep: #971f16;
	--remittance-gold: #fbad37;
	--remittance-blue: #86a8c6;
	--remittance-ink: #e9edf3;
	--remittance-muted: #aab3bf;
	--remittance-line: rgb(255 255 255 / 12%);
	--remittance-panel: rgb(13 18 25 / 76%);
	--remittance-width: 94rem;
	position: relative;
	max-width: none;
	color: var(--remittance-ink);
}

.remittance-page h2,
.remittance-page h3,
.remittance-page p {
	text-wrap: pretty;
}

.remittance-hero {
	position: relative;
	max-width: var(--remittance-width);
	margin-inline: auto;
	padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 4vw, 4rem) 3.5rem;
	overflow: hidden;
}

.remittance-hero .project-intro__body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0 3rem;
}

.remittance-hero .project-intro__body > h1,
.remittance-hero .project-intro__body > p,
.remittance-hero .project-intro__body > nav {
	grid-column: 1;
}

.remittance-hero::after {
	position: absolute;
	z-index: -1;
	top: -10rem;
	right: 5%;
	width: 34rem;
	height: 34rem;
	border-radius: 50%;
	background: radial-gradient(circle, rgb(232 93 79 / 18%), transparent 68%);
	content: "";
	pointer-events: none;
}

.remittance-hero h1 {
	max-width: 11ch;
	margin: 0.25rem 0 1.25rem;
	font-size: clamp(3.3rem, 8vw, 8rem);
	line-height: 0.88;
	letter-spacing: -0.07em;
}

.remittance-hero > hr {
	grid-column: 1 / -1;
	width: 100%;
	margin: 0;
	border: 0;
	border-top: 1px solid var(--remittance-line);
}

.remittance-page > .project-glossary {
	max-width: var(--remittance-width);
	margin-inline: auto;
}

.remittance-hero .project-intro__body > p:last-of-type {
	max-width: 52rem;
	font-size: clamp(1.05rem, 2vw, 1.35rem);
	color: var(--remittance-muted);
}

.remittance-hero__stamp {
	grid-column: 2;
	grid-row: 1 / 4;
	align-self: end;
	display: grid;
	grid-template-columns: auto auto;
	gap: 0.3rem 1rem;
	min-width: 13rem;
	padding: 1.25rem;
	border: 1px solid var(--remittance-line);
	background: rgb(0 0 0 / 18%);
}

.remittance-hero__stamp span {
	align-self: center;
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--remittance-muted);
}

.remittance-hero__stamp strong {
	font-size: 1.35rem;
	font-variant-numeric: tabular-nums;
}

.remittance-jump {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	margin-top: 2rem;
}

.remittance-jump a,
.remittance-download {
	display: inline-flex;
	align-items: center;
	min-height: 2.45rem;
	padding: 0.45rem 0.8rem;
	border: 1px solid var(--remittance-line);
	border-radius: 0.25rem;
	background: rgb(255 255 255 / 3%);
	color: var(--remittance-ink);
	font: inherit;
	font-size: 0.82rem;
	text-decoration: none;
	cursor: pointer;
}

.remittance-jump a:hover,
.remittance-download:hover {
	border-color: var(--remittance-gold);
	background: rgb(251 173 55 / 8%);
}

.remittance-status {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	max-width: var(--remittance-width);
	margin: 0 auto 1rem;
	padding: 0 4rem;
	font-size: 0.8rem;
	color: var(--remittance-muted);
}

.remittance-status__dot {
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	background: var(--remittance-gold);
	box-shadow: 0 0 0.6rem rgb(251 173 55 / 60%);
}

.remittance-status.is-ready .remittance-status__dot {
	background: #72bd91;
	box-shadow: none;
}

.remittance-status.is-error {
	color: #ffb4ac;
}

.remittance-status.is-error .remittance-status__dot {
	background: var(--remittance-red);
}

.remittance-thesis {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(32rem, 1.15fr);
	gap: clamp(2rem, 5vw, 6rem);
	max-width: var(--remittance-width);
	margin: 0 auto 1rem;
	padding: clamp(2rem, 4vw, 4rem);
	border-block: 1px solid var(--remittance-line);
	background: linear-gradient(125deg, rgb(232 93 79 / 8%), transparent 42%), var(--remittance-panel);
}

.remittance-thesis h2 {
	max-width: 16ch;
	margin: 0.35rem 0 1rem;
	font-size: clamp(2rem, 4vw, 4.4rem);
	line-height: 1;
	letter-spacing: -0.045em;
}

.remittance-thesis > div > p:last-child,
.remittance-section__lede {
	max-width: 58rem;
	color: var(--remittance-muted);
}

.remittance-kpis {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-self: stretch;
	border: 1px solid var(--remittance-line);
}

.remittance-kpis article {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 12rem;
	padding: 1.35rem;
	border-right: 1px solid var(--remittance-line);
}

.remittance-kpis article:last-child {
	border-right: 0;
}

.remittance-kpis span,
.remittance-kpis small {
	color: var(--remittance-muted);
}

.remittance-kpis span {
	min-height: 2.5em;
	font-size: 0.72rem;
	line-height: 1.25;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.remittance-kpis strong {
	margin: 0.5rem 0;
	font-size: clamp(1.65rem, 3vw, 2.75rem);
	line-height: 1;
	letter-spacing: -0.045em;
	font-variant-numeric: tabular-nums;
}

.remittance-kpis small {
	font-size: 0.78rem;
	line-height: 1.35;
}

.remittance-section,
.remittance-method {
	max-width: var(--remittance-width);
	margin: 1rem auto;
	padding: clamp(1.35rem, 4vw, 4rem);
	border: 1px solid var(--remittance-line);
	background: var(--remittance-panel);
	scroll-margin-top: 2rem;
}

.remittance-section .project-panel__head {
	margin-bottom: 2rem;
}

.remittance-section .project-panel__head h2,
.remittance-method__head h2 {
	margin-top: 0.25rem;
	font-size: clamp(1.8rem, 4vw, 3.8rem);
	line-height: 1;
	letter-spacing: -0.045em;
}

.remittance-panel-head,
.remittance-method__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
}

.chart-meta,
.remittance-confidence {
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--remittance-muted);
}

.remittance-trend {
	min-height: 24rem;
}

.remittance-trend svg {
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
}

.remittance-trend .grid-line {
	stroke: rgb(255 255 255 / 10%);
	stroke-width: 1;
}

.remittance-trend .axis-label {
	fill: var(--remittance-muted);
	font:
		12px system-ui,
		sans-serif;
}

.remittance-trend .trend-area {
	fill: rgb(232 93 79 / 16%);
}

.remittance-trend .trend-line {
	fill: none;
	stroke: var(--remittance-red);
	stroke-width: 4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.remittance-trend .trend-dot {
	fill: #111820;
	stroke: var(--remittance-red);
	stroke-width: 3;
	cursor: help;
}

.remittance-trend .trend-dot:focus-visible {
	outline: none;
	stroke: var(--remittance-gold);
	stroke-width: 6;
}

.remittance-trend .trend-dot:last-of-type {
	fill: var(--remittance-gold);
	stroke: var(--remittance-gold);
}

.remittance-trend .control-line {
	stroke: var(--remittance-gold);
	stroke-width: 1.5;
	stroke-dasharray: 5 5;
}

.remittance-trend .control-label {
	fill: var(--remittance-gold);
	font:
		700 12px system-ui,
		sans-serif;
}

.remittance-insight-row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	margin-top: 1rem;
	background: var(--remittance-line);
	border: 1px solid var(--remittance-line);
}

.remittance-insight-row p {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 1rem;
	margin: 0;
	padding: 1.2rem;
	background: #111820;
}

.remittance-insight-row strong {
	font-size: 1.6rem;
	color: var(--remittance-gold);
	font-variant-numeric: tabular-nums;
}

.remittance-insight-row span {
	font-size: 0.83rem;
	color: var(--remittance-muted);
}

.remittance-year-control {
	display: grid;
	grid-template-columns: auto minmax(8rem, 22rem) 3.5rem;
	align-items: center;
	gap: 1rem;
	margin: 2rem 0;
}

.remittance-year-control label,
.remittance-controls legend,
.remittance-controls label {
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.remittance-year-control input {
	accent-color: var(--remittance-red);
}

.remittance-year-control output {
	padding: 0.35rem 0.5rem;
	background: var(--remittance-red-deep);
	text-align: center;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.remittance-country-filter {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 1rem;
	margin: 1rem 0 1.5rem;
}

.remittance-country-filter label {
	display: grid;
	gap: 0.45rem;
	width: min(100%, 28rem);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.remittance-country-filter input {
	min-height: 2.8rem;
	padding: 0.6rem 0.8rem;
	border: 1px solid var(--remittance-line);
	background: #111820;
	color: var(--remittance-ink);
	font: inherit;
}

.remittance-country-filter input:focus-visible {
	outline: 2px solid var(--remittance-gold);
	outline-offset: 2px;
}

.remittance-country-filter__result {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding-bottom: 0.4rem;
}

.remittance-country-filter output {
	font-size: 0.82rem;
	color: var(--remittance-muted);
	font-variant-numeric: tabular-nums;
}

.remittance-country-filter__result button,
.remittance-corridor-legend button {
	padding: 0.35rem 0.55rem;
	border: 1px solid var(--remittance-line);
	background: #111820;
	color: var(--remittance-ink);
	font: inherit;
	font-size: 0.75rem;
	cursor: pointer;
}

.remittance-country-filter__result button:hover,
.remittance-country-filter__result button:focus-visible,
.remittance-corridor-legend button:hover,
.remittance-corridor-legend button:focus-visible {
	border-color: var(--remittance-gold);
	outline: none;
}

.remittance-corridor-chart-meta {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1.5rem;
	font-size: 0.75rem;
	color: var(--remittance-muted);
}

.remittance-total-toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	cursor: pointer;
	color: var(--remittance-ink);
}

.remittance-total-toggle input {
	accent-color: var(--remittance-gold);
}

.remittance-total-toggle i {
	width: 1.35rem;
	border-top: 3px dashed var(--remittance-gold);
}

.remittance-corridor-lines {
	min-height: 0;
	margin-top: 0.75rem;
}

.remittance-corridor-lines .corridor-series {
	fill: none;
	stroke: var(--series-color, var(--remittance-blue));
	stroke-width: 2.25;
	stroke-linecap: round;
	stroke-linejoin: round;
	opacity: 0.68;
	transition:
		opacity 120ms ease,
		stroke-width 120ms ease,
		stroke 120ms ease;
}

.remittance-corridor-lines .corridor-series.is-active {
	stroke-width: 5;
	opacity: 1;
}

.remittance-corridor-lines .corridor-total-series {
	fill: none;
	stroke: var(--remittance-gold);
	stroke-width: 4;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 9 6;
}

.remittance-corridor-lines .corridor-series-hit,
.remittance-corridor-lines .corridor-total-hit {
	fill: none;
	stroke: transparent;
	stroke-width: 14;
	pointer-events: stroke;
	cursor: crosshair;
}

.remittance-corridor-lines .corridor-series-hit:focus,
.remittance-corridor-lines .corridor-total-hit:focus {
	outline: none;
}

.remittance-corridor-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 1rem;
}

.remittance-corridor-legend button::before {
	display: inline-block;
	width: 0.65rem;
	height: 3px;
	margin-right: 0.4rem;
	background: var(--series-color, var(--remittance-blue));
	vertical-align: middle;
	content: "";
}

.remittance-filter-empty {
	margin: 0;
	padding: 1rem;
	border: 1px solid var(--remittance-line);
	color: var(--remittance-muted);
}

.remittance-bars {
	display: grid;
	gap: 0.65rem;
	margin-top: 2rem;
}

.remittance-bar {
	display: grid;
	grid-template-columns: minmax(8.5rem, 15rem) minmax(10rem, 1fr) minmax(8rem, auto);
	align-items: center;
	gap: 1rem;
	font-size: 0.86rem;
}

.remittance-bar__label {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.remittance-bar__track {
	position: relative;
	height: 1rem;
	background: rgb(255 255 255 / 6%);
}

.remittance-bar__fill {
	display: block;
	width: var(--bar-width);
	height: 100%;
	background: var(--remittance-red);
	transform-origin: left;
}

.remittance-bar__value {
	text-align: right;
	color: var(--remittance-ink);
	font-weight: 750;
	font-variant-numeric: tabular-nums;
}

.remittance-bar[tabindex="0"] {
	cursor: help;
}

.remittance-bar[tabindex="0"]:focus-visible {
	outline: 2px solid var(--remittance-gold);
	outline-offset: 4px;
}

.remittance-bar__reference {
	position: absolute;
	z-index: 1;
	top: -0.35rem;
	bottom: -0.35rem;
	left: var(--reference-position);
	border-left: 2px solid var(--remittance-gold);
}

.remittance-bar.is-reference .remittance-bar__label,
.remittance-bar.is-reference .remittance-bar__value {
	color: var(--remittance-gold);
	font-weight: 800;
}

.remittance-bar.is-reference .remittance-bar__fill {
	background: var(--remittance-gold);
}

.remittance-table-details {
	margin-top: 2rem;
	border-top: 1px solid var(--remittance-line);
}

.remittance-table-details summary {
	padding: 1rem 0;
	font-weight: 700;
	cursor: pointer;
}

.remittance-table-scroll {
	overflow-x: auto;
}

.remittance-table-scroll table {
	width: 100%;
	border-collapse: collapse;
}

.remittance-table-scroll th,
.remittance-table-scroll td {
	padding: 0.75rem;
	border-bottom: 1px solid var(--remittance-line);
	text-align: left;
}

.remittance-table-scroll th:nth-child(n + 3),
.remittance-table-scroll td:nth-child(n + 3) {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

#corridor-table-head th:nth-child(n + 2),
#corridor-table-body td:nth-child(n + 2) {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.remittance-controls {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 1rem 2rem;
	margin: 2rem 0;
}

.remittance-controls fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

.remittance-controls legend {
	margin-bottom: 0.55rem;
}

.remittance-controls label {
	display: grid;
	gap: 0.55rem;
}

.remittance-segment {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid var(--remittance-line);
}

.remittance-segment button,
.remittance-controls select {
	min-height: 2.7rem;
	padding: 0.55rem 0.8rem;
	border: 0;
	border-right: 1px solid var(--remittance-line);
	border-radius: 0;
	background: #111820;
	color: var(--remittance-ink);
	font: inherit;
	font-size: 0.82rem;
	cursor: pointer;
}

.remittance-segment button:last-child {
	border-right: 0;
}

.remittance-segment button[aria-pressed="true"] {
	background: var(--remittance-red-deep);
}

.remittance-controls select {
	min-width: 17rem;
	border: 1px solid var(--remittance-line);
}

.remittance-reference-note {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	padding: 0.9rem 1rem;
	border-left: 3px solid var(--remittance-gold);
	background: rgb(251 173 55 / 7%);
	font-size: 0.85rem;
}

.remittance-reference-note__swatch {
	width: 0.75rem;
	height: 0.75rem;
	background: var(--remittance-gold);
}

.remittance-bars--income {
	gap: 0.52rem;
}

.remittance-proxy {
	background: linear-gradient(155deg, rgb(134 168 198 / 8%), transparent 38%), var(--remittance-panel);
}

.remittance-proxy-definition {
	display: grid;
	grid-template-columns: minmax(16rem, 0.7fr) minmax(24rem, 1.3fr);
	gap: 1.5rem;
	align-items: baseline;
	margin: 1.5rem 0;
	padding: 1.25rem;
	border-left: 4px solid var(--remittance-gold);
	background: rgb(251 173 55 / 8%);
}

.remittance-proxy-definition strong {
	font-size: 1.2rem;
}

.remittance-proxy-definition p {
	margin: 0;
	color: var(--remittance-muted);
}

.remittance-proxy-definition p span {
	color: var(--remittance-ink);
	font-weight: 800;
}

.remittance-proxy-totals {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	margin: 1.5rem 0 2rem;
	border: 1px solid var(--remittance-line);
	background: var(--remittance-line);
}

.remittance-proxy-totals article {
	display: grid;
	gap: 0.45rem;
	padding: 1.15rem;
	background: #10171f;
}

.remittance-proxy-totals article.is-unknown {
	box-shadow: inset 0 3px 0 var(--remittance-gold);
}

.remittance-proxy-totals span,
.remittance-proxy-totals small {
	color: var(--remittance-muted);
}

.remittance-proxy-totals strong {
	font-size: clamp(1.3rem, 2.4vw, 2rem);
	font-variant-numeric: tabular-nums;
}

.remittance-percentage-summary {
	display: flex;
	align-items: baseline;
	gap: 0.75rem;
	margin: 1.25rem 0;
	padding: 1rem 1.15rem;
	border-left: 3px solid var(--remittance-blue);
	background: rgb(134 168 198 / 8%);
	color: var(--remittance-muted);
}

.remittance-percentage-summary strong {
	color: var(--remittance-ink);
	font-size: 1.6rem;
	font-variant-numeric: tabular-nums;
}

.remittance-percentage-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem 1.25rem;
	margin-top: 1rem;
	font-size: 0.78rem;
	color: var(--remittance-muted);
}

.remittance-percentage-legend span {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.remittance-percentage-legend i {
	display: block;
	width: 0.65rem;
	height: 0.65rem;
	background: var(--remittance-red);
}

.remittance-percentage-legend span:nth-child(2) i {
	background: var(--remittance-blue);
}

.remittance-caveat {
	display: grid;
	grid-template-columns: minmax(14rem, 0.55fr) minmax(20rem, 1.45fr);
	gap: 2rem;
	align-items: center;
	margin: 1.5rem 0 2.5rem;
	padding: 1.25rem;
	border: 1px solid rgb(251 173 55 / 35%);
	background: rgb(251 173 55 / 6%);
}

.remittance-caveat h3,
.remittance-caveat p {
	margin: 0.25rem 0;
}

.remittance-caveat p {
	color: var(--remittance-muted);
}

.remittance-proxy-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.6fr);
	gap: clamp(2rem, 5vw, 5rem);
}

.remittance-proxy-columns {
	display: grid;
	grid-template-columns: minmax(7rem, 10rem) minmax(8rem, 1fr) minmax(29rem, 1.8fr);
	gap: 1rem;
	margin-top: 1.5rem;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid var(--remittance-line);
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--remittance-muted);
}

.remittance-proxy-columns span:last-child {
	text-align: right;
}

.remittance-bars--proxy .remittance-bar {
	grid-template-columns: minmax(7rem, 10rem) minmax(8rem, 1fr) minmax(29rem, 1.8fr);
}

.remittance-bars--proxy button.remittance-bar {
	width: 100%;
	padding: 0.45rem 0;
	border: 0;
	border-bottom: 1px solid rgb(255 255 255 / 7%);
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.remittance-bars--proxy .remittance-bar__value {
	display: grid;
	grid-template-columns: repeat(4, minmax(5.6rem, 1fr));
	gap: 0.7rem;
}

.remittance-bars--proxy .remittance-bar__value > span {
	display: grid;
	gap: 0.15rem;
}

.remittance-bars--proxy .remittance-bar__value strong {
	font-size: 0.82rem;
	font-variant-numeric: tabular-nums;
}

.remittance-bars--proxy .remittance-bar__value small {
	font-size: 0.65rem;
	font-weight: 500;
	color: var(--remittance-muted);
}

.remittance-bars--proxy button:focus-visible .remittance-bar__track {
	outline: 2px solid var(--remittance-gold);
	outline-offset: 3px;
}

.remittance-bars--proxy .remittance-bar.is-selected .remittance-bar__label {
	color: var(--remittance-gold);
	font-weight: 800;
}

.remittance-proxy-detail {
	align-self: start;
	position: sticky;
	top: 1rem;
	padding: 1.4rem;
	border: 1px solid var(--remittance-line);
	background: #10171f;
}

.remittance-proxy-detail h3 {
	margin: 0.2rem 0 1.2rem;
	font-size: 2rem;
}

.remittance-proxy-detail dl {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 0.75rem 1rem;
	margin: 0;
}

.remittance-proxy-detail dt {
	color: var(--remittance-muted);
}

.remittance-proxy-detail dd {
	margin: 0;
	text-align: right;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.remittance-proxy-detail p:last-child {
	margin-bottom: 0;
	padding-top: 1rem;
	border-top: 1px solid var(--remittance-line);
	font-size: 0.78rem;
	color: var(--remittance-muted);
}

.remittance-unknown {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	align-items: center;
	margin-top: 2.5rem;
	padding-top: 2rem;
	border-top: 1px solid var(--remittance-line);
}

.remittance-unknown > span {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border: 1px solid var(--remittance-blue);
	border-radius: 50%;
	color: var(--remittance-blue);
	font-size: 1.5rem;
	font-weight: 900;
}

.remittance-unknown p {
	margin: 0.25rem 0 0;
	color: var(--remittance-muted);
}

.remittance-impact {
	border-color: rgb(134 168 198 / 35%);
}

.remittance-impact__answer {
	display: grid;
	grid-template-columns: minmax(13rem, 0.45fr) minmax(20rem, 1.55fr);
	gap: 1.5rem;
	align-items: baseline;
	margin: 1.5rem 0;
	padding: 1.25rem;
	border-left: 4px solid var(--remittance-gold);
	background: rgb(251 173 55 / 7%);
}

.remittance-impact__answer strong {
	font-size: 1.35rem;
}

.remittance-impact__answer p {
	margin: 0;
	color: var(--remittance-muted);
}

.remittance-scale-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin: 2rem 0;
	border: 1px solid var(--remittance-line);
	background: var(--remittance-line);
}

.remittance-scale-grid article {
	display: grid;
	gap: 0.45rem;
	padding: 1.25rem;
	background: #10171f;
	cursor: help;
}

.remittance-scale-grid article:focus-visible {
	outline: 2px solid var(--remittance-gold);
	outline-offset: -3px;
}

.remittance-scale-grid span,
.remittance-scale-grid small {
	color: var(--remittance-muted);
}

.remittance-scale-grid strong {
	font-size: clamp(1.6rem, 4vw, 2.5rem);
	font-variant-numeric: tabular-nums;
}

.remittance-scenario {
	display: grid;
	grid-template-columns: minmax(16rem, 0.7fr) minmax(22rem, 1.3fr);
	gap: 2rem;
	margin-top: 2.5rem;
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid var(--remittance-line);
	background: rgb(255 255 255 / 3%);
}

.remittance-scenario h3 {
	margin: 0.35rem 0 0.75rem;
}

.remittance-scenario > div:first-child p:last-child {
	color: var(--remittance-muted);
}

.remittance-scenario__controls {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: end;
	margin: 0;
}

.remittance-scenario__controls label {
	display: grid;
	gap: 0.35rem;
}

.remittance-scenario__controls label span {
	font-size: 0.8rem;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	color: var(--remittance-muted);
}

.remittance-scenario__controls input {
	grid-column: 1;
	width: 100%;
	accent-color: var(--remittance-red);
}

.remittance-scenario__controls select {
	min-height: 2.7rem;
	padding: 0.55rem 0.8rem;
	border: 1px solid var(--remittance-line);
	background: #111820;
	color: var(--remittance-ink);
	font: inherit;
}

.remittance-scenario__outputs {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.remittance-scenario__outputs article {
	display: grid;
	gap: 0.45rem;
	padding: 1.15rem;
	border: 1px solid var(--remittance-line);
	background: #10171f;
}

.remittance-scenario__outputs span {
	color: var(--remittance-muted);
}

.remittance-scenario__outputs strong {
	font-size: clamp(1.4rem, 3vw, 2.1rem);
	font-variant-numeric: tabular-nums;
}

.remittance-scenario__warning {
	grid-column: 1 / -1;
	margin: 0;
	padding-top: 1rem;
	border-top: 1px solid var(--remittance-line);
	font-size: 0.82rem;
	color: var(--remittance-muted);
}

.remittance-tooltip {
	z-index: 30;
	width: min(19rem, calc(100vw - 2rem));
}

.remittance-tooltip > strong {
	display: block;
	margin-bottom: 0.65rem;
	font-size: 1rem;
}

.remittance-tooltip dl {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.4rem 0.9rem;
	margin: 0;
}

.remittance-tooltip dt {
	color: var(--remittance-muted);
}

.remittance-tooltip dd {
	margin: 0;
	text-align: right;
	font-weight: 750;
	font-variant-numeric: tabular-nums;
}

.remittance-method {
	margin-bottom: 4rem;
}

.remittance-method__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin-top: 2rem;
	background: var(--remittance-line);
	border: 1px solid var(--remittance-line);
}

.remittance-method__grid article {
	padding: 1.5rem;
	background: #111820;
}

.remittance-method__grid article > span {
	color: var(--remittance-red);
	font-size: 0.75rem;
	font-weight: 800;
}

.remittance-method__grid h3 {
	margin: 0.8rem 0;
}

.remittance-method__grid p {
	margin-bottom: 0;
	color: var(--remittance-muted);
}

.remittance-quality {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(18rem, 0.5fr);
	gap: 3rem;
	margin-top: 2rem;
	padding: 1.5rem;
	background: rgb(255 255 255 / 3%);
}

.remittance-quality ul {
	margin-bottom: 0;
	padding-left: 1.2rem;
	color: var(--remittance-muted);
}

.remittance-quality li + li {
	margin-top: 0.55rem;
}

.remittance-quality dl {
	display: grid;
	grid-template-columns: 1fr auto;
	align-content: start;
	gap: 0.6rem 1rem;
	margin: 0;
}

.remittance-quality dt {
	color: var(--remittance-muted);
}

.remittance-quality dd {
	margin: 0;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.remittance-updated {
	margin-bottom: 0;
	font-size: 0.78rem;
	color: var(--remittance-muted);
}

.remittance-updated code {
	color: var(--remittance-blue);
}

@media (max-width: 960px) {
	.remittance-thesis,
	.remittance-proxy-grid,
	.remittance-scenario {
		grid-template-columns: 1fr;
	}

	.remittance-proxy-detail {
		position: static;
	}

	.remittance-quality {
		grid-template-columns: 1fr;
	}

	.remittance-proxy-totals {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.remittance-hero .project-intro__body {
		grid-template-columns: 1fr;
	}

	.remittance-hero__stamp {
		grid-column: 1;
		grid-row: auto;
		justify-self: start;
	}

	.remittance-status {
		padding-inline: 1.25rem;
	}

	.remittance-thesis {
		grid-template-columns: 1fr;
		padding: 1.5rem 1.25rem;
	}

	.remittance-kpis,
	.remittance-method__grid,
	.remittance-scale-grid,
	.remittance-scenario__outputs,
	.remittance-proxy-totals {
		grid-template-columns: 1fr;
	}

	.remittance-kpis article {
		min-height: auto;
		border-right: 0;
		border-bottom: 1px solid var(--remittance-line);
	}

	.remittance-kpis article:last-child {
		border-bottom: 0;
	}

	.remittance-section,
	.remittance-method {
		margin-inline: 0;
		padding: 1.5rem 1.25rem;
		border-inline: 0;
	}

	.remittance-panel-head,
	.remittance-method__head,
	.remittance-caveat,
	.remittance-impact__answer,
	.remittance-proxy-definition {
		align-items: start;
		grid-template-columns: 1fr;
		flex-direction: column;
	}

	.remittance-insight-row {
		grid-template-columns: 1fr;
	}

	.remittance-bar,
	.remittance-bars--proxy .remittance-bar {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.55rem;
	}

	.remittance-bar__track {
		grid-column: 1 / -1;
		grid-row: 2;
	}

	.remittance-bar__value {
		grid-column: 2;
		grid-row: 1;
	}

	.remittance-proxy-columns {
		display: none;
	}

	.remittance-bars--proxy .remittance-bar__value {
		grid-column: 1 / -1;
		grid-row: 3;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		text-align: left;
	}

	.remittance-country-filter {
		align-items: stretch;
		flex-direction: column;
	}

	.remittance-country-filter output {
		padding-bottom: 0;
	}

	.remittance-country-filter__result,
	.remittance-corridor-chart-meta {
		align-items: flex-start;
		flex-direction: column;
	}

	.remittance-percentage-summary {
		align-items: flex-start;
		flex-direction: column;
	}

	.remittance-scenario__controls {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.remittance-scenario__controls label,
	.remittance-scenario__controls input {
		grid-column: 1;
	}

	.remittance-bar {
		font-size: 0.76rem;
	}

	.remittance-controls,
	.remittance-segment {
		align-items: stretch;
		flex-direction: column;
	}

	.remittance-segment button {
		border-right: 0;
		border-bottom: 1px solid var(--remittance-line);
	}

	.remittance-segment button:last-child {
		border-bottom: 0;
	}

	.remittance-quality {
		gap: 1.5rem;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.remittance-bar__fill {
		transition: width 180ms ease;
	}
}
