/* Server-rendered cases: gedeelde opmaak voor NL en EN. */
.cases-intro { background:var(--navy); color:#fff; padding:4.5rem 1.5rem 4rem; text-align:center; }
.cases-intro-inner { max-width:760px; margin:0 auto; }
.cases-intro .eyebrow { display:inline-block; border:1px solid rgba(255,255,255,.4); border-radius:50px; padding:.28rem 1rem; font-size:.78rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; margin-bottom:1rem; }
.cases-intro h1 { font-family:'Nunito',sans-serif; font-size:clamp(2rem,5vw,3.4rem); line-height:1.1; margin-bottom:.8rem; }
.cases-intro p:last-child { color:rgba(255,255,255,.84); font-size:1.08rem; }
.cases-grid { max-width:1080px; margin:0 auto; padding:3.5rem 1.5rem 4.5rem; display:grid; gap:1.5rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.case-card { border:1px solid var(--border); border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 10px 30px rgba(15,31,66,.06); }
.case-card .case-image { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; display:block; background:var(--gray); }
.case-card-content { padding:1.5rem; }
.case-card h2 { font-family:'Nunito',sans-serif; font-size:1.35rem; line-height:1.25; margin-bottom:.7rem; }
.case-card h2 a { color:var(--navy); text-decoration:none; }
.case-card h2 a:hover { color:var(--blue); }
.case-card-summary p { color:#444b5e; margin-bottom:.8rem; }
.case-card-result { border-left:3px solid var(--orange); padding-left:.8rem; color:#343b4d; margin:1rem 0; }
.case-read { display:inline-block; font-weight:800; text-decoration:none; margin-top:.35rem; }
.cases-empty { grid-column:1/-1; text-align:center; color:#667; padding:2rem; }

.case-detail { max-width:900px; margin:0 auto; padding:1rem 1.5rem 4.5rem; }
.case-hero { padding:1.2rem 0 2rem; }
.case-back { display:inline-block; text-decoration:none; font-weight:700; font-size:.9rem; margin-bottom:1.3rem; }
.case-hero h1 { font-family:'Nunito',sans-serif; font-size:clamp(2rem,5vw,3.4rem); line-height:1.1; margin-bottom:1rem; }
.case-lead { max-width:760px; font-size:1.16rem; color:#3b4254; }
.case-lead p { margin-bottom:1rem; }
.case-hero .case-image { width:100%; height:auto; max-height:520px; object-fit:cover; display:block; margin-top:1.8rem; border-radius:18px; background:var(--gray); }
.case-jumps { display:flex; flex-wrap:wrap; gap:.55rem; padding:1rem 0 1.8rem; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.case-jumps a { background:var(--gray); border-radius:50px; padding:.45rem .9rem; text-decoration:none; font-size:.86rem; font-weight:700; }
.case-body { max-width:760px; padding:1rem 0 2rem; }
.case-body .case-image-secondary { width:100%; height:auto; max-height:520px; object-fit:cover; display:block; margin:2rem 0 0; border-radius:18px; background:var(--gray); }
.case-section { scroll-margin-top:95px; padding-top:2rem; }
.case-section h2 { font-family:'Nunito',sans-serif; font-size:1.55rem; margin-bottom:.7rem; }
.case-copy p { margin-bottom:1rem; color:#343b4d; font-size:1.05rem; }
.case-copy h2,.case-copy h3 { font-family:'Nunito',sans-serif; margin:1.3rem 0 .5rem; }
.case-copy ul,.case-copy ol { margin:0 0 1rem 1.4rem; color:#343b4d; }
.case-copy blockquote { border-left:4px solid var(--orange); background:var(--gray); padding:1rem 1.2rem; border-radius:0 10px 10px 0; margin:1.2rem 0; }
.case-cta { background:var(--navy); color:#fff; border-radius:18px; padding:2rem; text-align:center; }
.case-cta h2 { font-family:'Nunito',sans-serif; margin-bottom:.4rem; }
.case-cta p { color:rgba(255,255,255,.82); max-width:620px; margin:0 auto; }
.case-cta .btn,.case-status .btn { display:inline-block; background:var(--orange); color:var(--navy); border-radius:50px; padding:.75rem 1.4rem; text-decoration:none; font-family:'Nunito',sans-serif; font-weight:900; margin-top:1rem; }
.case-status { min-height:55vh; max-width:720px; margin:0 auto; padding:5rem 1.5rem; text-align:center; }
.case-status h1 { font-family:'Nunito',sans-serif; font-size:clamp(1.8rem,5vw,2.8rem); margin-bottom:.7rem; }

@media (max-width:720px) {
  .cases-grid { grid-template-columns:1fr; padding:2.5rem 1.15rem 3.5rem; }
  .cases-intro { padding:3.5rem 1.15rem 3rem; }
  .case-detail { padding-inline:1.15rem; }
  .case-jumps { gap:.4rem; }
}
