/*
Theme Name: Fix de Vesten
Template: hello-elementor
Version: 0.1.0
Text Domain: fixdevesten-child
*/

/* ===================================================================
   FIX DE VESTEN — child-theme stylesheet (portable plain CSS)
   =================================================================== */

:root{
  /* palette */
  --fdv-blue:#047CAC;
  --fdv-blue-dark:#03688f;
  --fdv-navy:#0E3A57;
  --fdv-navy-deep:#0a2c43;
  --fdv-amber:#F2A93B;
  --fdv-amber-dark:#d8902a;
  --fdv-white:#FFFFFF;
  --fdv-soft:#EEF4F7;
  --fdv-soft-deep:#e2edf2;
  --fdv-ink:#1F2A30;
  --fdv-ink-soft:#52646e;
  --fdv-line:#dbe6ec;
  --fdv-line-soft:#e8f0f4;

  /* type */
  --fdv-serif:'Newsreader',Georgia,'Times New Roman',serif;
  --fdv-sans:'Mulish',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  /* spacing scale */
  --fdv-s1:.5rem;
  --fdv-s2:1rem;
  --fdv-s3:1.5rem;
  --fdv-s4:2rem;
  --fdv-s5:3rem;
  --fdv-s6:4.5rem;
  --fdv-s7:6.5rem;

  --fdv-maxw:1160px;
  --fdv-radius:14px;
  --fdv-radius-sm:9px;
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:var(--fdv-sans);
  color:var(--fdv-ink);
  background:var(--fdv-white);
  font-size:18px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block;}
a{color:var(--fdv-blue);text-decoration:none;}

.fdv-wrap{max-width:var(--fdv-maxw);margin:0 auto;padding:0 28px;}

/* ---------- type primitives ---------- */
.fdv-kicker{
  font-family:var(--fdv-sans);
  font-weight:700;
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--fdv-blue);
  margin:0 0 var(--fdv-s2);
  display:flex;
  align-items:center;
  gap:.7rem;
}
.fdv-kicker::before{
  content:"";
  width:26px;height:2px;
  background:var(--fdv-amber);
  display:inline-block;
}
.fdv-kicker--light{color:#7cc4e0;}
.fdv-kicker--light::before{background:var(--fdv-amber);}

h1,h2,h3,h4{font-family:var(--fdv-serif);font-weight:500;color:var(--fdv-navy);margin:0;line-height:1.12;letter-spacing:-.01em;}
h1{font-size:clamp(2.5rem,5.4vw,3.85rem);}
h2{font-size:clamp(1.9rem,3.6vw,2.65rem);}
h3{font-size:1.35rem;line-height:1.2;}
p{margin:0 0 var(--fdv-s2);}
.fdv-lead{font-size:1.2rem;color:var(--fdv-ink-soft);line-height:1.62;}

/* ---------- buttons ---------- */
.fdv-btn{
  display:inline-flex;align-items:center;gap:.55rem;
  font-family:var(--fdv-sans);font-weight:700;font-size:1rem;
  padding:.92rem 1.7rem;border-radius:999px;
  border:2px solid transparent;cursor:pointer;
  transition:transform .15s ease,background .15s ease,box-shadow .15s ease;
  line-height:1;
}
.fdv-btn:hover{transform:translateY(-2px);}
.fdv-btn--primary{background:var(--fdv-amber);color:var(--fdv-navy-deep);box-shadow:0 8px 22px -10px rgba(242,169,59,.8);}
.fdv-btn--primary:hover{background:var(--fdv-amber-dark);}
.fdv-btn--ghost{background:transparent;color:var(--fdv-navy);border-color:var(--fdv-line);}
.fdv-btn--ghost:hover{border-color:var(--fdv-blue);color:var(--fdv-blue);}
.fdv-btn--onnavy{background:transparent;color:#fff;border-color:rgba(255,255,255,.32);}
.fdv-btn--onnavy:hover{border-color:#fff;background:rgba(255,255,255,.07);}
.fdv-btn .fdv-ar{font-style:normal;transition:transform .2s ease;}
.fdv-btn:hover .fdv-ar{transform:translateX(3px);}

/* ---------- header ---------- */
.fdv-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--fdv-line-soft);
}
.fdv-nav{display:flex;align-items:center;justify-content:space-between;height:78px;}
.fdv-brand{display:flex;align-items:center;gap:.7rem;font-family:var(--fdv-serif);font-weight:600;font-size:1.32rem;color:var(--fdv-navy);letter-spacing:-.01em;}
.fdv-brand-mark{
  width:38px;height:38px;border-radius:10px;flex:0 0 auto;
  background:var(--fdv-blue);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-family:var(--fdv-serif);font-weight:600;font-size:1.2rem;
  position:relative;overflow:hidden;
}
.fdv-brand-mark::after{content:"";position:absolute;left:0;right:0;bottom:0;height:9px;background:var(--fdv-amber);}
.fdv-brand-mark span{position:relative;z-index:1;line-height:1;transform:translateY(-2px);}
.fdv-menu{display:flex;align-items:center;gap:2.1rem;list-style:none;margin:0;padding:0;}
.fdv-menu a{font-family:var(--fdv-sans);font-weight:600;font-size:.98rem;color:var(--fdv-navy);transition:color .15s;}
.fdv-menu a:hover{color:var(--fdv-blue);}
.fdv-menu a.is-active{color:var(--fdv-blue);}
.fdv-nav-cta{display:flex;align-items:center;gap:1.2rem;}
.fdv-nav-cta .fdv-btn{padding:.65rem 1.25rem;font-size:.92rem;}
.fdv-burger{display:none;}

/* ---------- HERO ---------- */
.fdv-hero{padding:var(--fdv-s7) 0 var(--fdv-s6);position:relative;overflow:hidden;}
.fdv-hero::before{
  content:"";position:absolute;top:-180px;right:-160px;width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle at center,var(--fdv-soft) 0%,rgba(238,244,247,0) 70%);z-index:0;
}
.fdv-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:var(--fdv-s6);align-items:center;position:relative;z-index:1;}
.fdv-hero h1{margin-bottom:var(--fdv-s3);}
.fdv-hero h1 em{font-style:italic;color:var(--fdv-blue);}
.fdv-hero .fdv-lead{max-width:30rem;margin-bottom:var(--fdv-s4);}
.fdv-hero-actions{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;}
.fdv-hero-by{margin-top:var(--fdv-s4);display:flex;align-items:center;gap:.85rem;color:var(--fdv-ink-soft);font-size:.95rem;}
.fdv-hero-by .dot{width:7px;height:7px;border-radius:50%;background:var(--fdv-amber);flex:0 0 auto;}

.fdv-hero-figure{position:relative;}
.fdv-hero-figure img{border-radius:var(--fdv-radius);width:100%;height:520px;object-fit:cover;}
.fdv-hero-figure .fdv-figcard{
  position:absolute;left:-26px;bottom:34px;
  background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius-sm);
  padding:1rem 1.25rem;max-width:255px;box-shadow:0 24px 50px -22px rgba(14,58,87,.4);
}
.fdv-hero-figure .fdv-figcard .t{font-family:var(--fdv-serif);font-weight:600;color:var(--fdv-navy);font-size:1.05rem;margin-bottom:.15rem;}
.fdv-hero-figure .fdv-figcard .d{font-size:.86rem;color:var(--fdv-ink-soft);line-height:1.5;margin:0;}

/* ---------- section frame ---------- */
.fdv-section{padding:var(--fdv-s7) 0;}
.fdv-section--soft{background:var(--fdv-soft);}
.fdv-section--tight{padding:var(--fdv-s6) 0;}

/* ---------- WAAROM (heading+intro beside list) ---------- */
.fdv-split{display:grid;grid-template-columns:.95fr 1.05fr;gap:var(--fdv-s6);align-items:start;}
.fdv-split h2{margin-bottom:var(--fdv-s3);}
.fdv-split .fdv-lead{margin-bottom:var(--fdv-s2);}
.fdv-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem;}
.fdv-checklist li{display:grid;grid-template-columns:auto 1fr;gap:1.1rem;align-items:start;}
.fdv-checklist .ic{
  width:42px;height:42px;border-radius:11px;flex:0 0 auto;margin-top:2px;
  background:var(--fdv-white);border:1px solid var(--fdv-line);
  display:flex;align-items:center;justify-content:center;color:var(--fdv-blue);
}
.fdv-section--soft .fdv-checklist .ic{background:#fff;}
.fdv-checklist .ic svg{width:21px;height:21px;}
.fdv-checklist .ttl{font-family:var(--fdv-serif);font-weight:600;color:var(--fdv-navy);font-size:1.18rem;margin:0 0 .15rem;}
.fdv-checklist .txt{font-size:1rem;color:var(--fdv-ink-soft);margin:0;line-height:1.55;}

/* ---------- KERNPUNTEN (3 cards) ---------- */
.fdv-section-head{max-width:42rem;margin-bottom:var(--fdv-s5);}
.fdv-section-head h2{margin-bottom:var(--fdv-s2);}
.fdv-section-head p{color:var(--fdv-ink-soft);font-size:1.12rem;margin:0;}
.fdv-cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
.fdv-card{
  background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);
  padding:2rem 1.8rem 1.9rem;display:flex;flex-direction:column;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.fdv-card:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(14,58,87,.36);border-color:var(--fdv-blue);}
.fdv-card .num{font-family:var(--fdv-serif);font-weight:500;font-size:1rem;color:var(--fdv-amber-dark);letter-spacing:.04em;margin-bottom:1.1rem;}
.fdv-card .ic{
  width:54px;height:54px;border-radius:13px;margin-bottom:1.25rem;
  background:var(--fdv-soft);display:flex;align-items:center;justify-content:center;color:var(--fdv-blue);
}
.fdv-card .ic svg{width:26px;height:26px;}
.fdv-card h3{margin-bottom:.7rem;}
.fdv-card p{font-size:1rem;color:var(--fdv-ink-soft);line-height:1.6;margin:0 0 1.25rem;}
.fdv-card .more{margin-top:auto;font-weight:700;font-size:.92rem;color:var(--fdv-blue);display:inline-flex;align-items:center;gap:.4rem;}
.fdv-card .more .fdv-ar{font-style:normal;}

/* ---------- TRANSPARENCY callout (navy band, asymmetric) ---------- */
.fdv-callout{
  background:var(--fdv-navy);color:#fff;border-radius:22px;overflow:hidden;
  display:grid;grid-template-columns:1.25fr .95fr;position:relative;
}
.fdv-callout-body{padding:3.4rem 3.2rem;position:relative;z-index:1;}
.fdv-callout h2{color:#fff;margin-bottom:var(--fdv-s2);}
.fdv-callout h2 em{font-style:italic;color:var(--fdv-amber);}
.fdv-callout p{color:#bcd3e0;font-size:1.08rem;max-width:30rem;margin-bottom:var(--fdv-s3);line-height:1.6;}
.fdv-callout .fdv-kicker{color:#7cc4e0;}
.fdv-callout-media{position:relative;}
.fdv-callout-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.fdv-callout-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--fdv-navy) 0%,rgba(14,58,87,.35) 40%,rgba(14,58,87,.1) 100%);}
.fdv-callout-stat{display:flex;gap:2.4rem;margin:var(--fdv-s3) 0 var(--fdv-s4);}
.fdv-callout-stat .v{font-family:var(--fdv-serif);font-weight:500;font-size:2.1rem;color:#fff;line-height:1;}
.fdv-callout-stat .k{font-size:.86rem;color:#9fc0d1;margin-top:.35rem;}

/* ---------- DOE MEE strip (soft, asymmetric) ---------- */
.fdv-cta{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--fdv-s5);align-items:center;}
.fdv-cta h2{margin-bottom:var(--fdv-s2);}
.fdv-cta p{color:var(--fdv-ink-soft);font-size:1.1rem;margin-bottom:var(--fdv-s3);max-width:30rem;}
.fdv-cta-actions{display:flex;gap:1rem;flex-wrap:wrap;}
.fdv-cta-aside{
  background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);
  padding:2rem 2rem 1.8rem;
}
.fdv-cta-aside .q{font-family:var(--fdv-serif);font-style:italic;font-weight:400;font-size:1.32rem;color:var(--fdv-navy);line-height:1.4;margin:0 0 1.3rem;}
.fdv-cta-aside .by{display:flex;align-items:center;gap:.85rem;}
.fdv-cta-aside .by .av{width:44px;height:44px;border-radius:50%;background:var(--fdv-blue);color:#fff;font-family:var(--fdv-serif);font-weight:600;display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.fdv-cta-aside .by .nm{font-weight:700;color:var(--fdv-navy);font-size:.98rem;line-height:1.2;}
.fdv-cta-aside .by .rl{font-size:.85rem;color:var(--fdv-ink-soft);}

/* ---------- NIEUWS (3 article cards) ---------- */
.fdv-news-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:var(--fdv-s5);gap:2rem;flex-wrap:wrap;}
.fdv-news-head h2{margin-bottom:.4rem;}
.fdv-news-head p{color:var(--fdv-ink-soft);margin:0;}
.fdv-news{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
.fdv-article{
  display:flex;flex-direction:column;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);
  overflow:hidden;background:#fff;transition:transform .2s ease,box-shadow .2s ease;
}
.fdv-article:hover{transform:translateY(-4px);box-shadow:0 24px 46px -28px rgba(14,58,87,.34);}
.fdv-article .thumb{height:172px;background:var(--fdv-soft);position:relative;overflow:hidden;}
.fdv-article .thumb img{width:100%;height:100%;object-fit:cover;}
.fdv-article .thumb.t1{background:linear-gradient(135deg,#047CAC,#0E3A57);}
.fdv-article .thumb.t2{background:linear-gradient(135deg,#0E3A57,#03688f);}
.fdv-article .thumb.t3{background:linear-gradient(135deg,#1F6F92,#047CAC);}
.fdv-article .thumb .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);}
.fdv-article .thumb .ph svg{width:46px;height:46px;}
.fdv-article-body{padding:1.5rem 1.6rem 1.7rem;display:flex;flex-direction:column;flex:1;}
.fdv-article .meta{display:flex;gap:.7rem;align-items:center;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--fdv-blue);margin-bottom:.8rem;}
.fdv-article .meta .tag{background:var(--fdv-soft);color:var(--fdv-navy);padding:.25rem .6rem;border-radius:5px;letter-spacing:.04em;}
.fdv-article .meta .date{color:var(--fdv-ink-soft);font-weight:600;letter-spacing:.02em;text-transform:none;font-size:.82rem;}
.fdv-article h3{font-size:1.18rem;margin-bottom:.6rem;}
.fdv-article p{font-size:.97rem;color:var(--fdv-ink-soft);margin:0 0 1.2rem;line-height:1.55;}
.fdv-article .read{margin-top:auto;font-weight:700;font-size:.9rem;color:var(--fdv-blue);}

/* ---------- FOOTER ---------- */
.fdv-footer{background:var(--fdv-navy-deep);color:#cddce5;padding:var(--fdv-s6) 0 var(--fdv-s3);}
.fdv-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:2.5rem;padding-bottom:var(--fdv-s5);border-bottom:1px solid rgba(255,255,255,.1);}
.fdv-footer .fdv-brand{color:#fff;margin-bottom:1rem;}
.fdv-footer .fdv-brand-mark{background:var(--fdv-blue);}
.fdv-footer-about{color:#9fb8c6;font-size:.96rem;line-height:1.6;max-width:24rem;margin:0;}
.fdv-footer h4{font-family:var(--fdv-sans);font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#7fa4b8;margin:0 0 1.15rem;}
.fdv-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem;}
.fdv-footer ul a{color:#cddce5;font-size:.97rem;transition:color .15s;}
.fdv-footer ul a:hover{color:#fff;}
.fdv-footer-contact p{margin:0 0 .55rem;color:#cddce5;font-size:.97rem;}
.fdv-footer-contact .lbl{color:#7fa4b8;font-size:.82rem;}
.fdv-footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--fdv-s3);font-size:.86rem;color:#7fa4b8;flex-wrap:wrap;gap:1rem;}
.fdv-footer-bottom a{color:#9fb8c6;}
.fdv-footer-bottom .sep{display:flex;gap:1.4rem;}

/* ===================================================================
   RESPONSIVE
   =================================================================== */
@media(max-width:980px){
  .fdv-hero-grid{grid-template-columns:1fr;gap:var(--fdv-s5);}
  .fdv-hero-figure img{height:420px;}
  .fdv-split{grid-template-columns:1fr;gap:var(--fdv-s4);}
  .fdv-callout{grid-template-columns:1fr;}
  .fdv-callout-media{height:230px;}
  .fdv-callout-media::after{background:linear-gradient(0deg,var(--fdv-navy) 0%,rgba(14,58,87,.15) 100%);}
  .fdv-cta{grid-template-columns:1fr;gap:var(--fdv-s4);}
  .fdv-footer-grid{grid-template-columns:1fr 1fr;gap:2rem 2rem;}
}
@media(max-width:820px){
  body{font-size:17px;}
  .fdv-section,.fdv-hero{padding:var(--fdv-s6) 0;}
  .fdv-menu,.fdv-nav-cta .fdv-btn{display:none;}
  .fdv-burger{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--fdv-line);border-radius:10px;background:#fff;color:var(--fdv-navy);}
  .fdv-cards3,.fdv-news{grid-template-columns:1fr;}
  .fdv-hero-figure .fdv-figcard{left:14px;right:14px;max-width:none;}
}
@media(max-width:560px){
  .fdv-wrap{padding:0 20px;}
  .fdv-callout-body{padding:2.4rem 1.8rem;}
  .fdv-footer-grid{grid-template-columns:1fr;}
  .fdv-hero-actions{flex-direction:column;align-items:stretch;}
  .fdv-hero-actions .fdv-btn{justify-content:center;}
  .fdv-callout-stat{flex-direction:column;gap:1.2rem;}
}

/* =================================================================
   RVS PAGE-SPECIFIC
   ================================================================= */

/* breadcrumb */
.fdv-crumb{padding:1.6rem 0 0;font-size:.86rem;color:var(--fdv-ink-soft);display:flex;gap:.5rem;align-items:center;}
.fdv-crumb a{color:var(--fdv-ink-soft);}
.fdv-crumb a:hover{color:var(--fdv-blue);}
.fdv-crumb .arr{color:var(--fdv-line);}
.fdv-crumb .cur{color:var(--fdv-navy);font-weight:600;}

/* hero — dark navy, photo on the right */
.fdv-rvs-hero{background:var(--fdv-navy);color:#fff;position:relative;overflow:hidden;}
.fdv-rvs-hero .fdv-wrap{position:relative;z-index:2;}
.fdv-rvs-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:var(--fdv-s6);align-items:center;padding:var(--fdv-s6) 0;}
.fdv-rvs-hero h1{color:#fff;margin-bottom:var(--fdv-s3);}
.fdv-rvs-hero h1 em{font-style:italic;color:var(--fdv-amber);}
.fdv-rvs-hero .fdv-lead{color:#c2d6e1;max-width:34rem;margin-bottom:var(--fdv-s4);}
.fdv-rvs-hero-actions{display:flex;gap:1rem;flex-wrap:wrap;}
.fdv-rvs-hero-figure{position:relative;}
.fdv-rvs-hero-figure img{border-radius:var(--fdv-radius);width:100%;height:380px;object-fit:cover;}
.fdv-rvs-hero-figure::after{content:"";position:absolute;inset:0;border-radius:var(--fdv-radius);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);}
.fdv-rvs-hero-cap{position:absolute;left:18px;bottom:16px;background:rgba(10,44,67,.85);backdrop-filter:blur(4px);color:#cfe2ec;font-size:.78rem;padding:.5rem .8rem;border-radius:7px;z-index:2;}
.fdv-rvs-hero::before{content:"";position:absolute;top:-160px;left:-140px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(4,124,172,.28),transparent 70%);z-index:1;}

/* intro band: prose beside a "kern van de zaak" sidebar (Coel pattern) */
.fdv-section{padding:var(--fdv-s7) 0;}
.fdv-section--soft{background:var(--fdv-soft);}
.fdv-section--tight{padding:var(--fdv-s6) 0;}
.fdv-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--fdv-s6);align-items:start;}
.fdv-intro h2{margin-bottom:var(--fdv-s3);}
.fdv-intro p{color:var(--fdv-ink-soft);font-size:1.08rem;line-height:1.68;margin-bottom:var(--fdv-s2);}
.fdv-intro strong{color:var(--fdv-navy);font-weight:700;}
.fdv-aside{background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);padding:1.9rem 1.9rem 1.7rem;position:sticky;top:100px;}
.fdv-aside h4{font-family:var(--fdv-sans);font-weight:700;font-size:.76rem;letter-spacing:.13em;text-transform:uppercase;color:var(--fdv-blue);margin:0 0 1.3rem;display:flex;align-items:center;gap:.6rem;}
.fdv-aside h4::before{content:"";width:22px;height:2px;background:var(--fdv-amber);}
.fdv-aside-row{display:grid;grid-template-columns:auto 1fr;gap:.9rem;padding:1rem 0;border-bottom:1px solid var(--fdv-line-soft);align-items:start;}
.fdv-aside-row:first-of-type{padding-top:0;}
.fdv-aside-row:last-child{border-bottom:none;padding-bottom:0;}
.fdv-aside-row .ic{width:34px;height:34px;border-radius:9px;background:var(--fdv-soft);color:var(--fdv-blue);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.fdv-aside-row .ic svg{width:18px;height:18px;}
.fdv-aside-row .k{font-family:var(--fdv-serif);font-weight:600;color:var(--fdv-navy);font-size:1.02rem;margin:0 0 .1rem;line-height:1.25;}
.fdv-aside-row .v{font-size:.9rem;color:var(--fdv-ink-soft);margin:0;line-height:1.45;}

/* TIMELINE */
.fdv-timeline-head{max-width:42rem;margin-bottom:var(--fdv-s5);}
.fdv-timeline-head h2{margin-bottom:var(--fdv-s2);}
.fdv-timeline-head p{color:var(--fdv-ink-soft);font-size:1.1rem;margin:0;}
.fdv-timeline{position:relative;margin-left:6px;padding-left:2.4rem;border-left:2px solid var(--fdv-line);}
.fdv-tl{position:relative;padding:0 0 1.9rem;}
.fdv-tl:last-child{padding-bottom:0;}
.fdv-tl::before{content:"";position:absolute;left:calc(-2.4rem - 7px);top:5px;width:13px;height:13px;border-radius:50%;background:#fff;border:2px solid var(--fdv-blue);box-shadow:0 0 0 4px #fff;}
.fdv-tl-date{font-family:var(--fdv-sans);font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fdv-blue);margin:0 0 .25rem;}
.fdv-tl-title{font-family:var(--fdv-serif);font-weight:600;color:var(--fdv-navy);font-size:1.12rem;margin:0 0 .2rem;line-height:1.25;}
.fdv-tl-text{font-size:.96rem;color:var(--fdv-ink-soft);margin:0;line-height:1.5;max-width:40rem;}
/* highlighted milestone (favorable advice + the appeal) */
.fdv-tl--mark::before{background:var(--fdv-amber);border-color:var(--fdv-amber);width:15px;height:15px;left:calc(-2.4rem - 8px);}
.fdv-tl--mark .fdv-tl-card{background:#fff;border:1px solid var(--fdv-line);border-left:3px solid var(--fdv-amber);border-radius:var(--fdv-radius-sm);padding:1.15rem 1.4rem;margin-top:.1rem;box-shadow:0 14px 34px -24px rgba(14,58,87,.4);}
.fdv-tl--mark .fdv-tl-date{color:var(--fdv-amber-dark);}
.fdv-tl--mark .fdv-tl-card .fdv-tl-text{color:var(--fdv-ink);}
.fdv-tl--final::before{background:var(--fdv-navy);border-color:var(--fdv-navy);width:15px;height:15px;left:calc(-2.4rem - 8px);}
.fdv-tl--final .fdv-tl-card{background:var(--fdv-navy);color:#fff;border-radius:var(--fdv-radius-sm);padding:1.3rem 1.5rem;margin-top:.1rem;}
.fdv-tl--final .fdv-tl-card .fdv-tl-title{color:#fff;}
.fdv-tl--final .fdv-tl-card .fdv-tl-date{color:#7cc4e0;}
.fdv-tl--final .fdv-tl-card .fdv-tl-text{color:#c2d6e1;}
.fdv-tl-badge{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .55rem;border-radius:5px;margin-left:.5rem;vertical-align:middle;}
.fdv-badge-amber{background:rgba(242,169,59,.16);color:var(--fdv-amber-dark);}
.fdv-badge-navy{background:rgba(124,196,224,.2);color:#cfe9f6;}

/* legal grounds — 2x2 grid */
.fdv-grounds{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;}
.fdv-ground{background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);padding:1.9rem 1.9rem 1.7rem;display:flex;gap:1.2rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s;}
.fdv-section--soft .fdv-ground{background:#fff;}
.fdv-ground:hover{transform:translateY(-3px);box-shadow:0 22px 44px -28px rgba(14,58,87,.34);border-color:var(--fdv-blue);}
.fdv-ground .gn{font-family:var(--fdv-serif);font-weight:500;font-size:1.7rem;color:var(--fdv-soft-deep);line-height:1;flex:0 0 auto;width:2.2rem;}
.fdv-ground h3{font-size:1.16rem;margin-bottom:.55rem;}
.fdv-ground p{font-size:.97rem;color:var(--fdv-ink-soft);margin:0;line-height:1.55;}

/* final CTA band */
.fdv-cta-band{background:var(--fdv-navy);border-radius:22px;color:#fff;padding:3.6rem 3.4rem;display:grid;grid-template-columns:1.3fr .7fr;gap:var(--fdv-s5);align-items:center;}
.fdv-cta-band h2{color:#fff;margin-bottom:var(--fdv-s2);}
.fdv-cta-band h2 em{font-style:italic;color:var(--fdv-amber);}
.fdv-cta-band p{color:#bcd3e0;font-size:1.06rem;margin:0;max-width:34rem;}
.fdv-cta-band-actions{display:flex;flex-direction:column;gap:.85rem;}
.fdv-cta-band-actions .fdv-btn{justify-content:center;}

@media(max-width:980px){
  .fdv-rvs-hero-grid,.fdv-intro,.fdv-cta-band{grid-template-columns:1fr;gap:var(--fdv-s4);}
  .fdv-rvs-hero-figure img{height:300px;}
  .fdv-aside{position:static;}
  .fdv-grounds{gap:1.2rem;}
  .fdv-footer-grid{grid-template-columns:1fr 1fr;gap:2rem;}
}
@media(max-width:820px){
  body{font-size:17px;}
  .fdv-section{padding:var(--fdv-s6) 0;}
  .fdv-menu,.fdv-nav-cta .fdv-btn{display:none;}
  .fdv-burger{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--fdv-line);border-radius:10px;background:#fff;color:var(--fdv-navy);}
  .fdv-grounds{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .fdv-wrap{padding:0 20px;}
  .fdv-cta-band{padding:2.4rem 1.8rem;}
  .fdv-footer-grid{grid-template-columns:1fr;}
  .fdv-rvs-hero-actions{flex-direction:column;align-items:stretch;}
  .fdv-rvs-hero-actions .fdv-btn{justify-content:center;}
}

/* original road-sign logo (replaces the mock brand-mark).
   Selector must outspecify Elementor's `.elementor img{height:auto}`. */
.fdv-brand img.fdv-logo{height:42px !important;width:auto !important;max-width:none !important;display:block;flex:0 0 auto;}
.fdv-footer .fdv-brand img.fdv-logo{height:40px !important;}

/* ===================================================================
   MOBILE NAV TOGGLE (burger opens the menu as a dropdown)
   =================================================================== */
.fdv-nav{position:relative;}
@media(max-width:820px){
  .fdv-menu.is-open{
    display:flex;position:absolute;left:0;right:0;top:100%;
    flex-direction:column;align-items:flex-start;gap:1.2rem;
    background:#fff;border-bottom:1px solid var(--fdv-line);
    padding:1.3rem 28px 1.6rem;box-shadow:0 22px 44px -26px rgba(14,58,87,.5);
  }
}


/* ===================================================================
   IMAGERY OVERRIDES (no surveillance-camera stock photo)
   =================================================================== */
/* home transparency band: full-width navy, no media column */
.fdv-callout{grid-template-columns:1fr;}
.fdv-callout-body{padding:3.4rem 3.4rem 3.2rem;}
.fdv-callout p{max-width:42rem;}
.fdv-callout-stat{gap:3.2rem;}

/* RvS hero: dossier summary card instead of a photo */
.fdv-rvs-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:var(--fdv-radius);padding:2rem 2rem 1.7rem;}
.fdv-rvs-card-label{font-family:var(--fdv-sans);font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#7cc4e0;display:flex;align-items:center;gap:.6rem;margin:0;}
.fdv-rvs-card-label::before{content:"";width:22px;height:2px;background:var(--fdv-amber);}
.fdv-rvs-card-h{font-family:var(--fdv-serif);font-weight:600;font-size:1.55rem;color:#fff;margin:.75rem 0 1.25rem;line-height:1.15;}
.fdv-rvs-card-list{list-style:none;margin:0;padding:0;}
.fdv-rvs-card-list li{display:flex;justify-content:space-between;align-items:baseline;gap:1.2rem;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.1);}
.fdv-rvs-card-list li:last-child{border-bottom:none;padding-bottom:0;}
.fdv-rvs-card-list span{color:#9fc0d1;font-size:.92rem;}
.fdv-rvs-card-list b{font-family:var(--fdv-sans);color:#fff;font-weight:700;font-size:.92rem;text-align:right;}
.fdv-rvs-card-list b.ok{color:var(--fdv-amber);}


/* ===================================================================
   DOE MEE — form + page
   =================================================================== */
.fdv-doemee-hero{max-width:48rem;}
.fdv-doemee-hero h1{margin-bottom:var(--fdv-s3);}
.fdv-doemee-hero h1 em{font-style:italic;color:var(--fdv-blue);}
.fdv-doemee-hero .fdv-lead{margin-bottom:var(--fdv-s4);}
.fdv-form-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--fdv-s6);align-items:start;}
.fdv-form-split h2{margin-bottom:var(--fdv-s3);}
.fdv-form-aside-list{list-style:none;margin:1.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:1rem;}
.fdv-form-aside-list li{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:start;color:var(--fdv-ink-soft);font-size:1rem;line-height:1.5;}
.fdv-form-aside-list .ic{width:30px;height:30px;border-radius:8px;background:var(--fdv-soft);color:var(--fdv-blue);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.fdv-form-aside-list .ic svg{width:16px;height:16px;}
.fdv-formcard{background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);padding:clamp(1.6rem,3vw,2.3rem);box-shadow:0 26px 54px -36px rgba(14,58,87,.45);}
.fdv-form{display:flex;flex-direction:column;gap:1.1rem;margin:0;}
.fdv-field{display:flex;flex-direction:column;gap:.4rem;}
.fdv-field label{font-family:var(--fdv-sans);font-weight:700;font-size:.8rem;letter-spacing:.04em;color:var(--fdv-navy);}
.fdv-field input,.fdv-field textarea{font-family:var(--fdv-sans);font-size:1rem;color:var(--fdv-ink);background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius-sm);padding:.82rem .95rem;width:100%;transition:border-color .15s,box-shadow .15s;}
.fdv-field input:focus,.fdv-field textarea:focus{outline:none;border-color:var(--fdv-blue);box-shadow:0 0 0 3px rgba(4,124,172,.14);}
.fdv-field textarea{min-height:118px;resize:vertical;}
.fdv-form .fdv-btn{align-self:flex-start;margin-top:.3rem;}
.fdv-hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden;}
.fdv-formnote{font-size:.84rem;color:var(--fdv-ink-soft);margin:.2rem 0 0;}
.fdv-alert{border-radius:var(--fdv-radius-sm);padding:.95rem 1.15rem;margin-bottom:1.3rem;font-size:.96rem;font-weight:600;line-height:1.45;}
.fdv-alert--ok{background:rgba(4,124,172,.1);color:var(--fdv-navy);border:1px solid rgba(4,124,172,.3);}
.fdv-alert--err{background:#fbeeee;color:#8a2b2b;border:1px solid #efcccc;}
@media(max-width:980px){.fdv-form-split{grid-template-columns:1fr;gap:var(--fdv-s4);}}
/* ===================================================================
   FIX DE VESTEN - accent override
   Loads AFTER style.css. Same selectors, later in the cascade.

   Concept: the brand is a taped-over blue road sign with DOWN-ARROWS
   ("Fix de Vesten" = fixing the city's traffic knips). The generic
   amber dash before every kicker is replaced by a small amber
   road-sign DOWN-ARROW tick. It reads as a wayfinding marker, not as
   a stock "AI template" line. Kept subtle: same size footprint, same
   amber, just a more deliberate, on-brand shape.
   =================================================================== */

/* ---- kicker: amber down-arrow tick instead of a flat 2px line ---- */
.fdv-kicker{
  gap:.6rem;
}
.fdv-kicker::before{
  content:"";
  width:14px;
  height:14px;
  background:var(--fdv-amber);
  /* a downward-pointing chevron: the road-sign arrow, simplified */
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;
  flex:0 0 auto;
}
.fdv-kicker--light::before{background:var(--fdv-amber);}

/* same down-arrow tick on the sidebar label + the dossier-card label */
.fdv-aside h4{gap:.55rem;}
.fdv-aside h4::before,
.fdv-rvs-card-label::before{
  content:"";
  width:13px;
  height:13px;
  background:var(--fdv-amber);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;
  flex:0 0 auto;
}

/* ---- highlighted timeline card: road-sign accent, not a flat bar ----
   Replace the plain amber left-border with a soft amber "tape" edge
   and a small down-arrow notch at the top-left corner of the card. */
.fdv-tl--mark .fdv-tl-card{
  position:relative;
  border-left:1px solid var(--fdv-line);
  padding-left:1.6rem;
  background:linear-gradient(90deg,rgba(242,169,59,.07) 0%,#fff 42%);
  overflow:visible;
}
/* the amber edge: a clipped strip with a down-arrow point at the bottom */
.fdv-tl--mark .fdv-tl-card::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:5px;
  background:var(--fdv-amber);
  border-radius:var(--fdv-radius-sm) 0 0 var(--fdv-radius-sm);
  /* point the bottom of the strip downward, like a sign arrow */
  -webkit-clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),50% 100%,0 calc(100% - 9px));
          clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),50% 100%,0 calc(100% - 9px));
}

/* keep the marker dot on the rail consistent with the new arrow language:
   a small amber down-arrow chip instead of a plain dot */
.fdv-tl--mark::before{
  background:var(--fdv-amber);
  border-color:var(--fdv-amber);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;
  box-shadow:none;
  width:16px;height:16px;
  left:calc(-2.4rem - 9px);top:3px;
}

/* ===================================================================
   DOSSIERS INDEX - "in de maak" placeholder cards
   Quieter than the active dossier card: dashed border, soft fill,
   muted icon. Signals "coming" without looking broken.
   =================================================================== */
.fdv-dossier-soon{
  background:transparent;
  border:1px dashed var(--fdv-line);
  box-shadow:none;
}
.fdv-dossier-soon:hover{
  transform:none;
  box-shadow:none;
  border-color:var(--fdv-blue);
}
.fdv-dossier-soon .num{color:var(--fdv-ink-soft);}
.fdv-dossier-soon .ic{background:var(--fdv-soft-deep);color:var(--fdv-ink-soft);}
.fdv-dossier-soon h3{color:var(--fdv-ink-soft);}

/* ===================================================================
   NIEUWS - featured post (one wide card on the index)
   =================================================================== */
.fdv-feature{
  display:grid;grid-template-columns:.95fr 1.05fr;
  background:#fff;border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);
  overflow:hidden;text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.fdv-feature:hover{transform:translateY(-4px);box-shadow:0 26px 50px -28px rgba(14,58,87,.36);border-color:var(--fdv-blue);}
.fdv-feature-thumb{position:relative;min-height:280px;overflow:hidden;}
.fdv-feature-thumb.t1{background:linear-gradient(135deg,#047CAC,#0E3A57);}
.fdv-feature-thumb .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);}
.fdv-feature-thumb .ph svg{width:64px;height:64px;}
.fdv-feature-body{padding:2.6rem 2.8rem;display:flex;flex-direction:column;justify-content:center;}
.fdv-feature-body .meta{display:flex;gap:.7rem;align-items:center;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--fdv-blue);margin-bottom:1rem;}
.fdv-feature-body .meta .tag{background:var(--fdv-soft);color:var(--fdv-navy);padding:.25rem .6rem;border-radius:5px;}
.fdv-feature-body .meta .date{color:var(--fdv-ink-soft);font-weight:600;letter-spacing:.02em;text-transform:none;font-size:.82rem;}
.fdv-feature-body h3{font-size:clamp(1.5rem,2.6vw,2rem);margin-bottom:.9rem;line-height:1.18;}
.fdv-feature-body p{font-size:1.02rem;color:var(--fdv-ink-soft);margin:0 0 1.4rem;line-height:1.6;}
.fdv-feature-body .read{font-weight:700;font-size:.95rem;color:var(--fdv-blue);display:inline-flex;align-items:center;gap:.4rem;}
@media(max-width:820px){
  .fdv-feature{grid-template-columns:1fr;}
  .fdv-feature-thumb{min-height:180px;}
  .fdv-feature-body{padding:2rem 1.8rem;}
}

/* ===================================================================
   SINGLE POST - editorial prose layout in the fdv- system
   =================================================================== */
.fdv-post-hero{background:var(--fdv-navy);color:#fff;}
.fdv-post-hero .fdv-wrap{max-width:760px;}
.fdv-post-hero-inner{padding:var(--fdv-s6) 0;}
.fdv-post-hero h1{color:#fff;margin:var(--fdv-s2) 0 var(--fdv-s3);}
.fdv-post-hero h1 em{font-style:italic;color:var(--fdv-amber);}
.fdv-post-meta{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;color:#9fc0d1;font-size:.9rem;}
.fdv-post-meta .tag{background:rgba(124,196,224,.18);color:#cfe9f6;font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:.28rem .62rem;border-radius:5px;}
.fdv-post-meta .by{color:#cfe2ec;font-weight:600;}
.fdv-post-hero .fdv-lead{color:#c2d6e1;margin-top:var(--fdv-s3);margin-bottom:0;}
.fdv-post-body .fdv-wrap{max-width:760px;}
.fdv-prose{font-size:1.08rem;line-height:1.75;color:var(--fdv-ink);}
.fdv-prose > p{margin:0 0 1.35rem;}
.fdv-prose h2{font-size:1.7rem;margin:2.4rem 0 1rem;}
.fdv-prose h3{font-size:1.25rem;margin:2rem 0 .7rem;}
.fdv-prose strong{color:var(--fdv-navy);font-weight:700;}
.fdv-prose a{color:var(--fdv-blue);font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.fdv-prose ul{margin:0 0 1.35rem;padding:0;list-style:none;display:flex;flex-direction:column;gap:.7rem;}
.fdv-prose ul li{position:relative;padding-left:1.7rem;color:var(--fdv-ink-soft);}
.fdv-prose ul li::before{content:"";position:absolute;left:0;top:.55em;width:11px;height:11px;background:var(--fdv-amber);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5h14a1 1 0 0 1 .78 1.62l-7 8.4a1 1 0 0 1-1.56 0l-7-8.4A1 1 0 0 1 5 8.5z'/%3E%3C/svg%3E") no-repeat center / contain;}
.fdv-prose blockquote{margin:1.8rem 0;padding:.4rem 0 .4rem 1.5rem;border-left:3px solid var(--fdv-amber);font-family:var(--fdv-serif);font-style:italic;font-size:1.3rem;color:var(--fdv-navy);line-height:1.45;}
/* dossier-link callout box inside a post */
.fdv-post-dossier{background:var(--fdv-soft);border:1px solid var(--fdv-line);border-radius:var(--fdv-radius);padding:1.6rem 1.8rem;margin:2.2rem 0;display:grid;grid-template-columns:1fr auto;gap:1.2rem;align-items:center;}
.fdv-post-dossier .l{font-family:var(--fdv-sans);font-weight:700;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:var(--fdv-blue);margin:0 0 .25rem;}
.fdv-post-dossier .t{font-family:var(--fdv-serif);font-weight:600;color:var(--fdv-navy);font-size:1.15rem;margin:0;}
@media(max-width:560px){.fdv-post-dossier{grid-template-columns:1fr;}.fdv-post-dossier .fdv-btn{justify-content:center;}}

/* ===================================================================
   DOSSIER TIMELINE -> HORIZONTAL (overrides the vertical layout)
   =================================================================== */
.fdv-timeline{
  display:flex;
  align-items:flex-start;
  gap:0;
  margin:0;
  padding:.3rem 0 1.6rem;
  border:none;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}
.fdv-tl{
  position:relative;
  flex:0 0 250px;
  max-width:250px;
  padding:36px 1.6rem 0 0;
  scroll-snap-align:start;
}
/* continuous top rule, built from per-column segments (scrolls with content) */
.fdv-tl::after{
  content:"";
  position:absolute;
  left:0; right:0; top:9px;
  height:2px;
  background:var(--fdv-line);
  z-index:0;
}
/* dot on the rule */
.fdv-tl::before{
  left:0; top:3px;
  box-shadow:0 0 0 4px var(--fdv-soft);
  z-index:1;
}
.fdv-tl-date{ margin-top:0; }
.fdv-tl-text{ max-width:none; }
/* highlighted milestones keep their card, stacked under the dot */
.fdv-tl--mark, .fdv-tl--final{ flex-basis:270px; max-width:270px; }
.fdv-tl--mark .fdv-tl-card, .fdv-tl--final .fdv-tl-card{ margin-top:.6rem; }
.fdv-tl--mark::before, .fdv-tl--final::before{ left:0; top:1px; }
.fdv-tl--mark .fdv-tl-card::before{ display:none; }
.fdv-tl--mark .fdv-tl-card{ padding-left:1.4rem; }
@media(max-width:600px){
  .fdv-tl{ flex-basis:214px; max-width:214px; }
  .fdv-tl--mark, .fdv-tl--final{ flex-basis:232px; max-width:232px; }
}

/* dossiers index: one real dossier + one CTA, side by side */
.fdv-cards2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;align-items:stretch;}
.fdv-cards2 .fdv-card{height:100%;}
@media(max-width:820px){.fdv-cards2{grid-template-columns:1fr;}}

/* photo attribution overlay (CC BY-SA hero image) */
.fdv-photo-credit{position:absolute;right:10px;bottom:10px;z-index:3;background:rgba(10,44,67,.6);color:#eaf2f7;font-family:var(--fdv-sans);font-size:.64rem;font-weight:600;letter-spacing:.02em;line-height:1;padding:.34rem .56rem;border-radius:6px;text-decoration:none;backdrop-filter:blur(2px);transition:background .15s;}
.fdv-photo-credit:hover{background:rgba(10,44,67,.85);color:#fff;}

/* ===================================================================
   WHITESPACE TIGHTEN (less spacey) + TIMELINE SCROLL CUE
   =================================================================== */
.fdv-section{padding:var(--fdv-s6) 0;}
.fdv-hero{padding:var(--fdv-s6) 0 var(--fdv-s5);}
.fdv-section--tight{padding:var(--fdv-s5) 0;}
.fdv-section-head{margin-bottom:var(--fdv-s4);}
@media(max-width:820px){.fdv-section,.fdv-hero{padding:var(--fdv-s5) 0;}}

/* make clear the dossier timeline scrolls sideways */
.fdv-timeline{scrollbar-width:thin;scrollbar-color:var(--fdv-blue) #dbe6ec;scroll-padding-left:4px;}
.fdv-timeline::-webkit-scrollbar{height:8px;}
.fdv-timeline::-webkit-scrollbar-track{background:#e2edf2;border-radius:99px;}
.fdv-timeline::-webkit-scrollbar-thumb{background:var(--fdv-blue);border-radius:99px;}
.fdv-timeline-hint{display:inline-flex;align-items:center;gap:.5rem;margin:.6rem 0 0;font-family:var(--fdv-sans);font-weight:700;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fdv-blue);}
.fdv-timeline-hint .ar{font-size:1rem;animation:fdvnudge 1.4s ease-in-out infinite;}
@keyframes fdvnudge{0%,100%{transform:translateX(0);}50%{transform:translateX(5px);}}

/* headshot in the founder-quote avatar */
.fdv-cta-aside .by .av{overflow:hidden;}
.fdv-cta-aside .by .av img{width:100%;height:100%;object-fit:cover;display:block;}

/* horizontal "breng een dossier aan" CTA under the dossier cards */
.fdv-dossier-cta{display:flex;align-items:center;gap:1.6rem;margin-top:1.6rem;padding:1.5rem 1.9rem;border:1px dashed var(--fdv-line);border-radius:var(--fdv-radius);text-decoration:none;transition:border-color .2s,background .2s;}
.fdv-dossier-cta:hover{border-color:var(--fdv-blue);background:rgba(4,124,172,.04);}
.fdv-dossier-cta .ic{width:48px;height:48px;border-radius:12px;flex:0 0 auto;background:#fff;color:var(--fdv-blue);display:flex;align-items:center;justify-content:center;}
.fdv-dossier-cta .ic svg{width:24px;height:24px;}
.fdv-dossier-cta-tx{flex:1;}
.fdv-dossier-cta-tx h3{font-size:1.18rem;margin:0 0 .2rem;}
.fdv-dossier-cta-tx p{margin:0;color:var(--fdv-ink-soft);font-size:.96rem;line-height:1.5;}
.fdv-dossier-cta .fdv-btn{flex:0 0 auto;}
@media(max-width:760px){.fdv-dossier-cta{flex-direction:column;align-items:flex-start;gap:1.1rem;}.fdv-dossier-cta .fdv-btn{align-self:stretch;justify-content:center;}}

/* btn--primary text fix: dark-navy text on amber (Elementor's global link color was tinting it blue) */
.fdv-btn--primary,
a.fdv-btn--primary,
.elementor a.fdv-btn--primary{color:var(--fdv-navy-deep) !important;}
.fdv-btn--primary:hover,
a.fdv-btn--primary:hover,
.elementor a.fdv-btn--primary:hover{color:var(--fdv-navy-deep) !important;}

.fdv-rvs-card-label{margin-bottom:1rem;}

/* breadcrumb on the navy dossier hero: readable light colours */
.fdv-rvs-hero .fdv-crumb,
.fdv-rvs-hero .fdv-crumb a{color:#a8c6d6;}
.fdv-rvs-hero .fdv-crumb a:hover{color:#fff;}
.fdv-rvs-hero .fdv-crumb .arr{color:rgba(255,255,255,.35);}
.fdv-rvs-hero .fdv-crumb .cur{color:#fff;font-weight:600;}

/* ---------- HERO GLOW: keep heading crisp ---------- */
.fdv-hero-text{position:relative;z-index:2;}
@media(max-width:980px){
  .fdv-hero::before{display:none;}
}

/* ---------- PULL QUOTE ---------- */
.fdv-quote{margin:1.3rem 0;padding:.35rem 0 .35rem 1.3rem;border-left:3px solid var(--fdv-amber);font-family:var(--fdv-serif);font-size:1.35rem;line-height:1.45;color:var(--fdv-navy);font-style:italic;}

/* ---------- on-navy button: keep label readable over Elementor's global link colour ---------- */
.fdv-btn--onnavy,a.fdv-btn--onnavy,.elementor a.fdv-btn--onnavy{color:#fff!important;border-color:rgba(255,255,255,.55);}
.fdv-btn--onnavy:hover,a.fdv-btn--onnavy:hover,.elementor a.fdv-btn--onnavy:hover{color:#fff!important;border-color:#fff;}

/* ---------- LEGAL / PROSE PAGES (privacy, cookies) ---------- */
.fdv-legal{max-width:760px;}
.fdv-legal h2{font-size:1.4rem;line-height:1.3;margin:2.2rem 0 .7rem;color:var(--fdv-navy);}
.fdv-legal h2:first-child{margin-top:0;}
.fdv-legal p{margin:0 0 1.1rem;line-height:1.75;}
.fdv-legal ul{margin:0 0 1.2rem;padding-left:1.2rem;line-height:1.75;}
.fdv-legal li{margin:.4rem 0;}
.fdv-legal a{color:var(--fdv-blue);text-decoration:underline;}
.fdv-legal .upd{margin-top:2rem;font-size:.92rem;color:var(--fdv-ink-soft);}
