.election-desk-grid {
	display: grid;
	gap: 2rem;
	align-items: start;
	margin-block-start: 1.75rem;
}

.election-desk-label {
	margin: 0 0 0.7rem;
	color: var(--ink, #111);
	font-family: var(--cond, "Roboto Condensed", sans-serif);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.2;
	text-transform: uppercase;
}

.election-desk .newsroom-section h1 {
	text-wrap: balance;
}

.election-desk .newsroom-wire-archive .newsroom-wire-row:first-child h2 {
	font-size: 1.45rem;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.election-results {
	order: -1;
	border-block-start: 3px solid var(--ink, #111);
	padding-block-start: 0.85rem;
}

.election-results p {
	margin: 0;
	color: var(--ink-soft, #243044);
	font-family: var(--sans, Inter, sans-serif);
	font-size: 0.95rem;
	line-height: 1.5;
}

.election-results a {
	color: var(--atlas, #0b4fa8);
	text-underline-offset: 0.15em;
}

.election-desk a:focus-visible {
	outline: 2px solid var(--atlas, #0b4fa8);
	outline-offset: 2px;
}

.election-results table {
	width: 100%;
	border-collapse: collapse;
	font-family: var(--sans, Inter, sans-serif);
	font-size: 0.9375rem;
	font-variant-numeric: tabular-nums;
}

.election-results caption {
	margin: 0 0 0.35rem;
	caption-side: top;
	color: var(--ink-soft, #243044);
	font-family: var(--cond, "Roboto Condensed", sans-serif);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-align: end;
	text-transform: uppercase;
}

.election-results th,
.election-results td {
	padding: 0.45rem 0;
	border-block-end: 1px solid var(--rule, #d5d5d5);
	text-align: start;
	font-weight: 500;
}

.election-results td {
	text-align: end;
	font-weight: 700;
}

.election-results .election-asof {
	margin-block-start: 0.75rem;
}

@media (min-width: 64rem) {
	.election-desk-grid {
		grid-template-columns: minmax(0, 1fr) 18rem;
		column-gap: 2.5rem;
	}

	.election-results {
		position: sticky;
		top: 6.5rem;
		order: 0;
	}
}
