/* NS Verfverdeling: geen kader, foto links, staven rechts. */
.ns-vv-sectie { margin: 2.2rem 0; }
.ns-vv-tool { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(20px, 4vw, 44px); align-items: start; margin: 1.3rem 0; }
.ns-vv-tool > * { min-width: 0; }
.ns-vv-doek { display: block; width: 100%; height: auto; border-radius: 6px; background: #edf1f2; }
.ns-vv-bij, .ns-vv-hulp { font-size: .86rem; line-height: 1.45; margin: 6px 0 12px; color: #4a5a60; }
.ns-vv-hulp { margin-top: 8px; }
.ns-vv-bestand { position: absolute; width: 1px; height: 1px; opacity: 0; }
.ns-vv-knop { display: inline-block; min-height: 46px; line-height: 46px; padding: 0 18px; border-radius: 6px; background: #1d3b45; color: #fff; font-weight: 700; cursor: pointer; }
.ns-vv-bestand:focus-visible + .ns-vv-knop, .ns-vv-knop:focus-visible { outline: 3px solid #e2a23b; outline-offset: 2px; }
.ns-vv-melding { margin: 10px 0 0; font-weight: 600; color: #9c2f1c; }
.ns-vv-kop { font-size: clamp(1.25rem, 2.4vw, 1.6rem); line-height: 1.25; font-weight: 800; margin: 0 0 6px; color: #1d3b45; }
.ns-vv-sub { margin: 0 0 14px; line-height: 1.55; }
.ns-vv-lijst { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1d3b45; }
.ns-vv-lijst li { display: grid; grid-template-columns: 26px minmax(0, 1fr) 3.4em; gap: 12px; align-items: center; margin: 0; padding: 9px 0; border-bottom: 1px solid #e3e7e9; }
.ns-vv-lijst li::before { content: none; }
.ns-vv-kleur { width: 26px; height: 26px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .14); }
.ns-vv-baan { display: block; height: 10px; background: #edf1f2; border-radius: 5px; overflow: hidden; }
.ns-vv-baan i { display: block; height: 100%; background: #e2a23b; border-radius: 5px; }
.ns-vv-pct { text-align: right; font-weight: 700; font-variant-numeric: tabular-nums; }
.ns-vv-rest { margin-top: 12px; }
.ns-vv-rest summary { cursor: pointer; font-weight: 700; color: #1d3b45; padding: 6px 0; }
@media (max-width: 720px) { .ns-vv-tool { grid-template-columns: minmax(0, 1fr); } .ns-vv-doek { max-width: 300px; } }
