:root{
  --navy:#101660;
  --navy-deep:#080b3f;
  --violet:#5d43dd;
  --violet-soft:#ebe8fb;
  --teal:#00bec2;
  --teal-deep:#008f94;
  --orange:#fc4a1a;
  --yellow:#ffcc16;
  --ink:#20213b;
  --muted:#65677d;
  --paper:#fbfbfe;
  --white:#fff;
  --line:#e7e7f1;
  --mint:#e7f8f8;
  --lav:#f1effc;
  --peach:#fff0e9;
  --shadow:0 24px 70px rgba(16,22,96,.13);
  --shadow-sm:0 12px 34px rgba(16,22,96,.09);
  --radius-xl:36px;
  --radius-lg:24px;
  --radius-md:16px;
  --max:1200px;
  --sans:"Poppins","Avenir Next","Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img{max-width:100%;display:block}
::selection{background:var(--yellow);color:var(--navy)}
.wrap{width:min(var(--max),calc(100% - 42px));margin-inline:auto}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;color:var(--teal-deep);font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;margin-bottom:1rem}
.eyebrow:before{content:"";width:26px;height:3px;border-radius:999px;background:var(--teal)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{color:var(--navy);line-height:1.08;letter-spacing:-.035em}
h1{font-size:clamp(3.1rem,7vw,6.35rem);max-width:790px;margin-bottom:1.35rem}
h2{font-size:clamp(2.25rem,4.6vw,4.2rem);margin-bottom:1.25rem}
h3{font-size:1.25rem;margin-bottom:.65rem}
p{font-size:1.02rem}
.lead{font-size:clamp(1.08rem,1.6vw,1.3rem);color:var(--muted);max-width:760px}
.section{padding:112px 0;position:relative}
.section-tight{padding:76px 0}
.section-head{max-width:820px;margin-bottom:48px}

/* navigation */
.nav-shell{position:fixed;z-index:1000;top:0;left:0;right:0;padding:14px 0;transition:.25s ease}
.nav-shell.scrolled{background:rgba(251,251,254,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(231,231,241,.85);box-shadow:0 8px 30px rgba(16,22,96,.06)}
.nav{height:62px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-logo{width:132px;height:auto}
.brand-name{display:none;font-weight:800;color:var(--navy);line-height:1.1}
.nav-links{display:flex;align-items:center;gap:28px;color:#484b67;font-size:.9rem;font-weight:650}
.nav-links a{position:relative}
.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--teal);transition:.2s ease}
.nav-links a:hover:after{right:0}
.nav-cta{background:var(--navy);color:white!important;padding:.78rem 1.08rem;border-radius:999px;box-shadow:0 8px 24px rgba(16,22,96,.18)}
.nav-cta:after{display:none}
.menu-button{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--navy);cursor:pointer}

/* hero */
.hero{min-height:100vh;display:flex;align-items:center;padding:148px 0 88px;background:
 radial-gradient(circle at 78% 24%,rgba(0,190,194,.19),transparent 25%),
 radial-gradient(circle at 8% 72%,rgba(93,67,221,.13),transparent 27%),
 linear-gradient(180deg,#fcfcff 0%,#f7f7fd 100%)}
.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(16,22,96,.11) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.62),transparent 88%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:center;gap:58px;position:relative;z-index:2}
.status{display:inline-flex;align-items:center;gap:.65rem;padding:.5rem .8rem;border-radius:999px;background:white;border:1px solid var(--line);box-shadow:var(--shadow-sm);font-size:.78rem;font-weight:750;color:var(--navy);margin-bottom:1.4rem}
.status i{width:9px;height:9px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 5px rgba(255,204,22,.22)}
.hero h1 .accent{color:var(--violet);position:relative;white-space:nowrap}
.hero h1 .accent:after{content:"";position:absolute;left:2%;right:-1%;height:13px;bottom:1px;background:var(--teal);opacity:.25;border-radius:999px;z-index:-1;transform:rotate(-1.3deg)}
.hero-copy .lead{max-width:670px;margin-bottom:2rem}
.actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:52px;padding:0 1.25rem;border-radius:999px;border:1px solid transparent;font-weight:800;transition:.2s ease;cursor:pointer}
.btn-primary{background:var(--navy);color:#fff;box-shadow:0 13px 30px rgba(16,22,96,.22)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(16,22,96,.28)}
.btn-secondary{background:rgba(255,255,255,.72);border-color:var(--line);color:var(--navy)}
.btn-secondary:hover{background:white;transform:translateY(-2px)}
.btn svg{width:18px;height:18px}
.hero-note{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.82rem;margin-top:1.25rem}
.hero-note svg{width:17px;color:var(--teal-deep)}

.door-stage{position:relative;min-height:640px;display:grid;place-items:center;perspective:1200px}
.door-halo{position:absolute;width:88%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(0,190,194,.22),rgba(93,67,221,.08) 47%,transparent 70%);filter:blur(4px);animation:breathe 5s ease-in-out infinite}
.door-card{position:relative;width:min(100%,570px);border-radius:42px;overflow:hidden;background:white;box-shadow:0 38px 100px rgba(16,22,96,.22);transform-style:preserve-3d;transition:transform .16s ease-out;border:1px solid rgba(255,255,255,.75)}
.door-card:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.17),transparent 48%);pointer-events:none}
.door-card img{width:100%;aspect-ratio:1/1.05;object-fit:cover}
.float-card{position:absolute;z-index:3;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border:1px solid rgba(231,231,241,.9);border-radius:18px;padding:.82rem 1rem;box-shadow:var(--shadow-sm);max-width:220px;font-size:.82rem;line-height:1.4;color:#393b55;animation:float 5.7s ease-in-out infinite}
.float-card strong{display:block;color:var(--navy);font-size:.76rem;margin-bottom:.24rem}
.float-card.one{top:12%;left:-1%;animation-delay:-1s}
.float-card.two{right:-2%;top:29%;animation-delay:-3s}
.float-card.three{bottom:9%;left:2%;animation-delay:-4.3s}
.mini-icon{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--mint);color:var(--teal-deep);margin-bottom:.45rem}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes breathe{0%,100%{transform:scale(.96);opacity:.75}50%{transform:scale(1.04);opacity:1}}

/* statement strip */
.promise-strip{padding:76px 0;background:linear-gradient(180deg,#f7f7fd 0%,var(--paper) 100%)}
.promise-card{position:relative;overflow:hidden;background:var(--navy);color:white;border-radius:var(--radius-xl);padding:42px 48px;display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;box-shadow:var(--shadow)}
.promise-card:before{content:"";position:absolute;width:390px;height:390px;border:80px solid rgba(0,190,194,.17);border-radius:50%;right:-135px;top:-170px}
.promise-card h2{color:white;font-size:clamp(2rem,4vw,3.6rem);margin:0;position:relative}
.promise-card p{font-size:1.15rem;color:rgba(255,255,255,.78);margin:0;max-width:470px;position:relative}

/* problem */
.problem-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.big-line{font-size:clamp(2.15rem,4vw,4rem);font-weight:850;color:var(--navy);line-height:1.05;letter-spacing:-.04em;margin:0}
.big-line span{color:var(--orange)}
.story-cards{display:grid;gap:14px}
.story{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);padding:25px 27px;box-shadow:var(--shadow-sm);display:grid;grid-template-columns:auto 1fr;gap:17px;align-items:start;transition:.22s ease}
.story:hover{transform:translateX(6px);border-color:#cbc7ee}
.story-number{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-weight:900;color:var(--navy);background:var(--lav)}
.story:nth-child(2) .story-number{background:var(--mint)}
.story:nth-child(3) .story-number{background:var(--peach)}
.story p{font-size:1.05rem;margin:0;color:#444760}
.story strong{color:var(--navy)}
.closer{margin-top:24px;border-left:4px solid var(--teal);padding-left:20px;color:var(--navy);font-weight:800;font-size:1.12rem}

/* ecosystem */
.ecosystem{background:var(--navy-deep);color:white;overflow:hidden}
.ecosystem:before{content:"";position:absolute;inset:auto -140px -320px auto;width:700px;height:700px;border-radius:50%;border:120px solid rgba(0,190,194,.08)}
.ecosystem h2,.ecosystem h3{color:white}
.ecosystem .lead{color:rgba(255,255,255,.68)}
.ecosystem-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.orbit{position:relative;min-height:560px;display:grid;place-items:center}
.orbit-ring{position:absolute;border:1px dashed rgba(255,255,255,.23);border-radius:50%}
.orbit-ring.a{width:500px;height:500px;animation:spin 34s linear infinite}
.orbit-ring.b{width:370px;height:370px;animation:spin 24s linear infinite reverse}
.orbit-core{width:205px;height:205px;border-radius:44% 56% 52% 48%/53% 44% 56% 47%;background:linear-gradient(145deg,var(--teal),#5be0d5);color:var(--navy-deep);display:grid;place-items:center;text-align:center;font-weight:900;font-size:1.15rem;box-shadow:0 0 0 20px rgba(0,190,194,.08),0 25px 70px rgba(0,0,0,.35);z-index:2;animation:morph 8s ease-in-out infinite}
.orbit-item{position:absolute;width:142px;min-height:88px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);border-radius:18px;padding:15px;text-align:center;font-weight:750;font-size:.86rem;display:grid;place-items:center}
.orbit-item.i1{top:3%;left:35%}.orbit-item.i2{right:1%;top:35%}.orbit-item.i3{bottom:3%;left:36%}.orbit-item.i4{left:0;top:35%}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes morph{0%,100%{border-radius:44% 56% 52% 48%/53% 44% 56% 47%}50%{border-radius:56% 44% 42% 58%/44% 59% 41% 56%}}
.ecosystem-copy{position:relative;z-index:2}
.ecosystem-copy ul{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:17px}
.ecosystem-copy li{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.check{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:rgba(0,190,194,.17);color:#6df0e8;font-weight:900}
.ecosystem-copy li strong{display:block;color:white;margin-bottom:.2rem}
.ecosystem-copy li span{color:rgba(255,255,255,.66);font-size:.94rem}

/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}
.steps:before{content:"";position:absolute;left:8%;right:8%;top:47px;height:2px;background:linear-gradient(90deg,var(--teal),var(--violet),var(--orange));opacity:.35}
.step{background:white;border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px 23px;box-shadow:var(--shadow-sm);position:relative;z-index:2;min-height:265px}
.step-badge{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;color:white;background:var(--navy);font-weight:900;margin-bottom:34px;box-shadow:0 0 0 9px var(--paper)}
.step:nth-child(2) .step-badge{background:var(--teal-deep)}
.step:nth-child(3) .step-badge{background:var(--violet)}
.step:nth-child(4) .step-badge{background:var(--orange)}
.step p{font-size:.94rem;color:var(--muted);margin:0}

/* demo */
.demo-shell{background:linear-gradient(135deg,#f0effc,#e7f8f8);border:1px solid #dedcf1;border-radius:var(--radius-xl);padding:52px;display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:center;overflow:hidden;position:relative}
.demo-shell:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:rgba(255,255,255,.48);right:-130px;bottom:-190px}
.demo-copy{position:relative;z-index:2}
.demo-window{background:white;border:1px solid rgba(16,22,96,.11);border-radius:25px;box-shadow:var(--shadow);padding:18px;position:relative;z-index:2}
.browser-bar{display:flex;align-items:center;gap:7px;padding:2px 3px 15px;border-bottom:1px solid var(--line)}
.browser-dot{width:9px;height:9px;border-radius:50%;background:#d8d9e4}.browser-dot:nth-child(2){background:#c9cad9}.browser-dot:nth-child(3){background:#b8bbcf}
.demo-body{padding:23px 8px 8px}
.demo-label{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:.55rem}
.question-box{display:flex;gap:10px;border:2px solid var(--violet-soft);border-radius:16px;padding:8px 8px 8px 14px;background:#fcfcff}
.question-box input{border:0;outline:0;background:transparent;min-width:0;flex:1;color:var(--navy);font-size:.95rem}
.question-box button{border:0;border-radius:12px;background:var(--navy);color:white;padding:0 15px;cursor:pointer;font-weight:800}
.example-chips{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 18px}
.example-chip{border:1px solid var(--line);background:white;border-radius:999px;padding:.45rem .7rem;font-size:.76rem;color:#4d506a;cursor:pointer;transition:.16s ease}
.example-chip:hover{border-color:#bcb7eb;background:var(--lav)}
.demo-answer{border-radius:17px;background:var(--mint);padding:18px;min-height:150px;color:#3c4357;position:relative}
.demo-answer strong{color:var(--navy);display:block;margin-bottom:.45rem}
.answer-route{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,143,148,.18)}
.route-dot{width:24px;height:24px;border-radius:8px;background:var(--teal);color:var(--navy);display:grid;place-items:center;font-weight:900}
.demo-disclaimer{font-size:.72rem;color:var(--muted);margin:.7rem .2rem 0}

/* now/future */
.progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.progress-card{border-radius:var(--radius-xl);padding:38px;min-height:390px;position:relative;overflow:hidden}
.progress-card.today{background:var(--navy);color:white}
.progress-card.future{background:white;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.progress-card h3{font-size:2rem}.progress-card.today h3{color:white}
.progress-card .tag{display:inline-block;padding:.42rem .7rem;border-radius:999px;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.2rem}
.today .tag{background:rgba(255,255,255,.12);color:#7be9e4}.future .tag{background:var(--lav);color:var(--violet)}
.progress-card p{max-width:490px}.today p{color:rgba(255,255,255,.7)}
.progress-list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:13px}
.progress-list li{display:flex;gap:12px;align-items:flex-start;font-weight:700}
.progress-list li:before{content:"✓";width:25px;height:25px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;background:var(--mint);color:var(--teal-deep)}
.today .progress-list li:before{background:rgba(0,190,194,.18);color:#67e5df}
.future:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:var(--peach);right:-90px;bottom:-120px}

/* privacy */
.privacy{background:#fff}
.privacy-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.shield{width:min(100%,430px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 36% 30%,white 0 8%,transparent 9%),linear-gradient(145deg,var(--mint),var(--lav));display:grid;place-items:center;position:relative;margin:auto;box-shadow:inset 0 0 0 1px rgba(16,22,96,.06)}
.shield:before{content:"";width:180px;height:210px;background:var(--navy);clip-path:polygon(50% 0,94% 18%,90% 63%,76% 84%,50% 100%,24% 84%,10% 63%,6% 18%);box-shadow:0 30px 60px rgba(16,22,96,.25)}
.shield:after{content:"✓";position:absolute;color:white;font-size:4rem;font-weight:900;top:42%;left:50%;transform:translate(-50%,-50%)}
.principles{display:grid;gap:14px;margin-top:28px}
.principle{border:1px solid var(--line);border-radius:18px;padding:19px 20px;background:var(--paper)}
.principle strong{display:block;color:var(--navy);margin-bottom:.25rem}
.principle span{color:var(--muted);font-size:.92rem}

/* development */
.develop{background:linear-gradient(180deg,var(--paper),#f2f1fb)}
.develop-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pillar{background:white;border:1px solid var(--line);border-radius:20px;padding:22px;min-height:165px;box-shadow:var(--shadow-sm)}
.pillar b{display:block;font-size:2rem;color:var(--teal);margin-bottom:.5rem}
.pillar strong{display:block;color:var(--navy);margin-bottom:.35rem}
.pillar span{font-size:.88rem;color:var(--muted)}

/* final */
.final{padding:110px 0;background:var(--navy);color:white;text-align:center;overflow:hidden}
.final:before,.final:after{content:"";position:absolute;border-radius:50%;border:80px solid rgba(0,190,194,.1)}
.final:before{width:420px;height:420px;left:-260px;top:-270px}.final:after{width:520px;height:520px;right:-340px;bottom:-380px}
.final .wrap{position:relative;z-index:2}
.final h2{color:white;max-width:900px;margin:0 auto 1.2rem;font-size:clamp(2.6rem,5vw,5rem)}
.final p{color:rgba(255,255,255,.7);max-width:680px;margin:0 auto 2rem;font-size:1.12rem}
.final .btn{background:white;color:var(--navy)}

footer{background:var(--navy-deep);color:rgba(255,255,255,.62);padding:30px 0;font-size:.8rem}
.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.footer-logo{width:120px;filter:brightness(0) invert(1);opacity:.85}

/* reveals */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform}
.reveal.visible{opacity:1;transform:none}
/* Subtiele stagger: opeenvolgende reveal-componenten in dezelfde rij/grid komen net iets na elkaar in beeld. */
.reveal.visible:nth-child(2){transition-delay:.07s}
.reveal.visible:nth-child(3){transition-delay:.14s}
.reveal.visible:nth-child(4){transition-delay:.21s}
.reveal.visible:nth-child(5){transition-delay:.28s}
.reveal.visible:nth-child(6){transition-delay:.35s}

@media (max-width:1000px){
  .menu-button{display:grid;place-items:center}
  .nav-links{display:none;position:absolute;top:74px;left:14px;right:14px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 26px 70px rgba(16,22,96,.22);flex-direction:column;align-items:stretch;gap:2px;max-height:calc(100vh - 96px);overflow-y:auto;-webkit-overflow-scrolling:touch}
  .nav-links.open{display:flex;animation:navdrop .18s ease}
  .nav-links a{color:var(--navy);font-size:1.02rem;font-weight:650;padding:13px 14px;border-radius:12px}
  .nav-links a:after{display:none}
  .nav-links a:hover,.nav-links a:active{background:rgba(16,22,96,.05)}
  .nav-links a+a{border-top:1px solid rgba(231,231,241,.7);border-radius:0}
  .nav-links .nav-cta{margin-top:8px;text-align:center;padding:14px;border-radius:14px;box-shadow:none;border-top:0}
  .nav-shell:not(.scrolled) .nav-links .nav-cta,.nav-shell.scrolled .nav-links .nav-cta{background:var(--navy)!important;color:#fff!important}
  .hero-grid,.problem-grid,.ecosystem-grid,.demo-shell,.privacy-shell,.develop-grid{grid-template-columns:1fr}
  .hero{padding-top:125px}.hero-grid{gap:30px}.door-stage{min-height:560px}.door-card{width:min(82vw,560px)}
  .float-card.one{left:3%}.float-card.two{right:2%}.float-card.three{left:8%}
  .promise-card{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}.steps:before{display:none}
  .orbit{order:2}.ecosystem-copy{order:1}
}
@media (max-width:680px){
  .wrap{width:min(var(--max),calc(100% - 28px))}
  .section{padding:82px 0}.section-tight{padding:58px 0}
  h1{font-size:clamp(2.8rem,14vw,4.3rem)}
  .brand-logo{width:108px}
  .hero-grid{gap:10px}.door-stage{min-height:500px}.door-card{width:94vw;border-radius:28px}
  .float-card{font-size:.72rem;max-width:165px;padding:.65rem .72rem}.float-card.two{top:25%}.float-card.three{bottom:3%}
  .promise-card{padding:32px 26px;border-radius:26px}
  .steps,.progress-grid,.pillars{grid-template-columns:1fr}
  .demo-shell{padding:26px 18px;border-radius:26px;gap:30px}.question-box{flex-direction:column;padding:10px}.question-box button{height:42px}
  .orbit{min-height:450px}.orbit-ring.a{width:390px;height:390px}.orbit-ring.b{width:290px;height:290px}.orbit-core{width:155px;height:155px;font-size:.98rem}.orbit-item{width:112px;min-height:72px;font-size:.72rem}.orbit-item.i1{left:34%}.orbit-item.i3{left:34%}
  .progress-card{padding:28px;min-height:0}.shield{max-width:330px}
  .actions{align-items:stretch}.btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}


/* =========================================================
   V0.3 — eigen merkidentiteit en volledig nieuwe hero
   ========================================================= */
.dv-logo-icon{width:48px;height:48px;display:block;flex:0 0 auto}
.dv-logo-icon svg{width:100%;height:100%;display:block}
.dv-logo-copy{display:flex;flex-direction:column;line-height:1.02}
.dv-logo-title{font-size:.95rem;font-weight:850;letter-spacing:-.02em;color:var(--navy)}
.dv-logo-place{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-deep);margin-top:.28rem}
.nav-shell:not(.scrolled) .dv-logo-title{color:#fff}
.nav-shell:not(.scrolled) .dv-logo-place{color:#77ece7}
.nav-shell:not(.scrolled) .nav-links{color:rgba(255,255,255,.78)}
.nav-shell:not(.scrolled) .nav-cta{background:#fff;color:var(--navy)!important}
.nav-shell:not(.scrolled) .menu-button{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff}
.footer-brand .dv-logo-title{color:#fff}
.footer-brand .dv-logo-place{color:#77ece7}
.footer-brand{display:flex;align-items:center;gap:10px}
.footer-brand .dv-logo-icon{width:42px;height:42px}
.footer-initiative{display:flex;flex-direction:column;align-items:flex-end;gap:.55rem;text-align:right;color:rgba(255,255,255,.78);font-size:.78rem;line-height:1.35}
.footer-initiative img{display:block;width:148px;max-width:34vw;height:auto}
@media(max-width:640px){.footer-initiative{align-items:flex-start;text-align:left}.footer-initiative img{width:138px;max-width:48vw}}


/* New hero composition */
.hero-v2{
  min-height:100vh;
  padding:142px 0 54px;
  color:#fff;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 18%,rgba(0,190,194,.24),transparent 28%),
    radial-gradient(circle at 14% 92%,rgba(93,67,221,.34),transparent 34%),
    linear-gradient(138deg,#080b3f 0%,#101660 50%,#17125c 100%);
}
.hero-v2:before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 96%);
}
.hero-v2:after{
  content:"";position:absolute;left:-8%;right:-8%;bottom:-2px;height:115px;
  background:var(--paper);clip-path:ellipse(58% 48% at 50% 100%);
}
.hero-v2-glow{position:absolute;border-radius:50%;filter:blur(8px);pointer-events:none}
.hero-v2-glow.glow-a{width:280px;height:280px;background:rgba(252,74,26,.12);left:-80px;top:220px}
.hero-v2-glow.glow-b{width:360px;height:360px;background:rgba(255,204,22,.08);right:-130px;bottom:80px}
.hero-v2-grid{
  display:grid;grid-template-columns:minmax(0,.88fr) minmax(510px,1.12fr);
  gap:38px;align-items:center;position:relative;z-index:3;
}
.hero-v2-copy{padding-bottom:46px}
.hero-kicker{
  display:inline-flex;align-items:center;gap:.7rem;font-size:.78rem;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:#84ece8;margin-bottom:1.5rem;
}
.hero-kicker span{width:34px;height:3px;border-radius:999px;background:var(--teal)}
.hero-v2 h1{
  color:#fff;font-size:clamp(3.7rem,6.5vw,6.9rem);max-width:700px;
  letter-spacing:-.06em;margin-bottom:1.4rem;
}
.hero-v2 h1 span{
  color:#fff;position:relative;display:inline-block;z-index:1;
}
.hero-v2 h1 span:after{
  content:"";position:absolute;left:-1%;right:-2%;height:20px;bottom:7px;
  background:linear-gradient(90deg,var(--teal),#54e2d7);opacity:.46;border-radius:999px;
  z-index:-1;transform:rotate(-1.2deg);
}
.hero-v2 .lead{color:rgba(255,255,255,.76);max-width:650px;margin-bottom:2.1rem;font-size:clamp(1.05rem,1.5vw,1.24rem)}
.hero-btn-primary{background:var(--teal);color:var(--navy-deep);box-shadow:0 15px 38px rgba(0,190,194,.25)}
.hero-btn-primary:hover{box-shadow:0 19px 46px rgba(0,190,194,.35)}
.hero-btn-secondary{border:1px solid rgba(255,255,255,.25);color:#fff;background:rgba(255,255,255,.07);backdrop-filter:blur(10px)}
.hero-btn-secondary:hover{background:rgba(255,255,255,.13);transform:translateY(-2px)}
.hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:2.3rem;padding-top:1.45rem;border-top:1px solid rgba(255,255,255,.13)}
.hero-trust span{display:flex;flex-direction:column;gap:.18rem}
.hero-trust b{font-size:.82rem;color:#fff}
.hero-trust small{font-size:.71rem;line-height:1.35;color:rgba(255,255,255,.51)}

.portal-scene{min-height:700px;position:relative;display:grid;place-items:center;perspective:1200px}
.route-map{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:1}
.route-map .route{fill:none;stroke:rgba(119,236,231,.55);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:8 12;animation:routeFlow 15s linear infinite}
.route-map .route-2{stroke:rgba(255,204,22,.48);animation-duration:18s}
.route-map .route-3{stroke:rgba(252,74,26,.48);animation-duration:20s}
.route-map circle{fill:#fff;stroke:var(--teal);stroke-width:4}
@keyframes routeFlow{to{stroke-dashoffset:-200}}
.portal-shadow{position:absolute;width:430px;height:80px;border-radius:50%;background:rgba(0,0,0,.38);filter:blur(28px);bottom:65px;z-index:0}
.portal-frame{
  position:relative;z-index:2;width:min(100%,470px);height:610px;
  border-radius:235px 235px 38px 38px;
  padding:13px;background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(220,242,246,.83));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 38px 110px rgba(2,5,38,.46),inset 0 0 0 1px rgba(16,22,96,.07);
  transform-style:preserve-3d;transition:transform .16s ease-out;
}
.portal-frame:before{
  content:"";position:absolute;inset:7px;border-radius:228px 228px 31px 31px;
  border:1px solid rgba(93,67,221,.22);pointer-events:none;z-index:5;
}
.portal-label{
  position:absolute;z-index:6;left:50%;top:25px;transform:translateX(-50%);
  display:flex;align-items:center;gap:.55rem;white-space:nowrap;
  padding:.5rem .72rem;border-radius:999px;background:rgba(8,11,63,.82);
  color:#fff;font-size:.69rem;font-weight:800;letter-spacing:.03em;backdrop-filter:blur(12px)
}
.portal-label i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(0,190,194,.18)}
.portal-image{
  width:100%;height:100%;overflow:hidden;border-radius:222px 222px 28px 28px;
  background:linear-gradient(180deg,#c7e8ff,#dff7f4 63%,#f9f2ea);
}
.portal-image img{
  width:100%;height:100%;object-fit:cover;object-position:57% center;
  transform:scale(1.04);filter:saturate(.9) contrast(1.02);
}
.portal-panel{
  position:absolute;left:27px;right:27px;bottom:26px;z-index:6;
  background:rgba(255,255,255,.9);backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.8);border-radius:20px;padding:15px 16px;
  box-shadow:0 16px 45px rgba(16,22,96,.18);
}
.portal-prompt{display:block;color:var(--navy);font-size:.76rem;font-weight:800;margin-bottom:.55rem}
.portal-input{
  height:46px;border-radius:13px;background:#f4f3fb;border:1px solid #e0def1;
  display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 13px;
  color:#77798c;font-size:.79rem;
}
.portal-input b{width:32px;height:32px;border-radius:10px;background:var(--navy);color:#fff;display:grid;place-items:center}

.question-chip{
  position:absolute;z-index:4;display:flex;align-items:center;gap:.68rem;
  max-width:190px;padding:.72rem .85rem;border-radius:17px;
  background:rgba(255,255,255,.93);color:var(--navy);box-shadow:0 16px 45px rgba(3,5,34,.24);
  border:1px solid rgba(255,255,255,.82);backdrop-filter:blur(12px);
  animation:float 6s ease-in-out infinite;
}
.question-chip span{width:31px;height:31px;border-radius:10px;background:var(--mint);color:var(--teal-deep);display:grid;place-items:center;flex:0 0 auto;font-weight:900}
.question-chip p{margin:0;font-size:.74rem;font-weight:750;line-height:1.3}
.question-chip.chip-a{left:-1%;top:19%;animation-delay:-1.2s}
.question-chip.chip-b{right:-2%;top:17%;animation-delay:-3.1s}
.question-chip.chip-c{right:-2%;bottom:18%;animation-delay:-4.5s}
.question-chip.chip-b span{background:#fff4d6;color:#aa7310}
.question-chip.chip-c span{background:var(--peach);color:var(--orange)}
.portal-city-tag{
  position:absolute;z-index:4;left:10%;bottom:5.5%;display:flex;align-items:center;gap:.55rem;
  font-size:.73rem;font-weight:750;color:rgba(255,255,255,.72);
}
.portal-city-tag span{width:9px;height:9px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 5px rgba(255,204,22,.12)}
.hero-route-strip{
  position:relative;z-index:5;margin-top:-12px;margin-bottom:32px;
  display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:20px;
  color:rgba(255,255,255,.66);font-size:.76rem;font-weight:700;
}
.hero-route-strip span{display:flex;align-items:center;gap:.55rem;white-space:nowrap}
.hero-route-strip b{color:#79e8e3;font-size:.7rem}
.hero-route-strip i{height:1px;background:linear-gradient(90deg,rgba(0,190,194,.5),rgba(255,255,255,.08));display:block}

/* prevent old hero rules from affecting v2 */
.hero-v2 .status,.hero-v2 .door-halo,.hero-v2 .door-card,.hero-v2 .float-card{display:none!important}

@media (max-width:1080px){
  .hero-v2-grid{grid-template-columns:1fr;gap:0}
  .hero-v2-copy{text-align:center;max-width:820px;margin:0 auto;padding-bottom:20px}
  .hero-v2 h1,.hero-v2 .lead{margin-left:auto;margin-right:auto}
  .hero-v2 .actions{justify-content:center}
  .hero-trust{max-width:680px;margin-left:auto;margin-right:auto;text-align:left}
  .portal-scene{min-height:660px;max-width:760px;width:100%;margin:0 auto}
  .question-chip.chip-a{left:2%}.question-chip.chip-b{right:2%}.question-chip.chip-c{right:2%}
  .hero-route-strip{margin-top:-18px}
}
@media (max-width:680px){
  .dv-logo-icon{width:42px;height:42px}.dv-logo-title{font-size:.82rem}.dv-logo-place{font-size:.62rem}
  .hero-v2{padding-top:116px;padding-bottom:66px}
  .hero-v2 h1{font-size:clamp(3.05rem,15vw,4.5rem)}
  .hero-v2 h1 span:after{height:13px;bottom:4px}
  .hero-trust{grid-template-columns:1fr;gap:10px;text-align:left}
  .hero-trust span{display:grid;grid-template-columns:120px 1fr;align-items:center}
  .portal-scene{min-height:570px;margin-top:16px}
  .portal-frame{width:min(82vw,380px);height:500px;border-radius:190px 190px 30px 30px}
  .portal-frame:before{border-radius:183px 183px 24px 24px}
  .portal-image{border-radius:180px 180px 20px 20px}
  .portal-panel{left:18px;right:18px;bottom:18px}
  .question-chip{max-width:142px;padding:.56rem .62rem}
  .question-chip p{font-size:.64rem}.question-chip span{width:26px;height:26px}
  .question-chip.chip-a{left:0;top:20%}.question-chip.chip-b{right:0;top:11%}.question-chip.chip-c{right:0;bottom:15%}
  .portal-city-tag{left:3%;bottom:4%;font-size:.62rem}
  .hero-route-strip{display:none}
}


/* =========================================================
   V0.3 — scoped, stable and fully responsive hero
   ========================================================= */
.hero-v3{
  position:relative;overflow:hidden;color:#fff;padding:146px 0 72px;
  background:
    radial-gradient(circle at 14% 16%,rgba(93,67,221,.34),transparent 29%),
    radial-gradient(circle at 84% 38%,rgba(0,190,194,.23),transparent 31%),
    linear-gradient(145deg,#080b3f 0%,#101660 51%,#17125c 100%);
}
.hero-v3:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.75;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;mask-image:linear-gradient(to bottom,#000 0%,transparent 94%);
}
.hero-v3:after{
  content:"";position:absolute;left:-5%;right:-5%;bottom:-58px;height:115px;background:var(--paper);border-radius:50% 50% 0 0/100% 100% 0 0;
}
.hero-v3-glow{position:absolute;border-radius:50%;filter:blur(7px);pointer-events:none}
.hero-v3-glow.glow-one{width:290px;height:290px;background:rgba(252,74,26,.1);left:-95px;bottom:13%}
.hero-v3-glow.glow-two{width:300px;height:300px;background:rgba(255,204,22,.07);right:-90px;top:12%}
.hero-v3-inner{position:relative;z-index:2}
.hero-v3-copy{text-align:center;max-width:980px;margin:0 auto}
.hero-v3-kicker{display:inline-flex;align-items:center;gap:.65rem;margin-bottom:1.25rem;color:#80ece7;font-size:.78rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.hero-v3-kicker i{display:block;width:34px;height:3px;border-radius:99px;background:var(--teal)}
.hero-v3 h1{color:#fff;font-size:clamp(3.15rem,6.2vw,5.85rem);line-height:.98;letter-spacing:-.062em;max-width:980px;margin:0 auto 1.45rem}
.hero-v3 h1 span{color:#fff;position:relative;display:inline-block;z-index:1}
.hero-v3 h1 span:after{content:"";position:absolute;z-index:-1;left:-.5%;right:-1%;bottom:5px;height:18px;border-radius:999px;background:linear-gradient(90deg,var(--teal),#56e4d8);opacity:.43;transform:rotate(-.8deg)}
.hero-v3 .lead{max-width:860px;margin:0 auto 2rem;color:rgba(255,255,255,.76);font-size:clamp(1.04rem,1.5vw,1.24rem);line-height:1.65}
.hero-v3-actions{justify-content:center}
.hero-v3-stage{display:grid;grid-template-columns:minmax(210px,1fr) minmax(330px,390px) minmax(210px,1fr);gap:26px;align-items:center;max-width:1110px;margin:54px auto 0;position:relative}
.hero-v3-stage:before{content:"";position:absolute;left:16%;right:16%;top:49%;height:1px;background:linear-gradient(90deg,transparent,rgba(119,236,231,.38) 22%,rgba(119,236,231,.38) 78%,transparent);z-index:0}
.hero-v3-situations{display:grid;gap:18px;position:relative;z-index:2}
.hero-v3-card{display:flex;align-items:flex-start;gap:13px;min-height:112px;padding:18px 18px;border:1px solid rgba(255,255,255,.15);border-radius:20px;background:rgba(255,255,255,.085);backdrop-filter:blur(13px);box-shadow:0 18px 42px rgba(2,5,38,.2);transition:.22s ease}
.hero-v3-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.12);border-color:rgba(119,236,231,.38)}
.hero-v3-card-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;font-weight:950;font-size:1rem}
.hero-v3-card-icon.teal{background:rgba(0,190,194,.2);color:#79ece7}
.hero-v3-card-icon.yellow{background:rgba(255,204,22,.17);color:#ffe066}
.hero-v3-card-icon.violet{background:rgba(137,111,255,.22);color:#c9bdff}
.hero-v3-card-icon.orange{background:rgba(252,74,26,.18);color:#ff8c6d}
.hero-v3-card strong{display:block;color:#fff;font-size:.91rem;line-height:1.25;margin:1px 0 5px}
.hero-v3-card small{display:block;color:rgba(255,255,255,.58);font-size:.73rem;line-height:1.5}
.hero-v3-door-column{display:grid;place-items:center;position:relative;z-index:3}
.hero-v3-door-halo{position:absolute;width:470px;height:470px;border-radius:50%;background:radial-gradient(circle,rgba(0,190,194,.2),rgba(93,67,221,.08) 48%,transparent 70%);filter:blur(5px);z-index:-1}
.hero-v3-door{position:relative;width:350px;height:455px;padding:11px;border-radius:175px 175px 31px 31px;background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(220,242,246,.82));border:1px solid rgba(255,255,255,.78);box-shadow:0 34px 92px rgba(2,5,38,.45),inset 0 0 0 1px rgba(16,22,96,.07)}
.hero-v3-door:before{content:"";position:absolute;inset:6px;border:1px solid rgba(93,67,221,.19);border-radius:169px 169px 25px 25px;z-index:5;pointer-events:none}
.hero-v3-door-image{width:100%;height:100%;overflow:hidden;border-radius:164px 164px 22px 22px;background:#daf1f5}
.hero-v3-door-image img{width:100%;height:100%;object-fit:cover;object-position:57% center;filter:saturate(.9) contrast(1.02);transform:scale(1.035)}
.hero-v3-door-badge{position:absolute;z-index:6;left:50%;top:22px;transform:translateX(-50%);display:flex;align-items:center;gap:.5rem;padding:.47rem .68rem;border-radius:999px;background:rgba(8,11,63,.84);backdrop-filter:blur(10px);white-space:nowrap;color:#fff;font-size:.65rem;font-weight:800}
.hero-v3-door-badge i{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(0,190,194,.18)}
.hero-v3-door-panel{position:absolute;z-index:6;left:24px;right:24px;bottom:24px;padding:13px 14px;border-radius:18px;background:rgba(255,255,255,.91);backdrop-filter:blur(16px);box-shadow:0 14px 38px rgba(16,22,96,.2);border:1px solid rgba(255,255,255,.8)}
.hero-v3-door-panel>b{display:block;color:var(--navy);font-size:.69rem;line-height:1.3;margin-bottom:.5rem}
.hero-v3-input{height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 7px 0 11px;border:1px solid #e0def1;border-radius:12px;background:#f4f3fb;color:#75768b;font-size:.69rem}
.hero-v3-input i{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:var(--navy);color:#fff;font-style:normal;font-weight:850}
.hero-v3-route{display:flex;align-items:center;gap:9px;margin-top:15px;color:rgba(255,255,255,.57);font-size:.68rem;font-weight:750;white-space:nowrap}
.hero-v3-route i{display:block;width:35px;height:1px;background:linear-gradient(90deg,var(--teal),rgba(255,255,255,.18))}
.hero-v3-route b{color:#79ece7}
.hero-v3-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:850px;margin:45px auto 21px;border:1px solid rgba(255,255,255,.13);border-radius:22px;overflow:hidden;background:rgba(255,255,255,.06);backdrop-filter:blur(12px)}
.hero-v3-proof span{display:flex;flex-direction:column;gap:2px;padding:16px 22px;text-align:center;border-right:1px solid rgba(255,255,255,.11)}
.hero-v3-proof span:last-child{border-right:0}
.hero-v3-proof b{color:#fff;font-size:.77rem}
.hero-v3-proof small{color:rgba(255,255,255,.5);font-size:.66rem;line-height:1.4}

@media (max-width:960px){
  .hero-v3{padding-top:128px}
  .hero-v3-stage{grid-template-columns:1fr 330px 1fr;gap:16px}
  .hero-v3-door{width:310px;height:410px}
  .hero-v3-card{padding:15px;min-height:112px}
}
@media (max-width:820px){
  .hero-v3-stage{grid-template-columns:1fr 1fr;max-width:690px;gap:14px;margin-top:42px}
  .hero-v3-stage:before{display:none}
  .hero-v3-door-column{grid-column:1/-1;grid-row:1;margin-bottom:17px}
  .hero-v3-situations{display:contents}
  .hero-v3-card{min-height:104px}
  .situation-left .hero-v3-card:nth-child(1){grid-column:1;grid-row:2}
  .situation-left .hero-v3-card:nth-child(2){grid-column:2;grid-row:2}
  .situation-right .hero-v3-card:nth-child(1){grid-column:1;grid-row:3}
  .situation-right .hero-v3-card:nth-child(2){grid-column:2;grid-row:3}
}
@media (max-width:620px){
  .hero-v3{padding:112px 0 70px}
  .hero-v3:after{height:84px;bottom:-45px}
  .hero-v3 h1{font-size:clamp(2.55rem,12.5vw,3.65rem);line-height:1.01;letter-spacing:-.055em}
  .hero-v3 h1 span:after{height:11px;bottom:3px}
  .hero-v3 .lead{font-size:.98rem;line-height:1.58}
  .hero-v3-kicker{font-size:.68rem;margin-bottom:1rem}
  .hero-v3-actions{align-items:stretch}
  .hero-v3-actions .btn{width:100%}
  .hero-v3-stage{grid-template-columns:1fr;margin-top:36px;gap:11px}
  .hero-v3-door-column{grid-column:1;grid-row:1;margin-bottom:13px}
  .hero-v3-door{width:min(78vw,295px);height:min(101vw,390px)}
  .hero-v3-door-halo{width:360px;height:360px}
  .hero-v3-door-panel{left:18px;right:18px;bottom:18px}
  .situation-left .hero-v3-card:nth-child(1),.situation-left .hero-v3-card:nth-child(2),.situation-right .hero-v3-card:nth-child(1),.situation-right .hero-v3-card:nth-child(2){grid-column:1;grid-row:auto}
  .hero-v3-card{min-height:0;padding:14px 15px;border-radius:17px}
  .hero-v3-card small{font-size:.7rem}
  .hero-v3-proof{grid-template-columns:1fr;margin-top:31px;border-radius:18px}
  .hero-v3-proof span{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);padding:13px 17px}
  .hero-v3-proof span:last-child{border-bottom:0}
}


/* ===== Stakeholder edition v0.7 ===== */
.stakeholder-hero .hero-v4-copy{max-width:680px}
.stakeholder-hero .hero-v4-copy h1{max-width:760px}
.stakeholder-hero .hero-v4-copy .lead{max-width:650px;padding-top:45px}
.concept-card-wrap{align-self:center}
.concept-card{position:relative;width:min(440px,100%);padding:28px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(244,247,255,.94));box-shadow:0 28px 80px rgba(4,10,67,.28);color:var(--ink);border:1px solid rgba(255,255,255,.65);overflow:hidden}
.concept-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-88px;bottom:-100px;background:rgba(0,190,194,.12)}
.concept-card-label{display:flex;align-items:center;gap:9px;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#087f84;margin-bottom:14px}
.concept-card-label i{width:8px;height:8px;border-radius:50%;background:var(--teal)}
.concept-card>strong{display:block;font-size:1.38rem;line-height:1.18;max-width:330px;margin-bottom:0}
.concept-streams{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:22px}
.concept-streams span{font-size:.72rem;font-weight:700;color:#38405f;background:white;border:1px solid #e0e4f0;border-radius:999px;padding:7px 10px;box-shadow:0 5px 12px rgba(18,25,82,.05)}
.concept-door-row{display:flex;align-items:center;gap:14px;background:var(--ink);color:white;border-radius:18px;padding:15px 17px;position:relative;z-index:1}
.concept-door-row p{margin:0;display:flex;flex-direction:column;line-height:1.25}.concept-door-row b{font-size:.95rem}.concept-door-row small{opacity:.72;margin-top:3px}
.mini-door{width:45px;height:52px;border:2px solid #6d79da;border-radius:8px;position:relative;flex:0 0 auto}.mini-door span{position:absolute;inset:7px 7px 5px 9px;background:linear-gradient(140deg,var(--teal),#674bd9);clip-path:polygon(0 8%,100% 0,100% 100%,0 88%)}.mini-door span:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--yellow);right:6px;top:21px}

.mv-head{margin-bottom:20px}
.mission-vision-grid{position:relative;margin-top:0;display:grid;grid-template-columns:1fr 1fr;background:var(--ink);border-radius:26px;overflow:hidden;box-shadow:0 24px 60px rgba(23,22,94,.2)}
.mission-card,.vision-card{padding:30px 34px;color:white}.vision-card{background:linear-gradient(135deg,#151d77,#252192)}
.mission-card h2,.vision-card h2{font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.1;color:white;margin:.35rem 0 .8rem}.mission-card p,.vision-card p{color:rgba(255,255,255,.76);margin:0;max-width:560px}.eyebrow.light{color:#69e0e0}

.definition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.definition-card{background:white;border:1px solid #ececf4;border-radius:22px;padding:24px;box-shadow:0 10px 28px rgba(27,24,83,.07)}.definition-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#e7f9f9;color:#078b8e;font-weight:900;font-size:.8rem;margin-bottom:20px}.definition-card h3{font-size:1.15rem;margin-bottom:9px}.definition-card p{color:var(--muted);font-size:.92rem;margin:0}.not-this{margin-top:18px;padding:18px 22px;border-radius:18px;background:#f2f0fb;border:1px solid #e2def6;display:flex;gap:9px 12px;align-items:center;flex-wrap:wrap}.not-this strong{color:var(--ink);margin-right:4px}.not-this span{font-size:.82rem;border-radius:999px;background:white;padding:7px 10px;color:#57566e;border:1px solid #e4e3ec}

.origin{background:#f8f9fd}.origin-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:center}.origin-story{position:relative;display:flex;flex-direction:column;gap:14px}
.origin-story::before{content:"";position:absolute;left:48px;top:48px;bottom:48px;border-left:2px dashed rgba(0,142,148,.35);z-index:0}
.origin-step{position:relative;z-index:1;display:grid;grid-template-columns:56px 1fr;gap:18px;padding:16px 20px;border-radius:20px;background:white;box-shadow:0 8px 24px rgba(28,25,82,.06);border:1px solid #ededf4}
.origin-step-ic{position:relative;align-self:start;width:56px;height:56px;border-radius:50%;background:var(--teal);color:#fff;display:grid;place-items:center}
.origin-step-ic>svg{width:28px;height:28px}
.origin-step-num{position:absolute;top:-3px;right:-3px;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--navy);font:800 .72rem/1 var(--sans);font-style:normal;display:grid;place-items:center;box-shadow:0 2px 7px rgba(16,22,96,.2)}
.origin-step strong{display:block;color:var(--navy);margin:2px 0 4px;font-size:1.02rem}
.origin-step p,.origin-step>div>div{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.why-now{margin-top:28px;padding:28px 32px 36px;border-radius:24px;background:linear-gradient(120deg,#101660,#23217c);color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center}.why-now h3{color:white;font-size:1.55rem;line-height:1.12;margin:.4rem 0 0}.why-now p{margin:0;color:rgba(255,255,255,.76)}

.audience-section{background:white}.audience-top{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:10px}
.audience-top .section-head{margin-bottom:0;max-width:none}
.audience-figure{display:grid;place-items:center}
.audience-figure img{width:min(100%,540px);height:auto;display:block}
.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.audience-card{position:relative;border-radius:28px;padding:30px;overflow:hidden;min-height:360px}.audience-card:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-100px;bottom:-110px;opacity:.42}.audience-card.resident{background:#eafafa;border:1px solid #cceeee}.audience-card.resident:after{background:#bdeced}.audience-card.professional{background:#efedfb;border:1px solid #ded9f5}.audience-card.professional:after{background:#d0c9f2}.audience-tag{display:inline-block;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:#087f84;margin-bottom:30px}.professional .audience-tag{color:#563fc0}.audience-card h3{font-size:1.65rem;line-height:1.08;max-width:390px}.audience-card p{max-width:510px;color:#54546b}.audience-card ul{padding-left:0;list-style:none;margin:23px 0 0;position:relative;z-index:1}.audience-card li{margin:11px 0;padding-left:25px;position:relative;font-weight:650;font-size:.9rem}.audience-card li:before{content:"✓";position:absolute;left:0;color:#08989b;font-weight:900}.professional li:before{color:#6249ce}.stakeholder-note{margin-top:18px;padding:17px 22px;background:#fafafa;border-radius:16px;border:1px solid #ececf1;color:#5b5a70}.stakeholder-note strong{color:var(--ink)}

.platform-stack{display:flex;flex-direction:column;align-items:stretch;max-width:520px;margin:auto}.stack-layer{display:flex;align-items:center;gap:15px;border-radius:18px;padding:17px 18px;box-shadow:0 10px 24px rgba(11,15,76,.18)}.stack-layer b{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.16);color:white}.stack-layer span{display:flex;flex-direction:column;color:white}.stack-layer small{opacity:.68;margin-top:2px}.stack-layer.interaction{background:#25217f}.stack-layer.intelligence{background:#5d43d7}.stack-layer.sources{background:#0c9fa4}.stack-layer.route{background:#fc4a1a}.stack-connector{width:2px;height:18px;background:linear-gradient(#b7bada,#b7e5e5);margin:auto}

.usecases{background:#f7f7fb}.usecase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.usecase-card{background:white;border:1px solid #e9e9f2;border-radius:22px;padding:23px;min-height:220px;box-shadow:0 8px 24px rgba(27,24,83,.05);position:relative;overflow:hidden}.usecase-card.featured{border-top:4px solid var(--teal)}.usecase-card h3{font-size:1.2rem;margin:27px 0 9px}.usecase-card p{color:var(--muted);font-size:.9rem;margin:0}.status{position:absolute;top:18px;right:18px;font-size:.68rem;font-weight:800;border-radius:999px;padding:6px 9px}.status.live{background:#ddf7f5;color:#047d80}.status.next{background:#eeeafa;color:#5b43bf}.status.direction{background:#fff0e9;color:#c83b15}

.approach-contrast{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.approach-contrast>div{border-radius:17px;padding:16px}.approach-contrast strong{display:block;margin-bottom:5px}.approach-contrast span{font-size:.8rem;line-height:1.4;display:block}.contrast-bad{background:#fff1ee;color:#7b392b}.contrast-good{background:#e9f9f8;color:#075e62}

.roadmap-section{background:#fbfbfe}.phase-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.phase-card{border-radius:28px;padding:30px;min-height:420px;position:relative;overflow:hidden}.phase-card.phase-one{background:var(--ink);color:white}.phase-card.phase-two{background:#e9f9f8;color:var(--ink);border:1px solid #cceceb}.phase-number{display:inline-block;font-weight:900;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.14)}.phase-two .phase-number{background:white;color:#07888b}.phase-period{float:right;font-size:.78rem;font-weight:800;opacity:.7;margin-top:6px}.phase-card h3{font-size:1.65rem;line-height:1.08;margin:30px 0 12px;color:inherit}.phase-card p{color:inherit;opacity:.75}.phase-card ul{list-style:none;padding:0;margin:23px 0 0}.phase-card li{position:relative;padding-left:25px;margin:12px 0;font-size:.9rem}.phase-card li:before{content:"→";position:absolute;left:0;font-weight:900;color:var(--teal)}.phase-two li:before{color:#fc4a1a}.phase-disclaimer{display:block;margin-top:20px;padding-top:15px;border-top:1px solid rgba(16,22,96,.13);color:#565a70}.timeline-bar{margin-top:22px;display:grid;grid-template-columns:repeat(5,1fr);border-radius:22px;background:white;border:1px solid #e7e7f0;box-shadow:0 8px 24px rgba(27,24,83,.05);overflow:hidden}.timeline-item{padding:19px 17px;border-right:1px solid #e8e8ef;position:relative}.timeline-item:last-child{border-right:0}.timeline-item:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:#dcdde8}.timeline-item.done:before{background:var(--teal)}.timeline-item.current:before{background:var(--orange)}.timeline-item b{display:block;color:var(--ink);font-size:.84rem;margin-bottom:6px}.timeline-item span{display:block;color:var(--muted);font-size:.75rem;line-height:1.35}

.governance-section{background:white}.governance-map{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.governance-map article{border-radius:20px;padding:22px;background:#f8f8fc;border:1px solid #e9e9f1}.governance-map article span{font-size:.68rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#08a0a4}.governance-map h3{font-size:1.05rem;margin:11px 0 7px}.governance-map p{font-size:.84rem;color:var(--muted);margin:0}.governance-open{margin-top:18px;padding:19px 22px;background:#fff2ea;border:1px solid #f4d6c6;border-radius:18px;display:flex;gap:9px;align-items:center;flex-wrap:wrap}.governance-open strong{color:#8b351d;margin-right:4px}.governance-open span{background:white;border:1px solid #efd9ce;border-radius:999px;padding:6px 9px;font-size:.76rem;color:#7a594f}

.faq-section{background:#f7f7fb}.faq-wrap{max-width:980px}.faq-list{display:flex;flex-direction:column;gap:10px}.faq-list details{background:white;border:1px solid #e5e5ee;border-radius:17px;box-shadow:0 5px 16px rgba(27,24,83,.04);overflow:hidden}.faq-list summary{list-style:none;cursor:pointer;padding:19px 54px 19px 21px;font-weight:800;color:var(--ink);position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:20px;top:14px;width:32px;height:32px;border-radius:10px;background:#eef0fa;display:grid;place-items:center;color:var(--ink);font-size:1.25rem}.faq-list details[open] summary:after{content:"–";background:#ddf6f5;color:#047d80}.faq-list details>div{padding:0 21px 20px;color:var(--muted);font-size:.92rem;max-width:850px}.faq-list details p{margin:0}

.stakeholder-final h2{max-width:930px}.stakeholder-final p{max-width:790px}

@media(max-width:980px){
  .definition-grid{grid-template-columns:1fr 1fr}.origin-grid,.why-now{grid-template-columns:1fr}.usecase-grid,.governance-map{grid-template-columns:1fr 1fr}.timeline-bar{grid-template-columns:1fr}.timeline-item{border-right:0;border-bottom:1px solid #e8e8ef}.timeline-item:last-child{border-bottom:0}
}
@media(max-width:760px){
  .mission-vision-grid,.audience-grid,.phase-grid,.audience-top{grid-template-columns:1fr}.mission-vision-grid{margin-top:0}.definition-grid,.usecase-grid,.governance-map{grid-template-columns:1fr}.origin-grid{gap:32px}.why-now{padding:24px}.approach-contrast{grid-template-columns:1fr}.concept-card{padding:22px}.phase-card{min-height:auto}.stakeholder-hero .hero-v4-interaction{margin-top:12px}.not-this{align-items:flex-start}
}

[id]{scroll-margin-top:96px;}
.footer-initiative img{width:90px;}

/* =========================================================
   V0.8 — definitief logo Digitale Voordeur Zoetermeer
   ========================================================= */
.brand-definitive{
  display:flex;
  align-items:center;
  width:205px;
  flex:0 0 auto;
}
.definitive-logo{
  display:block;
  width:100%;
  height:auto;
}
.definitive-logo--color{display:none}
.nav-shell.scrolled .definitive-logo--white{display:none}
.nav-shell.scrolled .definitive-logo--color{display:block}
.footer-definitive-logo{
  display:block;
  width:250px;
  max-width:58vw;
  height:auto;
}
@media(max-width:680px){
  .brand-definitive{width:165px}
  .footer-definitive-logo{width:220px;max-width:72vw}
}


/* Afstand tussen de "Wat ons drijft"-kop en het missie/visie-blok (kop levert de bovenruimte). */
.mission-vision-grid{
  margin-top:0;
}

/* In bewerkmodus geen reveal-animatie (voorkomt heropbouw-geflikker bij opslaan); bezoekers zien 'm wél. */
body.dv-edit .reveal{opacity:1!important;transform:none!important;transition:none!important}

/* =========================================================
   V0.4 — Zoetermeer als levende hero-illustratie
   ========================================================= */
.hero-v4{
  min-height:920px;
  padding:154px 0 62px;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:
    radial-gradient(circle at 17% 82%,rgba(93,67,221,.34),transparent 32%),
    radial-gradient(circle at 72% 16%,rgba(0,190,194,.18),transparent 31%),
    linear-gradient(128deg,#070a3a 0%,#10165e 47%,#151660 100%);
}
.hero-v4:after{
  content:"";position:absolute;left:-7%;right:-7%;bottom:-2px;height:112px;
  background:var(--paper);clip-path:ellipse(58% 47% at 50% 100%);z-index:8;
}
.hero-v4-gridlines{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.44;
  background-image:linear-gradient(rgba(255,255,255,.034) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.034) 1px,transparent 1px);
  background-size:54px 54px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.88),transparent 95%)}
.hero-v4-orb{position:absolute;border-radius:50%;filter:blur(10px);pointer-events:none;z-index:0}
.hero-v4-orb.orb-one{width:320px;height:320px;background:rgba(252,74,26,.10);left:-105px;top:35%}
.hero-v4-orb.orb-two{width:370px;height:370px;background:rgba(255,204,22,.07);right:-120px;bottom:13%}

.hero-v4-city{position:absolute;z-index:1;right:-2.5%;bottom:18px;width:min(69vw,1070px);pointer-events:none;filter:drop-shadow(0 30px 45px rgba(2,5,38,.38))}
.hero-v4-city:before{content:"";position:absolute;inset:4% 0 0 0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#0d1255 0%,rgba(13,18,85,.83) 12%,rgba(13,18,85,.22) 35%,transparent 56%)}
.hero-v4-city:after{content:"";position:absolute;left:0;right:0;bottom:0;height:26%;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(9,12,61,.72),transparent)}
.hero-v4-city img{display:block;width:100%;height:auto;position:relative;z-index:0;filter:saturate(.92) contrast(1.03) brightness(.94)}

.hero-v4-inner{position:relative;z-index:3;min-height:704px;display:grid;grid-template-columns:minmax(0,680px) 1fr;grid-template-rows:1fr auto;column-gap:34px;align-items:center}
.hero-v4-copy{padding:26px 0 74px;max-width:650px}
.hero-v4-kicker{display:inline-flex;align-items:center;gap:.68rem;margin-bottom:1.35rem;color:#82eee9;font-size:.78rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.hero-v4-kicker i{display:block;width:34px;height:3px;border-radius:99px;background:var(--teal)}
.hero-v4 h1{color:#fff;font-size:clamp(3.65rem,5.8vw,6.15rem);line-height:.97;letter-spacing:-.064em;margin:0 0 1.45rem;max-width:650px;text-wrap:balance}
.hero-v4 h1 span{position:relative;display:inline-block;z-index:1}
.hero-v4 h1 span:after{content:"";position:absolute;z-index:-1;left:-.5%;right:-1%;bottom:-26px;height:18px;border-radius:999px;background:linear-gradient(90deg,var(--teal),#55e4d8);opacity:.44;transform:rotate(-.8deg)}
.hero-v4 .lead{max-width:625px;color:rgba(255,255,255,.78);font-size:clamp(1.04rem,1.42vw,1.2rem);line-height:1.65;margin-bottom:1.45rem}
.hero-v4-topics{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:3rem}
.hero-v4-topics span{display:inline-flex;align-items:center;gap:.45rem;padding:.54rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.075);backdrop-filter:blur(10px);color:rgba(255,255,255,.82);font-size:.73rem;font-weight:760;box-shadow:0 10px 24px rgba(2,5,38,.12)}
.hero-v4-topics span:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(0,190,194,.12)}
.hero-v4-topics span:nth-child(2):before{background:var(--yellow);box-shadow:0 0 0 4px rgba(255,204,22,.11)}
.hero-v4-topics span:nth-child(3):before{background:#9c85ff;box-shadow:0 0 0 4px rgba(156,133,255,.12)}
.hero-v4-topics span:nth-child(4):before{background:var(--orange);box-shadow:0 0 0 4px rgba(252,74,26,.12)}
.hero-v4-actions{justify-content:flex-start}

.hero-v4-interaction{position:relative;align-self:end;justify-self:end;width:min(100%,390px);margin:0 30px 112px 0;z-index:5}
.hero-v4-question-card{padding:17px 18px 15px;border-radius:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.82);box-shadow:0 25px 70px rgba(2,5,38,.34);color:var(--navy)}
.hero-v4-question-label{display:flex;align-items:center;gap:.48rem;margin-bottom:.7rem;color:var(--teal-deep);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.hero-v4-question-label i{width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(0,190,194,.13)}
.hero-v4-question-card>strong{display:block;font-size:.88rem;line-height:1.35;margin-bottom:.65rem}
.hero-v4-input{height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px 0 13px;border:1px solid #dddced;border-radius:13px;background:#f5f4fb;color:#77788d;font-size:.76rem}
.hero-v4-input b{width:33px;height:33px;border-radius:10px;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:.92rem}
.hero-v4-question-card small{display:block;margin-top:.65rem;color:#76788c;font-size:.66rem;line-height:1.45}
.hero-v4-route-note{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px;color:rgba(255,255,255,.68);font-size:.67rem;font-weight:740}
.hero-v4-route-note i{display:block;width:34px;height:1px;background:linear-gradient(90deg,var(--teal),rgba(255,255,255,.15))}
.hero-v4-route-note b{color:#80ece7}

.hero-v4-proof{grid-column:1/-1;align-self:end;display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;width:100%;margin:0 0 44px;border:1px solid rgba(255,255,255,.14);border-radius:21px;overflow:hidden;background:rgba(6,10,56,.43);backdrop-filter:blur(14px);box-shadow:0 18px 48px rgba(2,5,38,.18)}
.hero-v4-proof span{display:flex;flex-direction:column;gap:2px;padding:15px 21px;border-right:1px solid rgba(255,255,255,.11)}
.hero-v4-proof span:last-child{border-right:0}
.hero-v4-proof b{color:#fff;font-size:.76rem}
.hero-v4-proof small{color:rgba(255,255,255,.53);font-size:.65rem;line-height:1.4}

@media (max-width:1180px){
  .hero-v4{min-height:960px}
  .hero-v4-city{right:-12%;width:min(77vw,1020px);opacity:.93}
  .hero-v4-inner{grid-template-columns:minmax(0,590px) 1fr}
  .hero-v4 h1{font-size:clamp(3.45rem,6.2vw,5.5rem)}
  .hero-v4-interaction{margin-right:0;width:350px}
}
@media (max-width:930px){
  .hero-v4{padding-top:130px;min-height:1120px}
  .hero-v4-city{right:-16%;bottom:62px;width:1030px;max-width:none;opacity:.83}
  .hero-v4-city:before{background:linear-gradient(180deg,#0d1255 0%,rgba(13,18,85,.74) 14%,rgba(13,18,85,.12) 42%,transparent 61%)}
  .hero-v4-inner{display:flex;flex-direction:column;align-items:stretch;min-height:930px}
  .hero-v4-copy{text-align:center;max-width:760px;margin:0 auto;padding:0 0 38px}
  .hero-v4 h1,.hero-v4 .lead{margin-left:auto;margin-right:auto}
  .hero-v4-topics,.hero-v4-actions{justify-content:center}
  .hero-v4-interaction{align-self:center;justify-self:auto;margin:auto 0 115px;width:min(90%,390px)}
  .hero-v4-proof{margin:0 auto 44px;position:relative;z-index:6}
}
@media (max-width:640px){
  .hero-v4{min-height:1140px;padding:112px 0 72px}
  .hero-v4:after{height:82px;bottom:-39px}
  .hero-v4-city{width:810px;right:-235px;bottom:150px;opacity:.72}
  .hero-v4 h1{font-size:clamp(2.65rem,13vw,3.8rem);line-height:1;letter-spacing:-.056em}
  .hero-v4 h1 span:after{height:11px;bottom:3px}
  .hero-v4 .lead{font-size:.98rem;line-height:1.58}
  .hero-v4-kicker{font-size:.67rem;margin-bottom:1rem}
  .hero-v4-topics{gap:7px;margin-bottom:1.6rem}
  .hero-v4-topics span{font-size:.67rem;padding:.47rem .63rem}
  .hero-v4-actions{align-items:stretch}
  .hero-v4-actions .btn{width:100%}
  .hero-v4-interaction{margin-top:auto;margin-bottom:32px;width:100%}
  .hero-v4-question-card{border-radius:19px;padding:15px}
  .hero-v4-proof{grid-template-columns:1fr;margin-bottom:25px;border-radius:18px}
  .hero-v4-proof span{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);padding:12px 16px;text-align:center}
  .hero-v4-proof span:last-child{border-bottom:0}
}

/* =========================================================
   V1.0 — verdiept productverhaal, uitvoering en partners
   ========================================================= */
.status-section{background:#f6f7fc}.status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.status-card{background:white;border:1px solid var(--line);border-radius:21px;padding:23px;box-shadow:var(--shadow-sm);border-top:4px solid #b9bdcf}.status-card span{display:inline-block;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;color:#62667d}.status-card h3{font-size:1.08rem}.status-card p{font-size:.86rem;color:var(--muted);margin:0}.status-card.confirmed{border-top-color:var(--teal)}.status-card.tested{border-top-color:var(--violet)}.status-card.progress{border-top-color:var(--yellow)}.status-card.open{border-top-color:var(--orange)}
.origin-insight{margin-top:27px;padding:22px 24px;border-radius:20px;background:#e9f9f8;border:1px solid #cbeceb;display:flex;gap:16px;align-items:flex-start}.origin-insight-ic{flex:0 0 auto;width:52px;height:52px;border-radius:50%;background:#fff;color:var(--teal-deep);display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,142,148,.12)}.origin-insight-ic>svg{width:26px;height:26px}.origin-insight strong{display:block;color:var(--navy);margin-bottom:7px}.origin-insight p{margin:0;color:#4f586d;font-size:.94rem}.story-flow{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto 1.15fr;align-items:stretch;gap:10px;margin-top:34px}
.story-flow-label{align-self:center;font-weight:800;color:var(--navy);font-size:.95rem;line-height:1.25;max-width:118px;padding-right:6px}
.story-flow-label::before{content:"";display:block;width:26px;height:3px;border-radius:999px;background:var(--teal);margin-bottom:10px}
.flow-ic{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--mint);color:var(--teal-deep);margin:0 auto 10px}
.flow-ic>svg{width:23px;height:23px}
.story-flow .flow-result .flow-ic{background:rgba(255,255,255,.16);color:#fff}.story-flow>div{display:flex;flex-direction:column;justify-content:center;min-height:115px;padding:18px;border-radius:18px;background:white;border:1px solid var(--line);text-align:center;box-shadow:0 7px 22px rgba(27,24,83,.05)}.story-flow>i{font-style:normal;align-self:center;color:var(--teal-deep);font-weight:900}.story-flow b{font-size:1.5rem;color:var(--navy)}.story-flow span{font-size:.75rem;color:var(--muted);line-height:1.35}.story-flow .flow-result{background:var(--navy);border-color:var(--navy)}.story-flow .flow-result b,.story-flow .flow-result span{color:white}
.journey-section{background:white}.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.journey-card{border-radius:28px;padding:31px;min-height:430px;position:relative;overflow:hidden}.resident-journey{background:#eafafa;border:1px solid #cceeee}.professional-journey{background:#efedfb;border:1px solid #ded9f5}.journey-label{display:inline-block;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#087f84;margin-bottom:24px}.professional-journey .journey-label{color:#563fc0}.journey-card h3{font-size:1.62rem;line-height:1.12}.journey-steps{display:grid;gap:13px;margin-top:25px}.journey-steps p{display:grid;grid-template-columns:36px 1fr;gap:12px;margin:0;font-size:.9rem;color:#50556c}.journey-steps b{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:white;color:var(--navy)}.organisation-value{margin-top:20px;padding:22px 25px;border-radius:20px;background:var(--navy);color:white;display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center}.organisation-value strong{font-size:1.1rem}.organisation-value p{margin:0;color:rgba(255,255,255,.73);font-size:.92rem}
.product-choice{background:#f7f7fb}.channel-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.channel-main{grid-row:span 3;border-radius:28px;padding:34px;background:linear-gradient(145deg,var(--navy),#25217f);color:white;min-height:360px}.channel-main>span{font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#74e7e2}.channel-main h3{color:white;font-size:2rem;margin:30px 0 12px}.channel-main p{color:rgba(255,255,255,.7)}.channel-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.channel-tags span{font-size:.72rem;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12)}.channel-entry{display:grid;grid-template-columns:42px 1fr;gap:4px 13px;background:white;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow-sm)}.channel-entry b{grid-row:span 2;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--mint);color:var(--teal-deep)}.channel-entry strong{color:var(--navy)}.channel-entry small{color:var(--muted);line-height:1.45}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.scope-card{border-radius:26px;padding:30px}.scope-card>span{font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.scope-card h3{font-size:1.5rem;margin:22px 0 15px}.scope-card ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}.scope-card li{position:relative;padding-left:25px;font-size:.9rem}.scope-card li:before{position:absolute;left:0;font-weight:900}.in-scope{background:#e9f9f8;border:1px solid #cbeceb}.in-scope>span{color:#077f83}.in-scope li:before{content:'✓';color:#078f93}.out-scope{background:#fff1ed;border:1px solid #f1d5c9}.out-scope>span{color:#bd3e1b}.out-scope li:before{content:'—';color:#e14a24}
.haga-section{background:var(--navy-deep);color:white}.haga-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}.haga-copy h2{color:white}.haga-copy p{color:rgba(255,255,255,.68)}.haga-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:14px}.haga-capabilities article{border-radius:20px;padding:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);min-height:170px}.haga-capabilities b{display:block;color:#71e7e2;margin-bottom:24px}.haga-capabilities strong{display:block;color:white;margin-bottom:7px}.haga-capabilities span{font-size:.82rem;color:rgba(255,255,255,.61);line-height:1.48}.haga-note{margin:25px 0 0;padding:18px 21px;border-radius:17px;background:rgba(255,204,22,.1);border:1px solid rgba(255,204,22,.18);color:rgba(255,255,255,.76)}.haga-note strong{color:#ffe26b}
.governance-dual{display:grid;grid-template-columns:1fr 1fr;gap:20px}.governance-column{border-radius:27px;padding:30px;background:#f6f7fb;border:1px solid var(--line)}.future-gov{background:#eaf9f8;border-color:#caeceb}.gov-label{font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-deep)}.governance-column h3{font-size:1.65rem;margin:25px 0 21px}.governance-column article{padding:15px 0;border-top:1px solid rgba(16,22,96,.1)}.governance-column article b{display:block;color:var(--navy);font-size:.9rem;margin-bottom:4px}.governance-column article p{margin:0;color:var(--muted);font-size:.83rem}.decision-agenda{margin-top:22px;padding:28px;border-radius:25px;background:var(--navy);color:white}.decision-agenda h3{color:white}.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.decision-item{padding:16px;border-radius:15px;background:rgba(255,255,255,.08);font-size:.78rem;color:rgba(255,255,255,.68)}.decision-grid b{display:block;color:#79e8e3;margin-bottom:5px}
.quality-section{background:#f7f7fb}.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.quality-card{background:white;border:1px solid var(--line);border-radius:21px;padding:23px;box-shadow:0 8px 22px rgba(27,24,83,.05)}.quality-card b{display:block;color:var(--teal-deep);font-size:.75rem;margin-bottom:24px}.quality-card h3{font-size:1.1rem}.quality-card p{margin:0;color:var(--muted);font-size:.84rem}.content-cycle{margin-top:24px;padding:31px;border-radius:27px;background:linear-gradient(135deg,#101660,#25217f);color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center}.content-cycle h3{color:white}.content-cycle p{margin:0;color:rgba(255,255,255,.68);font-size:.9rem}.cycle{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.cycle span{padding:9px 11px;border-radius:12px;background:rgba(255,255,255,.1);font-size:.74rem}.cycle i{font-style:normal;color:#70e6e1}
.measurement-section{background:white}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-grid article{border:1px solid var(--line);border-radius:21px;padding:23px;background:var(--paper)}.metric-grid span{display:block;color:var(--teal-deep);font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;margin-bottom:20px}.metric-grid b{display:block;color:var(--navy);font-size:.92rem;line-height:1.4;margin-bottom:11px}.metric-grid small{display:block;color:var(--muted);line-height:1.5}.risk-table{margin-top:25px;border:1px solid var(--line);border-radius:24px;background:white;overflow:hidden}.risk-table h3{padding:24px 25px;margin:0;border-bottom:1px solid var(--line)}.risk-table>div{display:grid;grid-template-columns:230px 1fr;gap:20px;padding:15px 25px;border-bottom:1px solid var(--line)}.risk-table>div:last-child{border-bottom:0}.risk-table b{color:var(--navy);font-size:.87rem}.risk-table span{color:var(--muted);font-size:.84rem}
.partners-section{background:#f5f6fb}.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.partner-card{display:grid;grid-template-columns:48px 1fr;gap:3px 13px;align-items:center;min-height:94px;padding:16px;border-radius:18px;background:white;border:1px solid var(--line);box-shadow:0 7px 20px rgba(27,24,83,.04);transition:.2s ease}.partner-card:hover{transform:translateY(-3px);border-color:#cbc7ee;box-shadow:var(--shadow-sm)}.partner-mark{grid-row:span 2;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--lav),var(--mint));color:var(--navy);font-size:.7rem;font-weight:900;text-align:center}.partner-card strong{font-size:.82rem;color:var(--navy);line-height:1.25}.partner-card small{font-size:.65rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.partner-source{margin-top:19px;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 20px;border-radius:17px;background:white;border:1px solid var(--line);font-size:.82rem}.partner-source span{color:var(--muted)}.partner-source a{color:var(--teal-deep);font-weight:850}
@media(max-width:1060px){.status-grid,.metric-grid,.partner-grid{grid-template-columns:1fr 1fr}.story-flow{grid-template-columns:1fr}.story-flow>i{transform:rotate(90deg)}.haga-shell,.content-cycle{grid-template-columns:1fr}.decision-grid,.quality-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.status-grid,.journey-grid,.channel-grid,.scope-grid,.haga-capabilities,.governance-dual,.decision-grid,.quality-grid,.metric-grid,.partner-grid{grid-template-columns:1fr}.channel-main{grid-row:auto}.organisation-value,.risk-table>div{grid-template-columns:1fr}.partner-source{flex-direction:column;align-items:flex-start}.story-flow>div{min-height:90px}.content-cycle{padding:24px}.cycle i{display:none}.cycle{align-items:stretch}.cycle span{flex:1 1 42%;text-align:center}}


/* =========================================================
   V1.1 — prototype-uitnodiging, partnerlogo's en footer
   ========================================================= */
.prototype-section{
  background:
    radial-gradient(circle at 88% 18%,rgba(0,190,194,.19),transparent 27%),
    linear-gradient(145deg,#080b3f 0%,#101660 58%,#1b196f 100%);
  color:white;
  overflow:hidden;
}
.prototype-section:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.4;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:48px 48px;
}
.prototype-shell{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}
.prototype-copy h2{color:white;max-width:620px}
.prototype-copy>p{color:rgba(255,255,255,.72);max-width:610px;font-size:1.06rem}
.prototype-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:28px}
.prototype-btn{background:var(--teal);color:var(--navy-deep);box-shadow:0 15px 38px rgba(0,190,194,.22)}
.prototype-btn:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(0,190,194,.32)}
.prototype-link{color:#83eee9;font-size:.84rem;font-weight:800;border-bottom:1px solid rgba(131,238,233,.35);padding-bottom:3px}
.prototype-disclaimer{display:block;margin-top:19px;color:rgba(255,255,255,.48);font-size:.72rem;line-height:1.55;max-width:610px}
.prototype-window{display:block;cursor:pointer;text-decoration:none;background:white;border-radius:28px;padding:16px;box-shadow:0 32px 90px rgba(2,5,38,.46);transform:rotate(1.2deg);border:1px solid rgba(255,255,255,.68);transition:transform .3s ease,box-shadow .3s ease}
.prototype-window:hover{transform:translateY(-6px);box-shadow:0 44px 120px rgba(2,5,38,.55)}
.prototype-window-bar{display:flex;align-items:center;gap:7px;height:29px;padding:0 4px 12px;border-bottom:1px solid var(--line)}
.prototype-window-bar i{width:9px;height:9px;border-radius:50%;background:#d7d8e3}.prototype-window-bar i:nth-child(2){background:#c6c8d8}.prototype-window-bar i:nth-child(3){background:#b4b7cc}
.prototype-window-body{padding:0;overflow:hidden;aspect-ratio:594/369;border-radius:0 0 14px 14px;background:#eef1f8;color:var(--ink)}
.prototype-shot{display:block;width:100%;height:auto}
.prototype-window-label{font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:10px}
.prototype-window-body h3{font-size:1.45rem;max-width:420px;margin-bottom:17px}
.prototype-question{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 10px 14px 15px;border-radius:15px;background:#f4f3fb;border:1px solid #e0def1;color:#696b80;font-size:.82rem}
.prototype-question b{width:35px;height:35px;border-radius:11px;display:grid;place-items:center;background:var(--navy);color:white;flex:0 0 auto}
.prototype-result{margin-top:13px;padding:17px;border-radius:17px;background:var(--mint);font-size:.82rem;color:#51586a;line-height:1.55}
.prototype-result strong{display:block;color:var(--navy);margin-bottom:6px}
.prototype-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.prototype-chips span{font-size:.68rem;padding:6px 9px;border-radius:999px;background:white;border:1px solid rgba(0,143,148,.17);color:#087f84;font-weight:750}

/* Logo cards replace the earlier initial-only partner tiles. */
.partner-grid{grid-template-columns:repeat(4,1fr);gap:14px}
.partner-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:174px;padding:22px 16px;border-radius:20px}
.partner-logo{position:relative;width:100%;height:78px;display:grid;place-items:center;margin-bottom:13px}
.partner-logo img{display:block;max-width:158px;max-height:68px;width:auto;height:auto;object-fit:contain;position:relative;z-index:2}
.partner-logo .partner-mark{display:none;grid-row:auto;width:58px;height:58px;border-radius:17px;font-size:.72rem;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}
.partner-logo.is-fallback .partner-mark{display:grid}
.partner-card strong{font-size:.84rem;line-height:1.3;min-height:2.2em;display:flex;align-items:center;justify-content:center}
.partner-card small{font-size:.67rem;margin-top:5px}
.footer-initiative{margin-left:auto;align-items:flex-end;text-align:right}

@media(max-width:980px){.prototype-shell{grid-template-columns:1fr;gap:38px}.prototype-window{max-width:680px;width:100%;margin:auto;transform:none}}
@media(max-width:760px){.partner-grid{grid-template-columns:1fr 1fr}.partner-card{min-height:154px}.partner-logo{height:66px}.partner-logo img{max-width:132px;max-height:58px}}
@media(max-width:520px){.partner-grid{grid-template-columns:1fr}.prototype-actions{align-items:stretch}.prototype-btn{width:100%}.prototype-link{text-align:center}.footer-initiative{margin-left:0;align-items:flex-start;text-align:left}}

/* =========================================================
   V1.2 — krachtige hero en compacte logo-overzicht
   ========================================================= */
.hero-v4{
  min-height:820px;
  padding-top:120px;
  padding-bottom:48px;
}
.hero-v4-inner{
  min-height:610px;
  grid-template-rows:1fr;
}
.hero-v4-copy{
  padding-top:8px;
  padding-bottom:42px;
}
.hero-v4-interaction{
  margin:0 30px 58px 0;
}

/* Alleen klikbare logo's: maximaal gebruik van beschikbare ruimte. */
.partner-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
}
.partner-card{
  min-height:108px;
  padding:9px;
  border-radius:16px;
  line-height:0;
}
.partner-logo{
  width:100%;
  height:86px;
  margin:0;
  padding:0;
}
.partner-logo img{
  max-width:calc(100% - 8px);
  max-height:76px;
}
.partner-logo .partner-mark{
  width:54px;
  height:54px;
  border-radius:15px;
}

@media(max-width:1120px){
  .partner-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:930px){
  .hero-v4{min-height:960px}
  .hero-v4-inner{min-height:790px}
  .hero-v4-interaction{margin:auto 0 68px}
  .partner-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:680px){
  .hero-v4{min-height:1030px;padding-top:108px}
  .hero-v4-inner{min-height:850px}
  .partner-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .partner-card{min-height:94px;padding:7px;border-radius:14px}
  .partner-logo{height:78px}
  .partner-logo img{max-height:68px}
}
@media(max-width:440px){
  .partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ================= in-context editor ================= */
#dv-editbar{position:fixed;right:18px;bottom:18px;z-index:900;display:flex;gap:8px;align-items:center;background:rgba(16,22,96,.94);color:#fff;padding:8px;border-radius:14px;box-shadow:var(--shadow,0 24px 70px rgba(16,22,96,.13))}
.dv-badge{font-size:12px;font-weight:700;padding:0 8px;opacity:.85}
.dv-btn{border:0;background:#fff;color:var(--navy,#101660);border-radius:10px;padding:9px 13px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.dv-btn.dv-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}
body.dv-edit [data-e]{position:relative;outline:1.5px dashed transparent;transition:.12s;cursor:pointer;border-radius:6px}
body.dv-edit [data-e]:hover{outline-color:var(--violet,#5d43dd);background:rgba(93,67,221,.06)}
body.dv-edit [data-e]:not([data-img]):hover:after{content:"✏️";position:absolute;top:-10px;right:-6px;font-size:13px;background:#fff;border:1px solid var(--line,#e7e7f1);border-radius:8px;padding:1px 5px;box-shadow:var(--shadow-sm,0 12px 34px rgba(16,22,96,.09));z-index:5}
body.dv-edit [data-img]:hover:after{content:"📷 wissel";position:absolute;top:6px;left:6px;font-size:11px;font-weight:800;background:#fff;border:1px solid var(--line,#e7e7f1);border-radius:8px;padding:4px 8px;box-shadow:var(--shadow-sm,0 12px 34px rgba(16,22,96,.09));z-index:5}
.dv-editing{outline:2px solid var(--violet,#5d43dd)!important;background:#fff!important;box-shadow:0 0 0 4px rgba(93,67,221,.14)}
.dv-modal{position:fixed;inset:0;z-index:1000;background:rgba(16,22,96,.42);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px}
.dv-dialog{background:#fff;border-radius:20px;padding:26px;width:min(460px,100%);box-shadow:var(--shadow,0 24px 70px rgba(16,22,96,.13))}
.dv-dialog.dv-rich{width:min(640px,100%)}
.dv-dialog h3{margin:0 0 18px;color:var(--navy,#101660);font-size:19px}
.dv-dialog label{display:block;font-size:12.5px;font-weight:700;color:var(--muted,#65677d);margin-bottom:12px}
.dv-dialog input{width:100%;margin-top:6px;border:1px solid var(--line,#e7e7f1);border-radius:12px;padding:12px 14px;font:inherit;outline:none}
.dv-dialog input:focus{border-color:var(--violet,#5d43dd)}
.dv-err{color:var(--orange,#fc4a1a);font-size:13px;font-weight:600;min-height:18px}
.dv-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.dv-toolbar{display:flex;gap:6px;margin-bottom:10px}
.dv-toolbar button{border:1px solid var(--line,#e7e7f1);background:#fff;border-radius:9px;width:38px;height:36px;font:inherit;font-size:14px;cursor:pointer}
.dv-rte{border:1px solid var(--line,#e7e7f1);border-radius:14px;padding:16px;min-height:160px;max-height:50vh;overflow:auto;outline:none;font-size:14.5px;line-height:1.7}
.dv-rte:focus{border-color:var(--violet,#5d43dd)}
.dv-rte,.dv-rte *{color:#0b1030}
/* Bij inline bewerken: witte achtergrond → forceer donkere tekst (ook op donkere secties). */
.dv-editing,.dv-editing *{color:#0b1030!important;-webkit-text-fill-color:#0b1030!important}
/* Alleen het accent-deel van de hero-titel krijgt de teal-onderstreping. */
.hero-v4 h1 span:not(.hero-accent):after{content:none!important}
/* Verwijder-knop per blok (alleen in bewerk-modus). */
.dv-del{position:absolute;top:-11px;left:-11px;z-index:7;width:26px;height:26px;padding:0;border-radius:50%;border:1px solid var(--line,#e7e7f1);background:#fff;color:#c0143c;font-size:13px;line-height:24px;text-align:center;cursor:pointer;box-shadow:var(--shadow-sm,0 12px 34px rgba(16,22,96,.13));display:none}
body.dv-edit .dv-del{display:block}
body.dv-edit .dv-del:hover{background:#c0143c;color:#fff;border-color:#c0143c}
@keyframes navdrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
/* Leeggemaakt tekstveld in bewerk-modus: klikbaar "leeg — klik om te vullen"-plekje. */
body.dv-edit .dv-empty{display:inline-block!important;min-width:110px;min-height:1.15em;outline:1.5px dashed var(--violet,#5d43dd);outline-offset:2px;border-radius:6px;vertical-align:middle;cursor:text}
body.dv-edit .dv-empty:not(:focus)::before{content:"leeg — klik om te vullen";display:inline-block;padding:1px 8px;font:700 11px/1.6 var(--sans,system-ui,sans-serif);letter-spacing:0;text-transform:none;color:#fff;background:var(--violet,#5d43dd);border-radius:6px;white-space:nowrap}
#dv-toast{position:fixed;left:50%;bottom:78px;transform:translate(-50%,20px);z-index:1100;background:var(--navy,#101660);color:#fff;padding:12px 20px;border-radius:12px;font-size:13.5px;font-weight:700;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow,0 24px 70px rgba(16,22,96,.13))}
#dv-toast.show{opacity:1;transform:translate(-50%,0)}
#dv-toast.err{background:var(--orange,#fc4a1a)}
.dv-loading{max-width:600px;margin:22vh auto;text-align:center;color:var(--muted,#65677d);font-size:15px}

/* ============ "Wat is de Digitale Voordeur?" — kern-sectie (redesign) ============ */
.dv-kern .ph{display:block}
.dv-kern-top{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;margin-bottom:-18px}
.dv-kern-copy h2{font-size:clamp(2rem,4vw,3rem);line-height:1.06;color:var(--navy);margin:.35rem 0 1.2rem}
.dv-kern-copy .lead{color:var(--muted);font-size:1.08rem;line-height:1.72;max-width:560px;margin:0}
.dv-kern-copy .lead strong{color:var(--navy);font-weight:700}
.dv-kern-figure{display:grid;place-items:center}
.dv-kern-figure img{width:min(100%,540px);height:auto;padding-top:40px}
.dv-kern-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:26px}
.dv-kern-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 24px 28px;box-shadow:0 10px 30px rgba(16,22,96,.06);transition:transform .25s ease,box-shadow .25s ease}
.dv-kern-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm)}
.dv-kern-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.dv-kern-num{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--teal);color:#fff;font-weight:800;font-size:.92rem}
.dv-kern-ic{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:var(--mint);color:var(--teal-deep)}
.dv-kern-ic svg{width:29px;height:29px}
.dv-kern-card h3{font-size:1.18rem;color:var(--navy);line-height:1.2;margin:6px 0 10px}
.dv-kern-card>div,.dv-kern-card p{color:var(--muted);font-size:.93rem;line-height:1.62;margin:0}
.dv-kern-card>div p+p{margin-top:.6em}
.dv-kern-not{background:var(--lav);border:1px solid var(--violet-soft);border-radius:24px;padding:22px 28px;display:flex;align-items:center;gap:18px 34px;flex-wrap:wrap}
.dv-kern-not-head{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.dv-kern-not-x{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--violet);color:#fff;flex:0 0 auto}
.dv-kern-not-x svg{width:24px;height:24px}
.dv-kern-not-head p{margin:0;font-weight:800;color:var(--navy);line-height:1.25;font-size:1.02rem}
.dv-kern-not-items{display:flex;gap:16px 30px;flex-wrap:wrap;flex:1 1 auto}
.dv-kern-not-item{display:flex;align-items:center;gap:12px}
.dv-kern-not-ic{position:relative;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;color:var(--violet);flex:0 0 auto}
.dv-kern-not-ic>svg{width:24px;height:24px}
.dv-kern-not-ic .dv-x{position:absolute;right:-3px;bottom:-3px;width:19px;height:19px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;border:2px solid var(--lav)}
.dv-kern-not-ic .dv-x svg{width:10px;height:10px}
.dv-kern-not-item>span{color:#57566e;font-size:.9rem;line-height:1.3;max-width:160px}
@media (max-width:960px){
  .dv-kern-top{grid-template-columns:1fr;gap:34px}
  .dv-kern-figure{min-height:auto}
  .dv-kern-cards{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .dv-kern-cards{grid-template-columns:1fr}
  .dv-kern-not{gap:16px}
  .dv-kern-not-items{flex-direction:column;gap:14px}
  .dv-kern-not-item>span{max-width:none}
}


/* ============ FAQ pull-quotes — mint paneel met groot aanhalingsteken ============ */
.faq-section blockquote{position:relative;margin:20px 0 6px;padding:22px 130px 22px 60px;background:linear-gradient(100deg,#e3f5f3 0%,#f4fbfa 62%);border-left:4px solid var(--teal);border-radius:0 18px 18px 0;color:#2b6a6a;font-style:italic;font-size:1.02rem;line-height:1.72;overflow:hidden}
.faq-section blockquote::before{content:"\201C";position:absolute;left:18px;top:8px;font:800 3.6rem/1 Georgia,"Times New Roman",serif;color:var(--teal);opacity:.85}
.faq-section blockquote::after{content:"";position:absolute;right:22px;top:50%;transform:translateY(-50%);width:118px;height:64px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22%230e7c80%22%3E%3Cpath%20d%3D%22M244.8%2C150.4a8%2C8%2C0%2C0%2C1-11.2-1.6A51.6%2C51.6%2C0%2C0%2C0%2C192%2C128a8%2C8%2C0%2C0%2C1-7.37-4.89%2C8%2C8%2C0%2C0%2C1%2C0-6.22A8%2C8%2C0%2C0%2C1%2C192%2C112a24%2C24%2C0%2C1%2C0-23.24-30%2C8%2C8%2C0%2C1%2C1-15.5-4A40%2C40%2C0%2C1%2C1%2C219%2C117.51a67.94%2C67.94%2C0%2C0%2C1%2C27.43%2C21.68A8%2C8%2C0%2C0%2C1%2C244.8%2C150.4ZM190.92%2C212a8%2C8%2C0%2C1%2C1-13.84%2C8%2C57%2C57%2C0%2C0%2C0-98.16%2C0%2C8%2C8%2C0%2C1%2C1-13.84-8%2C72.06%2C72.06%2C0%2C0%2C1%2C33.74-29.92%2C48%2C48%2C0%2C1%2C1%2C58.36%2C0A72.06%2C72.06%2C0%2C0%2C1%2C190.92%2C212ZM128%2C176a32%2C32%2C0%2C1%2C0-32-32A32%2C32%2C0%2C0%2C0%2C128%2C176ZM72%2C120a8%2C8%2C0%2C0%2C0-8-8A24%2C24%2C0%2C1%2C1%2C87.24%2C82a8%2C8%2C0%2C1%2C0%2C15.5-4A40%2C40%2C0%2C1%2C0%2C37%2C117.51%2C67.94%2C67.94%2C0%2C0%2C0%2C9.6%2C139.19a8%2C8%2C0%2C1%2C0%2C12.8%2C9.61A51.6%2C51.6%2C0%2C0%2C1%2C64%2C128%2C8%2C8%2C0%2C0%2C0%2C72%2C120Z%22%2F%3E%3C%2Fsvg%3E") no-repeat right center/contain;opacity:.15;pointer-events:none}
@media (max-width:600px){.faq-section blockquote{padding:20px 22px 20px 52px}.faq-section blockquote::after{display:none}}


/* ============================================================================
   Master-pagina — de elf dossier-secties.
   Overgenomen uit Digitale_Voordeur_Zoetermeer_Master_v1.8.html; dezelfde
   designvariabelen als hierboven, dus de vormgeving sluit één op één aan.
   Alleen op /master in gebruik: de landingspagina en /regiegroep raken deze
   klassen niet aan.
   ========================================================================= */
.dvx-intro{background:linear-gradient(145deg,var(--navy-deep),#171967);color:#fff;overflow:hidden}
.dvx-intro:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:52px 52px;opacity:.55}
.dvx-intro:after{content:"";position:absolute;width:520px;height:520px;border:90px solid rgba(0,190,194,.08);border-radius:50%;right:-260px;bottom:-330px}
.dvx-intro-grid{position:relative;z-index:2;display:grid;grid-template-columns:.82fr 1.18fr;gap:64px;align-items:start}
.dvx-intro h2{color:#fff;max-width:620px}
.dvx-intro p{color:rgba(255,255,255,.7);max-width:610px;font-size:1.05rem}
.dvx-intro-note{margin-top:28px;padding:18px 20px;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);display:grid;gap:4px}
.dvx-intro-note b{color:#7cebe6}
.dvx-intro-note span{color:rgba(255,255,255,.61);font-size:.82rem}
.dvx-index{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dvx-index a{min-height:74px;padding:14px 15px;border-radius:17px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.075);display:grid;grid-template-columns:39px 1fr 16px;align-items:center;gap:12px;transition:.2s ease}
.dvx-index a:hover{transform:translateY(-3px);background:rgba(255,255,255,.12);border-color:rgba(124,235,230,.38)}
.dvx-index span{width:38px;height:38px;border-radius:12px;background:rgba(0,190,194,.17);display:grid;place-items:center;color:#7cebe6;font-size:.72rem;font-weight:900}
.dvx-index b{color:#fff;font-size:.79rem;line-height:1.25}
.dvx-index i{width:8px;height:8px;border-top:2px solid #79e8e3;border-right:2px solid #79e8e3;transform:rotate(45deg)}
.dvx-section{--dvx-accent:var(--teal);--dvx-soft:var(--mint);background:var(--paper);overflow:hidden}
.dvx-section:nth-of-type(even){background:#fff}
.dvx-section .wrap{position:relative}
.dvx-head{display:grid;grid-template-columns:110px minmax(0,820px);gap:28px;align-items:start;margin-bottom:50px}
.dvx-head-index{display:flex;align-items:center;gap:13px;padding-top:11px}
.dvx-head-index span{font-weight:900;color:var(--navy);font-size:.74rem;letter-spacing:.08em}
.dvx-head-index i{height:3px;flex:1;max-width:52px;background:var(--dvx-accent);border-radius:999px}
.dvx-head-copy h2{max-width:900px}
.dvx-head-copy .lead{max-width:820px}
.dvx-head-note{margin-top:14px;padding:14px 17px;border-left:3px solid var(--dvx-accent);background:color-mix(in srgb,var(--dvx-soft) 62%,white);border-radius:0 14px 14px 0}
.dvx-head-note p{margin:0;color:var(--muted);font-size:.82rem}
.dvx-statement{margin:0 0 26px;border-radius:24px;padding:25px 28px 25px 32px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);position:relative}
.dvx-statement:before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:4px;border-radius:0 999px 999px 0;background:var(--dvx-accent)}
.dvx-statement strong{color:var(--navy)}
.dvx-statement p:last-child,.dvx-statement div:last-child{margin-bottom:0}
.dvx-statement.dvx-decision,.dvx-statement.dvx-core-decision,.dvx-statement.dvx-business-case{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:var(--shadow)}
.dvx-statement.dvx-decision:before,.dvx-statement.dvx-core-decision:before,.dvx-statement.dvx-business-case:before{background:var(--teal)}
.dvx-statement.dvx-decision strong,.dvx-statement.dvx-core-decision strong,.dvx-statement.dvx-business-case strong{color:#7cebe6}
.dvx-statement.dvx-decision div,.dvx-statement.dvx-core-decision div,.dvx-statement.dvx-business-case div{color:rgba(255,255,255,.75)}
.dvx-block{background:#fff;border:1px solid var(--line);border-radius:27px;padding:31px 32px;box-shadow:var(--shadow-sm);margin-bottom:22px}
.dvx-block>h3{font-size:1.42rem;margin-bottom:18px}
.dvx-block-body{color:var(--muted)}
.dvx-block-body p:last-child,.dvx-block-body ul:last-child{margin-bottom:0}
.dvx-small{font-size:.8rem;color:var(--muted)}
.dvx-clean{padding-left:0;list-style:none;display:grid;gap:10px}
.dvx-clean li{position:relative;padding-left:23px}
.dvx-clean li:before{content:"";position:absolute;left:0;top:.67em;width:8px;height:8px;border-radius:50%;background:var(--dvx-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--dvx-accent) 14%,transparent)}
.dvx-split{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}
.dvx-split-card{border-radius:27px;padding:30px 31px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.dvx-split-card:nth-child(2){background:var(--dvx-soft);border-color:color-mix(in srgb,var(--dvx-accent) 18%,white)}
.dvx-split-card h3{font-size:1.35rem}
.dvx-split-card p,.dvx-split-card li{color:var(--muted)}
.dvx-data{margin:24px 0;border:1px solid var(--line);border-radius:27px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}
.dvx-data-head{padding:26px 28px 20px;border-bottom:1px solid var(--line)}
.dvx-data-head h3{font-size:1.35rem;margin-bottom:8px}
.dvx-data-head p{font-size:.9rem;color:var(--muted)}
.dvx-table-scroll{overflow-x:auto}
.dvx-table{width:100%;border-collapse:collapse;min-width:760px;font-size:.86rem}
.dvx-table th,.dvx-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.dvx-table th{font-size:.71rem;text-transform:uppercase;letter-spacing:.055em;color:var(--navy);background:var(--dvx-soft)}
.dvx-table tr:last-child td{border-bottom:0}
.dvx-table td:first-child{color:var(--navy);font-weight:700}
.dvx-timeline-shell{margin:26px 0 24px;border-radius:30px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);padding:31px}
.dvx-timeline-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}
.dvx-timeline-title h3{font-size:1.45rem;margin:0}
.dvx-timeline-title span{font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep)}
.dvx-timeline-evidence{margin:0 0 28px}
.dvx-timeline-evidence .dvx-figure{max-width:920px;margin:0 auto}
.dvx-timeline{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0 52px}
.dvx-timeline:before{content:"";position:absolute;top:5px;bottom:10px;left:50%;width:2px;background:linear-gradient(var(--teal),var(--violet))}
.dvx-timeline-item{position:relative;padding:0 35px 30px 0;text-align:right}
.dvx-timeline-item:nth-child(even){grid-column:2;padding:0 0 30px 35px;text-align:left}
.dvx-timeline-dot{position:absolute;right:-8px;top:6px;width:15px;height:15px;border-radius:50%;background:#fff;border:4px solid var(--teal);z-index:2}
.dvx-timeline-item:nth-child(even) .dvx-timeline-dot{right:auto;left:-7px}
.dvx-timeline-item.is-future .dvx-timeline-dot{border-color:var(--violet)}
.dvx-timeline time{display:block;color:var(--navy);font-size:.78rem;font-weight:850;margin-bottom:5px}
.dvx-timeline p{font-size:.86rem;color:var(--muted);margin:0}
.dvx-figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:22px;padding:9px;box-shadow:var(--shadow-sm)}
.dvx-source-image{width:100%;border-radius:15px;display:block}
.dvx-figure figcaption{font-size:.68rem;color:var(--muted);padding:9px 8px 5px}
.dvx-evidence-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:3px 0 24px}
.dvx-media-block>.dvx-block-body>.dvx-source-image{margin:18px 0;border-radius:18px}
.dvx-architecture{--dvx-accent:var(--violet);--dvx-soft:var(--lav);background:linear-gradient(180deg,#f6f6fc,#fff)}
.dvx-architecture-stack{margin:28px 0;border-radius:31px;padding:34px;background:var(--navy);box-shadow:var(--shadow);color:#fff;display:grid;grid-template-columns:1.05fr repeat(3,1fr);gap:12px;align-items:stretch}
.dvx-stack-title{padding:8px 20px 8px 2px;display:flex;flex-direction:column;justify-content:center}
.dvx-stack-title h3{color:#fff;font-size:1.55rem}
.dvx-stack-title p{color:rgba(255,255,255,.62);font-size:.86rem}
.dvx-architecture-stack article{padding:22px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.dvx-architecture-stack article span{color:#7cebe6;font-size:.68rem;font-weight:900}
.dvx-architecture-stack article h3{color:#fff;font-size:1rem;margin:20px 0 9px}
.dvx-architecture-stack article li{color:rgba(255,255,255,.65);font-size:.78rem}
.dvx-questions .dvx-clean{grid-template-columns:1fr 1fr;gap:12px 24px}
.dvx-questions .dvx-clean li{padding:13px 13px 13px 35px;background:#f7f7fb;border-radius:13px}
.dvx-questions .dvx-clean li:before{left:14px}
.dvx-vision{--dvx-accent:var(--teal);--dvx-soft:var(--mint)}
.dvx-feature-split .dvx-split-card:first-child{background:var(--navy);border-color:var(--navy)}
.dvx-feature-split .dvx-split-card:first-child h3{color:#fff}
.dvx-feature-split .dvx-split-card:first-child p{color:rgba(255,255,255,.7)}
.dvx-scope{background:linear-gradient(135deg,#fff,var(--mint))}
.dvx-scope .dvx-clean{grid-template-columns:repeat(3,1fr)}
.dvx-principles{--dvx-accent:var(--orange);--dvx-soft:var(--peach);background:#fff}
.dvx-principle-hero{background:var(--navy);border-color:var(--navy);color:#fff}
.dvx-principle-hero h3{color:#fff}
.dvx-principle-hero .dvx-block-body{color:rgba(255,255,255,.7)}
.dvx-tradeoff-split .dvx-split-card:nth-child(2){background:var(--lav)}
.dvx-risk-shell{margin-top:26px}
.dvx-risk-shell>h3{font-size:1.45rem;margin-bottom:18px}
.dvx-risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.dvx-risk-grid article{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;box-shadow:0 8px 22px rgba(16,22,96,.055)}
.dvx-risk-grid article span{display:block;color:var(--orange);font-size:.7rem;font-weight:900;margin-bottom:18px}
.dvx-risk-grid article p{margin:0;color:var(--muted);font-size:.84rem}
.dvx-risk-grid article li{list-style:none}
.dvx-gov-program{--dvx-accent:var(--violet);--dvx-soft:var(--lav);background:linear-gradient(180deg,#f7f7fc,#fff)}
.dvx-program-map{padding:32px}
.dvx-program-map .dvx-source-stack{display:grid;gap:10px}
.dvx-program-map .dvx-source-layer{padding:18px 20px;border-radius:16px;background:#f7f7fb;border:1px solid var(--line)}
.dvx-program-map .dvx-source-layer:nth-child(2),.dvx-program-map .dvx-source-layer:nth-child(4){margin-left:44px}
.dvx-team-split .dvx-split-card:first-child{border-top:4px solid var(--violet)}
.dvx-team-split .dvx-split-card:nth-child(2){border-top:4px solid var(--teal)}
.dvx-mandate{border-left:5px solid var(--violet)}
.dvx-gov-platform{--dvx-accent:var(--teal);--dvx-soft:var(--mint)}
.dvx-governance-layers{display:grid;gap:11px;margin-top:26px}
.dvx-governance-layers article{display:grid;grid-template-columns:55px 1fr;gap:17px;border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px 23px;box-shadow:0 7px 20px rgba(16,22,96,.05)}
.dvx-governance-layers article>span{width:48px;height:48px;border-radius:15px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:900}
.dvx-governance-layers h3{font-size:1.03rem;margin:1px 0 7px}
.dvx-governance-layers .dvx-source-role,.dvx-governance-layers .dvx-source-who{font-size:.78rem;color:var(--teal-deep);font-weight:800}
.dvx-governance-layers p{font-size:.84rem;color:var(--muted);margin:0}
.dvx-roadmap-detail{--dvx-accent:var(--teal);--dvx-soft:var(--mint);background:#f8f9fd}
.dvx-phase-summary{background:linear-gradient(135deg,var(--navy),#25217f);border-color:var(--navy);color:#fff}
.dvx-phase-summary h3{color:#fff}
.dvx-phase-summary .dvx-block-body{color:rgba(255,255,255,.7)}
.dvx-phase-summary .dvx-source-grid-3{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.dvx-phase-summary .dvx-source-grid-3>div{padding:18px;border-radius:16px;background:rgba(255,255,255,.08)}
.dvx-phase-summary h4{color:#7cebe6;font-size:.86rem}
.dvx-phase-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}
.dvx-phase-card{border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}
.dvx-phase-card summary{cursor:pointer;list-style:none;padding:22px 52px 22px 24px;color:var(--navy);font-weight:850;position:relative}
.dvx-phase-card summary::-webkit-details-marker{display:none}
.dvx-phase-card summary i:before,.dvx-phase-card summary i:after{content:"";position:absolute;right:24px;top:31px;width:14px;height:2px;background:var(--navy)}
.dvx-phase-card summary i:after{transform:rotate(90deg);transition:.2s}
.dvx-phase-card[open] summary i:after{transform:none}
.dvx-phase-body{padding:0 24px 23px;color:var(--muted)}
.dvx-phase-body .dvx-source-image{margin:18px 0;border-radius:17px}
.dvx-governance-gate{border-top:5px solid var(--violet)}
.dvx-finance{--dvx-accent:var(--yellow);--dvx-soft:#fff8db;background:linear-gradient(180deg,#fffdf5,#fff)}
.dvx-cost-compare .dvx-table th{background:#fff8db}
.dvx-finance-answer{border-top:5px solid var(--teal)}
.dvx-regie{--dvx-accent:var(--violet);--dvx-soft:var(--lav);background:#f7f7fb}
.dvx-question-list{display:grid;gap:14px}
.dvx-question-card{display:grid;grid-template-columns:74px 1fr;gap:25px;padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:25px;box-shadow:var(--shadow-sm)}
.dvx-question-card>span{width:58px;height:58px;border-radius:18px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900;font-size:.75rem}
.dvx-question-card h3{font-size:1.3rem;margin-bottom:14px}
.dvx-question-card p,.dvx-question-card li{color:var(--muted);font-size:.9rem}
.dvx-question-card:nth-child(even)>span{background:var(--teal-deep)}
.dvx-future{--dvx-accent:var(--teal);--dvx-soft:var(--mint);background:linear-gradient(145deg,#080b3f,#171967);color:#fff}
.dvx-future .dvx-head h2{color:#fff}
.dvx-future .dvx-head .lead{color:rgba(255,255,255,.65)}
.dvx-future .dvx-head-index span{color:#fff}
.dvx-future .dvx-split-card,.dvx-future .dvx-block,.dvx-future .dvx-data{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.13);box-shadow:none}
.dvx-future .dvx-split-card h3,.dvx-future .dvx-block h3,.dvx-future .dvx-data h3{color:#fff}
.dvx-future .dvx-split-card p,.dvx-future .dvx-split-card li,.dvx-future .dvx-block-body,.dvx-future .dvx-data-head p{color:rgba(255,255,255,.65)}
.dvx-future .dvx-table th{background:rgba(0,190,194,.16);color:#fff}
.dvx-future .dvx-table td{border-color:rgba(255,255,255,.1);color:rgba(255,255,255,.67)}
.dvx-future .dvx-table td:first-child{color:#fff}
.dvx-future .dvx-statement{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);box-shadow:none}
.dvx-future .dvx-statement strong{color:#7cebe6}
.dvx-future .dvx-statement div{color:rgba(255,255,255,.7)}
.dvx-open{--dvx-accent:var(--orange);--dvx-soft:var(--peach);background:#fff}
.dvx-issues{display:grid;gap:10px}
.dvx-issue{display:grid;grid-template-columns:140px 1fr;align-items:start;gap:22px;padding:20px 23px;border:1px solid var(--line);background:#fff;border-radius:19px;box-shadow:0 7px 20px rgba(16,22,96,.045)}
.dvx-issue>span{display:inline-flex;justify-content:center;padding:7px 10px;border-radius:999px;font-size:.67rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;background:#fff4e6;color:#9d5b18}
.dvx-issue.is-decision>span{background:#fbe9ec;color:#a33a4d}
.dvx-issue.is-done>span{background:#e3f3ec;color:#1f6f52}
.dvx-issue p{margin:2px 0 0;color:var(--muted);font-size:.9rem}
.dvx-status{display:inline-block;border-radius:999px;padding:5px 9px;font-size:.65rem;font-weight:850;margin-right:8px}
.dvx-status.is-open{background:#fff4e6;color:#9d5b18}
.dvx-status.is-decision{background:#fbe9ec;color:#a33a4d}
.dvx-status.is-done{background:#e3f3ec;color:#1f6f52}
.dvx-source-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dvx-source-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.dvx-formulation{margin-top:14px;padding:15px 17px;border-left:3px solid var(--teal);background:var(--mint);border-radius:0 14px 14px 0;color:var(--navy);font-size:.86rem}
.dvx-placeholder{padding:20px;border:1px dashed #b9dede;border-radius:18px;background:var(--mint)}
@media(max-width:1040px){
  .dvx-intro-grid{grid-template-columns:1fr}
  .dvx-head{grid-template-columns:86px 1fr}
  .dvx-architecture-stack{grid-template-columns:1fr 1fr}
  .dvx-stack-title{grid-column:1/-1}
  .dvx-risk-grid{grid-template-columns:1fr 1fr}
  .dvx-phase-summary .dvx-source-grid-3{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .dvx-source-grid-2,.dvx-source-grid-3{grid-template-columns:1fr}
  .dvx-index,.dvx-split,.dvx-phase-grid,.dvx-evidence-gallery{grid-template-columns:1fr}
  .dvx-head{grid-template-columns:1fr;gap:8px;margin-bottom:35px}
  .dvx-head-index{max-width:110px}
  .dvx-timeline{grid-template-columns:1fr;padding-left:25px}
  .dvx-timeline:before{left:6px}
  .dvx-timeline-item,.dvx-timeline-item:nth-child(even){grid-column:1;padding:0 0 25px 25px;text-align:left}
  .dvx-timeline-dot,.dvx-timeline-item:nth-child(even) .dvx-timeline-dot{left:-25px;right:auto}
  .dvx-architecture-stack,.dvx-risk-grid,.dvx-scope .dvx-clean,.dvx-phase-summary .dvx-source-grid-3{grid-template-columns:1fr}
  .dvx-question-card{grid-template-columns:1fr;gap:15px}
  .dvx-issue{grid-template-columns:1fr;gap:10px}
  .dvx-questions .dvx-clean{grid-template-columns:1fr}
  .dvx-program-map .dvx-source-layer:nth-child(2),.dvx-program-map .dvx-source-layer:nth-child(4){margin-left:0}
}
@media(max-width:520px){
  .dvx-intro-grid{gap:38px}
  .dvx-index{grid-template-columns:1fr}
  .dvx-block,.dvx-split-card,.dvx-timeline-shell,.dvx-question-card{padding:23px 21px}
  .dvx-data-head{padding:22px 20px}
  .dvx-governance-layers article{grid-template-columns:1fr}
  .dvx-architecture-stack{padding:22px}
  .dvx-timeline-title{align-items:flex-start;flex-direction:column}
  .dvx-issue>span{justify-self:start}
}
.dvx-section{font-family:var(--sans)}
.dvx-section p,.dvx-section li,.dvx-section td,.dvx-section th,.dvx-section div{font-family:var(--sans)}
.dvx-head{display:block;max-width:920px;margin-bottom:48px}
.dvx-head-copy{max-width:920px}
.dvx-head-copy>.eyebrow{margin-bottom:1.05rem}
.dvx-head-copy h2{margin-bottom:1.15rem}
.dvx-head-copy .lead{line-height:1.65}
.dvx-section-card-head{padding:28px 30px 22px;border-bottom:1px solid var(--line)}
.dvx-section-card-head .dvx-kicker,.dvx-kicker{display:block;color:var(--teal-deep);font-size:.7rem;font-weight:850;letter-spacing:.085em;text-transform:uppercase;margin-bottom:9px}
.dvx-section-card-head h3{font-size:1.42rem;margin:0 0 8px}
.dvx-section-card-head p{margin:0;color:var(--muted);font-size:.9rem;max-width:760px}
.dvx-table-scroll{width:100%;overflow-x:auto;padding:0 0 3px}
.dvx-table{display:table;width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:.88rem;line-height:1.55}
.dvx-table th,.dvx-table td{padding:17px 20px;border-bottom:1px solid var(--line);vertical-align:top}
.dvx-table th{background:var(--dvx-soft);color:var(--navy);font-size:.72rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}
.dvx-table th:first-child{border-radius:0}
.dvx-table th:last-child{border-radius:0}
.dvx-table td{color:var(--muted);background:#fff}
.dvx-table tbody tr:hover td{background:#fbfbfe}
.dvx-table tr:last-child td{border-bottom:0}
.dvx-table td:first-child{font-weight:800;color:var(--navy);width:23%}
.dvx-future .dvx-table td{background:transparent}
.dvx-compare-block,.dvx-tradeoff-block,.dvx-role-block,.dvx-decision-block,.dvx-cost-block,.dvx-stakeholder-block{margin:24px 0;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}
.dvx-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.dvx-compare-card{padding:28px 30px 30px;position:relative}
.dvx-compare-card+ .dvx-compare-card{border-left:1px solid var(--line)}
.dvx-compare-card.mees{background:linear-gradient(145deg,#fff,var(--lav))}
.dvx-compare-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:23px}
.dvx-compare-top h4{font-size:1.18rem;color:var(--navy);margin:0}
.dvx-compare-top span{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:var(--mint);color:var(--teal-deep);font-size:.66rem;font-weight:850}
.dvx-compare-card.mees .dvx-compare-top span{background:#e8e4fb;color:var(--violet)}
.dvx-compare-part{padding-top:18px;border-top:1px solid var(--line)}
.dvx-compare-part+.dvx-compare-part{margin-top:20px}
.dvx-compare-part>b{display:block;color:var(--navy);font-size:.78rem;margin-bottom:10px}
.dvx-compact-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.dvx-compact-list li{position:relative;padding-left:18px;color:var(--muted);font-size:.84rem}
.dvx-compact-list li:before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--teal)}
.dvx-compare-part.is-open .dvx-compact-list li:before{background:var(--orange)}
.dvx-tradeoff-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px}
.dvx-tradeoff-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.dvx-tradeoff-card h4{font-size:1.03rem;margin:0 0 17px;color:var(--navy)}
.dvx-tradeoff-side{padding:14px 15px;border-radius:14px;background:var(--mint)}
.dvx-tradeoff-side+.dvx-tradeoff-side{margin-top:9px}
.dvx-tradeoff-side.is-minus{background:var(--peach)}
.dvx-tradeoff-side span{display:block;font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--teal-deep);margin-bottom:5px}
.dvx-tradeoff-side.is-minus span{color:#bb431f}
.dvx-tradeoff-side p{margin:0;color:#51566d;font-size:.82rem}
.dvx-risk-grid article{padding:23px 22px 24px}
.dvx-risk-grid article>span{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:10px;background:var(--peach);margin-bottom:20px}
.dvx-risk-grid h4{font-size:1rem;color:var(--navy);margin:0 0 8px}
.dvx-risk-grid article p{line-height:1.58}
.dvx-program-map .dvx-source-layer{padding:20px 22px}
.dvx-program-map .dvx-source-who{display:block;color:var(--teal-deep);font-size:.68rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;margin-bottom:6px}
.dvx-program-map .dvx-source-role{font-size:1.05rem;color:var(--navy);margin:0 0 7px;line-height:1.3}
.dvx-program-map .dvx-source-layer p{margin:0;line-height:1.55}
.dvx-role-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}
.dvx-role-card{padding:23px 26px;background:#fff}
.dvx-role-card h4{font-size:1rem;color:var(--navy);margin:0 0 7px}
.dvx-role-card p{font-size:.84rem;color:var(--muted);margin:0;line-height:1.55}
.dvx-decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:22px}
.dvx-decision-card{padding:22px;border:1px solid var(--line);border-radius:19px;background:#fff}
.dvx-decision-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:16px}
.dvx-decision-meta span{font-size:.75rem;font-weight:850;color:var(--navy)}
.dvx-decision-meta time{font-size:.66rem;color:var(--muted);padding:5px 8px;border-radius:999px;background:#f3f3f8;white-space:nowrap}
.dvx-decision-card p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.58}
.dvx-governance-layers article{grid-template-columns:44px 1fr;padding:21px 23px}
.dvx-governance-layers article>span{width:36px;height:36px;border-radius:12px;background:var(--mint);color:var(--teal-deep)}
.dvx-governance-layers h3{font-size:1.08rem;margin:0 0 6px}
.dvx-layer-responsibility{font-size:.84rem!important;color:var(--muted)!important;margin:0 0 7px!important;line-height:1.5}
.dvx-governance-layers .dvx-small{padding-top:8px;border-top:1px solid var(--line)}
.dvx-phase-summary{padding:32px 34px}
.dvx-phase-summary .dvx-source-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dvx-phase-summary .dvx-source-grid-2>div{padding:20px;border-radius:17px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.09)}
.dvx-phase-summary h4{color:#78ebe6;font-size:.92rem;margin:0 0 9px}
.dvx-phase-summary .dvx-small{color:rgba(255,255,255,.68);margin:0;line-height:1.55}
.dvx-cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px}
.dvx-cost-card{padding:27px;border:1px solid var(--line);border-radius:22px;background:#fff}
.dvx-cost-card.is-platform{background:linear-gradient(145deg,var(--navy),#28238a);border-color:var(--navy);color:#fff}
.dvx-cost-route{font-size:.67rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:var(--teal-deep)}
.dvx-cost-card.is-platform .dvx-cost-route{color:#77e9e4}
.dvx-cost-card h4{font-size:1.22rem;margin:10px 0 17px;color:var(--navy)}
.dvx-cost-card.is-platform h4{color:#fff}
.dvx-cost-amount{display:block;font-size:1.05rem;line-height:1.45;color:var(--navy);padding:16px 17px;border-radius:15px;background:var(--mint);margin-bottom:20px}
.dvx-cost-card.is-platform .dvx-cost-amount{color:#fff;background:rgba(255,255,255,.11)}
.dvx-cost-detail{padding-top:16px;border-top:1px solid var(--line)}
.dvx-cost-detail+.dvx-cost-detail{margin-top:15px}
.dvx-cost-card.is-platform .dvx-cost-detail{border-color:rgba(255,255,255,.13)}
.dvx-cost-detail b{display:block;font-size:.76rem;color:var(--teal-deep);margin-bottom:6px}
.dvx-cost-detail.is-attention b{color:var(--orange)}
.dvx-cost-detail p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.58}
.dvx-cost-card.is-platform .dvx-cost-detail p{color:rgba(255,255,255,.68)}
.dvx-future .dvx-stakeholder-block{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.14);box-shadow:none}
.dvx-future .dvx-stakeholder-block .dvx-section-card-head{border-color:rgba(255,255,255,.12)}
.dvx-future .dvx-stakeholder-block h3{color:#fff}
.dvx-stakeholder-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.12)}
.dvx-stakeholder-card{padding:23px 26px;background:rgba(8,11,63,.42)}
.dvx-stakeholder-card h4{font-size:1rem;color:#fff;margin:0 0 7px}
.dvx-stakeholder-card p{font-size:.83rem;color:rgba(255,255,255,.66);margin:0;line-height:1.55}
.dvx-timeline-item{padding-top:1px}
.dvx-timeline h4{font-size:1rem;color:var(--navy);margin:0 0 7px;line-height:1.35}
.dvx-date-chip{display:inline-flex!important;width:auto;color:var(--muted)!important;background:#f2f2f8;border:1px solid var(--line);border-radius:999px;padding:4px 8px;font-size:.65rem!important;font-weight:750!important;margin:0 0 9px!important}
.dvx-timeline p{line-height:1.55}
@media(max-width:960px){
  .dvx-compare-grid,.dvx-role-grid,.dvx-cost-grid,.dvx-stakeholder-grid{grid-template-columns:1fr}
  .dvx-compare-card+.dvx-compare-card{border-left:0;border-top:1px solid var(--line)}
  .dvx-decision-grid{grid-template-columns:1fr}
  .dvx-tradeoff-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .dvx-section-card-head{padding:23px 21px 19px}
  .dvx-compare-card,.dvx-role-card,.dvx-stakeholder-card{padding:22px 21px}
  .dvx-compare-top{flex-direction:column}
  .dvx-phase-summary .dvx-source-grid-2{grid-template-columns:1fr}
  .dvx-cost-grid,.dvx-tradeoff-grid,.dvx-decision-grid{padding:14px}
}
.dvx-future{
  --dvx-accent:var(--teal);
  --dvx-soft:var(--mint);
  background:
    radial-gradient(circle at 88% 12%,rgba(0,190,194,.11),transparent 25%),
    linear-gradient(180deg,#f8f9fd 0%,#fff 100%);
  color:var(--ink);
}
.dvx-future .dvx-head h2{color:var(--navy)}
.dvx-future .dvx-head .lead{color:var(--muted)}
.dvx-future .eyebrow{color:var(--teal-deep)}
.dvx-future-direction{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;margin-bottom:24px}
.dvx-future-direction>article{position:relative;overflow:hidden;border-radius:29px;padding:32px 34px;min-height:310px}
.dvx-future-now{background:linear-gradient(145deg,var(--navy),#29248d);box-shadow:var(--shadow);color:#fff}
.dvx-future-now:after{content:"";position:absolute;width:250px;height:250px;border:55px solid rgba(0,190,194,.12);border-radius:50%;right:-125px;bottom:-145px}
.dvx-future-choice{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.dvx-future-choice:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;background:var(--mint);right:-115px;bottom:-125px;opacity:.75}
.dvx-future-label{display:inline-block;position:relative;z-index:1;font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:27px}
.dvx-future-now .dvx-future-label{color:#79ebe6}
.dvx-future-direction h3{position:relative;z-index:1;font-size:clamp(1.65rem,2.6vw,2.15rem);max-width:510px;margin-bottom:15px}
.dvx-future-now h3{color:#fff}
.dvx-future-direction p{position:relative;z-index:1;color:var(--muted);max-width:600px;margin-bottom:0}
.dvx-future-now p{color:rgba(255,255,255,.72)}
.dvx-future-chips{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.dvx-future-chips span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);font-size:.73rem;font-weight:750;color:#fff}
.dvx-future-question{position:relative;z-index:1;margin-top:24px;padding:16px 18px;border-radius:16px;background:var(--mint);border:1px solid #c9eceb;color:#35505f;font-size:.85rem;font-weight:700;line-height:1.55}
.dvx-future .dvx-stakeholder-block{background:#fff;border-color:var(--line);box-shadow:var(--shadow-sm)}
.dvx-future .dvx-stakeholder-block .dvx-section-card-head{border-color:var(--line)}
.dvx-future .dvx-stakeholder-block h3{color:var(--navy)}
.dvx-future .dvx-stakeholder-block .dvx-section-card-head p{color:var(--muted)}
.dvx-future .dvx-stakeholder-grid{grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.dvx-future .dvx-stakeholder-card{padding:25px 27px;background:#fff;min-height:180px}
.dvx-future .dvx-stakeholder-card:nth-child(2),
.dvx-future .dvx-stakeholder-card:nth-child(4),
.dvx-future .dvx-stakeholder-card:nth-child(6){background:#fbfbfe}
.dvx-future .dvx-stakeholder-card>span{display:block;color:var(--teal-deep);font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;margin-bottom:20px}
.dvx-future .dvx-stakeholder-card h4{color:var(--navy);font-size:1.02rem;margin-bottom:8px}
.dvx-future .dvx-stakeholder-card p{color:var(--muted);font-size:.83rem;line-height:1.58}
.dvx-learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}
.dvx-learning-grid article{padding:30px 31px;border-radius:27px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-sm)}
.dvx-learning-grid article:nth-child(2){background:linear-gradient(145deg,#fff,var(--lav))}
.dvx-learning-grid h3{font-size:1.34rem;margin-bottom:12px}
.dvx-learning-grid p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.65}
.dvx-next-steps{margin-top:24px;border:1px solid var(--line);border-radius:29px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}
.dvx-next-step-list{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.dvx-next-step-list article{position:relative;padding:25px 24px 28px;border-right:1px solid var(--line);min-height:225px}
.dvx-next-step-list article:last-child{border-right:0}
.dvx-next-step-list article:before{content:"";position:absolute;left:24px;right:24px;top:0;height:4px;border-radius:0 0 999px 999px;background:var(--teal)}
.dvx-next-step-list article:nth-child(n+4):before{background:var(--violet)}
.dvx-next-step-list time{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f2f3f8;color:var(--muted);font-size:.64rem;font-weight:800;margin-bottom:22px}
.dvx-next-step-list h4{font-size:1rem;color:var(--navy);margin-bottom:9px;line-height:1.35}
.dvx-next-step-list p{margin:0;color:var(--muted);font-size:.79rem;line-height:1.55}
@media(max-width:1040px){
  .dvx-future .dvx-stakeholder-grid{grid-template-columns:repeat(2,1fr)}
  .dvx-next-step-list{grid-template-columns:1fr 1fr}
  .dvx-next-step-list article{border-bottom:1px solid var(--line)}
  .dvx-next-step-list article:nth-child(even){border-right:0}
  .dvx-next-step-list article:last-child{grid-column:1/-1;border-bottom:0}
}
@media(max-width:760px){
  .dvx-future-direction,.dvx-learning-grid{grid-template-columns:1fr}
  .dvx-future-direction>article{min-height:0;padding:27px 25px}
  .dvx-future .dvx-stakeholder-grid{grid-template-columns:1fr}
  .dvx-future .dvx-stakeholder-card{min-height:0}
  .dvx-next-step-list{grid-template-columns:1fr}
  .dvx-next-step-list article,.dvx-next-step-list article:nth-child(even){border-right:0;border-bottom:1px solid var(--line);min-height:0}
  .dvx-next-step-list article:last-child{grid-column:auto;border-bottom:0}
}

/* Twee regels stonden hier die de klassen van de bron nabouwden op positie —
   één voor de lijsten in een dossier-blok, één voor de eerste alinea van een
   bestuurslaag. Ze kwamen uit de tijd dat de inhoud als rich-text door de editor
   ging, waar een klasse op een lijst of alinea niet bestaat. Sinds het skelet de
   boom van de bron bewaart, staan `dvx-clean`, `dvx-compact-list` en
   `dvx-layer-responsibility` er gewoon op, en deden deze regels twee dingen: het
   werk dubbel, en in acht gevallen het verkeerde — `gap:10px` overschreef de
   8px van `.dvx-compact-list` en de 12/24px van `.dvx-questions .dvx-clean`,
   omdat een keten van klassen zwaarder weegt dan één klasse. */

/* =========================================================
   De vier storyline-secties uit master v1.9.
   Letterlijk overgenomen uit het <style id="v1-9-storyline-modules">
   blok van tools/source-master-v1.9.html — niet nagebouwd, want dan
   loopt het uiteen zodra iemand aan één van beide sleutelt.
   De variabelen (--navy, --teal, --line, --paper, …) waren al gelijk.
   ========================================================= */
/* =========================================================
   MASTER v1.9 — vier storyline-modules 18 augustus
   Volledig in bestaande Digitale Voordeur-stijl.
   ========================================================= */
.story-module{position:relative;overflow:hidden}
.story-module .section-head{max-width:900px}
.story-module h2{text-wrap:balance}
.story-module .lead{max-width:850px}
.story-module strong{color:var(--navy)}

/* 1 — aanbod -> vraag */
.story-demand{background:#fff}
.story-demand-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:62px;align-items:start}
.story-demand-copy{position:sticky;top:130px}
.story-demand-copy .lead{margin-bottom:0}
.story-shift{display:grid;grid-template-columns:1fr 52px 1fr;align-items:stretch;gap:14px}
.story-shift-card{border:1px solid var(--line);border-radius:26px;padding:29px 28px;background:var(--paper);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}
.story-shift-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#d7d8e3}
.story-shift-card.future{background:linear-gradient(145deg,#effafa,#fff);border-color:#cbeceb}
.story-shift-card.future:before{background:var(--teal)}
.story-shift-label{display:block;font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:17px}
.story-shift-card.future .story-shift-label{color:var(--teal-deep)}
.story-shift-card h3{font-size:1.45rem;line-height:1.12;margin-bottom:14px}
.story-shift-card p{font-size:.92rem;color:var(--muted);margin-bottom:18px}
.story-shift-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.story-shift-list li{position:relative;padding-left:19px;font-size:.85rem;color:#50546b}
.story-shift-list li:before{content:"";position:absolute;left:0;top:.63em;width:7px;height:7px;border-radius:50%;background:#c1c3d2}
.story-shift-card.future .story-shift-list li:before{background:var(--teal)}
.story-shift-arrow{display:grid;place-items:center;align-self:center;width:48px;height:48px;border-radius:50%;background:var(--navy);color:white;font-size:1.35rem;font-weight:850;box-shadow:0 12px 28px rgba(16,22,96,.18)}
.story-question-levels{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.story-question-level{border:1px solid var(--line);border-radius:22px;padding:23px 24px;background:white}
.story-question-level span{display:inline-block;font-size:.69rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:13px}
.story-question-level:nth-child(2) span{color:var(--violet)}
.story-question-level h3{font-size:1.16rem;margin-bottom:8px}
.story-question-level p{font-size:.84rem;color:var(--muted);margin:0}
.story-demand-keyline{margin-top:24px;border-radius:20px;background:var(--navy);color:white;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.story-demand-keyline b{color:#7debe6;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.story-demand-keyline span{font-size:.92rem;color:rgba(255,255,255,.76)}

/* 2 — verschillende mensen, dezelfde informatieopgave */
.story-people{background:linear-gradient(180deg,#f7f8fc 0%,#fbfbfe 100%)}
.story-personas{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.story-persona{background:white;border:1px solid var(--line);border-radius:27px;padding:27px;box-shadow:var(--shadow-sm);min-height:355px;position:relative;overflow:hidden}
.story-persona:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-95px;bottom:-105px;background:var(--mint);opacity:.55}
.story-persona.mantel:after{background:var(--lav)}
.story-persona.pro:after{background:var(--peach)}
.story-persona-role{display:inline-flex;align-items:center;gap:9px;font-size:.7rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:22px}
.story-persona-role:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px rgba(0,190,194,.1)}
.story-persona.mantel .story-persona-role{color:var(--violet)}
.story-persona.mantel .story-persona-role:before{background:var(--violet);box-shadow:0 0 0 5px rgba(93,67,221,.1)}
.story-persona.pro .story-persona-role{color:#c94620}
.story-persona.pro .story-persona-role:before{background:var(--orange);box-shadow:0 0 0 5px rgba(252,74,26,.1)}
.story-persona blockquote{margin:0 0 22px;padding:0;border:0;color:var(--navy);font-size:1.34rem;font-weight:800;line-height:1.28;letter-spacing:-.025em;position:relative;z-index:1}
.story-persona p{font-size:.9rem;color:var(--muted);margin-bottom:16px;position:relative;z-index:1}
.story-persona ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;position:relative;z-index:1}
.story-persona li{font-size:.82rem;color:#50546b;padding-left:18px;position:relative}
.story-persona li:before{content:"";position:absolute;left:0;top:.61em;width:6px;height:6px;border-radius:50%;background:var(--teal)}
.story-persona.mantel li:before{background:var(--violet)}
.story-persona.pro li:before{background:var(--orange)}
.story-common-task{margin-top:22px;border:1px solid #cdeceb;border-radius:25px;background:linear-gradient(110deg,#eaf9f8,#fff);padding:25px 28px;display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center}
.story-common-task strong{font-size:1.08rem;line-height:1.25}
.story-common-questions{display:flex;gap:9px;flex-wrap:wrap}
.story-common-questions span{padding:9px 12px;border-radius:999px;background:white;border:1px solid #d9ecec;color:#4d5368;font-size:.78rem;font-weight:700}
.story-common-note{grid-column:1/-1;margin:0;padding-top:14px;border-top:1px solid rgba(0,143,148,.14);color:var(--muted);font-size:.82rem}

/* 3 — huidige zoektocht */
.story-search{background:linear-gradient(145deg,#080b3f 0%,#101660 66%,#19186d 100%);color:white}
.story-search:before{content:"";position:absolute;inset:0;opacity:.32;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:52px 52px}
.story-search .wrap{position:relative;z-index:2}
.story-search h2{color:white}
.story-search .lead{color:rgba(255,255,255,.68)}
.story-search .eyebrow{color:#75e8e3}
.story-search-case{display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;align-items:stretch}
.story-case-intro{border:1px solid rgba(255,255,255,.14);border-radius:28px;background:rgba(255,255,255,.075);backdrop-filter:blur(11px);padding:30px}
.story-case-intro span{display:block;color:#76e7e2;font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}
.story-case-intro h3{color:white;font-size:1.85rem;line-height:1.12;margin-bottom:15px}
.story-case-intro p{color:rgba(255,255,255,.68);font-size:.94rem;margin:0}
.story-search-path{display:grid;gap:12px}
.story-search-step{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:start;border-radius:21px;padding:20px 22px;background:white;color:var(--ink);box-shadow:0 12px 34px rgba(2,5,38,.22)}
.story-search-step>span{font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-deep);padding-top:2px}
.story-search-step h3{font-size:1.04rem;margin:0 0 5px}
.story-search-step p{font-size:.82rem;color:var(--muted);margin:0}
.story-search-step.risk{background:#fff2ed;border:1px solid rgba(252,74,26,.16)}
.story-search-step.risk>span{color:#c5411d}
.story-source-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.story-source-chips b{font-size:.68rem;padding:6px 8px;border-radius:999px;background:#f4f4f9;color:#5d6074;font-weight:700}
.story-search-future{margin-top:22px;border-radius:26px;padding:27px 29px;background:linear-gradient(120deg,#00aeb3,#00c9c7);color:var(--navy-deep);display:grid;grid-template-columns:.48fr 1.52fr;gap:26px;align-items:center;box-shadow:0 20px 50px rgba(0,190,194,.2)}
.story-search-future>div:first-child span{display:block;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;opacity:.72}
.story-search-future>div:first-child strong{font-size:1.22rem;line-height:1.22;color:var(--navy-deep)}
.story-future-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.story-future-flow span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:64px;padding:9px;border-radius:14px;background:rgba(255,255,255,.72);font-size:.74rem;font-weight:750;color:var(--navy)}
.story-search-note{margin-top:15px;color:rgba(255,255,255,.52);font-size:.76rem;max-width:900px}

/* 4 — route naar generieke basis */
.story-route{background:#fff}
.story-route-layout{display:grid;grid-template-columns:.74fr 1.26fr;gap:56px;align-items:start}
.story-route-copy{position:sticky;top:130px}
.story-route-reason{margin-top:24px;border-radius:22px;padding:21px 23px;background:#f4f5fa;border:1px solid var(--line)}
.story-route-reason strong{display:block;font-size:.95rem;margin-bottom:6px}
.story-route-reason p{font-size:.83rem;color:var(--muted);margin:0}
.story-route-timeline{position:relative;padding-left:34px;display:grid;gap:12px}
.story-route-timeline:before{content:"";position:absolute;left:10px;top:18px;bottom:18px;width:2px;background:linear-gradient(var(--teal),#a2ddde 60%,var(--violet))}
.story-route-item{position:relative;border:1px solid var(--line);border-radius:21px;padding:20px 22px;background:white;box-shadow:0 7px 21px rgba(27,24,83,.045)}
.story-route-item:before{content:"";position:absolute;left:-31px;top:26px;width:12px;height:12px;border-radius:50%;background:white;border:3px solid var(--teal);box-shadow:0 0 0 5px white}
.story-route-item:last-child{background:linear-gradient(135deg,#101660,#25217f);border-color:transparent;color:white}
.story-route-item:last-child:before{border-color:var(--violet)}
.story-route-item span{display:block;font-size:.67rem;font-weight:850;letter-spacing:.075em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:7px}
.story-route-item:last-child span{color:#83ece7}
.story-route-item h3{font-size:1.05rem;margin:0 0 5px}
.story-route-item:last-child h3{color:white}
.story-route-item p{font-size:.82rem;color:var(--muted);margin:0}
.story-route-item:last-child p{color:rgba(255,255,255,.68)}
.story-horizon{margin-top:25px;border-radius:28px;background:#eef9f9;border:1px solid #ccebea;padding:29px 31px;display:grid;grid-template-columns:.72fr 1.28fr;gap:36px;align-items:center}
.story-horizon h3{font-size:1.48rem;margin:0}
.story-horizon p{font-size:.9rem;color:#50586b;margin:0}
.story-values{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:16px}
.story-value{border-radius:19px;border:1px solid var(--line);padding:20px 21px;background:white}
.story-value span{display:block;width:34px;height:4px;border-radius:999px;background:var(--teal);margin-bottom:16px}
.story-value:nth-child(2) span{background:var(--violet)}
.story-value:nth-child(3) span{background:var(--orange)}
.story-value strong{display:block;font-size:.94rem;margin-bottom:6px}
.story-value p{font-size:.79rem;color:var(--muted);margin:0}
.story-route-next{margin-top:15px;padding:15px 19px;border-left:4px solid var(--teal);color:#555a70;font-size:.82rem;background:#fafafd;border-radius:0 14px 14px 0}

@media(max-width:1000px){
  .story-demand-grid,.story-route-layout,.story-search-case{grid-template-columns:1fr}
  .story-demand-copy,.story-route-copy{position:static}
  .story-shift{grid-template-columns:1fr 42px 1fr}
  .story-personas{grid-template-columns:1fr 1fr}.story-persona.pro{grid-column:1/-1}
  .story-horizon,.story-search-future{grid-template-columns:1fr}
}
@media(max-width:760px){
  .story-shift{grid-template-columns:1fr}.story-shift-arrow{transform:rotate(90deg);justify-self:center}
  .story-question-levels,.story-personas,.story-values{grid-template-columns:1fr}.story-persona.pro{grid-column:auto}
  .story-common-task{grid-template-columns:1fr;gap:17px}.story-common-note{grid-column:auto}
  .story-search-step{grid-template-columns:1fr;gap:6px}.story-future-flow{grid-template-columns:1fr 1fr}
  .story-route-timeline{padding-left:28px}.story-route-item:before{left:-26px}
}
@media(max-width:520px){
  .story-shift-card,.story-persona,.story-case-intro,.story-horizon{padding:23px 21px}
  .story-demand-keyline{flex-direction:column;align-items:flex-start;gap:7px}
  .story-future-flow{grid-template-columns:1fr}
}


/* =========================================================
   Het toekomstbeeld uit master v1.10 — "Waar we naartoe werken".
   Letterlijk overgenomen uit het <style id="v1-10-future-vision-css">
   blok van tools/source-master-v1.10.html.
   ========================================================= */
/* =========================================================
   V1.10 — toekomstbeeld: Digitale Voordeur + zorgverlener + PGO
   ========================================================= */
.future-vision{
  background:
    radial-gradient(circle at 10% 16%,rgba(0,190,194,.09),transparent 24%),
    radial-gradient(circle at 90% 12%,rgba(93,67,221,.08),transparent 25%),
    linear-gradient(180deg,#fbfbfe 0%,#f5f6fb 100%);
  overflow:hidden;
}
.future-vision .section-head{max-width:910px;margin-bottom:38px}
.future-vision .section-head h2{max-width:860px}
.future-stage{
  position:relative;
  min-height:760px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:34px;
  background:rgba(255,255,255,.78);
  box-shadow:0 26px 70px rgba(16,22,96,.09);
  overflow:hidden;
  isolation:isolate;
}
.future-stage:before{
  content:"";position:absolute;inset:0;z-index:-3;opacity:.44;
  background-image:linear-gradient(rgba(16,22,96,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(16,22,96,.035) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,#000 0%,transparent 94%);
}
.future-connectors{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.future-connectors path{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:7 10}
.future-connectors .from-resident{stroke:rgba(0,174,179,.5)}
.future-connectors .from-provider{stroke:rgba(93,67,221,.46)}
.future-connectors circle{fill:white;stroke-width:3}
.future-connectors .dot-resident{stroke:var(--teal)}
.future-connectors .dot-provider{stroke:var(--violet)}
.future-now-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;position:relative;z-index:2}
.future-domain{
  min-height:355px;
  border-radius:27px;
  padding:28px;
  border:1px solid var(--line);
  position:relative;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(16,22,96,.055);
}
.future-domain:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-125px;bottom:-150px;opacity:.45}
.future-domain.resident{background:linear-gradient(145deg,#ecfbfb,#ffffff 78%);border-color:#cdeced}
.future-domain.resident:after{background:#c4eeee}
.future-domain.provider{background:linear-gradient(145deg,#f1effc,#ffffff 78%);border-color:#dfdbf6}
.future-domain.provider:after{background:#dad4f8}
.future-domain-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;position:relative;z-index:2}
.future-domain-id{display:flex;align-items:center;gap:12px}
.future-domain-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto}
.resident .future-domain-icon{background:var(--teal);color:var(--navy-deep);box-shadow:0 9px 24px rgba(0,190,194,.19)}
.provider .future-domain-icon{background:var(--navy);color:white;box-shadow:0 9px 24px rgba(16,22,96,.17)}
.future-domain-icon svg{width:23px;height:23px}
.future-domain-label{display:flex;flex-direction:column;line-height:1.2}
.future-domain-label strong{color:var(--navy);font-size:1rem}
.future-domain-label small{color:var(--muted);font-size:.7rem;margin-top:3px}
.future-now-badge{padding:.46rem .68rem;border-radius:999px;font-size:.66rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.resident .future-now-badge{background:#d8f7f5;color:#047e82}
.provider .future-now-badge{background:#ebe7fb;color:#5742bf}
.future-domain h3{font-size:1.68rem;max-width:450px;margin-bottom:10px;position:relative;z-index:2}
.future-domain>p{max-width:520px;color:var(--muted);font-size:.9rem;margin-bottom:22px;position:relative;z-index:2}
.future-cap-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;position:relative;z-index:2}
.future-cap{display:flex;align-items:center;gap:10px;min-height:58px;padding:11px 12px;border-radius:15px;background:rgba(255,255,255,.88);border:1px solid rgba(16,22,96,.08);font-size:.77rem;font-weight:750;color:var(--navy);box-shadow:0 6px 15px rgba(16,22,96,.035)}
.future-cap i{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;font-style:normal;flex:0 0 auto}
.resident .future-cap i{background:#dcf7f6;color:#078c90}.provider .future-cap i{background:#eeeafc;color:#5940c1}
.future-cap svg{width:15px;height:15px}
.future-domain-note{position:relative;z-index:2;margin-top:14px;padding-top:13px;border-top:1px solid rgba(16,22,96,.08);display:flex;align-items:center;gap:8px;color:#666b80;font-size:.72rem;font-weight:650}
.future-domain-note svg{width:15px;height:15px;flex:0 0 auto;color:var(--teal-deep)}
.provider .future-domain-note svg{color:var(--violet)}

.future-converge{position:relative;z-index:3;width:min(82%,900px);margin:72px auto 0}
.future-pgo{
  position:relative;
  border-radius:30px;
  padding:31px 34px 29px;
  color:white;
  background:
    radial-gradient(circle at 12% 0%,rgba(0,190,194,.28),transparent 34%),
    radial-gradient(circle at 92% 110%,rgba(93,67,221,.38),transparent 42%),
    linear-gradient(128deg,#0c1051 0%,#151b72 52%,#282187 100%);
  box-shadow:0 28px 68px rgba(16,22,96,.28);
  overflow:hidden;
}
.future-pgo:before{content:"";position:absolute;left:50%;top:-27px;transform:translateX(-50%);width:54px;height:54px;border-radius:50%;background:var(--paper);box-shadow:inset 0 -10px 18px rgba(16,22,96,.06)}
.future-pgo:after{content:"";position:absolute;inset:0;opacity:.34;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:38px 38px}
.future-pgo-inner{position:relative;z-index:2;display:grid;grid-template-columns:.77fr 1.23fr;gap:34px;align-items:center}
.future-pgo-kicker{display:flex;align-items:center;gap:8px;color:#7cebe6;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin-bottom:11px}
.future-pgo-kicker i{display:block;width:24px;height:3px;background:var(--teal);border-radius:99px}
.future-pgo h3{color:white;font-size:1.8rem;line-height:1.1;margin-bottom:11px;max-width:430px}
.future-pgo p{color:rgba(255,255,255,.7);font-size:.86rem;margin:0;max-width:480px}
.future-pgo-caps{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.future-pgo-cap{min-height:58px;border-radius:14px;padding:11px 13px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.88);font-size:.76rem;font-weight:720}
.future-pgo-cap i{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:rgba(0,190,194,.16);color:#78ece7;font-style:normal;flex:0 0 auto}
.future-pgo-cap svg{width:15px;height:15px}
.future-pgo-trust{position:relative;z-index:2;margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.future-pgo-trust span{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.68);font-size:.72rem;font-weight:650}
.future-pgo-trust svg{width:17px;height:17px;color:#79ebe6}
.future-pgo-trust b{color:#fff;font-size:.72rem;padding:.48rem .68rem;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1)}

.future-journey{margin-top:24px;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:13px;align-items:center;position:relative;z-index:2}
.future-journey article{min-height:94px;border-radius:18px;padding:16px 17px;background:white;border:1px solid var(--line);box-shadow:0 8px 22px rgba(16,22,96,.045)}
.future-journey article span{display:block;color:var(--teal-deep);font-size:.65rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px}
.future-journey article:nth-of-type(2) span{color:var(--violet)}
.future-journey article:nth-of-type(3) span{color:var(--orange)}
.future-journey article strong{display:block;color:var(--navy);font-size:.85rem;line-height:1.35}
.future-journey>i{font-style:normal;color:#a1a4b6;font-size:1.1rem}
.future-vision-note{margin:18px auto 0;max-width:990px;text-align:center;color:#676b80;font-size:.76rem;line-height:1.55}
.future-vision-note strong{color:var(--navy)}

@media(max-width:980px){
  .future-stage{min-height:0}
  .future-now-grid{grid-template-columns:1fr}
  .future-connectors{display:none}
  .future-converge{width:100%;margin-top:24px}
  .future-pgo-inner{grid-template-columns:1fr}
  .future-journey{grid-template-columns:1fr}
  .future-journey>i{transform:rotate(90deg);justify-self:center}
}
@media(max-width:620px){
  .future-stage{padding:15px;border-radius:25px}
  .future-domain{padding:22px 19px;border-radius:22px}
  .future-domain-head{align-items:flex-start}.future-now-badge{font-size:.59rem}
  .future-domain h3{font-size:1.42rem}
  .future-cap-grid,.future-pgo-caps{grid-template-columns:1fr}
  .future-pgo{padding:27px 20px 22px;border-radius:24px}
  .future-pgo h3{font-size:1.52rem}
  .future-pgo-trust{align-items:flex-start;flex-direction:column}
}


/* =========================================================
   De verwijzing naar de transformatiekaart in "Hoe het begon",
   uit master v1.11. Letterlijk overgenomen uit de bron.
   ========================================================= */
.origin-map-card{position:relative;margin-top:16px;padding:22px 24px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(28,25,82,.06);overflow:hidden}
.origin-map-card:after{content:"";position:absolute;width:120px;height:120px;right:-54px;top:-62px;border-radius:50%;background:var(--violet-soft);opacity:.75}
.origin-map-head{position:relative;z-index:1;display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}
.origin-map-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:var(--violet-soft);color:var(--violet)}
.origin-map-icon svg{width:22px;height:22px}
.origin-map-card h3{margin:1px 0 5px;font-size:1.05rem;line-height:1.25;color:var(--navy)}
.origin-map-card p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}
.origin-map-action{position:relative;z-index:1;margin-top:18px;padding-top:17px;border-top:1px solid var(--line)}
.origin-map-action .btn{min-height:48px;font-size:.88rem}

/* Afwijkingen van het overgenomen blok hierboven — bewust, met reden erbij,
   zodat een volgende vergelijking met de bron ze herkent als keuze en niet als
   afdrijving.

   .story-route-layout — "Hoe de richting ontstond". De bron geeft de tekst een
   smalle en de tijdlijn een brede kolom (.74fr / 1.26fr); gevraagd is gelijk.
   De klasse komt in één sectie voor, dus verder raakt dit niets.

   In een min-width en niet als kale regel: de bron zet deze kolommen onder
   1000px op één, en die media-query staat in het blok hierboven — dus ná deze
   regel. Een gewone override zou hem overrulen en de mobiele weergave twee
   kolommen geven op een telefoon. */
@media (min-width: 1001px) {
  .story-route-layout { grid-template-columns: 1fr 1fr; }
}

/* .dvx-scope — "Beoogde scope". Twee driekoloms-regels lagen hier over elkaar:
   de wrapper .dvx-source-grid-3 zet drie kolommen (één per lijstje) en
   `.dvx-scope .dvx-clean` zette elk lijstje daarbinnen nóg eens op drie. Drie
   keer drie, dus alle zeven onderdelen naast elkaar in kolommen van negentig
   pixels — "AI-enabled sociale kaart" werd vier regels van één woord.

   Dat staat zo in de aangeleverde CSS en het ziet er in de bron net zo uit;
   nagemeten. De regel was duidelijk bedoeld voor één lijst met zeven items, niet
   voor drie lijsten in een driekoloms-raster. De wrapper levert de kolommen al,
   dus de lijstjes erbinnen stapelen. */
.dvx-scope .dvx-source-grid-3 .dvx-clean { grid-template-columns: 1fr; }

/* De tussensectie die aankondigt dat alles hieronder openbaar of intern is.
   Eigen werk, niet uit de bron: het masterdeck bestaat uit twee helften en die
   grens moet je zien zonder hem te zoeken. Daarom een volle band in het donker
   van de huisstijl, met een gekleurde streep die per deel verschilt — teal voor
   openbaar, violet voor intern. */
.deel-band{background:var(--navy);color:#fff;padding:54px 0}
.deel-band-inner{max-width:900px}
.deel-band-deel{display:inline-flex;align-items:center;gap:10px;font-size:.7rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.62);margin-bottom:14px}
.deel-band-deel:before{content:"";width:34px;height:3px;border-radius:99px;background:var(--teal)}
.deel-intern .deel-band-deel:before{background:var(--violet)}
.deel-band-titel{font-size:clamp(1.9rem,3.4vw,2.6rem);line-height:1.08;margin:0 0 10px;color:#fff}
.deel-band-tekst{margin:0;color:rgba(255,255,255,.72);font-size:clamp(1rem,1.4vw,1.14rem);line-height:1.6;max-width:640px}

@media(max-width:760px){
  .deel-band{padding:38px 0}
}

/* =========================================================
   De drie samengevoegde secties (behoefte · ontstaan · samen sturen).
   Overgenomen uit het concept, met vier klassen hernoemd: `section-head`,
   `origin-step`, `governance-section` en `future` bestaan al op deze site.
   Scopen was niet genoeg — dat houdt mijn regels bij hun elementen vandaan,
   maar niet hún regels bij de mijne, en dan lekt er opmaak in. Nu heten ze
   `sg-head`, `sg-step`, `sg-governance` en `sg-future`, in bron én stylesheet.

   De scope `.samengevoegd` blijft als extra grens; hij staat in de bron, dus
   het skelet zet hem vanzelf op de sectie. Twee variabelen kent deze
   stylesheet niet en staan hieronder gescoped. Tokens die wél bestaan
   (--teal-deep, --shadow, --max) houden bewust de waarde van de site.
   ========================================================= */
.samengevoegd{--deep:#080b3f;--radius:28px}
.samengevoegd .sg-head{max-width:860px;margin-bottom:46px;position:relative;z-index:1}
.samengevoegd.need-section{background:white}
.samengevoegd.need-section:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:var(--mint);right:-245px;top:-210px}
.samengevoegd .need-case{display:grid;grid-template-columns:.82fr 1.18fr;gap:20px;align-items:stretch}
.samengevoegd .case-quote{padding:34px;border-radius:var(--radius);background:linear-gradient(145deg,var(--navy),#292185);color:white;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:space-between;min-height:390px}
.samengevoegd .case-quote span{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7eece7}
.samengevoegd .case-quote blockquote{margin:40px 0;font:700 clamp(1.75rem,3vw,2.5rem)/1.22 Poppins,sans-serif;letter-spacing:-.035em}
.samengevoegd .case-quote p{margin:0;color:rgba(255,255,255,.67);font-size:.9rem}
.samengevoegd .movement{display:grid;grid-template-columns:1fr 56px 1fr;align-items:stretch}
.samengevoegd .movement-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}
.samengevoegd .movement-card.sg-future{background:var(--mint);border-color:#c7ecea}
.samengevoegd .movement-label{display:inline-block;margin-bottom:27px;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--orange)}
.samengevoegd .sg-future .movement-label{color:var(--teal-deep)}
.samengevoegd .movement-card h3{font-size:1.38rem}
.samengevoegd .movement-card p{font-size:.9rem;color:var(--muted)}
.samengevoegd .movement-card ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:12px}
.samengevoegd .movement-card li{position:relative;padding-left:23px;font-size:.86rem;font-weight:650}
.samengevoegd .movement-card li:before{content:"—";position:absolute;left:0;color:var(--orange);font-weight:900}
.samengevoegd .sg-future li:before{content:"✓";color:var(--teal-deep)}
.samengevoegd .movement-arrow{display:grid;place-items:center;color:var(--teal-deep);font-size:1.7rem;font-weight:900}
.samengevoegd .need-principle{margin-top:20px;padding:22px 26px;border-radius:20px;background:var(--lav);border:1px solid #dfdbf4;color:#4f5068;font-weight:600}
.samengevoegd .need-principle strong{color:var(--navy)}
.samengevoegd.origin-section{color:white;background:var(--deep)}
.samengevoegd.origin-section:before{content:"";position:absolute;width:560px;height:560px;border:110px solid rgba(0,190,194,.07);border-radius:50%;left:-310px;bottom:-330px}
.samengevoegd.origin-section h2,.samengevoegd.origin-section h3{color:white}
.samengevoegd.origin-section .lead{color:rgba(255,255,255,.7)}
.samengevoegd .origin-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:68px;align-items:start;position:relative;z-index:1}
.samengevoegd .origin-callout{margin-top:28px;padding:24px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13)}
.samengevoegd .origin-callout span{display:block;color:#79e9e4;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.samengevoegd .origin-callout strong{font:700 1.18rem/1.35 Poppins,sans-serif}
.samengevoegd .origin-route{display:grid;gap:13px}
.samengevoegd .sg-step{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:21px 22px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);transition:.2s ease}
.samengevoegd .sg-step:hover{transform:translateX(6px);background:rgba(255,255,255,.11)}
.samengevoegd .sg-step>b{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--teal);color:var(--deep);font:900 .85rem Poppins,sans-serif}
.samengevoegd .sg-step strong{display:block;color:white;margin-bottom:4px}
.samengevoegd .sg-step p{margin:0;color:rgba(255,255,255,.64);font-size:.87rem}
.samengevoegd .origin-result{margin-top:18px;padding:25px 27px;border-radius:22px;background:linear-gradient(115deg,var(--violet),#342c98);box-shadow:0 20px 50px rgba(0,0,0,.2)}
.samengevoegd .origin-result span{color:#bdb3ff;font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.samengevoegd .origin-result h3{margin:9px 0 7px}
.samengevoegd .origin-result p{margin:0;color:rgba(255,255,255,.7);font-size:.9rem}
.samengevoegd.sg-governance{background:linear-gradient(180deg,#fbfbfe,#f3f3fa)}
.samengevoegd .gov-top{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:end;margin-bottom:42px}
.samengevoegd .gov-top .lead{margin-bottom:4px}
.samengevoegd .status-note{padding:22px 24px;border-radius:20px;background:var(--peach);border:1px solid #f1d5c8;color:#744937;font-size:.88rem}
.samengevoegd .status-note strong{display:block;color:#9f371a;margin-bottom:5px}
.samengevoegd .owner-question{display:grid;grid-template-columns:1fr auto 1fr;gap:17px;align-items:center;padding:30px;border-radius:28px;background:white;border:1px solid var(--line);box-shadow:var(--shadow-sm);margin-bottom:20px}
.samengevoegd .owner-choice{padding:22px;border-radius:19px;background:var(--lav)}
.samengevoegd .owner-choice:last-child{background:var(--mint)}
.samengevoegd .owner-choice span{display:block;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--violet);margin-bottom:7px}
.samengevoegd .owner-choice:last-child span{color:var(--teal-deep)}
.samengevoegd .owner-choice strong{color:var(--navy)}
.samengevoegd .owner-or{font-weight:900;color:var(--muted)}
.samengevoegd .role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.samengevoegd .role-card{position:relative;overflow:hidden;min-height:275px;padding:25px 23px;border-radius:23px;background:white;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.samengevoegd .role-card:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-75px;bottom:-75px;background:var(--mint)}
.samengevoegd .role-card:nth-child(2):after{background:var(--lav)}
.samengevoegd .role-card:nth-child(3):after{background:var(--peach)}
.samengevoegd .role-card:nth-child(4):after{background:#fff7d9}
.samengevoegd .role-number{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--navy);color:white;font:900 .8rem Poppins,sans-serif;margin-bottom:28px}
.samengevoegd .role-card h3{font-size:1.1rem}
.samengevoegd .role-card p{color:var(--muted);font-size:.84rem;margin-bottom:16px}
.samengevoegd .role-card strong{display:block;position:relative;z-index:1;color:var(--teal-deep);font-size:.78rem}
.samengevoegd .gov-decision{margin-top:20px;padding:24px 27px;border-radius:22px;background:var(--navy);color:white;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
.samengevoegd .gov-decision b{width:44px;height:44px;border-radius:14px;background:var(--teal);color:var(--navy);display:grid;place-items:center;font-size:1.2rem}
.samengevoegd .gov-decision p{margin:0;color:rgba(255,255,255,.74)}
.samengevoegd .gov-decision strong{color:white}
@media(max-width:980px){
  .samengevoegd .role-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .samengevoegd .movement{grid-template-columns:1fr}
  .samengevoegd .movement-arrow{height:48px;transform:rotate(90deg)}
  .samengevoegd .owner-question{grid-template-columns:1fr}
  .samengevoegd .owner-or{text-align:center}
  .samengevoegd .role-card{min-height:0}
  .samengevoegd .gov-decision{align-items:start}
  .samengevoegd .case-quote{min-height:320px}
}

/* =========================================================
   Over ons: Samen sterk in Zoetermeer · Onze missie · Onze visie.
   Uit de landingspagina-bron, ongescoped overgenomen — deze secties
   gebruiken alleen eigen klassennamen, op de gedeelde basis na
   (section, wrap, lead, eyebrow), en die hoort van de site te komen.
   ========================================================= */
.collaboration-story{overflow:hidden;
  background:
    radial-gradient(circle at 88% 16%,rgba(0,190,194,.12),transparent 27%),
    linear-gradient(180deg,#fbfbfe 0%,#f4f5fb 100%);}
.collaboration-story:before{content:"";position:absolute;width:330px;height:330px;border:66px solid rgba(93,67,221,.06);
  border-radius:50%;left:-190px;bottom:-205px;pointer-events:none;}
.collaboration-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:72px;align-items:center}
.collaboration-copy p:not(.lead){color:var(--muted);max-width:720px}
.collaboration-copy p:last-child{margin-bottom:0}
.collaboration-visual{position:relative;min-height:500px;display:grid;place-items:center}
.collaboration-orbit{position:absolute;width:410px;height:410px;border:1px dashed rgba(16,22,96,.19);border-radius:50%;animation:spin 38s linear infinite}
.collaboration-orbit:after{content:"";position:absolute;inset:68px;border:1px dashed rgba(0,143,148,.24);border-radius:50%}
.collaboration-core{width:205px;height:205px;border-radius:42% 58% 50% 50%/55% 43% 57% 45%;
  display:grid;place-items:center;text-align:center;padding:24px;position:relative;z-index:2;
  color:white;background:linear-gradient(145deg,var(--navy),#31268f);box-shadow:0 24px 60px rgba(16,22,96,.25);
  font-weight:850;line-height:1.28;animation:morph 8s ease-in-out infinite;}
.collaboration-node{position:absolute;z-index:3;width:150px;min-height:92px;padding:15px;border-radius:19px;
  display:grid;place-items:center;text-align:center;background:rgba(255,255,255,.94);border:1px solid var(--line);
  box-shadow:var(--shadow-sm);color:var(--navy);font-size:.82rem;font-weight:800;line-height:1.35;
  transition:transform .22s ease,border-color .22s ease;}
.collaboration-node:hover{transform:translateY(-5px) rotate(-1deg);border-color:#bdb8ec}
.collaboration-node:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px rgba(0,190,194,.13);margin-bottom:9px}
.collaboration-node.n1{top:2%;left:34%}
.collaboration-node.n2{right:0;top:34%}
.collaboration-node.n3{bottom:1%;left:35%}
.collaboration-node.n4{left:0;top:34%}
.collaboration-node.n2:before{background:var(--yellow);box-shadow:0 0 0 5px rgba(255,204,22,.14)}
.collaboration-node.n3:before{background:var(--orange);box-shadow:0 0 0 5px rgba(252,74,26,.12)}
.collaboration-node.n4:before{background:var(--violet);box-shadow:0 0 0 5px rgba(93,67,221,.12)}
.mission-deep-section{overflow:hidden;background:var(--navy-deep);color:white}
.mission-deep-section:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.11) 1px,transparent 1px);background-size:30px 30px;
  mask-image:linear-gradient(90deg,#000,transparent 70%);}
.mission-deep-section:after{content:"";position:absolute;width:520px;height:520px;border:105px solid rgba(0,190,194,.08);
  border-radius:50%;right:-280px;top:-245px;pointer-events:none;}
.mission-deep-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start;position:relative;z-index:2}
.mission-deep-section h2{color:white}
.mission-deep-section .lead,.mission-deep-text p{color:rgba(255,255,255,.72)}
.mission-principle{margin-top:30px;padding:23px 25px;border-radius:22px;background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 45px rgba(0,0,0,.15);}
.mission-principle span{display:block;color:#76ebe5;font-size:.72rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;margin-bottom:8px}
.mission-principle strong{display:block;color:white;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.18}
.mission-deep-text{display:grid;gap:15px}
.mission-deep-text p{margin:0;padding:25px 27px;border-radius:23px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
.mission-deep-text p:nth-child(2){margin-left:38px;background:linear-gradient(120deg,rgba(93,67,221,.25),rgba(255,255,255,.07))}
.mission-tech-note{display:flex;gap:14px;align-items:flex-start!important}
.mission-tech-note b{width:42px;height:42px;flex:0 0 auto;border-radius:14px;display:grid;place-items:center;background:var(--teal);color:var(--navy-deep);font-size:1.15rem}
.mission-tech-note span{color:rgba(255,255,255,.72)}
.vision-deep-section{overflow:hidden;background:
    radial-gradient(circle at 13% 12%,rgba(255,204,22,.11),transparent 22%),
    radial-gradient(circle at 91% 78%,rgba(93,67,221,.11),transparent 28%),
    white;}
.vision-intro{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end;margin-bottom:48px}
.vision-intro .lead{margin:0 0 6px}
.vision-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.vision-pillar{position:relative;overflow:hidden;min-height:390px;padding:31px 29px;border-radius:29px;
  border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease;}
.vision-pillar:hover{transform:translateY(-8px) rotate(-.4deg);box-shadow:var(--shadow)}
.vision-pillar:nth-child(1){background:var(--mint);transform:rotate(-1deg)}
.vision-pillar:nth-child(2){background:var(--lav);transform:translateY(16px) rotate(.8deg)}
.vision-pillar:nth-child(3){background:var(--peach);transform:rotate(-.7deg)}
.vision-pillar:nth-child(1):hover,.vision-pillar:nth-child(2):hover,.vision-pillar:nth-child(3):hover{transform:translateY(-8px) rotate(0)}
.vision-pillar:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-105px;bottom:-105px;background:rgba(255,255,255,.5)}
.vision-number{display:flex;align-items:center;justify-content:space-between;margin-bottom:54px;color:var(--teal-deep);font-size:.73rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.vision-number b{width:43px;height:43px;border-radius:14px;display:grid;place-items:center;background:white;color:var(--navy);box-shadow:0 7px 18px rgba(16,22,96,.08);font-size:.88rem}
.vision-pillar h3{font-size:1.55rem;line-height:1.08}
.vision-pillar p{position:relative;z-index:1;color:#50536a;font-size:.94rem;margin:0}
.vision-closing{margin-top:58px;padding:26px 30px;border-radius:24px;background:var(--navy);color:white;
  display:flex;align-items:center;gap:19px;box-shadow:var(--shadow);}
.vision-closing b{width:48px;height:48px;flex:0 0 auto;border-radius:16px;display:grid;place-items:center;background:var(--teal);color:var(--navy);font-size:1.2rem}
.vision-closing p{margin:0;color:rgba(255,255,255,.78);font-weight:700}
@media(max-width:980px){
  .collaboration-grid,.mission-deep-grid,.vision-intro{grid-template-columns:1fr}
  .collaboration-grid,.mission-deep-grid{gap:42px}
  .collaboration-copy{max-width:800px}
  .vision-intro{gap:10px}
  .vision-pillars{grid-template-columns:1fr 1fr}
  .vision-pillar:last-child{grid-column:1/-1;min-height:300px}
}
@media(max-width:680px){
  .collaboration-visual{min-height:430px}
  .collaboration-orbit{width:340px;height:340px}
  .collaboration-core{width:160px;height:160px;font-size:.88rem}
  .collaboration-node{width:116px;min-height:76px;padding:10px;font-size:.7rem}
  .collaboration-node.n1{left:33%}
  .collaboration-node.n3{left:34%}
  .mission-deep-text p:nth-child(2){margin-left:0}
  .mission-deep-text p{padding:21px}
  .vision-pillars{grid-template-columns:1fr;gap:15px}
  .vision-pillar,.vision-pillar:last-child{grid-column:auto;min-height:0;transform:none!important}
  .vision-number{margin-bottom:32px}
  .vision-closing{align-items:flex-start;padding:22px}
}
