.dysten-procurement {
	--dysten-cpv-navy: #163269;
	--dysten-cpv-blue: #1b4498;
	--dysten-cpv-orange: #eb5000;
	--dysten-cpv-border: #dee3ed;
	--dysten-cpv-surface: #f5f7fa;
	position: relative;
	margin: clamp(2rem, 5vw, 4.5rem) 0;
	padding: clamp(1.5rem, 4vw, 2.75rem);
	overflow: hidden;
	border: 1px solid var(--dysten-cpv-border);
	border-radius: 4px;
	background: var(--dysten-cpv-surface);
	color: #1b2436;
}

.dysten-procurement__accent {
	position: absolute;
	inset: 0 auto 0 0;
	width: 5px;
	background: var(--dysten-cpv-orange);
}

.dysten-procurement__heading {
	margin: 0 0 1rem;
	color: var(--dysten-cpv-navy);
	font-size: clamp(1.55rem, 3vw, 2rem);
	line-height: 1.2;
}

.dysten-procurement__intro,
.dysten-procurement__text {
	max-width: 72ch;
}

.dysten-procurement__intro p,
.dysten-procurement__text p {
	margin: 0 0 1rem;
}

.dysten-procurement__section + .dysten-procurement__section {
	margin-top: 1.75rem;
	padding-top: 1.75rem;
	border-top: 1px solid var(--dysten-cpv-border);
}

.dysten-procurement__subheading {
	margin: 0 0 0.75rem;
	color: var(--dysten-cpv-blue);
	font-size: 1.15rem;
	line-height: 1.35;
}

.dysten-procurement__codes {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr));
	gap: 0.65rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.dysten-procurement__code {
	display: grid;
	grid-template-columns: minmax(6.8rem, auto) 1fr;
	gap: 0.75rem;
	align-items: start;
	padding: 0.8rem 0.9rem;
	border: 1px solid var(--dysten-cpv-border);
	background: #fff;
}

.dysten-procurement__code-value {
	color: var(--dysten-cpv-navy);
	font-variant-numeric: tabular-nums;
	font-weight: 700;
	white-space: nowrap;
}

.dysten-procurement__code-name {
	line-height: 1.35;
}

.dysten-procurement__disclaimer {
	margin: 1.25rem 0 0;
	color: #536078;
	font-size: 0.875rem;
	line-height: 1.5;
}

@media (max-width: 520px) {
	.dysten-procurement__code {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}
}
