/*
 * Subsidiepagina (componenten A–M). Mobile-first; tweekoloms vanaf 782 is niet nodig
 * (lopende tekst blijft 624), de inhoudsopgave staat vanaf 1024 links naast de tekst.
 * Geen hex: kleuren via --wp--preset--color--*. Alleen deze pagina (.dsc-kb).
 */
.dsc-kb {
	box-sizing: border-box;
	max-width: 624px;
	margin: 0 auto;
	padding: 32px var(--dsc-gutter, 20px) 96px;
	color: var(--wp--preset--color--ink);
	display: flex;
	flex-direction: column;
	gap: 40px;
	/* De pagina is Nederlands: afbreekstreepjes volgen de Nederlandse woordafbreking,
	   ook als de <html>-taal afwijkt (hyphens: auto hieronder gebruikt dit). */
	-webkit-hyphenate-language: "nl";
	hyphenate-language: "nl";
}

.dsc-kb__top,
.dsc-kb__tekst,
.dsc-kb__onder {
	display: flex;
	flex-direction: column;
	gap: 40px;
	min-width: 0;
}
.dsc-kb__midden {
	min-width: 0;
}

/* A — kruimelpad */
.dsc-kb__kruimel {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__kruimel li {
	margin: 0;
}
.dsc-kb__kruimel a {
	color: var(--wp--preset--color--ink-soft);
	text-decoration: none;
}
.dsc-kb__kruimel a:hover {
	color: var(--wp--preset--color--ink);
}
.dsc-kb__kruimel-hier {
	color: var(--wp--preset--color--ink);
}

/* B — paginakop + beeldvlak */
.dsc-kb__kop {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.dsc-kb__eyebrow {
	margin: 0 0 12px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft); /* E1: gelijk aan .dsc-faq__eyebrow (ink-soft) */
}
@media (min-width: 782px) {
	.dsc-kb__eyebrow {
		font-size: 13px; /* E1: 12 mobiel, 13 vanaf 782 */
	}
}
.dsc-kb__titel {
	margin: 0;
	font-size: clamp(30px, 6vw, 44px);
	line-height: 1.1;
	font-weight: 600;
	letter-spacing: -0.02em;
	text-wrap: balance;
	/* Lange samengestelde woorden (bijv. "samenwerkingsverbanden") breken met een afbreekstreepje;
	   alleen woorden vanaf 10 letters, zodat korte woorden ("omzet", "januari") heel blijven. */
	-webkit-hyphens: auto;
	hyphens: auto;
	-webkit-hyphenate-limit-chars: 10 4 4;
	hyphenate-limit-chars: 10 4 4;
}
.dsc-kb__lead {
	margin-top: 16px;
	font-size: 20px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__lead p {
	margin: 0;
}
.dsc-kb__beeld {
	order: -1;
}
.dsc-kb__beeld picture {
	display: block;
}
.dsc-kb__beeld img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 120px;
}
.dsc-kb__beeld--leeg {
	width: 120px;
	aspect-ratio: 1 / 1;
	border-radius: 12px;
	background: var(--wp--preset--color--paper-soft);
}

/* C — auteursregel */
.dsc-kb__auteur {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__portretten {
	display: inline-flex;
	flex: none;
}
.dsc-kb__portretten img {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--wp--preset--color--paper);
}
.dsc-kb__portretten img + img {
	margin-left: -10px;
}
.dsc-kb__auteur-tekst {
	display: flex;
	flex-direction: column;
	gap: 2px;
	font-size: 14px;
	line-height: 1.4;
}
.dsc-kb__auteur-door a {
	color: var(--wp--preset--color--ink);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.dsc-kb__auteur-meta {
	color: var(--wp--preset--color--ink-soft);
}

/* In het kort — kernpunten (genummerde lijst, nummers in mono) */
.dsc-kb__kp-kop {
	margin: 0 0 4px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__kp ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 1.5px solid var(--wp--preset--color--ink);
}
.dsc-kb__kp li {
	display: flex;
	gap: 14px;
	align-items: baseline;
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
	font-size: 16px;
	line-height: 1.45;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__kp-nr {
	flex: none;
	width: 22px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__kp strong {
	color: var(--wp--preset--color--ink);
	font-weight: 600;
}

/* W — wijzigingenkader (F1): compacte lichte strook (paper-soft) met een oranje accent.
   Eén flex-rij: eyebrow (orange-deep, mono), de waarde (nieuwe waarde oranje), de zin, en rechts
   de link. De lijst en de items zijn display:contents, zodat alles in één flex-context ligt:
   desktop één rij (meer items: één rij per item), mobiel eyebrow + waarde op de eerste regel,
   zin en link eronder. */
.dsc-kb__wijz {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 14px;
	row-gap: 8px;
	padding: 16px 20px;
	border-radius: 8px;
	background: var(--wp--preset--color--paper-soft);
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__wijz-kop {
	flex: 0 0 auto;
	display: flex;
	align-items: baseline;
	gap: 10px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.dsc-kb__wijz-titel {
	color: var(--wp--preset--color--orange-deep);
}
.dsc-kb__wijz-datum {
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__wijz-lijst {
	display: contents;
}
.dsc-kb__wijz-item {
	display: contents;
}
.dsc-kb__wijz-vannaar {
	flex: 0 0 auto;
	display: flex;
	align-items: baseline;
	gap: 8px;
}
.dsc-kb__wijz-oud {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__wijz-pijl {
	font-family: var(--wp--preset--font-family--mono);
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__wijz-nieuw {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.2;
	color: var(--wp--preset--color--orange);
}
.dsc-kb__wijz-betekenis {
	flex: 1 1 100%;
	min-width: 0;
}
.dsc-kb__wijz-tekst {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__wijz-label {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 7px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 9999px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__wijz-opm {
	flex: 1 1 100%;
	margin: 2px 0 0;
	font-size: 13px;
	line-height: 1.45;
	color: var(--wp--preset--color--ink-soft);
	/* Lange woorden/URL's breken af zodat de opmerking binnen de strook blijft. */
	overflow-wrap: anywhere;
}
.dsc-kb__wijz-link {
	flex: 1 1 100%;
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-size: 14px;
	color: var(--wp--preset--color--ink);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.dsc-kb__wijz-link::after {
	content: "→";
	margin-left: 6px;
}
@media (min-width: 782px) {
	/* Desktop: alles op één rij; de zin neemt de middenruimte en breekt binnen de rij af,
	   de link staat rechts. */
	.dsc-kb__wijz {
		flex-wrap: nowrap;
	}
	.dsc-kb__wijz-betekenis {
		flex: 1 1 auto;
	}
	.dsc-kb__wijz-link {
		flex: 0 0 auto;
		margin-left: auto;
		white-space: nowrap;
	}
}

/* D — inhoudsopgave (vanaf 1024 links naast de tekst) */
.dsc-kb__toc {
	display: none;
}
.dsc-kb__toc-kop {
	margin: 0 0 12px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__toc ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border-left: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__toc li {
	margin: 0;
}
.dsc-kb__toc-link {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 4px 0 4px 14px;
	margin-left: -1px;
	border-left: 1px solid transparent;
	font-size: 14px;
	line-height: 1.35;
	color: var(--wp--preset--color--ink-soft);
	text-decoration: none;
}
.dsc-kb__toc-link:hover {
	color: var(--wp--preset--color--ink);
}
.dsc-kb__toc-link.is-actief {
	color: var(--wp--preset--color--ink);
	border-left-color: var(--wp--preset--color--ink);
}

/* F — leesstijl van de inhoud */
.dsc-kb__inhoud {
	font-size: 17px;
	line-height: 1.6;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud > :first-child {
	margin-top: 0;
}
.dsc-kb__inhoud h2 {
	margin: 48px 0 16px;
	font-size: clamp(24px, 4vw, 28px); /* E2: 24 mobiel, 28 desktop */
	line-height: 1.2;
	font-weight: 500; /* E2: gewicht 500 */
	letter-spacing: -0.02em; /* E2 */
	color: var(--wp--preset--color--ink);
	scroll-margin-top: 96px;
}
.dsc-kb__inhoud h3 {
	margin: 28px 0 12px;
	font-size: 20px;
	line-height: 1.3;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
}
/* Lange samengestelde woorden in koppen breken met een afbreekstreepje (lang="nl");
   alleen vanaf 10 letters, zodat korte woorden heel blijven. */
.dsc-kb__inhoud h2,
.dsc-kb__inhoud h3 {
	-webkit-hyphens: auto;
	hyphens: auto;
	-webkit-hyphenate-limit-chars: 10 4 4;
	hyphenate-limit-chars: 10 4 4;
}
.dsc-kb__inhoud p {
	margin: 0 0 16px;
}
.dsc-kb__inhoud ul,
.dsc-kb__inhoud ol {
	margin: 0 0 16px;
	padding-left: 22px;
}
.dsc-kb__inhoud li {
	margin: 0 0 8px;
}
.dsc-kb__inhoud a {
	color: var(--wp--preset--color--ink);
	text-decoration: underline;
	text-decoration-color: var(--wp--preset--color--orange);
	text-underline-offset: 3px;
}
.dsc-kb__inhoud strong {
	color: var(--wp--preset--color--ink);
}

/* I — tabellen: basis + vormen (besluit 56-60). Nergens horizontaal scrollen. */
.dsc-kb__inhoud table {
	width: 100%;
	margin: 12px 0 20px;
	border-collapse: collapse;
	table-layout: fixed;
	font-size: 15px;
}
.dsc-kb__inhoud th,
.dsc-kb__inhoud td {
	text-align: left;
	vertical-align: top;
	padding: 10px 14px 10px 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
	/* Lange woorden in cellen breken met een afbreekstreepje, nooit zonder (lang="nl");
	   alleen vanaf 10 letters, zodat korte woorden heel blijven. */
	-webkit-hyphens: auto;
	hyphens: auto;
	-webkit-hyphenate-limit-chars: 10 4 4;
	hyphenate-limit-chars: 10 4 4;
}
/* Kolomkoppen: gewone letter, vet, ink. */
.dsc-kb__inhoud th {
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
	line-height: 1.35;
	color: var(--wp--preset--color--ink);
	border-bottom-color: var(--wp--preset--color--ink);
}
/* Rijkop: vette eerste cel in ink; alleen het vette deel vet. */
.dsc-kb__inhoud table td:first-child {
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud table td:first-child strong {
	font-weight: 600;
}
/* Tegenover-tabel (wel/niet): eerste cel gewone tekst. */
.dsc-kb__inhoud table.tabel-tegenover td:first-child {
	font-weight: 400;
	color: var(--wp--preset--color--ink-muted);
}

/* Ja/Nee/~Ja-iconen in cellen */
.dsc-kb__inhoud .jn {
	display: inline-flex;
	align-items: flex-start;
	gap: 8px;
	min-width: 0;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .jn svg {
	flex: none;
	width: 20px;
	height: 20px;
	margin-top: 1px;
}
.dsc-kb__inhoud .jn span {
	min-width: 0;
	/* Langere keuzetekst (bijv. "Alleen in een samenwerkingsverband") breekt met een
	   afbreekstreepje, nooit zonder; korte woorden blijven heel. */
	overflow-wrap: normal;
	-webkit-hyphens: auto;
	hyphens: auto;
	-webkit-hyphenate-limit-chars: 10 4 4;
	hyphenate-limit-chars: 10 4 4;
}
.dsc-kb__inhoud .jn--ja svg {
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .jn--nee svg {
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .jn--vw svg {
	color: var(--wp--preset--color--orange);
}
.dsc-kb__inhoud .jn__sr {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}
/* jn-tabel: iconkolommen gecentreerd, ook op mobiel een tabel. */
.dsc-kb__inhoud .jn-tabel td:not(:first-child) .jn {
	justify-content: center;
}

/* Voetnoten: oranje cijfer boven de celwaarde en de toelichting onder de tabel. */
.dsc-kb__inhoud .vn {
	margin-left: 1px;
	font-size: 11px;
	font-weight: 600;
	vertical-align: super;
	line-height: 0;
	color: var(--wp--preset--color--orange);
}
.dsc-kb__inhoud .tabel-noten {
	margin: -8px 0 24px;
	padding: 0;
	list-style: none;
	font-size: 13px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .tabel-noten li {
	margin: 4px 0 0;
}
.dsc-kb__inhoud .tabel-noten sup {
	margin-right: 4px;
	font-size: 11px;
	font-weight: 600;
	color: var(--wp--preset--color--orange);
}

/* :::afsluiting::: — losse alinea met een lijn erboven. */
.dsc-kb__inhoud .afsluiting {
	margin-top: 40px;
	padding-top: 24px;
	border-top: 1px solid var(--wp--preset--color--line);
}

/* kt-raster: kaartjes, op desktop een raster van twee (de regiotabellen). Altijd kaartjes. */
.dsc-kb__inhoud .kt-raster {
	position: relative;
	display: block;
	width: 100%;
}
/* In de kaartweergave zijn de tabelrollen al weg (display: block/flex), dus de kolomkop-
   rij voegt voor schermlezers niets toe; de veldnamen komen uit data-label (::before).
   Daarom weglaten in plaats van verbergen. */
.dsc-kb__inhoud .kt-raster thead {
	display: none;
}
.dsc-kb__inhoud .kt-raster tbody {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.dsc-kb__inhoud .kt-raster tr {
	display: block;
	min-width: 0;
	padding: 16px 18px 8px;
	border-radius: 8px;
	background: var(--wp--preset--color--paper-soft);
}
.dsc-kb__inhoud .kt-raster td {
	display: block;
	padding: 9px 0;
	border-bottom: 0;
	border-top: 1px solid var(--wp--preset--color--line);
	font-size: 15px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .kt-raster td::before {
	content: attr(data-label);
	display: block;
	margin-bottom: 2px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .kt-raster td:first-child {
	padding: 0 0 10px;
	border-top: 0;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .kt-raster td:first-child::before {
	content: none;
}
.dsc-kb__inhoud .kt-raster td:empty {
	display: none;
}

/* kt-rij-verhoudingen op mobiel (de twee waarden naast elkaar). */
.dsc-kb__inhoud .ktk-1-1 { --kt-kol: 1fr 1fr; }
.dsc-kb__inhoud .ktk-2-3 { --kt-kol: 2fr 3fr; }
.dsc-kb__inhoud .ktk-3-2 { --kt-kol: 3fr 2fr; }
.dsc-kb__inhoud .ktk-1-2 { --kt-kol: 1fr 2fr; }

/* E — kerncijfers (ka = lijst, ka.kh = met hoofdcijfer; besluit 52, 55) */
.dsc-kb__inhoud .ka {
	margin: 24px 0;
	border-top: 2px solid var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .ka__kop {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .ka__kop span:last-child {
	text-align: right;
}
.dsc-kb__inhoud .ka dl {
	margin: 0;
}
.dsc-kb__inhoud .ka__r {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 24px;
	align-items: baseline;
	padding: 14px 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__inhoud .ka dt {
	font-size: 16px;
	line-height: 1.4;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .ka dd {
	margin: 0;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.2;
	color: var(--wp--preset--color--ink);
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .ka__v {
	display: inline-block;
	margin-left: 6px;
	padding: 1px 6px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 9999px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 10px;
	font-weight: 400;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
	vertical-align: 3px;
	white-space: nowrap;
}
.dsc-kb__inhoud .ka__noot {
	margin: 14px 0 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .ka__bron {
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .ka.kh {
	border-top: 0;
	padding: 6px;
	border-radius: 12px;
	background: var(--wp--preset--color--paper-soft);
}
.dsc-kb__inhoud .kh .ka__kop {
	padding: 10px 14px;
	border-bottom: 0;
}
.dsc-kb__inhoud .kh__body {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 6px;
}
.dsc-kb__inhoud .kh .kh__held {
	margin: 0;
	padding: 22px 20px;
	border-radius: 8px;
	background: var(--wp--preset--color--paper);
}
.dsc-kb__inhoud .kh .kh__groot {
	margin: 0;
	font-size: 60px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.03em;
	color: var(--wp--preset--color--orange);
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .kh .kh__wat {
	margin: 10px 0 0;
	font-size: 15px;
	line-height: 1.45;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .kh .kh__max {
	margin: 16px 0 0;
	padding-top: 14px;
	border-top: 1px solid var(--wp--preset--color--line);
	font-size: 14px;
	line-height: 1.45;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .kh .kh__max strong {
	display: block;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
	color: var(--wp--preset--color--ink);
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .kh .kh__rest {
	margin: 0;
	padding: 4px 20px;
	border-radius: 8px;
	background: var(--wp--preset--color--paper);
}
.dsc-kb__inhoud .kh .kh__rest .ka__r:last-child {
	border-bottom: 0;
}
.dsc-kb__inhoud .kh .ka__noot {
	margin: 12px 14px 0;
}
.dsc-kb__inhoud .kh .ka__bron {
	margin: 6px 14px 10px;
}

/* Rekenvoorbeeld als bon (figure.ra, besluit 45). De uitkomst is het enige oranje. */
.dsc-kb__inhoud .ra {
	margin: 20px 0 24px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 8px;
	background: var(--wp--preset--color--paper);
	overflow: hidden;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .ra__kop {
	padding: 20px 22px 16px;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__inhoud .ra__eb {
	margin: 0;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .ra__t {
	margin: 6px 0 0;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .ra__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}
.dsc-kb__inhoud .ra__chips li {
	margin: 0;
	padding: 4px 10px;
	border-radius: 9999px;
	background: var(--wp--preset--color--paper-soft);
	font-size: 13px;
	line-height: 1.3;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .ra__groep {
	padding: 6px 22px 4px;
}
.dsc-kb__inhoud .ra__gk {
	margin: 12px 0 2px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .ra__r {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 20px;
	align-items: baseline;
	padding: 10px 0;
	border-bottom: 1px dashed var(--wp--preset--color--line);
}
.dsc-kb__inhoud .ra__r:last-child {
	border-bottom: 0;
}
.dsc-kb__inhoud .ra__w {
	min-width: 0;
	font-size: 15px;
	line-height: 1.4;
	overflow-wrap: anywhere;
}
.dsc-kb__inhoud .ra__som {
	display: block;
	margin-top: 2px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__inhoud .ra__b {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .ra__sub {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 20px;
	align-items: baseline;
	margin: 0 22px;
	padding: 12px 0;
	border-top: 1.5px solid var(--wp--preset--color--ink);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
}
.dsc-kb__inhoud .ra__sub span:first-child {
	min-width: 0;
	overflow-wrap: anywhere;
}
.dsc-kb__inhoud .ra__sub span:last-child {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .ra__totaal {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
	margin: 4px 22px 0;
	padding: 16px 0 18px;
	border-top: 3px double var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .ra__totaal > span {
	min-width: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	overflow-wrap: anywhere;
}
.dsc-kb__inhoud .ra__totaal strong {
	flex: none;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--ink);
	white-space: nowrap;
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .ra__totaal strong::after {
	content: "";
	display: block;
	height: 3px;
	margin-top: 6px;
	border-radius: 2px;
	background: var(--wp--preset--color--orange);
}
.dsc-kb__inhoud .ra__voet {
	margin: 0;
	padding: 12px 22px 16px;
	font-size: 13px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-soft);
	background: var(--wp--preset--color--paper-soft);
}

/* G — praktijkkader */
.dsc-praktijk {
	margin: 28px 0;
	padding-left: 18px;
	border-left: 2px solid var(--wp--preset--color--ink);
	display: flex;
	gap: 14px;
}
.dsc-praktijk__portret {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
	flex: none;
}
.dsc-praktijk__eyebrow {
	margin: 0 0 8px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-praktijk__body p {
	margin: 0 0 12px;
	color: var(--wp--preset--color--ink);
}
.dsc-praktijk__body p:last-child {
	margin-bottom: 0;
}

/* J — CTA-kader (E3: één check-CTA-component, zelfde opbouw als /prijzen en /over-ons:
   paper-soft kader, kop + één regel, knop gecentreerd met onderschrift). */
.dsc-kb__cta {
	box-sizing: border-box;
	padding: 32px 22px;
	border-radius: 24px;
	background: var(--wp--preset--color--paper-soft);
}
.dsc-kb__cta-kop {
	margin: 0;
	font-size: clamp(24px, 4vw, 28px);
	line-height: 1.2;
	font-weight: 500;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__cta-regel {
	margin: 12px 0 0;
	font-size: 16px;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__cta-knop {
	margin-top: 24px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.dsc-kb__cta-knop .dsc-cta-sub {
	margin: 8px 0 0;
}
@media (min-width: 600px) {
	.dsc-kb__cta {
		padding: 40px;
	}
}
/* Vanaf 782: kop en regel links, knop (met onderschrift) rechts, verticaal gecentreerd. */
@media (min-width: 782px) {
	.dsc-kb__cta {
		max-width: 1000px;
		padding: 40px 48px;
		border-radius: 8px;
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		column-gap: 40px;
		align-items: center;
	}
	.dsc-kb__cta-knop {
		margin-top: 0;
	}
}

/* K — FAQ: opmaak komt van .dsc-faq (homepage); hier alleen de homepage-marges resetten. */
.dsc-kb .dsc-faq {
	margin: 0;
	padding-bottom: 0;
}
.dsc-kb .dsc-faq__inner {
	max-width: none;
	margin: 0;
	padding: 0;
}

/* L — bronnen */
.dsc-kb__bronnen-kop {
	margin: 0 0 12px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__bronnen ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.dsc-kb__bronnen li {
	margin: 0 0 8px;
}
.dsc-kb__bronnen a {
	color: var(--wp--preset--color--ink);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.dsc-kb__extern {
	margin-left: 4px;
	vertical-align: -1px;
	color: var(--wp--preset--color--ink-soft);
}
/* L — bronnen uitklapbaar: een <details>, standaard dicht op elke breedte. Lijn boven en
   onder; de <summary> is het tikvlak (≥ 44 px) met de mono-kop, een rond aantal-label en
   rechts een pijltje dat draait bij open. De lijst erin blijft zoals hij was. */
.dsc-kb__bronnen-details {
	border-top: 1px solid var(--wp--preset--color--line);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__bronnen-sum {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	padding: 4px 0;
	cursor: pointer;
	list-style: none;
}
.dsc-kb__bronnen-sum::-webkit-details-marker {
	display: none;
}
.dsc-kb__bronnen-sum:focus-visible {
	outline: 2px solid var(--wp--preset--color--ink);
	outline-offset: 2px;
}
.dsc-kb__bronnen-sum .dsc-kb__bronnen-kop {
	margin: 0;
}
.dsc-kb__bronnen-n {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px;
	line-height: 1;
	padding: 3px 8px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 99px;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-kb__bronnen-pijl {
	margin-left: auto;
	width: 9px;
	height: 9px;
	border: solid var(--wp--preset--color--ink-soft);
	border-width: 0 1.5px 1.5px 0;
	transform: rotate(45deg) translateY(-2px);
	transition: transform 0.2s;
}
.dsc-kb__bronnen-details[open] .dsc-kb__bronnen-pijl {
	transform: rotate(-135deg) translateY(-1px);
}
.dsc-kb__bronnen-details ul {
	padding-bottom: 16px;
}

/* M — gerelateerde tegels ("Lees ook") met de gedeelde tegel M (.dsc-tegel), dezelfde
   component als op /subsidies en /kennisbank (blocks/overzicht). */
.dsc-kb__gerelateerd-kop {
	margin: 0 0 16px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}

/* Tegel M — één component. Mobiel: beeldvak 88 px links, tekst rechts. Desktop (vanaf
   782): kolom met beeldvak van 150 px bovenin. Illustratie decoratief, lazy. */
.dsc-tegels {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
}
/* Het hidden-attribuut moet winnen van de expliciete display hieronder (anders blijft een
   door het kennisbankfilter verborgen tegel zichtbaar). */
.dsc-tegel[hidden] {
	display: none;
}
.dsc-tegel {
	position: relative;
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	align-items: center;
	gap: 16px;
	padding: 12px;
	border-radius: 8px;
	background: var(--wp--preset--color--paper-soft);
	text-decoration: none;
	color: var(--wp--preset--color--ink);
	transition: background-color 0.2s ease;
}
.dsc-tegel__beeld {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 88px;
	border-radius: 6px;
	background: var(--wp--preset--color--paper);
}
.dsc-tegel__beeld img {
	display: block;
	width: auto;
	height: 76px;
}
.dsc-tegel__tekst {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}
.dsc-tegel__type {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink-soft);
}
.dsc-tegel__titel {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--wp--preset--color--ink);
	-webkit-hyphens: auto;
	hyphens: auto;
	-webkit-hyphenate-limit-chars: 10 4 4;
	hyphenate-limit-chars: 10 4 4;
}
.dsc-tegel__regel {
	font-size: 14px;
	line-height: 1.45;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-tegel:focus-visible {
	outline: 2px solid var(--wp--preset--color--ink);
	outline-offset: 3px;
}
@media (hover: hover) {
	.dsc-tegel:hover {
		background: var(--wp--preset--color--orange-wash);
	}
}
@media (prefers-reduced-motion: reduce) {
	.dsc-tegel {
		transition: none;
	}
	.dsc-kb__bronnen-pijl {
		transition: none;
	}
}

/* Mobiel: de navbar is hier `position: fixed` en reserveert geen flow-ruimte, waardoor
   het kruimelpad anders achter de balk valt. Deze padding zet het kruimelpad even ver
   onder de navbar als de eerste inhoud op de homepage (43px). De safe-area-inset volgt
   de navbar, zodat die afstand op toestellen met een notch gelijk blijft.
   De kopillustratie is decoratief en tonen we alleen vanaf 782 (zie ook de <picture>
   met `media` in render.php, zodat hij op mobiel ook niet wordt gedownload). */
@media (max-width: 781px) {
	.dsc-kb {
		padding-top: calc(env(safe-area-inset-top) + 80px);
	}
	.dsc-kb__beeld {
		display: none;
	}
}

/* Tegel M desktop (vanaf 782): raster van drie kolommen; de tegel wordt een kolom met
   een hoger beeldvak bovenin (besluit 10). */
@media (min-width: 782px) {
	.dsc-tegels {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.dsc-tegel {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 14px;
		padding: 12px 12px 20px;
	}
	.dsc-tegel__beeld {
		height: 150px;
	}
	.dsc-tegel__beeld img {
		height: 124px;
	}
	.dsc-tegel__tekst {
		padding: 0 6px;
	}
}

/* Tabellen en kerncijfers op mobiel: kaartjes en een smallere bon (besluit 42, 56-60). */
@media (max-width: 781px) {
	/* kt-tabel: 4+ kolommen worden op mobiel een stapel kaartjes. */
	.dsc-kb__inhoud .kt-tabel {
		position: relative;
		display: block;
		width: 100%;
	}
	.dsc-kb__inhoud .kt-tabel thead {
		display: none;
	}
	.dsc-kb__inhoud .kt-tabel tbody {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}
	.dsc-kb__inhoud .kt-tabel tr {
		display: block;
		min-width: 0;
		padding: 16px 18px 8px;
		border-radius: 8px;
		background: var(--wp--preset--color--paper-soft);
	}
	.dsc-kb__inhoud .kt-tabel td {
		display: block;
		padding: 9px 0;
		border-bottom: 0;
		border-top: 1px solid var(--wp--preset--color--line);
		font-size: 15px;
		line-height: 1.5;
		color: var(--wp--preset--color--ink-muted);
	}
	.dsc-kb__inhoud .kt-tabel td::before {
		content: attr(data-label);
		display: block;
		margin-bottom: 2px;
		font-family: var(--wp--preset--font-family--mono);
		font-size: 12px;
		font-weight: 400;
		letter-spacing: 0.06em;
		text-transform: uppercase;
		color: var(--wp--preset--color--ink-soft);
	}
	.dsc-kb__inhoud .kt-tabel td:first-child {
		padding: 0 0 10px;
		border-top: 0;
		font-size: 17px;
		font-weight: 600;
		line-height: 1.3;
		color: var(--wp--preset--color--ink);
	}
	.dsc-kb__inhoud .kt-tabel td:first-child::before {
		content: none;
	}
	.dsc-kb__inhoud .kt-tabel td:empty {
		display: none;
	}
	/* kt-rij: rijkop over de hele breedte, de twee waarden naast elkaar. */
	.dsc-kb__inhoud .kt-rij,
	.dsc-kb__inhoud .kt-rij thead,
	.dsc-kb__inhoud .kt-rij tbody {
		display: block;
		width: 100%;
	}
	.dsc-kb__inhoud .kt-rij tr {
		display: grid;
		grid-template-columns: var(--kt-kol, 1fr 1fr);
		column-gap: 16px;
		row-gap: 4px;
		padding: 12px 0;
		border-bottom: 1px solid var(--wp--preset--color--line);
	}
	.dsc-kb__inhoud .kt-rij thead tr {
		padding: 0 0 8px;
		border-bottom: 1.5px solid var(--wp--preset--color--ink);
	}
	.dsc-kb__inhoud .kt-rij th,
	.dsc-kb__inhoud .kt-rij td {
		display: block;
		min-width: 0;
		padding: 0;
		border: 0;
	}
	.dsc-kb__inhoud .kt-rij thead tr > :first-child {
		display: none;
	}
	.dsc-kb__inhoud .kt-rij th {
		width: auto !important;
		font-size: 13px;
		overflow-wrap: normal;
	}
	.dsc-kb__inhoud .kt-rij td:first-child {
		grid-column: 1 / -1;
		margin-bottom: 2px;
	}
	/* kt-vast: blijft ook op mobiel een gewone tabel (mobiel=tabel), alleen compacter, zodat
	   de kolommen uit breedtes= op 360 px passen zonder over de kolom te lopen. */
	.dsc-kb__inhoud .kt-vast {
		font-size: 13px;
	}
	.dsc-kb__inhoud .kt-vast th {
		font-size: 12px;
	}
	.dsc-kb__inhoud .kt-vast th,
	.dsc-kb__inhoud .kt-vast td {
		padding: 8px 8px 8px 0;
		line-height: 1.35;
	}
	.dsc-kb__inhoud .kt-vast th:last-child,
	.dsc-kb__inhoud .kt-vast td:last-child {
		padding-right: 0;
	}
	/* kerncijfers en bon iets compacter op mobiel. */
	.dsc-kb__inhoud .ka dt {
		font-size: 15px;
	}
	.dsc-kb__inhoud .ka dd {
		font-size: 19px;
	}
	.dsc-kb__inhoud .ka__r {
		column-gap: 16px;
	}
	.dsc-kb__inhoud .kh .kh__held {
		padding: 20px 18px;
	}
	.dsc-kb__inhoud .kh .kh__rest {
		padding: 2px 18px;
	}
	.dsc-kb__inhoud .kh .kh__groot {
		font-size: 52px;
	}
	.dsc-kb__inhoud .ra__kop,
	.dsc-kb__inhoud .ra__groep,
	.dsc-kb__inhoud .ra__voet {
		padding-left: 16px;
		padding-right: 16px;
	}
	.dsc-kb__inhoud .ra__sub {
		margin: 0 16px;
	}
	.dsc-kb__inhoud .ra--kol2 .ra__kolk {
		margin-left: 16px;
		margin-right: 16px;
	}
	.dsc-kb__inhoud .ra__totaal {
		margin: 4px 16px 0;
	}
	.dsc-kb__inhoud .ra__totaal strong {
		font-size: 24px;
	}
	.dsc-kb__inhoud .ra__t {
		font-size: 18px;
	}
}

/* Vanaf 782: hoofdcijfer naast de lijst, regiokaartjes als raster van twee. */
@media (min-width: 782px) {
	.dsc-kb__inhoud .kh__body {
		grid-template-columns: 220px minmax(0, 1fr);
	}
	.dsc-kb__inhoud .kt-raster tbody {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}
}

/* Op aanraakschermen (tot 1199, dus niet op de goedgekeurde desktopbreedtes) krijgen
   losse links in tabelcellen — zoals de loketten in de regiotabellen — een tikdoel van
   minstens 44 px hoog. */
@media (max-width: 1199px) {
	.dsc-kb__inhoud td a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}
}

/* B — vanaf 782 beeld rechts naast de kop (ca. een derde, vierkant). */
@media (min-width: 782px) {
	.dsc-kb__kop.heeft-beeld {
		flex-direction: row;
		align-items: center;
		gap: 40px;
	}
	.dsc-kb__kop.heeft-beeld .dsc-kb__kop-tekst {
		flex: 1 1 auto;
		min-width: 0;
	}
	.dsc-kb__kop.heeft-beeld .dsc-kb__beeld {
		order: 0;
		flex: none;
		width: 33%;
		max-width: 320px;
	}
	.dsc-kb__kop.heeft-beeld .dsc-kb__beeld img {
		width: 100%;
		max-height: none;
	}
	.dsc-kb__kop.heeft-beeld .dsc-kb__beeld--leeg {
		width: 33%;
		max-width: 320px;
	}
}

/* D — vanaf 1024 de inhoudsopgave links naast de tekst. */
@media (min-width: 1024px) {
	.dsc-kb {
		max-width: 896px;
	}
	.dsc-kb__kp li {
		font-size: 17px;
	}
	.dsc-kb__midden {
		display: grid;
		grid-template-columns: 232px minmax(0, 624px);
		column-gap: 40px;
		align-items: start;
	}
	.dsc-kb__toc {
		display: block;
		grid-column: 1;
		position: sticky;
		top: 96px;
		align-self: start;
	}
	.dsc-kb__tekst {
		grid-column: 2;
	}
	/* Een tool (de calculator) heeft geen inhoudsopgave; de tekst onder het
	   wijzigingenkader staat vanaf 1024 in één leeskolom van 624 px, gecentreerd —
	   niet in de tekst-naast-inhoudsopgave-grid. Gidsen en subsidiepagina's niet. */
	.dsc-kb--tool .dsc-kb__midden {
		display: block;
	}
	.dsc-kb--tool .dsc-kb__tekst {
		max-width: 624px;
		margin-inline: auto;
	}
}

/* Voor wie — eisen-blok (dl.eisen, besluit 76). Geen oranje: oranje blijft voor uitkomsten. */
.dsc-kb__inhoud .eisen {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(0, 1fr);
	margin: 20px 0;
	border-top: 1.5px solid var(--wp--preset--color--ink);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__inhoud .eisen > div {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
	margin: 0;
	padding: 20px 16px 18px;
	border-left: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__inhoud .eisen > div:first-child {
	border-left: 0;
	padding-left: 0;
}
.dsc-kb__inhoud .eisen dt {
	/* Kleiner dan de mockup (40px): de leeskolom is 624px, dus drie eisen delen
	   ~194px elk. Bij 40px past een bedrag als "€ 100.000" (één nbsp-eenheid, geen
	   afbreekpunt) niet en zou break-word het middenin het getal breken. Bij deze
	   maat past het op één regel; meerwoord-waarden breken netjes op een spatie of
	   koppelteken. */
	font-size: clamp(26px, 3vw, 32px);
	line-height: 1.1;
	font-weight: 600;
	letter-spacing: -0.015em;
	font-variant-numeric: lining-nums;
	color: var(--wp--preset--color--ink);
	overflow-wrap: break-word;
}
.dsc-kb__inhoud .eisen dd {
	margin: 0;
	font-size: 14px;
	line-height: 1.35;
	color: var(--wp--preset--color--ink-muted);
}
@media (max-width: 600px) {
	.dsc-kb__inhoud .eisen {
		grid-auto-flow: row;
		grid-template-columns: minmax(0, 1fr);
	}
	.dsc-kb__inhoud .eisen > div {
		flex-direction: row;
		align-items: baseline;
		gap: 14px;
		border-left: 0;
		border-top: 1px solid var(--wp--preset--color--line);
		padding: 12px 0;
	}
	.dsc-kb__inhoud .eisen > div:first-child {
		border-top: 0;
	}
	.dsc-kb__inhoud .eisen dt {
		font-size: 26px;
		flex: none;
		min-width: 118px;
	}
	.dsc-kb__inhoud .eisen dd {
		flex: 1 1 auto;
	}
}

/* Stappenlijst (ol.st__l, besluit 71): rondje met nummer + vette kop. */
.dsc-kb__inhoud .st {
	margin: 20px 0;
}
.dsc-kb__inhoud .st__l {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.dsc-kb__inhoud .st__l li {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.5;
	color: var(--wp--preset--color--ink-muted);
}
.dsc-kb__inhoud .st__l li::before {
	content: none;
}
.dsc-kb__inhoud .st__n {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1.5px solid var(--wp--preset--color--ink);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 14px;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .st__l strong {
	color: var(--wp--preset--color--ink);
	font-weight: 600;
}

/* Bon met twee bedragkolommen (figure.ra--kol2, besluit 70). */
.dsc-kb__inhoud .ra--kol2 .ra__r,
.dsc-kb__inhoud .ra--kol2 .ra__kolk,
.dsc-kb__inhoud .ra--kol2 .ra__sub,
.dsc-kb__inhoud .ra--kol2 .ra__totaal {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 92px 92px;
	column-gap: 16px;
	align-items: baseline;
}
.dsc-kb__inhoud .ra--kol2 .ra__r .ra__b,
.dsc-kb__inhoud .ra--kol2 .ra__sub span:not(:first-child),
.dsc-kb__inhoud .ra--kol2 .ra__totaal strong {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums lining-nums;
}
.dsc-kb__inhoud .ra--kol2 .ra__totaal strong {
	font-size: 20px;
	font-weight: 600;
}
.dsc-kb__inhoud .ra__kolk {
	border-bottom: 0;
	padding-top: 14px;
	padding-bottom: 2px;
	/* Zelfde zijmarge als .ra__groep (22 px), zodat de kolomkoppen boven de bedragen staan
	   i.p.v. een halve kolom verschoven. Op mobiel 16 px, zie de media-query hieronder. */
	margin-left: 22px;
	margin-right: 22px;
}
.dsc-kb__inhoud .ra--kol2 .ra__kolk .ra__b {
	/* Gewone letter (General Sans) in plaats van mono: rustiger boven de bedragen. */
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.2;
	text-align: right;
	/* Een lange kolomkop ("S&O-verklaring") breekt alleen bij het koppelteken ("S&O-" /
	   "verklaring"), nooit midden in een woord; korte koppen ("2026") blijven één regel. */
	white-space: normal;
	overflow-wrap: normal;
	word-break: normal;
	-webkit-hyphens: none;
	hyphens: none;
	color: var(--wp--preset--color--ink-soft);
}
@media (max-width: 600px) {
	.dsc-kb__inhoud .ra--kol2 .ra__r,
	.dsc-kb__inhoud .ra--kol2 .ra__kolk,
	.dsc-kb__inhoud .ra--kol2 .ra__sub,
	.dsc-kb__inhoud .ra--kol2 .ra__totaal {
		grid-template-columns: minmax(0, 1fr) 72px 72px;
		column-gap: 10px;
	}
	.dsc-kb__inhoud .ra--kol2 .ra__totaal strong {
		font-size: 17px;
	}
}

/* Regiotabel als uitklapblokken (details.dsc-regio, besluit 68). */
.dsc-kb__inhoud .dsc-regio-lijst {
	margin: 20px 0;
	border-top: 1.5px solid var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .dsc-regio {
	border-bottom: 1px solid var(--wp--preset--color--line);
	scroll-margin-top: 90px;
}
.dsc-kb__inhoud .dsc-regio__sum {
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	padding: 14px 0;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
}
.dsc-kb__inhoud .dsc-regio__sum::-webkit-details-marker {
	display: none;
}
.dsc-kb__inhoud .dsc-regio__sum::after {
	content: "";
	flex: none;
	width: 9px;
	height: 9px;
	margin-right: 4px;
	border-right: 1.5px solid var(--wp--preset--color--ink-soft);
	border-bottom: 1.5px solid var(--wp--preset--color--ink-soft);
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}
.dsc-kb__inhoud .dsc-regio[open] .dsc-regio__sum::after {
	transform: rotate(-135deg);
}
.dsc-kb__inhoud .dsc-regio__sum:focus-visible {
	outline: 2px solid var(--wp--preset--color--orange);
	outline-offset: 2px;
}
.dsc-kb__inhoud .dsc-regio__body {
	margin: 0;
	padding: 0 0 16px;
}
.dsc-kb__inhoud .dsc-regio__r {
	display: grid;
	grid-template-columns: minmax(0, 34%) minmax(0, 1fr);
	gap: 4px 16px;
	margin: 0;
	padding: 8px 0;
	border-top: 1px solid var(--wp--preset--color--line);
}
.dsc-kb__inhoud .dsc-regio__r dt {
	font-size: 14px;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
	overflow-wrap: break-word;
}
.dsc-kb__inhoud .dsc-regio__r dd {
	margin: 0;
	color: var(--wp--preset--color--ink-muted);
	overflow-wrap: break-word;
}

/* Vangnet tegen te lange woorden in koppen, cellen en eisen-waarden (stap 8b). */
.dsc-kb__titel,
.dsc-kb__inhoud h2,
.dsc-kb__inhoud h3,
.dsc-kb__inhoud h4,
.dsc-kb__inhoud th,
.dsc-kb__inhoud td,
.dsc-kb__inhoud .eisen dt {
	overflow-wrap: break-word;
}
