/* v51: prijzenpagina en vernieuwde over-ons-pagina. Huisstijl: #123c35 (groen), #b5ebd9 (mint), #e3bf73 (goud), #f6f7f2 (papier). */
.ok51{--g:#123c35;--g2:#0c5147;--mint:#b5ebd9;--gold:#e3bf73;--goldi:#a77c25;--paper:#f6f7f2;--line:#dde6dc;--muted:#566a63;color:var(--g)}
.ok51 .ok-section-head p{max-width:520px}
.ok51-lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:760px;margin:0}
.ok51-lead+.ok51-lead{margin-top:14px}

/* Kerncijfers */
.ok51-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none}
.ok51-stats li{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 20px;border-top:4px solid var(--gold)}
.ok51-stats b{display:block;font-size:clamp(30px,3.4vw,42px);line-height:1;letter-spacing:-.03em;color:var(--g)}
.ok51-stats span{display:block;margin-top:8px;font-size:15px;color:var(--muted);line-height:1.45}
.ok-hero .ok51-stats{margin-top:30px}
.ok-hero .ok51-stats li{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);border-top-color:var(--gold)}
.ok-hero .ok51-stats b{color:#fff}.ok-hero .ok51-stats span{color:#cfe0d9}

/* Diensten / specialismen */
.ok51-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px}
.ok51-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;color:var(--g);text-decoration:none}
a.ok51-card{transition:transform .2s,box-shadow .2s}
a.ok51-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -22px rgba(18,60,53,.45)}
.ok51-card h3{font-size:21px;line-height:1.25;margin:0 0 10px}
.ok51-card p{font-size:15.5px;line-height:1.65;color:var(--muted);margin:0 0 14px;flex:1}
.ok51-card .ok51-meer{font-size:14px;font-weight:700;color:var(--g2)}
.ok51-card .ok51-vanaf{display:inline-block;margin-bottom:12px;padding:4px 10px;border-radius:50px;background:#edf6f1;font-size:13px;font-weight:700;color:var(--g2)}

/* Werkwijze */
.ok51-stappen{counter-reset:stap;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:0;list-style:none}
.ok51-stappen li{counter-increment:stap;position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:56px 20px 20px}
.ok51-stappen li:before{content:counter(stap);position:absolute;top:18px;left:20px;width:28px;height:28px;border-radius:50%;background:var(--g);color:var(--mint);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}
.ok51-stappen h3{font-size:18px;margin:0 0 8px}
.ok51-stappen p{font-size:15px;line-height:1.6;color:var(--muted);margin:0}

/* Team (bedrijf, geen personen) */
.ok51-team{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;background:var(--g);color:#fff;border-radius:28px;padding:44px}
.ok51-team h2{color:#fff;font-size:clamp(28px,3vw,40px);line-height:1.15;margin:6px 0 14px}
.ok51-team p{color:#d0ded8;font-size:17px;line-height:1.7;margin:0 0 12px}
.ok51-team .ok-eyebrow{color:var(--mint)}
.ok51-check{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ok51-check li{position:relative;padding:14px 16px 14px 46px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:15.5px;line-height:1.5;color:#e6efeb}
.ok51-check li:before{content:'✓';position:absolute;left:16px;top:13px;color:var(--gold);font-weight:700}
.ok51-check strong{color:#fff}

/* Projecten met foto */
.ok51-projecten{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:18px}
.ok51-project{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;color:var(--g);text-decoration:none;transition:transform .2s}
.ok51-project:hover{transform:translateY(-3px)}
.ok51-project img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e9efe9}
.ok51-project div{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.ok51-project small{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#427963}
.ok51-project h3{font-size:19px;line-height:1.3;margin:6px 0 8px}
.ok51-project p{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 12px;flex:1}
.ok51-project span{font-size:14px;font-weight:700;color:var(--g2)}

/* Prijzen */
.ok51-prijzen{display:grid;gap:18px}
.ok51-prijs{display:grid;grid-template-columns:1.25fr 1fr auto;gap:28px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 28px;box-shadow:0 1px 2px rgba(18,60,53,.04)}
.ok51-prijs h3{font-size:22px;line-height:1.25;margin:0 0 6px}
.ok51-prijs h3 a{color:inherit;text-decoration:none}
.ok51-prijs h3 a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}
.ok51-prijs p{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}
.ok51-vanafprijs{font-size:14px;color:var(--muted);white-space:nowrap}
.ok51-vanafprijs strong{display:block;font-size:clamp(34px,4vw,44px);line-height:1;letter-spacing:-.03em;color:var(--g);margin-top:4px}
.ok51-bereik{margin-top:16px}
.ok51-balk{position:relative;height:10px;border-radius:10px;background:#edf2ea;overflow:hidden}
.ok51-balk i{position:absolute;top:0;bottom:0;border-radius:10px;background:linear-gradient(90deg,var(--mint),var(--g2))}
.ok51-bereik-tekst{margin-top:8px;font-size:14px;color:var(--muted)}
.ok51-bereik-tekst b{color:var(--g)}
.ok51-prijs-cta{display:flex;flex-direction:column;gap:8px;align-items:stretch;min-width:180px}
.ok51-knop{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border-radius:50px;background:var(--g2);color:#fff!important;font-size:14.5px;font-weight:700;text-decoration:none;text-align:center}
.ok51-knop.licht{background:transparent;color:var(--g2)!important;border:1px solid #b9cec4}
.ok51-knop:hover{filter:brightness(1.08)}
.ok51-knop:focus-visible,.ok51-card:focus-visible,.ok51-project:focus-visible{outline:3px solid #36af86;outline-offset:4px}
.ok51-noot{margin-top:18px;font-size:14px;color:var(--muted)}
.ok51-factoren{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:0;padding:0;list-style:none}
.ok51-factoren li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px}
.ok51-factoren strong{display:block;font-size:17px;margin-bottom:6px}
.ok51-factoren span{font-size:15px;line-height:1.6;color:var(--muted)}
.ok51-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;background:var(--g);color:#fff;border-radius:26px;padding:36px 40px}
.ok51-cta h2{color:#fff;margin:0 0 6px;font-size:clamp(26px,2.8vw,36px);line-height:1.2}
.ok51-cta p{margin:0;color:#d0ded8}
.ok51-prijshint{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:18px;padding:22px 26px}
.ok51-prijshint p{margin:0;font-size:17px;line-height:1.55}
.ok51-prijshint small{display:block;font-size:14px;color:var(--muted);margin-top:4px}
.ok51-sectie-kort{padding:36px 0!important}

@media (max-width:1023px){
  .ok51-stats{grid-template-columns:repeat(2,1fr)}
  .ok51-stappen{grid-template-columns:repeat(2,1fr)}
  .ok51-team{grid-template-columns:1fr;padding:32px 24px;gap:24px}
  .ok51-prijs{grid-template-columns:1fr auto}
  .ok51-prijs-cta{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}
  .ok51-prijs-cta .ok51-knop{flex:1 1 180px}
}
@media (max-width:640px){
  .ok51-stats{gap:10px}.ok51-stats li{padding:16px 14px}.ok51-stats span{font-size:13.5px}
  .ok51-stappen{grid-template-columns:1fr}
  .ok51-prijs{grid-template-columns:1fr;gap:16px;padding:22px 20px}
  .ok51-cta{padding:28px 22px}
  .ok51-lead{font-size:16.5px}
}
@media (prefers-reduced-motion:reduce){a.ok51-card,.ok51-project{transition:none}}

/* v53: lopende tekst op dienstpagina's (trap, rooklucht) */
.ok53-tekst{max-width:820px}
.ok53-tekst h3{font-size:clamp(20px,2.2vw,24px);line-height:1.3;margin:34px 0 10px;color:var(--g)}
.ok53-tekst p,.ok53-tekst li{font-size:17px;line-height:1.75;color:#33463f}
.ok53-tekst p{margin:0 0 14px}
.ok53-tekst ul,.ok53-tekst ol{padding-left:1.25em;margin:0 0 16px}
.ok53-tekst li{margin:7px 0}
.ok53-tekst a:not(.ok51-knop){color:var(--g2);font-weight:700;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.ok53-kaarten{margin:24px 0 6px;max-width:none}
.ok53-tekst .ok53-kaarten .ok51-card h3,#article .ok53-kaarten .ok51-card h3{margin:0 0 8px!important;font-size:19px!important}
#article .ok53-tekst h3{font-size:clamp(20px,2.2vw,24px)!important;margin-top:34px}
.ok53-tekst ul{list-style:disc}.ok53-tekst ol{list-style:decimal}.ok53-tekst li::marker{color:var(--goldi);font-weight:700}
.ok53-kaarten .ok51-card p{font-size:15.5px;flex:none;margin:0}
.ok53-knoppen{margin:20px 0 10px}
.ok53-klein{font-size:15px!important;color:var(--muted)!important;margin-top:14px!important}
@media (max-width:640px){.ok53-tekst p,.ok53-tekst li{font-size:16px}.ok53-knoppen .ok51-knop{flex:1 1 100%}}
