  :root{
    --blue:#0732EF;
    --blue-deep:#051FA0;
    --ink:#0A1130;
    --ink-soft:#3A4266;
    --sky:#EEF1FE;
    --line:#D9DFF6;
    --paper:#FFFFFF;
    --volt:#C8F542;
    --radius:14px;
    --disp:'Space Grotesk',system-ui,sans-serif;
    --body:'Inter',system-ui,sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.6;font-size:16px}
  h1,h2,h3,h4{font-family:var(--disp);line-height:1.15;letter-spacing:-0.01em}
  a{color:var(--blue);text-decoration:none}
  a:hover{text-decoration:underline}
  img{max-width:100%}
  .wrap{max-width:1080px;margin:0 auto;padding:0 24px}
  .eyebrow{font-family:var(--disp);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
  .btn{display:inline-block;font-family:var(--disp);font-weight:600;font-size:15px;padding:12px 24px;border-radius:999px;border:2px solid var(--blue);cursor:pointer;transition:all .18s ease}
  .btn:hover{text-decoration:none;transform:translateY(-1px)}
  .btn-solid{background:var(--blue);color:#fff}
  .btn-solid:hover{background:var(--blue-deep);border-color:var(--blue-deep)}
  .btn-ghost{background:transparent;color:var(--blue)}
  .btn-ghost:hover{background:var(--sky)}
  .btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--volt);outline-offset:2px}

  /* ---------- Header ---------- */
  header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:68px}
  .logo{font-family:var(--disp);font-weight:700;font-size:21px;letter-spacing:.06em;color:var(--ink);display:flex;align-items:center;gap:10px}
  .logo:hover{text-decoration:none}
  .logo .bolt{width:26px;height:26px;display:inline-block}
  .nav-links{display:flex;align-items:center;gap:6px;list-style:none}
  .nav-links>li{position:relative}
  .nav-links a.navlink{display:block;padding:8px 14px;border-radius:8px;color:var(--ink-soft);font-weight:500;font-size:15px}
  .nav-links a.navlink:hover{background:var(--sky);color:var(--ink);text-decoration:none}
  .nav-links a.navlink.active{color:var(--blue);font-weight:600}
  .dropdown{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(10,17,48,.12);padding:8px;min-width:200px;display:none}
  li.has-dd:hover .dropdown,li.has-dd:focus-within .dropdown{display:block}
  .dropdown a{display:block;padding:9px 12px;border-radius:8px;color:var(--ink-soft);font-size:14.5px}
  .dropdown a:hover{background:var(--sky);color:var(--blue);text-decoration:none}
  .nav-cta{margin-left:10px}
  .hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px}
  .hamburger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;transition:.2s}
  .mobile-menu{display:none;border-top:1px solid var(--line);background:#fff;padding:12px 24px 20px}
  .mobile-menu a{display:block;padding:11px 4px;color:var(--ink);font-weight:500;border-bottom:1px solid var(--sky)}
  .mobile-menu a.sub{padding-left:22px;color:var(--ink-soft);font-weight:400}
  @media(max-width:820px){
    .nav-links{display:none}
    .hamburger{display:block}
    .mobile-menu.open{display:block}
  }

  /* ---------- Hero ---------- */
  .hero{background:linear-gradient(180deg,var(--ink) 0%,#101B4E 70%,#16247A 100%);color:#fff;position:relative;overflow:hidden}
  .hero-inner{padding:76px 0 44px;position:relative;z-index:2}
  .hero .eyebrow{color:var(--volt)}
  .hero h1{font-size:clamp(38px,6vw,64px);font-weight:700;margin:14px 0 18px;max-width:14ch}
  .hero p.lede{font-size:clamp(16px,2vw,19px);color:#C6CDEE;max-width:52ch;margin-bottom:30px}
  .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:26px}
  .hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.5)}
  .hero .btn-ghost:hover{background:rgba(255,255,255,.1)}
  .hero .btn-solid{border-color:var(--volt);background:var(--volt);color:var(--ink)}
  .hero .btn-solid:hover{background:#d9ff66;border-color:#d9ff66}
  .flexchart-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.13);border-radius:16px;padding:16px 18px 14px;backdrop-filter:blur(4px)}
  .fc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;flex-wrap:wrap}
  .fc-title{font-family:var(--disp);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#C6CDEE}
  .fc-chip{font-family:var(--disp);font-weight:600;font-size:13px;padding:5px 13px;border-radius:999px;background:#131C48;border:1px solid #2B3670;color:#fff;white-space:nowrap;transition:border-color .3s}
  .fc-batt{display:inline-flex;align-items:center;gap:8px;color:#C6CDEE;font-family:var(--disp);font-weight:600;font-size:12.5px;white-space:nowrap}
  .fc-batt svg{display:block}
  #flexchart{width:100%;height:auto;display:block}
  .fc-legend{display:flex;gap:8px 18px;flex-wrap:wrap;margin-top:6px;font-size:11.5px;color:#9AA4D8;font-family:var(--disp)}
  .fc-legend span{display:inline-flex;align-items:center;gap:7px}
  .fc-legend i{width:15px;height:3px;border-radius:2px;display:inline-block;flex:0 0 auto}
  @media(prefers-reduced-motion:reduce){
    .fade-up{animation:none !important;opacity:1 !important;transform:none !important}
  }
  .fade-up{opacity:0;transform:translateY(14px);animation:fadeup .7s ease forwards}
  @keyframes fadeup{to{opacity:1;transform:none}}
  .d1{animation-delay:.08s}.d2{animation-delay:.18s}.d3{animation-delay:.3s}

  /* ---------- Sections ---------- */
  section.block{padding:76px 0}
  section.block.tint{background:var(--sky)}
  .section-head{max-width:640px;margin-bottom:44px}
  .section-head h2{font-size:clamp(28px,4vw,38px);margin:10px 0 12px}
  .section-head p{color:var(--ink-soft)}

  .cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  @media(max-width:820px){.cards3{grid-template-columns:1fr}}
  .card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:12px;transition:box-shadow .2s,transform .2s}
  .card:hover{box-shadow:0 14px 36px rgba(7,50,239,.10);transform:translateY(-3px)}
  .card .stepnum{font-family:var(--disp);font-weight:700;font-size:14px;color:var(--blue);letter-spacing:.08em}
  .card h3{font-size:22px}
  .card p{color:var(--ink-soft);font-size:15px;flex:1}
  .card .btn{align-self:flex-start}
  .subsidy{display:inline-flex;align-items:center;gap:8px;background:var(--volt);color:var(--ink);font-family:var(--disp);font-weight:600;font-size:13px;padding:5px 12px;border-radius:999px;align-self:flex-start}
  .subsidy::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink)}

  .chips{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  @media(max-width:820px){.chips{grid-template-columns:1fr}}
  .chip{background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;padding:22px 24px}
  .chip h3{font-size:18px;margin-bottom:6px}
  .chip p{color:var(--ink-soft);font-size:14.5px}

  /* ---------- Flex strip ---------- */
  .strip{background:var(--blue);color:#fff;padding:54px 0;text-align:center}
  .strip h2{font-size:clamp(26px,4vw,36px);margin-bottom:16px}
  .strip .btn{background:var(--volt);color:var(--ink);border-color:var(--volt)}
  .strip .btn:hover{background:#d9ff66}

  /* ---------- Service detail pages ---------- */
  .page-hero{background:var(--ink);color:#fff;padding:64px 0 56px}
  .page-hero h1{font-size:clamp(32px,5vw,50px);margin:12px 0 14px;max-width:20ch}
  .page-hero p{color:#C6CDEE;max-width:60ch;font-size:17px}
  .page-hero .subsidy{margin-top:20px}
  .detail{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:8px}
  @media(max-width:820px){.detail{grid-template-columns:1fr}}
  .panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px}
  .panel h3{font-size:19px;margin-bottom:12px;display:flex;align-items:center;gap:10px}
  .panel h3::before{content:"";width:10px;height:10px;background:var(--blue);border-radius:3px;flex:0 0 auto}
  .panel ul{list-style:none;display:flex;flex-direction:column;gap:9px}
  .panel li{padding-left:22px;position:relative;color:var(--ink-soft);font-size:15px}
  .panel li::before{content:"→";position:absolute;left:0;color:var(--blue);font-weight:600}
  .panel p{color:var(--ink-soft);font-size:15px;margin-bottom:10px}
  .panel p:last-child{margin-bottom:0}
  .nextstep{background:var(--sky);border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-top:20px}
  .nextstep h3{font-size:19px;margin-bottom:10px}
  .nextstep p{color:var(--ink-soft);font-size:15px;margin-bottom:14px}

  /* ---------- About ---------- */
  .founders{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  @media(max-width:820px){.founders{grid-template-columns:1fr}}
  .founder{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px}
  @media(max-width:520px){.founder{grid-template-columns:1fr}}
  .avatar{width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--ink));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:700;font-size:34px;letter-spacing:.04em}
  .founder h3{font-size:24px}
  .founder .role{color:var(--blue);font-family:var(--disp);font-weight:600;font-size:14px;letter-spacing:.08em;text-transform:uppercase;margin:4px 0 14px}
  .founder p{color:var(--ink-soft);font-size:15.5px;margin-bottom:12px}

  /* ---------- FAQ ---------- */
  .faq-item{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:#fff;overflow:hidden}
  .faq-item summary{cursor:pointer;padding:18px 22px;font-family:var(--disp);font-weight:600;font-size:16.5px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-item summary::after{content:"+";font-size:22px;color:var(--blue);flex:0 0 auto}
  .faq-item[open] summary::after{content:"–"}
  .faq-item .answer{padding:0 22px 20px;color:var(--ink-soft);font-size:15px}

  /* ---------- Forms ---------- */
  form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media(max-width:640px){form .row{grid-template-columns:1fr}}
  .field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
  .field label{font-family:var(--disp);font-weight:600;font-size:13px;letter-spacing:.04em}
  .field input,.field textarea,.field select{font-family:var(--body);font-size:15px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}
  .field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--blue);border-color:var(--blue)}
  .form-ok{display:none;background:var(--volt);color:var(--ink);font-family:var(--disp);font-weight:600;padding:12px 16px;border-radius:10px;margin-top:12px}

  /* ---------- Footer / contact ---------- */
  footer{background:var(--ink);color:#B9C1E6;padding:70px 0 34px}
  footer h2{color:#fff;font-size:clamp(26px,3.5vw,34px);margin-bottom:10px}
  .foot-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:56px;margin-bottom:44px}
  @media(max-width:820px){.foot-grid{grid-template-columns:1fr;gap:36px}}
  .foot-contact p{margin-bottom:14px;font-size:15px}
  .foot-contact a{color:var(--volt)}
  .foot-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:26px}
  .foot-links a{color:#B9C1E6;font-size:14px}
  .foot-links a:hover{color:#fff}
  footer .field label{color:#DDE2F8}
  footer .field input,footer .field textarea{background:#141D4A;border-color:#2B3670;color:#fff}
  footer .field input::placeholder,footer .field textarea::placeholder{color:#6F7AB5}
  .foot-bottom{border-top:1px solid #232D62;padding-top:22px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#7681BC}

  .legal-note{background:var(--sky);border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:10px;padding:16px 20px;font-size:14px;color:var(--ink-soft);margin-bottom:30px}
  .prose{max-width:720px}
  .prose h2{font-size:24px;margin:34px 0 10px}
  .prose p{color:var(--ink-soft);margin-bottom:14px}

  /* ---------- toevoegingen voor de losse pagina's ---------- */
  body{background:var(--paper)}
  .crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:#9AA4D8;margin-bottom:14px;list-style:none}
  .crumbs li+li::before{content:"›";margin-right:6px;color:#6F7AB5}
  .crumbs a{color:#C6CDEE}
  .fc-caption{margin-top:12px;font-size:13.5px;line-height:1.55;color:#9AA4D8;max-width:72ch}
  .contact-lines{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:18px 0 6px;font-size:15px}
  .contact-lines dt{font-family:var(--disp);font-weight:600;color:#DDE2F8}
  .contact-lines dd{margin:0}
  .btn.btn-wa{background:var(--volt);border-color:var(--volt);color:var(--ink)}
  .btn.btn-wa:hover{background:#d9ff66;border-color:#d9ff66}
  .foot-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
  .foot-nav h3{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#DDE2F8;margin-bottom:10px}
  .foot-nav ul{list-style:none;display:grid;gap:7px}
  .foot-nav a{color:#B9C1E6;font-size:14px}
  .foot-nav a:hover{color:#fff}
  .alt-contact{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:15px}
  .faq-item .answer a{font-weight:600}

  /* ---------- taalschakelaar ---------- */
  .nav{gap:12px}
  .nav > nav{margin-left:auto}
  .lang-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;font-family:var(--disp);font-weight:600;font-size:13px;letter-spacing:.04em;flex:0 0 auto}
  .lang-switch a,.lang-switch .lang-current{display:block;padding:6px 10px;border-radius:999px;line-height:1}
  .lang-switch .lang-current{background:var(--ink);color:#fff}
  .lang-switch a{color:var(--ink-soft)}
  .lang-switch a:hover{background:var(--sky);color:var(--blue);text-decoration:none}
  @media(max-width:380px){.logo{font-size:18px;gap:8px}.lang-switch a,.lang-switch .lang-current{padding:6px 8px}}