/* ═══════════════════════════════════════════
   Kosten vakantiewoning verhuren – pagina-CSS
   Casa Hero design system
   ═══════════════════════════════════════════ */

/* ── NAV OVERRIDE (subpagina: altijd scrolled-state) ── */
#nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1rem 4rem;background:rgba(255,255,255,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1px 0 #ece7de}
#nav .nav-links a{color:#a89f94;font-size:.84rem;letter-spacing:.16em;text-transform:uppercase;font-weight:300}
#nav .nav-links a:hover{color:#a3a759}
#nav .nav-cta{background:#7cbd52;color:#fff !important;padding:.6rem 1.4rem;border-radius:50px;font-weight:500 !important;letter-spacing:.08em !important}
#nav .nav-cta:hover{background:#6aab42}
#nav .nav-hamburger span{background:#324238}

/* ── LAYOUT ── */
.kv-wrap{max-width:var(--max);margin:0 auto;padding:0 4rem}
.kv-wrap--narrow{max-width:820px}

/* ── BREADCRUMBS (inside hero) ── */
.kv-breadcrumbs{display:flex;align-items:center;gap:.5rem;font-size:.84rem;color:rgba(255,255,255,.7);font-weight:300;margin-bottom:1.5rem}
.kv-breadcrumbs a{color:rgba(255,255,255,.9);transition:color .2s}
.kv-breadcrumbs a:hover{color:#fff}
.kv-breadcrumbs svg{flex-shrink:0;stroke:rgba(255,255,255,.5)}

/* ── HERO (huisstijl, geen foto) ── */
.kv-hero{padding:9rem 0 4.8rem;text-align:center;position:relative;overflow:hidden;background:linear-gradient(158deg,#3a4d40 0%,#2c3c31 52%,#232f28 100%)}
.kv-hero::before{content:'';position:absolute;top:-30%;right:-10%;width:60%;height:120%;background:radial-gradient(ellipse at center,rgba(118,121,64,.38) 0%,rgba(118,121,64,0) 68%);pointer-events:none}
.kv-hero::after{content:'';position:absolute;left:-8%;bottom:-40%;width:48%;height:110%;background:radial-gradient(ellipse at center,rgba(94,125,102,.28) 0%,rgba(94,125,102,0) 66%);pointer-events:none}
.kv-hero-bg{display:none}
.kv-hero-overlay{display:none}
.kv-hero .kv-wrap{position:relative;z-index:2}
.kv-hero .section-label{color:var(--accent-lt)}
.kv-hero .section-label::before{background:var(--accent-lt)}
.kv-hero h1{font-family:'DM Sans',sans-serif;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:800;line-height:1.15;color:#fff;margin-bottom:1.6rem;letter-spacing:-.03em}
.kv-hero h1 em{font-style:normal;color:var(--accent-lt);font-weight:800}
.kv-hero-sub{font-size:clamp(1.08rem,1.5vw,1.2rem);font-weight:300;color:rgba(255,255,255,.86);line-height:1.75;max-width:860px;margin:0 auto}

/* ── TOC ── */
.kv-toc{padding:3rem 0;background:var(--bg2)}
.kv-toc-box{background:var(--bg2);border:none;border-radius:var(--r);padding:2.2rem 2.8rem}
.kv-toc-title{display:flex;align-items:center;gap:.6rem;font-family:'DM Sans',sans-serif;font-size:1.35rem;font-weight:700;color:var(--text);margin-bottom:1.4rem;letter-spacing:-.015em}
.kv-toc-list{list-style:none;counter-reset:toc;columns:2;column-gap:3rem}
.kv-toc-list li{counter-increment:toc;break-inside:avoid;margin-bottom:.7rem}
.kv-toc-list li::before{content:counter(toc) ". ";color:var(--accent);font-weight:500;font-size:1.08rem}
.kv-toc-list a{font-size:1.08rem;color:var(--text);font-weight:300;transition:color .2s;text-decoration:none}
.kv-toc-list a:hover{color:var(--accent)}

/* ── SECTIONS ── */
.kv-section{padding:5rem 0}
.kv-section--alt{background:var(--bg2)}
.kv-section-header{text-align:center;margin-bottom:3rem}
.kv-section-title{font-family:'DM Sans',sans-serif;font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:700;line-height:1.15;color:var(--text);margin-bottom:1rem;letter-spacing:-.025em}
.kv-section-title em{font-style:normal;color:var(--accent);font-weight:700}
.kv-section-sub{font-size:1.12rem;color:var(--muted);font-weight:300;line-height:1.75;max-width:660px;margin:0 auto}
.kv-section-sub strong{color:var(--text);font-weight:500}

/* ── TEKST SECTIES ── */
.kv-section h2{font-family:'DM Sans',sans-serif;font-size:clamp(1.5rem,2.5vw,2.1rem);font-weight:700;color:var(--text);margin-bottom:1.4rem;letter-spacing:-.02em}
.kv-section p{font-size:1.12rem;color:#6b6560;line-height:1.8;font-weight:300;margin-bottom:1.2rem}
.kv-section p strong{color:var(--text);font-weight:500}

/* ── PLATFORM INTRO ── */
.kv-platform-intro{display:flex;align-items:center;gap:1.2rem;margin-bottom:2.5rem}
.kv-platform-badge{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.kv-platform-badge--airbnb{background:#fee2e2}
.kv-platform-badge--airbnb svg{stroke:#e53e3e}
.kv-platform-badge--booking{background:#dbeafe}
.kv-platform-badge--booking svg{stroke:#2563eb}
.kv-platform-badge--micazu{background:#fef3c7}
.kv-platform-badge--micazu svg{stroke:#d97706}
.kv-platform-intro h2{margin-bottom:.2rem}
.kv-subtitle{font-size:.95rem;color:var(--muted);font-weight:300;margin-bottom:0 !important}

/* ── TWO-COL LAYOUT ── */
.kv-two-col{display:grid;grid-template-columns:1fr 340px;gap:3rem;align-items:start}
.kv-col-text p:last-child{margin-bottom:0}

/* ── FEE CARD ── */
.kv-fee-card{border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.06);position:sticky;top:6rem}
.kv-fee-card-header{padding:1.2rem 1.5rem;font-family:'DM Sans',sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff}
.kv-fee-card-header--airbnb{background:linear-gradient(135deg,#e53e3e,#c0392b)}
.kv-fee-card-header--booking{background:linear-gradient(135deg,#3b82f6,#2563eb)}
.kv-fee-card-header--micazu{background:linear-gradient(135deg,#f59e0b,#d97706)}
.kv-fee-card-body{padding:1.5rem;background:#fff}
.kv-fee-line{display:flex;justify-content:space-between;align-items:center;padding:.65rem 0;border-bottom:1px solid rgba(0,0,0,.06)}
.kv-fee-line span{font-size:.9rem;color:var(--muted);font-weight:300}
.kv-fee-line strong{font-size:1.15rem}
.kv-fee-line--total{border-bottom:none;padding-top:.8rem;margin-top:.4rem;border-top:2px solid var(--border)}
.kv-fee-line--total span{color:var(--text);font-weight:500}
.kv-fee--ok{color:var(--sage)}
.kv-fee--warn{color:#d97706}
.kv-fee--danger{color:#c0392b}
.kv-fee-note{font-size:.78rem;color:var(--muted);font-weight:300;margin:.8rem 0 0;font-style:italic}

/* ── VERGELIJKINGSTABEL ── */
.kv-table-outer{position:relative}
.kv-table-outer::after{content:'';position:absolute;top:0;right:0;bottom:0;width:40px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85));border-radius:0 var(--r) var(--r) 0;pointer-events:none;opacity:0;transition:opacity .3s}
.kv-scroll-hint{display:none;align-items:center;justify-content:center;gap:.4rem;font-size:.82rem;color:var(--accent);font-weight:400;margin-bottom:.6rem;animation:kv-nudge 2s ease-in-out infinite}
.kv-scroll-hint svg{stroke:var(--accent)}
@keyframes kv-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
.kv-table-outer.scrolled::after{opacity:0 !important}
.kv-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:1.5rem;border-radius:var(--r);border:1px solid var(--border);box-shadow:0 4px 24px rgba(0,0,0,.06)}
@media(max-width:768px){
  .kv-scroll-hint{display:flex}
  .kv-table-outer::after{opacity:1}
}
.kv-table{width:100%;border-collapse:collapse;min-width:680px;background:#fff}
.kv-table thead th{padding:1.1rem 1.2rem;font-family:'DM Sans',sans-serif;font-weight:500;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.9);background:var(--bg-dark);text-align:center;white-space:nowrap;vertical-align:middle}
.kv-table thead th:first-child{text-align:left;width:200px}
.kv-th-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;margin-right:.5rem;vertical-align:middle}
.kv-th-icon svg{stroke:#fff;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.kv-th-icon--airbnb{background:rgba(229,62,62,.3)}
.kv-th-icon--booking{background:rgba(59,130,246,.3)}
.kv-th-icon--micazu{background:rgba(245,158,11,.3)}
.kv-th-icon--own{background:rgba(143,168,150,.3)}
.kv-th--hero{background:var(--sage) !important}

.kv-table td{padding:.9rem 1.2rem;text-align:center;font-size:.95rem;color:var(--text);font-weight:300;border-bottom:1px solid var(--border)}
.kv-table tbody tr:last-child td{border-bottom:none}
.kv-td-label{text-align:left !important;font-weight:400;color:var(--text)}
.kv-td-label strong{font-weight:500}
.kv-td--neg{color:#c0392b}
.kv-td--pos{color:var(--sage)}
.kv-td--hero{background:rgba(143,168,150,.06)}
td small{font-size:.75rem;color:var(--muted);font-weight:300;display:inline}

.kv-tr--accent td{background:var(--bg2)}
.kv-tr--accent td strong{color:var(--text);font-weight:600}
.kv-tr--total td{background:var(--bg3);border-top:2px solid var(--border) !important}
.kv-tr--total td strong{font-size:1.05rem}

.kv-table-note{font-size:.82rem;color:var(--muted);font-weight:300;font-style:italic;margin-bottom:3rem}

/* ── BAR CHART ── */
.kv-bar-section h3{font-family:'DM Sans',sans-serif;font-size:1.35rem;font-weight:700;color:var(--text);margin-bottom:2rem;text-align:center;letter-spacing:-.015em}
.kv-bars{display:flex;flex-direction:column;gap:1rem;max-width:720px;margin:0 auto}
.kv-bar-row{display:grid;grid-template-columns:100px 1fr 48px;align-items:center;gap:.8rem}
.kv-bar-name{font-size:.88rem;font-weight:400;color:var(--text);text-align:right}
.kv-bar-track{height:42px;background:var(--bg3);border-radius:8px;overflow:hidden}
.kv-bar-fill{height:100%;border-radius:8px;display:flex;align-items:center;justify-content:flex-end;padding-right:.8rem;min-width:48px;transition:width .8s cubic-bezier(.16,1,.3,1)}
.kv-bar-fill span{font-size:.78rem;font-weight:600;color:#fff;white-space:nowrap}
.kv-bar-fill--airbnb{background:linear-gradient(90deg,#ef4444,#c0392b)}
.kv-bar-fill--booking{background:linear-gradient(90deg,#60a5fa,#2563eb)}
.kv-bar-fill--micazu{background:linear-gradient(90deg,#fbbf24,#d97706)}
.kv-bar-fill--own{background:var(--sage)}
.kv-bar-pct{font-size:.82rem;font-weight:500;color:var(--muted)}

/* ── ANNUAL CARDS ── */
.kv-annual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin:2.5rem 0}
.kv-annual-card{padding:2rem 1.2rem;border-radius:var(--r);text-align:center;border:1px solid var(--border);background:#fff;transition:transform .3s}
.kv-annual-card:hover{transform:translateY(-3px)}
.kv-annual-platform{display:block;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:400;margin-bottom:.6rem}
.kv-annual-amount{display:block;font-family:'DM Sans',sans-serif;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700;margin-bottom:.3rem;letter-spacing:-.02em}
.kv-annual-sub{font-size:.78rem;color:var(--muted);font-weight:300}
.kv-annual-card--airbnb{border-top:3px solid #e53e3e}
.kv-annual-card--airbnb .kv-annual-amount{color:#c0392b}
.kv-annual-card--booking{border-top:3px solid #2563eb}
.kv-annual-card--booking .kv-annual-amount{color:#2563eb}
.kv-annual-card--micazu{border-top:3px solid #d97706}
.kv-annual-card--micazu .kv-annual-amount{color:#d97706}
.kv-annual-card--own{border-top:3px solid var(--sage);background:rgba(143,168,150,.05)}
.kv-annual-card--own .kv-annual-amount{color:var(--sage)}

/* ── CALLOUT ── */
.kv-callout{display:flex;align-items:flex-start;gap:1rem;padding:1.4rem 1.6rem;background:var(--bg3);border-radius:10px;border-left:3px solid var(--accent)}
.kv-callout svg{flex-shrink:0;margin-top:.1rem}
.kv-callout p{font-size:.95rem;color:var(--text);line-height:1.7;font-weight:300;margin:0 !important}
.kv-callout p strong{font-weight:600}

/* ── PROS & CONS ── */
.kv-proscons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.kv-pc-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:2rem 1.8rem;box-shadow:0 2px 16px rgba(0,0,0,.04);transition:transform .3s}
.kv-pc-card:hover{transform:translateY(-4px)}
.kv-pc-name{font-family:'DM Sans',sans-serif;font-size:1.4rem;font-weight:700;padding-bottom:1rem;margin-bottom:1.2rem;border-bottom:2px solid var(--border);letter-spacing:-.015em}
.kv-pc-name--airbnb{border-bottom-color:#e53e3e}
.kv-pc-name--booking{border-bottom-color:#2563eb}
.kv-pc-name--micazu{border-bottom-color:#d97706}
.kv-pc-section{margin-bottom:1.2rem}
.kv-pc-section:last-child{margin-bottom:0}
.kv-pc-section h4{display:flex;align-items:center;gap:.4rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;margin-bottom:.7rem}
.kv-pc-section--pro h4{color:var(--sage)}
.kv-pc-section--con h4{color:#c0392b}
.kv-pc-section ul{list-style:none}
.kv-pc-section li{font-size:.9rem;color:#6b6560;line-height:1.55;font-weight:300;padding:.3rem 0 .3rem 1.2rem;position:relative}
.kv-pc-section--pro li::before{content:'\2713';position:absolute;left:0;color:var(--sage);font-size:.7rem;top:.45rem}
.kv-pc-section--con li::before{content:'\2717';position:absolute;left:0;color:#c0392b;font-size:.7rem;top:.45rem}

/* ── BENEFITS ── */
.kv-benefits{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0 3rem}
.kv-benefit{display:flex;align-items:flex-start;gap:1.2rem;padding:1.5rem;background:#fff;border:1px solid var(--border);border-radius:var(--r)}
.kv-benefit-icon{width:48px;height:48px;border-radius:12px;background:var(--bg2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.kv-benefit strong{display:block;font-family:'DM Sans',sans-serif;font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:.3rem;letter-spacing:-.01em}
.kv-benefit p{font-size:.92rem;color:var(--muted);line-height:1.6;font-weight:300;margin:0 !important}

/* ── CTA BOX ── */
.kv-cta-box{margin-top:3rem;padding:3rem;background:var(--bg-dark);border-radius:var(--r);text-align:center}
.kv-cta-box h3{font-family:'DM Sans',sans-serif;font-size:1.7rem;font-weight:700;color:#fff;margin-bottom:.8rem;letter-spacing:-.02em}
.kv-cta-box p{font-size:.98rem;color:rgba(255,255,255,.6);font-weight:300;line-height:1.7;margin-bottom:2rem !important;max-width:500px;margin-left:auto;margin-right:auto}
.kv-cta-actions{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.kv-cta-link{display:inline-flex;align-items:center;gap:.4rem;color:rgba(255,255,255,.55);font-size:.9rem;font-weight:300;transition:color .2s}
.kv-cta-link:hover{color:#fff}
.kv-cta-link svg{stroke:currentColor}

/* ── FAQ ── */
.kv-faq-list{display:flex;flex-direction:column}
.kv-faq-item{border-bottom:1px solid var(--border)}
.kv-faq-q{width:100%;text-align:left;padding:1.4rem 0;background:none;border:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;cursor:pointer;font-family:'DM Sans',sans-serif;font-size:1.12rem;font-weight:700;color:var(--text);transition:color .2s;letter-spacing:-.015em}
.kv-faq-q:hover{color:var(--accent)}
.kv-faq-icon{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,border-color .2s}
.kv-faq-icon svg{transition:transform .3s}
.kv-faq-item.open .kv-faq-icon{background:var(--accent);border-color:var(--accent)}
.kv-faq-item.open .kv-faq-icon svg{stroke:#fff;transform:rotate(45deg)}
.kv-faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.kv-faq-a p{font-size:1rem;color:var(--muted);line-height:1.8;font-weight:300;padding-bottom:1.4rem}
.kv-faq-item.open .kv-faq-a{max-height:400px}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  #nav{padding:1rem 2rem}
  #nav .nav-links{display:none}
  #nav .nav-hamburger{display:flex;flex-direction:column;gap:5px;padding:.4rem;cursor:pointer}
}

@media(max-width:1100px){
  .kv-wrap{padding:0 3rem}
  .kv-two-col{grid-template-columns:1fr}
  .kv-fee-card{position:static}
  .kv-proscons-grid{grid-template-columns:1fr}
  .kv-annual-grid{grid-template-columns:repeat(2,1fr)}
  .kv-toc-list{columns:1}
}

@media(max-width:768px){
  .kv-wrap{padding:0 1.5rem}
  .kv-hero{padding:7.5rem 0 3rem}
  .kv-section{padding:3.5rem 0}
  .kv-bar-row{grid-template-columns:100px 1fr 40px;gap:.6rem}
  .kv-bar-name{font-size:.82rem}
  .kv-annual-grid{grid-template-columns:repeat(2,1fr);gap:.8rem}
  .kv-annual-card{padding:1.4rem 1rem}
  .kv-cta-box{padding:2rem 1.5rem}
  .kv-platform-intro{flex-direction:column;align-items:flex-start;gap:.8rem}
  .kv-benefit{flex-direction:column;gap:.8rem}
  .kv-toc-box{padding:1.4rem 1.5rem}
}

@media(max-width:480px){
  .kv-wrap{padding:0 1rem}
  .kv-annual-grid{grid-template-columns:1fr 1fr}
  .kv-bar-row{grid-template-columns:90px 1fr 36px;gap:.4rem}
  .kv-bar-fill span{font-size:.7rem;padding-right:.4rem}
  .kv-table thead th,.kv-table td{padding:.7rem .7rem;font-size:.82rem}
  .kv-cta-actions{flex-direction:column}
  .kv-hero h1{font-size:clamp(1.6rem,5vw,2.2rem)}
}

/* ═══════════════════════════════════════════
   Kennisbank — aanvullende componenten
   ═══════════════════════════════════════════ */

/* ── LINKS IN LOPENDE TEKST ── */
.kv-section p a,.kv-section li a{color:var(--accent);font-weight:400;text-decoration:underline;text-decoration-color:rgba(163,167,89,.35);text-underline-offset:3px;transition:text-decoration-color .2s}
.kv-section p a:hover,.kv-section li a:hover{text-decoration-color:var(--accent)}

/* ── H3 IN ARTIKELEN ── */
.kv-section h3{font-family:'DM Sans',sans-serif;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:700;color:var(--text);margin:2.2rem 0 1rem;letter-spacing:-.015em}
.kv-section h3:first-child{margin-top:0}

/* ── GENUMMERD STAPPENPLAN ── */
.kv-steps{list-style:none;counter-reset:steps;display:flex;flex-direction:column;gap:1.2rem;margin:2rem 0 1rem}
.kv-steps li{counter-increment:steps;position:relative;padding:1.4rem 1.6rem 1.4rem 4.4rem;background:#fff;border:1px solid var(--border);border-radius:var(--r);font-size:1rem;color:#6b6560;line-height:1.7;font-weight:300}
.kv-steps li::before{content:counter(steps);position:absolute;left:1.3rem;top:1.3rem;width:2rem;height:2rem;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'DM Sans',sans-serif;font-size:.9rem;font-weight:600}
.kv-steps li strong{display:block;font-family:'DM Sans',sans-serif;font-size:1.08rem;font-weight:700;color:var(--text);margin-bottom:.25rem;letter-spacing:-.01em}

/* ── CHECKLIST ── */
.kv-check{list-style:none;margin:1.5rem 0;display:flex;flex-direction:column;gap:.6rem}
.kv-check li{position:relative;padding:.35rem 0 .35rem 2rem;font-size:1.02rem;color:#6b6560;line-height:1.65;font-weight:300}
.kv-check li::before{content:'\2713';position:absolute;left:0;top:.4rem;width:1.3rem;height:1.3rem;border-radius:50%;background:rgba(143,168,150,.15);color:var(--sage);font-size:.72rem;display:flex;align-items:center;justify-content:center;font-weight:700}
.kv-check li strong{color:var(--text);font-weight:500}

/* ── AANDACHTSPUNTEN (kruisjeslijst) ── */
.kv-cross{list-style:none;margin:1.5rem 0;display:flex;flex-direction:column;gap:.6rem}
.kv-cross li{position:relative;padding:.35rem 0 .35rem 2rem;font-size:1.02rem;color:#6b6560;line-height:1.65;font-weight:300}
.kv-cross li::before{content:'\2717';position:absolute;left:0;top:.4rem;width:1.3rem;height:1.3rem;border-radius:50%;background:rgba(192,57,43,.1);color:#c0392b;font-size:.72rem;display:flex;align-items:center;justify-content:center;font-weight:700}
.kv-cross li strong{color:var(--text);font-weight:500}

/* ── CALLOUT VARIANT: WAARSCHUWING ── */
.kv-callout--warn{border-left-color:#d97706;background:rgba(245,158,11,.07)}
.kv-callout--sage{border-left-color:var(--sage);background:rgba(143,168,150,.07)}

/* ── FEE CARD: NEUTRALE / SAGE HEADER ── */
.kv-fee-card-header--sage{background:linear-gradient(135deg,#8fa896,#6f8a78)}
.kv-fee-card-header--neutral{background:var(--bg-dark)}

/* ── PLATFORM BADGE VARIANTEN ── */
.kv-platform-badge--sage{background:rgba(143,168,150,.15)}
.kv-platform-badge--sage svg{stroke:var(--sage)}
.kv-platform-badge--accent{background:rgba(163,167,89,.14)}
.kv-platform-badge--accent svg{stroke:var(--accent)}
.kv-platform-badge--warn{background:#fef3c7}
.kv-platform-badge--warn svg{stroke:#d97706}

/* ── GERELATEERDE ARTIKELEN ── */
.kv-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.kv-related-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:1.8rem 1.7rem;box-shadow:0 2px 16px rgba(0,0,0,.04);text-decoration:none;transition:transform .3s,box-shadow .3s}
.kv-related-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px rgba(0,0,0,.08)}
.kv-related-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:500;margin-bottom:.6rem}
.kv-related-card h3{font-family:'DM Sans',sans-serif;font-size:1.15rem;font-weight:700;color:var(--text);line-height:1.35;margin:0 0 .6rem;letter-spacing:-.015em}
.kv-related-card p{font-size:.9rem;color:var(--muted);line-height:1.6;font-weight:300;margin:0 0 1.2rem;flex-grow:1}
.kv-related-more{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--accent);font-weight:400}
.kv-related-more svg{transition:transform .25s}
.kv-related-card:hover .kv-related-more svg{transform:translateX(4px)}
.kv-related-all{text-align:center;margin-top:2.2rem}
.kv-related-all a{font-size:.95rem;color:var(--muted);font-weight:300;text-decoration:none;transition:color .2s}
.kv-related-all a:hover{color:var(--accent)}

/* ── KENNISBANK OVERZICHT ── */
.kb-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:1rem}
.kb-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.04);text-decoration:none;transition:transform .3s,box-shadow .3s}
.kb-card:hover{transform:translateY(-4px);box-shadow:0 10px 32px rgba(0,0,0,.09)}
.kb-card-img{position:relative;aspect-ratio:16/8;overflow:hidden}
.kb-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.kb-card:hover .kb-card-img img{transform:scale(1.04)}
.kb-card-body{padding:1.8rem 1.9rem 2rem;display:flex;flex-direction:column;flex-grow:1}
.kb-card-meta{display:flex;align-items:center;gap:1rem;margin-bottom:.8rem}
.kb-card-label{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:500}
.kb-card-time{font-size:.78rem;color:var(--muted);font-weight:300}
.kb-card h2{font-family:'DM Sans',sans-serif;font-size:1.4rem;font-weight:700;color:var(--text);line-height:1.3;margin:0 0 .7rem;letter-spacing:-.015em}
.kb-card p{font-size:.95rem;color:var(--muted);line-height:1.7;font-weight:300;margin:0 0 1.3rem;flex-grow:1}
.kb-card-more{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--accent);font-weight:400}
.kb-card-more svg{transition:transform .25s}
.kb-card:hover .kb-card-more svg{transform:translateX(4px)}

/* ── ANNUAL GRID: 3 KOLOMMEN ── */
.kv-annual-grid--3{grid-template-columns:repeat(3,1fr)}

/* ── RESPONSIVE AANVULLINGEN ── */
@media(max-width:1100px){
  .kv-related-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
  .kb-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .kv-steps li{padding:1.2rem 1.2rem 1.2rem 3.8rem}
  .kv-steps li::before{left:1rem;top:1.1rem}
  .kb-card-body{padding:1.4rem 1.4rem 1.6rem}
}
