.h1-sub{
  display:block;margin-top:9px;font-size:.5em;font-weight:400;line-height:1.3;
  color:rgba(255,255,255,.72);letter-spacing:-.01em;
}
.vakgrid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:16px;
}
a.vakkaart{
  display:flex;flex-direction:column;gap:5px;
  text-decoration:none;font-weight:400;
  border:1.5px solid var(--line);border-radius:14px;padding:17px 19px 16px;
  background:var(--surface);
  transition:border-color .15s,transform .15s cubic-bezier(.2,.7,.3,1),box-shadow .15s;
}
a.vakkaart:hover{border-color:var(--action);transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.vk-blok{
  font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--brand-700);
}
.vk-naam{
  font-size:16px;font-weight:600;letter-spacing:-.015em;line-height:1.3;color:var(--ink);
}
.vk-vorm{font-size:13.5px;color:var(--ink-soft);line-height:1.45}
.vk-prijs{
  margin-top:auto;padding-top:6px;font-size:17px;font-weight:700;color:var(--action-text);
  font-variant-numeric:tabular-nums;
}
.kb-antwoord ul{padding-left:20px;margin-top:12px;display:flex;flex-direction:column;gap:8px}
.kb-antwoord li{font-size:16.5px;line-height:1.6;color:var(--ink-soft)}
.kb-antwoord li a{color:var(--action-text);font-weight:600;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){
  .vakgrid{grid-template-columns:minmax(0,1fr)}
  .vakgrid > *{min-width:0}
  .vk-naam,.vakkaart .vk-vorm{overflow-wrap:anywhere}
  .h1-sub{font-size:.62em}
}
.kb-antwoord:has(.vakgrid){border-left:0;padding-left:0}
.vakkaart.leeg{
  display:flex;flex-direction:column;gap:5px;
  border:1.5px dashed var(--line);border-radius:14px;padding:17px 19px 16px;
  background:var(--sand);
}
.vakkaart.leeg .vk-naam{color:var(--ink-soft)}
.vakkaart.leeg .vk-blok{color:var(--ink-faint)}
a.vakkaart.gratis{border-color:var(--action);background:var(--action-050)}
a.vakkaart.gratis .vk-prijs::after{
  content:"proefstuk";margin-left:9px;font-size:12px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;color:var(--action-text);
  border:1.5px solid var(--action);border-radius:6px;padding:2px 7px;vertical-align:2px;
}
.vk-fotos{display:flex;flex-direction:column;gap:10px;list-style:none}
.vk-fotos img{display:block;width:100%;height:auto;border-radius:10px;border:1.5px solid var(--line);background:#fff}
