/* Categorie-navigatie */
.cat-nav{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px;padding:0}
.cat-nav a{display:inline-flex;align-items:center;gap:8px;padding:7px 8px 7px 14px;border:1px solid var(--lijn);border-radius:99px;background:var(--kaart);text-decoration:none;font-size:.88rem;font-weight:500;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}
.cat-nav a:hover{border-color:var(--accent);color:var(--accent)}
.cat-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Categorieën */
.categorie{scroll-margin-top:16px}
.categorie h2.sectie{margin-top:48px}
.cat-uitleg{color:var(--zacht);margin:-4px 0 18px}

/* Belastingen: volle breedte, uitleg links, feiten rechts */
.belastingen{display:flex;flex-direction:column;gap:14px}
.belasting{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);column-gap:32px;padding:22px 24px;scroll-margin-top:16px;transition:border-color .15s,box-shadow .15s}
.belasting:hover{border-color:#d4ccbe}
.belasting:target{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-zacht)}
.belasting h3{grid-column:1/-1;grid-row:1;margin:0 0 10px;font-size:1.3rem;letter-spacing:-.005em}
.belasting > p:not(.recent):not(.bron){grid-column:1;grid-row:2;margin:0;max-width:66ch}

/* Feiten als zijpaneel */
.feiten{grid-column:2;grid-row:2;align-self:start;margin:0;display:flex;flex-direction:column;gap:12px;font-size:.92rem;padding-left:20px;border-left:2px solid var(--lijn)}
.feiten div{display:flex;flex-direction:column;gap:2px}
.feiten dt{color:var(--zacht);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;padding:0}
.feiten dd{margin:0;line-height:1.45}

/* Recente ontwikkeling */
.belasting .recent{grid-column:1/-1;grid-row:3;margin:16px 0 0;font-size:.92rem;line-height:1.5;background:var(--accent-zacht);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;padding:10px 14px}
.belasting .recent .status{display:inline-block;margin:0 8px 0 0;padding:1px 8px;border:0;border-radius:99px;background:var(--accent);color:var(--kaart);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;vertical-align:1px}

/* Bron */
.belasting .bron{grid-column:1/-1;grid-row:4;margin:16px 0 0;padding-top:12px;border-top:1px solid var(--lijn);font-size:.8rem;color:var(--zacht)}
.belasting .bron a{color:var(--zacht);text-underline-offset:2px}
.belasting .bron a:hover{color:var(--accent)}

/* Toelichting onderaan */
#toelichting{margin-top:40px;padding:16px 18px;border:1px dashed var(--lijn);border-radius:10px;font-size:.9rem}

/* Tablet: feiten onder de uitleg, in kolommen */
@media (max-width:860px){
  .belasting{grid-template-columns:1fr}
  .feiten{grid-column:1;grid-row:3;flex-direction:row;flex-wrap:wrap;gap:12px 28px;margin-top:16px;padding:14px 0 0;border-left:0;border-top:1px solid var(--lijn)}
  .feiten div{flex:1 1 180px}
  .belasting .recent{grid-row:4}
  .belasting .bron{grid-row:5}
}

/* Mobiel: categorieën als één scrollbare, kleverige balk */
@media (max-width:640px){
  .meta-lijn{letter-spacing:.05em;font-size:.76rem}
  .cat-nav{position:sticky;top:0;z-index:5;flex-wrap:nowrap;overflow-x:auto;margin:4px -16px 0;padding:10px 16px;background:var(--papier);border-bottom:1px solid var(--lijn);scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .cat-nav::-webkit-scrollbar{display:none}
  .cat-nav a{flex:0 0 auto}
  .categorie,.belasting{scroll-margin-top:68px}
  .categorie h2.sectie{margin-top:36px}
  .belasting{padding:16px}
  .belasting h3{font-size:1.15rem}
  .feiten{flex-direction:column;gap:10px}
  .feiten div{flex:none}
}
