:root{
  --blue:#0164F3; --blue-soft:#E8F0FE; --blue-deep:#0450c2;
  --green:#0CCA4A; --amber:#FBAF00;
  --ink:#0B0D12; --body:#464B55; --muted:#666C78;
  --ground:#FBFCFE; --paper:#FDFEFF; --card:#EEF1F6; --line:#E2E6EC;
  --dark:#0B0E14; --dark-card:#171B24; --dark-line:#2A303C;
  --ease-out:cubic-bezier(0.22,1,0.36,1);
  --radius:10px; --maxw:1160px;
}
*{margin:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:var(--ground);color:var(--body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{color:var(--ink);line-height:1.12;font-weight:800;letter-spacing:-0.025em;text-wrap:balance}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}

/* ---- knoppen ---- */
.btn{display:inline-block;white-space:nowrap;font-weight:700;font-size:16px;padding:14px 26px;border-radius:8px;text-decoration:none;border:2px solid transparent;transition:transform .18s var(--ease-out), background .18s var(--ease-out), color .18s var(--ease-out);cursor:pointer;text-align:center}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-deep)}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-white{background:#fff;color:var(--blue)}
.btn-sm{padding:10px 18px;font-size:14.5px}

/* ---- nav ---- */
.nav{position:sticky;top:0;z-index:100;background:rgba(251,252,254,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-inner{max-width:var(--maxw);margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:34px}
.nav-logo{flex:none}
.nav-logo img{height:34px;width:auto}
.nav-links{display:flex;gap:30px;align-items:center;margin-left:auto;white-space:nowrap}
.nav-links a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
.nav-links a:hover{color:var(--blue)}
.nav-cta{display:flex;gap:16px;align-items:center}
.nav-cta .login{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
.nav-burger{display:none;background:none;border:none;font-size:26px;color:var(--ink);cursor:pointer;padding:4px 8px}
@media (max-width:1099px){
  .nav-links,.nav-cta .login{display:none}
  .nav-burger{display:block;margin-left:auto}
  .nav-cta{margin-left:0}
  .nav-mobile{display:none;flex-direction:column;gap:4px;padding:10px 20px 18px;border-top:1px solid var(--line)}
  .nav-mobile.open{display:flex}
  .nav-mobile a{color:var(--ink);text-decoration:none;font-weight:600;padding:10px 0;border-bottom:1px solid var(--line)}
}
@media (min-width:1100px){.nav-mobile{display:none !important}}

/* ---- secties ---- */
section{padding:90px 20px;position:relative}
.pad-l{padding-top:112px;padding-bottom:112px}
.pad-s{padding-top:72px;padding-bottom:72px}
.wrap{max-width:var(--maxw);margin:0 auto}
.kicker{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;text-align:center}
.sec-title{font-size:clamp(27px,3.6vw,40px);margin-bottom:16px;text-align:center}
.sec-intro{max-width:640px;margin:0 auto 44px;text-align:center}
.grid{display:grid;gap:22px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
@media (max-width:880px){.g3,.g2{grid-template-columns:1fr}}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:30px}
.pill{display:inline-block;background:linear-gradient(90deg,var(--blue),#3488FE);color:#fff;font-weight:700;font-size:13.5px;padding:9px 20px;border-radius:30px;margin-bottom:16px}
.checklist{list-style:none;padding:0;display:grid;gap:10px}
.checklist li{display:flex;gap:10px;align-items:baseline;font-size:16px}
.checklist .c{color:var(--green);font-weight:800;flex:none}

/* ---- hero ---- */
.hero{padding:100px 20px 80px;background:linear-gradient(rgba(251,252,254,.45) 30%,var(--ground) 96%),url('/assets/hero-bg.jpg') center/cover}
.hero .wrap{max-width:860px;text-align:center}
.hero h1{font-size:clamp(33px,5vw,56px);margin-bottom:22px}
.hero .sub{font-size:clamp(17px,2vw,19.5px);max-width:660px;margin:0 auto 32px}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.cta-meta{margin-top:16px;font-size:14.5px;color:var(--muted)}
.cta-meta b{color:var(--ink)}
.hero-badges{margin-top:26px;display:flex;gap:18px;justify-content:center;align-items:center;flex-wrap:wrap}
.hero-badges img{height:64px;width:auto}

/* ---- proof ---- */
.proof{padding:56px 20px;border-bottom:1px solid var(--line)}
.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:900px;margin:0 auto 36px;text-align:center}
@media (max-width:720px){.statrow{grid-template-columns:repeat(2,1fr)}}
.stat .v{font-size:clamp(26px,3.4vw,36px);font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.stat .l{font-size:13.5px}
.logo-band{display:flex;gap:18px 40px;justify-content:center;align-items:center;flex-wrap:wrap}
.logo-band img{height:30px;width:auto;filter:grayscale(1);opacity:.55;transition:opacity .2s,filter .2s}
.logo-band img:hover{filter:grayscale(0);opacity:1}
.logo-band img.inv{filter:grayscale(1) invert(1)}
.logo-band img.inv:hover{filter:invert(1)}
.pullquote{max-width:740px;margin:42px auto 0;text-align:center;font-size:clamp(19px,2.3vw,23px);font-weight:600;color:var(--ink);line-height:1.45}
.pullquote footer{font-size:15px;font-weight:400;color:var(--body);margin-top:12px}

/* ---- probleem ---- */
.sec-grey{background:var(--card)}
.painlist{max-width:880px;margin:34px auto 0}
.painrow{display:grid;grid-template-columns:96px 1fr;gap:26px;padding:36px 0;border-top:1px solid #D8DDE6}
.painrow:last-child{border-bottom:1px solid #D8DDE6}
.painrow .n{font-size:52px;font-weight:800;color:var(--blue);opacity:.28;line-height:1;font-variant-numeric:tabular-nums}
.painrow h3{font-size:clamp(19px,2.3vw,24px);margin-bottom:8px}
.painrow p{font-size:16px;max-width:60ch}
@media (max-width:640px){.painrow{grid-template-columns:1fr;gap:8px;padding:28px 0}.painrow .n{font-size:34px}}

/* ---- 2-kolom ---- */
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
@media (max-width:880px){.twocol{grid-template-columns:1fr;gap:32px}}
.twocol .kicker,.twocol h2{text-align:left}
.twocol h2{font-size:clamp(25px,3vw,36px);margin-bottom:16px}
.shot{border-radius:var(--radius);box-shadow:0 18px 44px rgba(10,20,50,.14)}

/* ---- stappen ---- */
.step h3{font-size:20px;margin:14px 0 10px;text-align:center}
.step p{font-size:15.5px;text-align:center}
.step{text-align:center}
.midcta{text-align:center;margin-top:44px}

/* ---- FG-blok ---- */
.sec-dark{background:var(--dark);padding-top:110px;padding-bottom:110px}
.sec-dark .kicker{color:var(--amber)}
.sec-dark .sec-title,.sec-dark h3{color:#fff}
.sec-dark p,.sec-dark .sec-intro{color:#C9C9C9}
.card-dark{background:var(--dark-card);border-color:var(--dark-line)}
.card-dark h3{font-size:20px;margin-bottom:10px}
.card-dark p{font-size:15.5px}
.bigmath{margin-top:44px;text-align:center;font-size:clamp(19px,2.6vw,26px);font-weight:700;color:#fff}
.bigmath .strike{text-decoration:line-through;text-decoration-color:var(--amber);text-decoration-thickness:3px;color:#8d8d8d}
.bigmath .win{color:var(--green)}

/* ---- prijzen ---- */
.tier{display:flex;flex-direction:column;gap:10px}
.tier .price{font-size:32px;font-weight:800;color:var(--blue)}
.tier .price small{font-size:14px;font-weight:600;color:var(--body)}
.tier .checklist{flex:1;margin-bottom:14px}
.tier-pop{border:2px solid var(--blue);position:relative;box-shadow:0 12px 34px rgba(1,100,243,.10)}
.pop-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--blue);color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:4px 14px;border-radius:999px;white-space:nowrap}
.prijs-note{text-align:center;margin-top:28px;font-size:15px}

/* ---- voordelen ---- */
.advgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px 60px;max-width:980px;margin:0 auto}
@media (max-width:760px){.advgrid{grid-template-columns:1fr}}
.advlist{list-style:none;padding:0;display:grid;gap:14px}
.advlist li{font-size:16px;line-height:1.55}
.advlist b{color:var(--ink)}
.adv-num{color:var(--blue);font-weight:800;font-variant-numeric:tabular-nums;margin-right:6px}

/* ---- banner ---- */
.banner{background:var(--blue);padding:60px 20px}
.banner .wrap{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}
.banner h2{color:#fff;font-size:clamp(22px,3vw,30px);margin-bottom:8px}
.banner p{color:#dbe8ff;max-width:520px}

/* ---- rollen ---- */
.rolelist{max-width:940px;margin:36px auto 0;border-top:1px solid var(--line)}
.rolerow{display:grid;grid-template-columns:120px 1fr 34px;gap:22px;align-items:center;padding:28px 10px;border-bottom:1px solid var(--line);text-decoration:none;transition:background .18s var(--ease-out)}
.rolerow:hover{background:var(--paper)}
.rolerow .rk{font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.rolerow h3{font-size:19px;margin-bottom:4px}
.rolerow p{font-size:15px;color:var(--body)}
.rolerow .arr{font-size:22px;color:var(--blue);font-weight:700}
@media (max-width:640px){.rolerow{grid-template-columns:1fr 30px;gap:8px}.rolerow .rk{grid-column:1 / -1}}
.role-rest{text-align:center;margin-top:26px;font-size:15px}

/* ---- boek & makers ---- */
.bookcover{width:min(250px,72%);aspect-ratio:5/7;border-radius:4px 12px 12px 4px;background:#00893E;box-shadow:18px 24px 44px rgba(6,40,20,.3),inset 7px 0 12px rgba(0,0,0,.22);color:#fff;display:flex;flex-direction:column;overflow:hidden;margin:0 auto}
.bc-stripe{height:11px;flex:none;background:linear-gradient(90deg,#00A79D 0 14%,#0072BC 14% 28%,#5C2D91 28% 42%,#C4161C 42% 56%,#F04E23 56% 70%,#FDB913 70% 84%,#8DC63F 84% 100%)}
.bc-pub{text-align:right;font-size:10px;font-weight:700;padding:8px 13px 0;opacity:.9}
.bc-body{flex:1;display:flex;flex-direction:column;padding:8px 18px 16px}
.bc-title{font-size:clamp(30px,3.4vw,40px);font-weight:800;line-height:1.05;margin-top:12px;color:#fff}
.bc-rule{height:2px;background:rgba(255,255,255,.85);margin:16px 0 9px}
.bc-sub{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.bc-bottom{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:8px}
.bc-auth{font-size:12px;font-weight:700;line-height:1.45}
.bc-badge{width:70px;height:70px;border-radius:50%;background:#fff;color:#00893E;flex:none;display:flex;align-items:center;justify-content:center;text-align:center;font-size:9px;font-weight:800;line-height:1.3;padding:8px;transform:rotate(-8deg)}
.founders{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
@media (max-width:560px){.founders{grid-template-columns:1fr}}
.fphoto{width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:center top;margin-bottom:14px;border:3px solid #fff;box-shadow:0 6px 20px rgba(10,10,10,.14)}
.fphoto-ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00893E,#0CCA4A);color:#fff;font-weight:800;font-size:24px}
.ftag{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--blue-soft);color:#0a3c8f;padding:4px 11px;border-radius:999px;margin-bottom:10px}
.flink{display:inline-flex;align-items:center;gap:7px;margin-top:12px;font-size:13.5px;font-weight:700;color:#0a66c2;text-decoration:none}
.flink svg{flex:none}
.flink:hover{text-decoration:underline}
.fname{font-weight:800;color:var(--ink);font-size:18px}
.frole{font-size:13.5px;margin-bottom:8px}
.fbio{font-size:14.5px}

/* ---- testimonials ---- */
.tstars{color:var(--amber);letter-spacing:2px;font-size:14px}
.t-big{max-width:780px;margin:36px auto 0;text-align:center}
.t-big .q{font-size:clamp(21px,2.8vw,30px);font-weight:700;color:var(--ink);line-height:1.35;margin:14px 0 18px}
.t-big .who{font-size:15px;color:var(--body)}
.t-big .who b{color:var(--ink)}
.t-duo{display:grid;grid-template-columns:1fr 1fr;gap:48px;max-width:920px;margin:52px auto 0;padding-top:40px;border-top:1px solid var(--line)}
@media (max-width:720px){.t-duo{grid-template-columns:1fr;gap:34px}}
.t-duo .q{font-weight:700;color:var(--ink);font-size:16.5px;line-height:1.45;margin:10px 0 8px}
.t-duo .who{font-size:14px;color:var(--body)}
.t-duo .who b{color:var(--ink)}

/* ---- faq ---- */
.faq{max-width:780px;margin:0 auto;display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:0 22px}
.faq summary{cursor:pointer;font-weight:700;color:var(--ink);font-size:16.5px;padding:18px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:22px;font-weight:600;color:var(--blue);flex:none}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 0 18px;font-size:15.5px}

/* ---- slot ---- */
.final{text-align:center;background:linear-gradient(180deg,var(--ground),var(--blue-soft))}
.final h2{font-size:clamp(28px,4vw,44px)}
.final p{max-width:560px;margin:16px auto 34px}

/* ---- footer ---- */
footer.site{background:var(--dark);color:#B4B9C2;padding:64px 20px 34px;font-size:14.5px}
.foot-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px}
@media (max-width:880px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.foot-grid{grid-template-columns:1fr}}
footer.site h4{color:#fff;font-size:15px;margin-bottom:14px}
footer.site a{color:#B4B9C2;text-decoration:none;display:block;padding:3px 0}
footer.site a:hover{color:#fff}
footer.site .brand img{height:34px;width:auto;filter:brightness(0) invert(1);margin-bottom:14px}
.foot-bottom{max-width:var(--maxw);margin:40px auto 0;padding-top:22px;border-top:1px solid #262B34;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#8a8a8a}

/* ---- mobiele CTA-balk ---- */
.mobi-cta{display:none}
@media (max-width:720px){
  .mobi-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:120;background:var(--paper);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .35s var(--ease-out)}
  .mobi-cta.show{transform:none}
  .mobi-cta .btn{display:block;width:100%}
  footer.site{padding-bottom:120px}
}
.skip{position:absolute;left:-9999px;top:0;background:var(--blue);color:#fff;padding:10px 16px;z-index:200;border-radius:0 0 8px 0;text-decoration:none;font-weight:700}
.skip:focus{left:0}

/* ---- reveal ---- */
.js .rv{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.js .rv{opacity:1;transform:none;transition:none}}

/* ---- branchepagina's ---- */
.crumb{font-size:13.5px;margin-bottom:18px;color:var(--muted);text-align:center}
.crumb a{color:var(--muted);text-decoration:none}
.crumb a:hover{color:var(--blue)}
.hero-branch{padding:82px 20px 68px}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:44px}
@media (max-width:880px){.pillars{grid-template-columns:1fr}}
.ptag{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--blue-soft);color:#0a3c8f;padding:4px 11px;border-radius:999px;margin-bottom:12px}
.pillar h3{font-size:20px;margin-bottom:10px}
.normlist{max-width:720px;margin:36px auto 0}

/* ---- AVG-check quiz ---- */
.quiz{max-width:640px;margin:44px auto 0}
.qprog{font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}
.qcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px}
.qcard h3{font-size:clamp(19px,2.4vw,24px);margin-bottom:22px}
.qopts{display:grid;gap:10px}
.qopt{display:block;width:100%;text-align:left;font:inherit;font-weight:600;font-size:16px;color:var(--ink);background:var(--ground);border:1.5px solid var(--line);border-radius:8px;padding:14px 18px;cursor:pointer;transition:border-color .15s var(--ease-out),background .15s var(--ease-out)}
.qopt:hover{border-color:var(--blue);background:var(--blue-soft)}
.qresult{display:none}
.qresult.show{display:block}
.qscore{font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.qscore.ok{color:var(--green)} .qscore.mid{color:var(--amber)} .qscore.bad{color:#D93025}
.qresult h3{font-size:clamp(21px,2.6vw,28px);margin-bottom:12px}
.qresult .cta-row{justify-content:flex-start;margin-top:22px}
.qreset{background:none;border:none;font:inherit;font-size:14px;color:var(--muted);cursor:pointer;text-decoration:underline;padding:0;margin-top:18px}

/* ---- vergelijking ---- */
.compare3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
@media (max-width:880px){.compare3{grid-template-columns:1fr}}
.compare3 .card h3{font-size:18px;margin-bottom:6px}
.compare3 .tag{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 11px;border-radius:999px;margin-bottom:12px}
.tag-a{background:var(--card);color:var(--body)} .tag-b{background:var(--blue-soft);color:#0a3c8f} .tag-c{background:#FDF3D7;color:#7a5a00}

/* ---- functionaliteiten ---- */
.featgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:44px}
@media (max-width:880px){.featgrid{grid-template-columns:1fr}}
.featgrid .card h3{font-size:19px;margin:0 0 8px}
.soon{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:#FDF3D7;color:#7a5a00;padding:3px 10px;border-radius:999px;vertical-align:middle;margin-left:8px}

/* ---- team ---- */
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px}
@media (max-width:960px){.team{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.team{grid-template-columns:1fr}}
.team .card{text-align:center;display:flex;flex-direction:column;align-items:center}
.team .fphoto{margin-left:auto;margin-right:auto}
.team .flink{margin-top:auto;padding-top:14px}
.tiers-note{text-align:center;margin-top:26px;font-size:14.5px;color:var(--muted)}

/* ---- opbouw: core / add-ons / multi-law ---- */
.lyr .card{display:flex;flex-direction:column}
.lyr-tag{display:inline-block;align-self:flex-start;font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:4px 12px;border-radius:999px;background:var(--blue-soft);color:var(--blue-deep);margin-bottom:14px}
.lyr-tag.wip{background:#FFF4DE;color:#8A5B00;margin-bottom:0}
.lyr h3{font-size:19px;margin-bottom:10px}
.lyr p{font-size:15.5px}
.lyr .checklist{margin-top:16px}
.lyr .checklist li{font-size:15px}
.roadmap{max-width:880px;margin:38px auto 0;border:1px dashed var(--line);border-radius:var(--radius);padding:26px 28px;background:var(--paper)}
.roadmap h3{font-size:17px;margin-bottom:8px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.roadmap p{font-size:15px}
.roadmap ul{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.roadmap li{font-size:14px;font-weight:600;color:var(--body);background:var(--card);border-radius:999px;padding:6px 14px}
@media (max-width:640px){.roadmap{padding:22px 20px}}
/* productvisuals: animaties i.p.v. screenshots (zelfde ritme als hero .hv, 10s loop) */
.pv{width:100%}
.pv .hv-win{padding:14px 18px 18px}
.chipje{display:inline-block;font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:7px;white-space:nowrap;line-height:1.4}
.chipje.groen{background:#22C55E;color:#fff}
.chipje.blauw{background:var(--blue);color:#fff}
.chipje.wit{background:#fff;border:1px solid var(--line);color:var(--ink)}
.chipje.oranje{background:#F97316;color:#fff}
.chipje.lblauw{background:var(--blue-soft);color:#0a3c8f}
.chipje.geel{background:#FDE68A;color:#7C5E00}
.pv1-bar{display:flex;gap:8px;margin:6px 0 10px;flex-wrap:wrap}
.pv1-vraag{padding:11px 0;border-bottom:1px solid var(--line)}
.pv1-vraag:last-of-type{border-bottom:none;padding-bottom:4px}
.pv1-kop{display:flex;gap:9px;align-items:center;font-size:12.5px;font-weight:700;color:var(--blue)}
.pv1-dot{width:9px;height:9px;border-radius:50%;background:#EF4444;flex:none;animation:pvdot 10s var(--ease-out) infinite;animation-delay:var(--d)}
.pv1-chk{margin-left:auto;color:var(--green);font-weight:800;font-size:13px;opacity:0;animation:pvchk 10s var(--ease-out) infinite;animation-delay:var(--d)}
.pv1-knoppen{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
@keyframes pvdot{0%,10%{background:#EF4444}16%,84%{background:var(--green)}90%,100%{background:#EF4444}}
@keyframes pvchk{0%,10%{opacity:0;transform:scale(.5)}16%,84%{opacity:1;transform:scale(1)}90%,100%{opacity:0}}
.pv2-win{display:flex;padding:0 !important;overflow:hidden;position:relative;min-height:280px}
.pv2-zij{width:112px;flex:none;border-right:1px solid var(--line);background:var(--ground);padding:18px 16px;display:flex;flex-direction:column;gap:11px}
.pv2-zij img{height:19px;width:auto;align-self:flex-start;margin-bottom:8px}
.pv2-streep{height:7px;border-radius:99px;background:var(--card)}
.pv2-streep.act{background:var(--blue-soft)}
.pv2-main{flex:1;padding:16px 16px 16px 18px;min-width:0}
.pv2-titel{font-size:10.5px;font-weight:800;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.pv2-rij{font-size:11.5px;font-weight:600;color:var(--ink);padding:9px 11px;border-radius:9px;border:1px solid var(--line);margin-bottom:7px;display:flex;gap:8px;align-items:center}
.pv2-rij .ster{margin-left:auto;color:#A855F7;font-size:12px;flex:none;animation:pv2ster 1.6s ease-in-out infinite}
.pv2-rij.act{border-color:#E9D5FF;background:#FAF5FF}
.pv2-rdot{width:8px;height:8px;border-radius:50%;flex:none;background:#EF4444}
.pv2-rdot.groen{background:var(--green)}
.pv2-rdot.paars{background:#A855F7}
@keyframes pv2ster{0%,100%{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}
.pv2-pop{position:absolute;right:14px;top:14px;width:60%;max-width:262px;background:linear-gradient(160deg,#EC4899,#8B5CF6);border-radius:14px;padding:12px 15px 14px;color:#fff;box-shadow:0 18px 44px rgba(150,60,220,.35);opacity:0;transform:translateY(10px) scale(.95);animation:pv2pop 10s var(--ease-out) infinite}
.pv2-pop p{font-size:10.5px;line-height:1.5;font-weight:600;color:#fff}
.pv2-pophead{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:.04em;color:rgba(255,255,255,.9);border-bottom:1px solid rgba(255,255,255,.28);padding-bottom:8px;margin-bottom:8px}
.pv2-avatar{background:#fff;color:#A855F7;font-size:8.5px;font-weight:800;padding:2px 5px;border-radius:5px;flex:none}
.pv2-vraag{font-weight:800 !important;margin-bottom:2px}
.pv2-typing{display:inline-flex;gap:4px;margin:6px 0 2px;opacity:0;animation:pv2typ 10s linear infinite}
.pv2-typing i{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.9);animation:pv2stip 1s ease-in-out infinite}
.pv2-typing i:nth-child(2){animation-delay:.18s}
.pv2-typing i:nth-child(3){animation-delay:.36s}
@keyframes pv2typ{0%,8%{opacity:0}10%,20%{opacity:1}23%,100%{opacity:0}}
@keyframes pv2stip{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.pv2-regel{opacity:0;animation:pv2regel 10s var(--ease-out) infinite;animation-delay:var(--d);margin-top:3px}
.pv2-btn{display:inline-block;margin-top:9px;background:#0B0D12;color:#fff;font-size:10.5px;font-weight:700;padding:6px 12px;border-radius:8px;opacity:0;animation:pv2regel 10s var(--ease-out) infinite;animation-delay:var(--d)}
@keyframes pv2pop{0%,4%{opacity:0;transform:translateY(10px) scale(.95)}9%,94%{opacity:1;transform:none}98%,100%{opacity:0;transform:translateY(10px) scale(.95)}}
@keyframes pv2regel{0%,20%{opacity:0}26%,93%{opacity:1}97%,100%{opacity:0}}
.chipje.paars{background:#F3E8FF;color:#7E22CE}
.chipje.lgroen{background:#DCFCE7;color:#15803D}
.pv3-koprij{display:flex;gap:8px;margin:6px 0 12px;flex-wrap:wrap}
.pv3-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pv3-tegel{border:1px solid var(--line);border-radius:11px;padding:11px 13px;background:#fff}
.pv3-naam{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;font-weight:700;color:var(--ink);margin-bottom:8px;white-space:nowrap}
.pv3-pct{color:var(--muted);font-weight:800;font-size:11px}
.pv3-track{height:7px;background:var(--card);border-radius:99px;overflow:hidden}
.pv3-track i{display:block;height:100%;width:var(--w);background:var(--green);border-radius:99px;transform:scaleX(0);transform-origin:left;animation:pv3fill 10s var(--ease-out) infinite;animation-delay:var(--d)}
.pv3-track i.blauw{background:var(--blue)}
@keyframes pv3fill{0%,6%{transform:scaleX(0)}26%,92%{transform:scaleX(1)}98%,100%{transform:scaleX(0)}}
.pv5-balken{display:flex;align-items:flex-end;gap:12px;height:104px;padding:8px 4px 0}
.pv5-balk{flex:1;background:var(--blue-soft);border-radius:7px 7px 0 0;height:var(--h);transform:scaleY(0);transform-origin:bottom;animation:pv5groei 10s var(--ease-out) infinite;animation-delay:var(--d)}
.pv5-balk.vol{background:var(--blue)}
@keyframes pv5groei{0%,6%{transform:scaleY(0)}28%,92%{transform:scaleY(1)}98%,100%{transform:scaleY(0)}}
.pv5-voet{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--line);margin-top:12px;padding-top:12px;flex-wrap:wrap}
.pv6-lid{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid var(--line);opacity:0;animation:pv6in 10s var(--ease-out) infinite;animation-delay:var(--d)}
.pv6-lid:last-of-type{border-bottom:none}
.pv6-avatar{width:27px;height:27px;border-radius:50%;color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none}
.pv6-streep{height:7px;border-radius:99px;background:var(--card);flex:1}
@keyframes pv6in{0%,8%{opacity:0;transform:translateY(5px)}16%,92%{opacity:1;transform:none}98%,100%{opacity:0}}
@media (prefers-reduced-motion: reduce){
  .pv1-dot,.pv1-chk,.pv2-pop,.pv2-regel,.pv2-btn,.pv2-rij .ster,.pv3-track i,.pv5-balk,.pv6-lid{animation:none !important}
  .pv1-dot{background:var(--green)}
  .pv1-chk,.pv2-regel,.pv2-btn,.pv6-lid{opacity:1}
  .pv2-pop{opacity:1;transform:none}
  .pv3-track i,.pv5-balk{transform:none}
  .pv6-lid{transform:none}
  .pv2-typing{display:none}
}
@media (max-width:560px){.pv2-pop{width:70%;right:8px;top:12px}}

/* onboarding (aanmelden / sign-up) */
.onb{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fff}
.onb-left{display:flex;flex-direction:column;padding:44px clamp(28px,6vw,84px);max-width:720px;width:100%;justify-self:end}
.onb-top{display:flex;align-items:center;gap:16px}
.onb-back{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:17px;cursor:pointer;text-decoration:none;flex:none}
.onb-back:hover{border-color:var(--blue);color:var(--blue)}
.onb-top img{height:30px;width:auto}
.onb-lang{margin-left:auto;font-size:13.5px;font-weight:700}
.onb-prog{display:flex;gap:9px;margin:44px 0 38px}
.onb-bar{height:5px;width:62px;border-radius:99px;background:var(--line,#E4E9F2)}
.onb-bar.act{background:var(--blue)}
.onb h1{font-size:clamp(26px,2.6vw,34px);line-height:1.15;letter-spacing:-.5px;margin-bottom:26px;color:var(--ink)}
.onb-step{display:none;max-width:440px}
.onb-step.act{display:block}
.onb-step input[type=text],.onb-step input[type=email]{width:100%;padding:13px 16px;border:1.5px solid var(--line);border-radius:11px;font:inherit;font-size:15.5px;background:#fff;color:var(--ink)}
.onb-step input:focus{outline:none;border-color:var(--blue)}
.onb-akkoord{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.5;margin-top:16px;color:var(--muted)}
.onb-akkoord input{margin-top:3px;width:auto;flex:none}
.onb-acts{display:flex;align-items:center;gap:18px;margin-top:26px}
.onb button.btn{font-family:inherit;font-size:inherit;cursor:pointer}
.onb-fout{font-size:13.5px;font-weight:600;color:#C22;margin-top:12px;min-height:18px}
.onb-onder{margin-top:auto;padding-top:38px;font-size:13px;color:var(--muted)}
.onb-onder a{color:inherit;text-decoration:underline}
.onb-klaar{display:none;max-width:460px}
.onb-klaar.act{display:block}
.onb-vink{width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-size:17px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.onb-right{background:linear-gradient(150deg,#D9E7FF 0%,#EFF3FF 45%,#FCE8F4 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;padding:48px clamp(24px,5vw,72px)}
.onb-right .hv{width:100%;max-width:470px}
.onb-cap{max-width:400px;text-align:center;font-size:16px;line-height:1.6;font-weight:600;color:var(--ink)}
@media (max-width:900px){
  .onb{grid-template-columns:1fr}
  .onb-left{justify-self:stretch;max-width:none;min-height:100vh}
  .onb-right{display:none}
}
.catbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:34px}
.catbtn{padding:8px 17px;border-radius:999px;border:1.5px solid var(--line,#E4E9F2);background:#fff;font:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer}
.catbtn.act{background:var(--blue);border-color:var(--blue);color:#fff}
.catbtn:hover:not(.act){border-color:var(--blue);color:var(--blue)}
.bloggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:960px){.bloggrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.bloggrid{grid-template-columns:1fr}}
.blogcard{display:flex;flex-direction:column;padding:0;overflow:hidden;text-decoration:none;color:inherit}
.blogcard>img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.blogcard-body{padding:22px 24px 24px;display:flex;flex-direction:column;gap:9px;flex:1}
.blogcard-body h3{font-size:18px;line-height:1.3}
.blogcard .tag{align-self:flex-start}
.blogmeta{font-size:13px;color:var(--muted);margin:-2px 0 0}
.bloglees{margin-top:auto;padding-top:6px;font-weight:700;color:var(--blue);font-size:14.5px}
.bloghero{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;margin-bottom:34px}
.prose img{max-width:100%;height:auto;border-radius:12px;margin:10px 0}
.prose figure{margin:18px 0}
.usp-line{display:flex;gap:12px 30px;justify-content:center;flex-wrap:wrap;margin-top:34px;font-size:15px;font-weight:600;color:var(--ink)}
.usp-line span::before{content:"✓ ";color:var(--green);font-weight:800}

/* ---- taalschakelaar ---- */
.lang-switch{display:inline-flex;align-items:center;font-size:12.5px;font-weight:700;letter-spacing:.06em;flex:none;color:var(--muted)}
.lang-switch :first-child::after{content:"/";margin:0 6px;color:var(--line);font-weight:600}
.lang-switch .act{color:var(--ink)}
.lang-switch a{color:var(--muted);text-decoration:none;transition:color .15s var(--ease-out)}
.lang-switch a:hover{color:var(--blue)}
.nav-cta .lang-switch{margin-left:12px}
.nav-mobile .lang-switch{align-self:flex-start;margin:12px 0 4px}
/* dropdown Oplossingen */
.nav-drop{position:relative}
.nav-drop>a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:5px}
.nav-drop>a:hover{color:var(--blue)}
.drop-caret{font-size:9.5px;color:var(--muted);transition:transform .18s var(--ease-out)}
.nav-drop:hover>a{color:var(--blue)}
.nav-drop:hover .drop-caret{transform:rotate(180deg);color:var(--blue)}
.nav-drop-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:16px;display:none;z-index:70}
.nav-drop:hover .nav-drop-menu,.nav-drop:focus-within .nav-drop-menu{display:block}
.ndm-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px rgba(10,20,50,.15);padding:8px;min-width:235px;display:flex;flex-direction:column}
.ndm-card a{padding:9px 14px;border-radius:9px;font-size:14.5px;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}
.ndm-card a:hover{background:var(--blue-soft);color:var(--blue)}
.ndm-card .ndm-alle{margin-top:5px;padding-top:11px;border-top:1px solid var(--line);border-radius:0;color:var(--blue)}
.ndm-card .ndm-alle:hover{background:none}

/* ---- hero met visual ---- */
.hero .wrap.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center;text-align:left;max-width:var(--maxw)}
.hero-grid h1{font-size:clamp(31px,3.6vw,48px)}
.hero-grid .sub{margin-left:0;margin-right:0}
.hero-grid .cta-row,.hero-grid .hero-badges{justify-content:flex-start}
@media (max-width:920px){
  .hero .wrap.hero-grid{grid-template-columns:1fr;gap:44px;text-align:center}
  .hero-grid .cta-row,.hero-grid .hero-badges{justify-content:center}
  .hv{max-width:430px;margin:0 auto}
}

/* ---- geanimeerd dashboard ---- */
.hv{position:relative}
.hv-win{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px rgba(10,20,50,.16);padding:16px 20px 22px;position:relative}
.hv-top{display:flex;gap:6px;align-items:center;margin-bottom:14px}
.hv-dot{width:9px;height:9px;border-radius:50%;background:var(--line)}
.hv-title{margin-left:8px;font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.03em}
.hv-row{display:grid;grid-template-columns:1fr 84px 20px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px;font-weight:600;color:var(--ink)}
.hv-track{height:7px;background:var(--card);border-radius:99px;overflow:hidden}
.hv-track i{display:block;height:100%;width:0;background:var(--green);border-radius:99px;animation:hvfill 10s var(--ease-out) infinite;animation-delay:var(--d)}
.hv-chk{color:var(--green);font-weight:800;font-size:14px;opacity:0;animation:hvpop 10s var(--ease-out) infinite;animation-delay:var(--d)}
@keyframes hvfill{0%,5%{width:0}17%{width:100%}93%{width:100%}100%{width:0}}
@keyframes hvpop{0%,16%{opacity:0;transform:scale(.4)}20%,93%{opacity:1;transform:scale(1)}100%{opacity:0}}
.hv-chat{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.hv-q{align-self:flex-end;background:var(--blue);color:#fff;font-size:13px;font-weight:600;padding:8px 13px;border-radius:12px 12px 3px 12px;max-width:85%;opacity:0;animation:hvq 10s var(--ease-out) infinite}
.hv-a{align-self:flex-start;background:var(--card);color:var(--ink);font-size:13px;font-weight:600;padding:8px 13px;border-radius:12px 12px 12px 3px;max-width:88%;display:flex;gap:8px;align-items:baseline;opacity:0;animation:hva 10s var(--ease-out) infinite}
.hv-ai{flex:none;background:var(--blue);color:#fff;font-size:9.5px;font-weight:800;letter-spacing:.05em;padding:2px 6px;border-radius:5px}
@keyframes hvq{0%,40%{opacity:0;transform:translateY(8px)}46%,94%{opacity:1;transform:none}100%{opacity:0}}
@keyframes hva{0%,52%{opacity:0;transform:translateY(8px)}58%,94%{opacity:1;transform:none}100%{opacity:0}}
.hv-badge{position:absolute;bottom:-16px;right:-12px;background:var(--ink);color:#fff;font-size:13px;font-weight:800;padding:10px 16px;border-radius:99px;box-shadow:0 10px 26px rgba(10,13,18,.3);opacity:0;animation:hvbadge 10s var(--ease-out) infinite}
.hv-badge b{color:var(--green)}
@keyframes hvbadge{0%,68%{opacity:0;transform:translateY(10px) scale(.92)}74%,96%{opacity:1;transform:none}100%{opacity:0}}
@media (max-width:520px){.hv-badge{right:4px}}
@media (prefers-reduced-motion: reduce){
  .hv-track i,.hv-chk,.hv-q,.hv-a,.hv-badge{animation:none !important}
  .hv-track i{width:100%}
  .hv-chk,.hv-q,.hv-a,.hv-badge{opacity:1}
}

/* ---- documentpagina's (juridisch) ---- */
.prose{max-width:760px;margin:0 auto;padding:70px 20px 90px}
.prose h1{font-size:clamp(28px,3.4vw,38px);margin-bottom:26px}
.prose h2{font-size:22px;margin:38px 0 12px}
.prose h3{font-size:18px;margin:28px 0 10px}
.prose p{margin:0 0 14px}
.prose ul,.prose ol{margin:0 0 14px;padding-left:22px}
.prose li{margin-bottom:6px}
.prose table{border-collapse:collapse;width:100%;margin:0 0 18px;font-size:15px}
.prose td,.prose th{border:1px solid var(--line);padding:8px 10px;text-align:left}

/* ---- embeds (demo, kaart) ---- */
.embed-wrap{background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 18px 44px rgba(10,20,50,.10)}
.embed-wrap iframe{display:block;width:100%;border:0}

/* ---- contact ---- */
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:26px;align-items:stretch}
@media (max-width:880px){.contact-grid{grid-template-columns:1fr}}
.contact-card{display:flex;flex-direction:column;gap:6px}
.contact-card .clabel{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-top:16px}
.contact-card .cval{font-size:16.5px;font-weight:600;color:var(--ink)}
.contact-card a.cval{text-decoration:none}
.contact-card a.cval:hover{color:var(--blue)}

/* ---- leadformulieren ---- */
.lead-form{display:grid;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.lead-form b{font-size:15.5px;color:var(--ink)}
.lead-form input,.lead-form textarea{font:inherit;font-size:15px;color:var(--ink);background:var(--ground);border:1.5px solid var(--line);border-radius:8px;padding:11px 14px;width:100%}
.lead-form input:focus,.lead-form textarea:focus{outline:none;border-color:var(--blue)}
.lead-form .btn{justify-self:start}
.form-melding{font-size:14.5px;margin:0}
.form-melding.ok{color:var(--green);font-weight:700}
.form-melding.err{color:#D93025}

/* ---- cookiebanner (consent.js) ---- */
.cc{position:fixed;left:0;right:0;bottom:0;z-index:300;padding:0;pointer-events:none}
.cc-kaart{pointer-events:auto;background:var(--paper);border-top:1px solid var(--line);padding:22px 20px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -18px 44px rgba(10,20,50,.14);transform:translateY(110%);transition:transform .32s var(--ease-out)}
.cc.cc-in .cc-kaart{transform:none}
.cc-kop{font-size:17px;font-weight:800;margin-bottom:8px}
.cc-tekst{font-size:14.5px;line-height:1.6;margin-bottom:16px;color:var(--body)}
.cc-tekst a{color:var(--blue);text-decoration:underline}
.cc-knoppen{display:grid;grid-template-columns:1fr;gap:10px}
.cc-knoppen .btn{width:100%;min-width:0;white-space:normal;padding:12px 14px;font-size:15px}
@media (min-width:480px){.cc-knoppen{grid-template-columns:1fr 1fr}}
.cc-knoppen .btn:hover{transform:none}
.cc-link{display:block;margin:14px auto 0;background:none;border:none;font:inherit;font-size:14px;font-weight:600;color:var(--muted);text-decoration:underline;cursor:pointer;padding:4px 8px}
.cc-link:hover{color:var(--ink)}
.cc-opties{display:grid;gap:14px;margin:0 0 18px;padding:16px 0 4px;border-top:1px solid var(--line)}
.cc-opties[hidden]{display:none}
.cc-cat-kop{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer}
.cc-cat-uitleg{font-size:13.5px;line-height:1.55;color:var(--muted);margin-top:4px;max-width:46ch}
.cc-vast{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green);flex:none}
.cc-schakel{position:relative;flex:none;width:46px;height:26px}
.cc-schakel input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.cc-knop{position:absolute;inset:0;border-radius:26px;background:#C7CCD6;transition:background .2s var(--ease-out);pointer-events:none}
.cc-knop::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s var(--ease-out)}
.cc-schakel input:checked + .cc-knop{background:var(--blue)}
.cc-schakel input:checked + .cc-knop::after{transform:translateX(20px)}
.cc-schakel input:focus-visible + .cc-knop{outline:3px solid var(--blue);outline-offset:2px}
body.cc-open .mobi-cta{display:none !important}
@media (min-width:700px){
  .cc{left:24px;right:auto;bottom:24px;max-width:432px}
  .cc-kaart{border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 22px 54px rgba(10,20,50,.18);transform:translateY(calc(100% + 32px))}
  .cc.cc-in .cc-kaart{transform:none}
}
@media (prefers-reduced-motion:reduce){.cc-kaart{transition:none}}

/* voorkeurenknop in de footer */
.cc-heropen{background:none;border:none;font:inherit;font-size:13px;color:#8a8a8a;text-decoration:underline;cursor:pointer;padding:0}
.cc-heropen:hover{color:#fff}

/* ---- poort voor ingesloten content van derden ---- */
.embed-poort{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:32px 24px;background:var(--card)}
.embed-poort-kop{font-size:15px;font-weight:800;color:var(--ink)}
.embed-poort-tekst{font-size:14px;color:var(--muted);max-width:38ch;line-height:1.55}
.embed-poort .btn{margin-top:6px}

/* ---- cookietabel + voorkeurenknop in het cookiebeleid ---- */
[data-cookietabel]{width:100%;border-collapse:collapse;margin:18px 0;font-size:14.5px;display:block;overflow-x:auto}
[data-cookietabel] th,[data-cookietabel] td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
[data-cookietabel] th{color:var(--ink);font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase;background:var(--card);white-space:nowrap}
[data-cookietabel] td:first-child{font-weight:700;color:var(--ink);white-space:nowrap}
[data-cookie-voorkeuren]{font:inherit;font-weight:700;font-size:15px;color:var(--blue);background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}
[data-cookie-voorkeuren]:hover{color:var(--blue-deep)}
