:root{
    --blue:#004169;--blue-700:#013457;--blue-900:#012639;
    --grey:#939393;--grey-200:#e7e9ec;--grey-100:#f4f6f8;
    --orange:#fb7600;--orange-600:#e06a00;--ink:#1c2430;--white:#fff;
    --radius:14px;--shadow:0 10px 30px rgba(1,38,57,.10);--shadow-lg:0 24px 60px rgba(1,38,57,.16);--maxw:1180px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);line-height:1.6;background:var(--white);-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  h1,h2,h3{line-height:1.15;letter-spacing:-.02em;color:var(--blue)}
  h2{font-size:clamp(26px,3.4vw,40px);font-weight:800}
  .eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
  .lead{color:#4a5563;font-size:18px;max-width:62ch}
  section{padding:84px 0}
  .section-head{max-width:720px;margin-bottom:44px}
  .grid{display:grid;gap:22px}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-4{grid-template-columns:repeat(4,1fr)}
  .cols-2{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px}
  .bg-grey{background:var(--grey-100)}
  .btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;padding:11px 20px;border-radius:10px;cursor:pointer;border:2px solid transparent;transition:.2s;white-space:nowrap}
  .btn-orange{background:var(--orange);color:#fff}.btn-orange:hover{background:var(--orange-600);transform:translateY(-1px)}
  .btn-ghost{background:transparent;color:var(--blue);border-color:var(--grey-200)}.btn-ghost:hover{border-color:var(--blue)}
  .btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}.btn-outline-light:hover{background:#fff;color:var(--blue);border-color:#fff}
  .ico{width:16px;height:16px;display:inline-block}

  /* Top utility bar */
  .util{background:var(--blue-900);color:#b9cdda;font-size:13.5px}
  .util .wrap{display:flex;align-items:center;justify-content:flex-end;height:38px}
  .util a{color:#cddbe6}.util a:hover{color:#fff}
  .util .right{display:flex;align-items:center;gap:18px}
  .lang{display:inline-flex;border:1px solid rgba(255,255,255,.25);border-radius:7px;overflow:hidden}
  .lang button{background:transparent;color:#cddbe6;border:0;padding:3px 9px;font-size:12.5px;font-weight:700;cursor:pointer}
  .lang button.active{background:var(--orange);color:#fff}

  /* Nav */
  header.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid transparent;transition:.28s}
  header.nav.scrolled{box-shadow:0 6px 24px rgba(1,38,57,.08);border-bottom-color:var(--grey-200)}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;gap:18px}
  .brand{display:flex;align-items:center}
  .logo-img{height:44px;width:auto;display:block}
  nav.menu{display:flex;align-items:center;gap:26px;margin-left:auto}
  nav.menu a.link{font-weight:600;font-size:15px;color:#33404e;position:relative;padding:6px 0}
  nav.menu a.link::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--orange);transition:.25s}
  nav.menu a.link:hover{color:var(--blue)}nav.menu a.link:hover::after{width:100%}
  .icon-btn{background:none;border:0;cursor:pointer;color:var(--blue);padding:6px;display:grid;place-items:center;border-radius:8px}
  .icon-btn:hover{background:var(--grey-100)}
  .hamburger{display:none;background:none;border:0;cursor:pointer;padding:8px}
  .hamburger span{display:block;width:24px;height:2px;background:var(--blue);margin:5px 0;transition:.3s}

  /* Search overlay */
  .search-ov{position:fixed;inset:0;background:rgba(1,38,57,.55);backdrop-filter:blur(3px);z-index:200;display:none;padding-top:16vh}
  .search-ov.open{display:block}
  .search-box{max-width:640px;margin:0 auto;background:#fff;border-radius:14px;padding:10px;display:flex;gap:8px;box-shadow:var(--shadow-lg)}
  .search-box input{flex:1;border:0;font-size:18px;padding:14px 12px;outline:none}
  .search-hint{max-width:640px;margin:12px auto 0;color:#dce8f0;font-size:13.5px;text-align:center}

  /* Hero */
  .hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(1200px 500px at 78% -10%,#0a5a8a 0%,transparent 60%),linear-gradient(160deg,var(--blue) 0%,var(--blue-900) 100%)}
  .hero::before{content:"";position:absolute;inset:0;opacity:.10;background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(900px 500px at 75% 0%,#000,transparent 75%)}
  .hero-inner{position:relative;padding:88px 24px 92px}
  .hero .eyebrow{color:#7fc3ea}
  .hero h1{color:#fff;font-size:clamp(34px,5.2vw,58px);font-weight:800;max-width:17ch}
  .hero h1 .accent{color:var(--orange)}
  .hero p.lead{color:#d3e4f0;margin:22px 0 30px}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap}
  .hero-badges{display:flex;gap:26px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15)}
  .hero-badges div{font-size:14px;color:#bcd4e4}.hero-badges b{display:block;color:#fff;font-size:15px;font-weight:700}

  /* Certifications strip */
  .certs{background:#fff;border-bottom:1px solid var(--grey-200)}
  .certs .wrap{display:flex;flex-wrap:wrap;gap:14px 34px;align-items:center;justify-content:center;padding:20px 24px}
  .cert{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--blue);font-size:15px}
  .cert .dot{width:34px;height:34px;border-radius:9px;background:var(--grey-100);display:grid;place-items:center;color:var(--orange)}
  .cert small{display:block;color:var(--grey);font-weight:600;font-size:12px}

  /* Cards */
  .card{background:#fff;border:1px solid var(--grey-200);border-radius:var(--radius);padding:28px;transition:.28s;position:relative;overflow:hidden}
  .card::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:.28s}
  .card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:transparent}.card:hover::before{transform:scaleX(1)}
  .card .icon{width:52px;height:52px;border-radius:12px;background:var(--grey-100);display:grid;place-items:center;margin-bottom:18px;color:var(--blue);transition:.28s}
  .card:hover .icon{background:var(--blue);color:#fff}
  .card h3{font-size:20px;margin-bottom:8px}.card p{color:#57626f;font-size:15px}
  .tag{display:inline-block;font-size:12px;font-weight:700;color:var(--orange);background:#fff3e8;padding:3px 10px;border-radius:999px;margin-top:14px}

  /* Engagement band */
  .engage{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:34px}
  .engage .pill{background:#fff;border:1px solid var(--grey-200);border-radius:999px;padding:12px 22px;font-weight:700;color:var(--blue);display:flex;align-items:center;gap:10px}
  .engage .pill span{color:var(--orange)}

  /* Counters */
  .counters{display:grid;grid-template-columns:1fr;max-width:360px;margin:0 auto;gap:22px}
  .counter{background:linear-gradient(150deg,var(--blue),var(--blue-900));color:#fff;border-radius:16px;padding:34px 28px;text-align:center;box-shadow:var(--shadow)}
  .counter .num{font-size:52px;font-weight:900;line-height:1;letter-spacing:-.02em}
  .counter .num .plus{color:var(--orange)}
  .counter .lab{margin-top:8px;color:#bcd4e4;font-weight:600;letter-spacing:.02em}

  /* Clients */
  .clients{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:center}
  .clients .logo{padding:16px 26px;border:1px solid var(--grey-200);border-radius:12px;color:#516070;font-weight:800;font-size:17px;background:#fff;text-align:center;transition:.2s}
  .clients .logo:hover{border-color:var(--orange);color:var(--blue);transform:translateY(-3px)}

  /* Voor wie / branches */
  .chips{display:flex;flex-wrap:wrap;gap:12px}
  .chip-lg{background:#fff;border:1px solid var(--grey-200);border-radius:12px;padding:12px 15px;font-weight:700;font-size:14.5px;color:var(--blue);display:flex;align-items:center;gap:9px;white-space:nowrap}
  .chip-lg .c{width:10px;height:10px;border-radius:50%;background:var(--orange)}

  /* Digital twin split */
  .twin{border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1fr 1fr;min-height:320px}
  .twin .side{padding:34px;display:flex;flex-direction:column;justify-content:center;color:#fff;position:relative}
  .twin .design{background:linear-gradient(150deg,#0a5a8a,var(--blue-900))}
  .twin .build{background:linear-gradient(150deg,#3a4652,#1c2430)}
  .twin .side .k{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--orange)}
  .twin .side h3{color:#fff;font-size:24px;margin:8px 0}
  .twin .side p{color:#cfd8e0;font-size:14.5px}
  .twin .arrow{position:absolute;right:-18px;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border-radius:50%;background:var(--orange);display:grid;place-items:center;color:#fff;box-shadow:var(--shadow)}
  .twin .ph{margin-top:14px;font-size:12.5px;color:#93a7b6;font-style:italic}

  /* Projects */
  .proj{overflow:hidden;padding:0}
  .proj .top{height:140px;background:linear-gradient(135deg,#0a5a8a,var(--blue-900));position:relative}
  .proj .top .badge{position:absolute;left:16px;top:16px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:12px;font-weight:700;padding:4px 11px;border-radius:999px;backdrop-filter:blur(4px)}
  .proj .top::after{content:"Projectbeeld";position:absolute;inset:0;display:grid;place-items:center;color:#ffffff44;font-weight:700;letter-spacing:.2em;font-size:12px}
  .proj .body{padding:20px 22px 24px}.proj h3{font-size:17px;margin-bottom:4px}.proj p{color:#57626f;font-size:14px}

  /* News */
  .news-card{overflow:hidden;padding:0}
  .news-card .thumb{height:150px;background:linear-gradient(135deg,#0a5a8a,var(--blue-900));position:relative}
  .news-card .thumb::after{content:"Beeld";position:absolute;inset:0;display:grid;place-items:center;color:#ffffff55;font-weight:700;letter-spacing:.2em;font-size:13px}
  .news-card .body{padding:22px 24px 26px}.news-card .date{font-size:13px;color:var(--grey);font-weight:600}
  .news-card h3{font-size:18px;margin:6px 0 10px}.news-card a.more{color:var(--orange);font-weight:700;font-size:14px}

  ul.check{list-style:none;margin-top:20px;display:grid;gap:12px}
  ul.check li{display:flex;gap:12px;align-items:flex-start;color:#3c4653;font-size:15.5px}
  ul.check li .tick{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;margin-top:2px}

  /* Portal */
  .portal{background:linear-gradient(120deg,var(--blue-900),var(--blue));color:#fff;border-radius:20px;padding:52px;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;box-shadow:var(--shadow-lg)}
  .portal h2{color:#fff}.portal p{color:#cfe0ec;max-width:52ch;margin-top:10px}
  .portal .lock{width:64px;height:64px;border-radius:16px;background:rgba(255,255,255,.12);display:grid;place-items:center;margin-bottom:14px}

  /* Contact + company details */
  .field label{font-size:13px;font-weight:600;color:#33404e}
  .field input,.field textarea{width:100%;margin-top:6px;padding:11px 12px;border:1px solid var(--grey-200);border-radius:9px;font-family:inherit;font-size:15px}
  .company{display:grid;gap:14px;margin-top:26px}
  .company .row{display:flex;gap:12px;align-items:flex-start;color:#33404e;font-size:15px}
  .company .row .ic{flex:0 0 auto;width:34px;height:34px;border-radius:9px;background:#fff;border:1px solid var(--grey-200);display:grid;place-items:center;color:var(--blue)}
  .editable{border-bottom:1px dashed var(--grey);}

  /* Footer */
  footer{background:var(--blue-900);color:#c6d5e0;padding:60px 0 26px;margin-top:20px}
  .foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,.12)}
  footer h4{color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
  footer a.f{display:block;color:#b7cad8;padding:5px 0;font-size:14.5px}footer a.f:hover{color:var(--orange)}
  .foot-wm{display:inline-flex;flex-direction:column;line-height:1}
  .foot-wm .wm{color:#fff;font-weight:800;font-size:26px;letter-spacing:.02em}
  .foot-wm .wm-sub{color:var(--orange);font-weight:600;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;margin-top:5px}
  .foot-brand p{color:#93aabc;margin-top:14px;font-size:14px;max-width:34ch}
  .foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:18px;font-size:13px;color:#7f98ab}
  .foot-bottom a{color:#9fb4c4}.foot-bottom a:hover{color:var(--orange)}

  /* Cookie banner */
  .cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:180;background:#fff;border:1px solid var(--grey-200);border-radius:14px;box-shadow:var(--shadow-lg);padding:18px 20px;display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;max-width:920px;margin:0 auto}
  .cookie p{font-size:14px;color:#3c4653;max-width:60ch}.cookie a{color:var(--orange);font-weight:700}
  .cookie .acts{display:flex;gap:10px;flex-wrap:wrap}
  .btn-sm{padding:9px 16px;font-size:14px;border-radius:9px}

  /* Live chat */
  .chat-btn{position:fixed;right:20px;bottom:20px;z-index:170;width:60px;height:60px;border-radius:50%;background:var(--orange);color:#fff;border:0;cursor:pointer;box-shadow:var(--shadow-lg);display:grid;place-items:center;transition:.2s}
  .chat-btn:hover{transform:scale(1.06)}
  .chat-panel{position:fixed;right:20px;bottom:92px;z-index:170;width:320px;max-width:calc(100vw - 40px);background:#fff;border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden;display:none}
  .chat-panel.open{display:block}
  .chat-panel .head{background:var(--blue);color:#fff;padding:16px 18px}
  .chat-panel .head b{font-size:15px}.chat-panel .head small{display:block;color:#bcd4e4;font-size:12.5px}
  .chat-panel .body{padding:16px 18px;font-size:14px;color:#3c4653}
  .chat-panel .bubble{background:var(--grey-100);border-radius:12px;padding:12px 14px;margin-bottom:10px}
  .chat-panel .foot{padding:12px 16px;border-top:1px solid var(--grey-200);display:flex;gap:8px}
  .chat-panel .foot input{flex:1;border:1px solid var(--grey-200);border-radius:9px;padding:9px 11px;font-size:14px}

  /* Concept flag */
  .concept-flag{position:fixed;left:16px;bottom:16px;z-index:160;background:var(--blue-900);color:#cfe0ec;font-size:12px;font-weight:600;padding:7px 13px;border-radius:999px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.14)}
  .concept-flag b{color:#fff}

  .reveal{opacity:0;transform:translateY(26px);transition:.7s cubic-bezier(.2,.7,.2,1)}
  .reveal.in{opacity:1;transform:none}

  @media(max-width:980px){.cols-4{grid-template-columns:1fr 1fr}.counters{grid-template-columns:1fr}.twin{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:900px){.cols-3{grid-template-columns:1fr 1fr}.cols-2{grid-template-columns:1fr;gap:34px}}
  @media(max-width:680px){
    nav.menu{position:fixed;inset:112px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 22px;box-shadow:var(--shadow);transform:translateY(-160%);transition:.32s;border-bottom:1px solid var(--grey-200)}
    nav.menu.open{transform:none}
    nav.menu a.link{padding:13px 0;border-bottom:1px solid var(--grey-100)}
    .hamburger{display:block}.cols-3,.cols-4{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr}.portal{padding:34px}section{padding:60px 0}
    .util .left{display:none}
  }

  .logo-slider{overflow:hidden;position:relative;padding:8px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
  .ltrack{display:flex;gap:20px;width:max-content;animation:lscroll 34s linear infinite}
  .logo-slider:hover .ltrack{animation-play-state:paused}
  .lslide{flex:0 0 auto;width:190px;height:96px;background:#fff;border:1px solid var(--grey-200);border-radius:12px;display:grid;place-items:center;padding:16px;transition:.25s}
  .lslide:hover{border-color:var(--orange);box-shadow:var(--shadow)}
  .lslide img{max-height:48px;max-width:150px;width:auto;object-fit:contain;display:block}
  @keyframes lscroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 10px))}}
  @media(max-width:680px){.lslide{width:150px;height:82px}.lslide img{max-height:40px;max-width:120px}}

  .icon .ico-mask{width:30px;height:30px;background:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
  .hero-bg{position:absolute;inset:0;z-index:1;overflow:hidden}
  .hero-bg .slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;animation:heroFade 24s infinite;will-change:opacity}
  .hero-bg .slide:nth-child(2){animation-delay:6s}
  .hero-bg .slide:nth-child(3){animation-delay:12s}
  .hero-bg .slide:nth-child(4){animation-delay:18s}
  @keyframes heroFade{0%{opacity:0}3%{opacity:1}22%{opacity:1}25%{opacity:0}100%{opacity:0}}
  .hero-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(95deg,rgba(1,38,57,.95) 0%,rgba(1,38,57,.82) 42%,rgba(1,38,57,.48) 100%)}
  .hero-inner{z-index:3}
  @media(prefers-reduced-motion:reduce){.hero-bg .slide{animation:none}.hero-bg .slide:first-child{opacity:1}}

  .btn-login{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:14px;color:var(--blue);padding:8px 13px;border-radius:8px;border:1px solid var(--grey-200);transition:.2s;white-space:nowrap}
  .btn-login:hover{border-color:var(--blue);background:var(--grey-100)}
  .btn-login .ico{width:15px;height:15px}
  #voorwie .cols-2{align-items:start}
  .map-wrap{border-radius:16px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--grey-200)}
  .map-wrap iframe{width:100%;height:340px;border:0;display:block}

  .twinfade{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:760/1297;max-width:430px;margin:0 auto;background:var(--blue-900);cursor:pointer}
  .twinfade img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
  .tf-design{opacity:1;transition:opacity 1.1s ease}
  .twinfade.revealed .tf-design{opacity:0}
  .twinfade:hover .tf-design{opacity:1}
  .tf-badge{position:absolute;top:16px;left:16px;padding:7px 14px;border-radius:999px;font-size:13px;font-weight:700;color:#fff;transition:opacity .6s ease}
  .tf-design-b{background:rgba(1,38,57,.78);opacity:1}
  .tf-real-b{background:rgba(251,118,0,.92);opacity:0}
  .twinfade.revealed .tf-design-b{opacity:0}
  .twinfade.revealed .tf-real-b{opacity:1}
  .twinfade:hover .tf-design-b{opacity:1}
  .twinfade:hover .tf-real-b{opacity:0}
  .tf-note{position:absolute;bottom:14px;right:16px;background:rgba(0,0,0,.5);color:#dbe6ee;font-size:11.5px;padding:5px 10px;border-radius:8px}
  .tf-hint{text-align:center;color:var(--grey);font-size:13.5px;margin-top:14px}
  @media(prefers-reduced-motion:reduce){.tf-design{transition:none}}

  .quote{background:#fff;border:1px solid var(--grey-200);border-radius:16px;padding:28px;position:relative;transition:.28s;display:flex;flex-direction:column}
  .quote:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:transparent}
  .quote .qmark{font-size:52px;line-height:.5;color:var(--orange);font-family:Georgia,serif;font-weight:700;margin-bottom:14px}
  .quote blockquote{color:#3c4653;font-size:16px;font-style:italic;margin-bottom:18px;flex:1}
  .quote figcaption b{display:block;color:var(--blue);font-size:15px}
  .quote figcaption span{color:var(--grey);font-size:13.5px}

  .hero-certs{gap:30px}
  .hero-certs>div{display:flex;align-items:center;gap:11px}
  .hero-certs svg{width:26px;height:26px;color:var(--orange);flex:0 0 auto}
  .hero-certs b{display:block;color:#fff;font-size:15px;font-weight:700}
  .hero-certs span{display:block;color:#bcd4e4;font-size:13px}
  .proj-link{display:block}
  .proj .more{display:inline-block;margin-top:10px;color:var(--orange);font-weight:700;font-size:14px}

  .tsec{background:var(--grey-100);padding:78px 0}
  .tsec-title{text-align:center;color:var(--orange);text-transform:uppercase;letter-spacing:.2em;font-size:17px;font-weight:800;margin-bottom:44px}
  .tstage{position:relative;max-width:1000px;margin:0 auto}
  .tslide{display:none}
  .tslide.active{display:block;animation:tfade .5s ease}
  @keyframes tfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  .tbubble{position:relative;background:#fff;border:1px solid var(--grey-200);border-radius:14px;padding:40px 48px;box-shadow:var(--shadow-lg)}
  .tbubble blockquote{color:#2b333d;font-style:italic;font-size:19px;line-height:1.75}
  .tbubble .tfold{position:absolute;top:0;right:0;width:0;height:0;border-top:24px solid var(--orange);border-left:24px solid transparent;border-top-right-radius:14px}
  .tbubble::after{content:"";position:absolute;left:56px;bottom:-15px;width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:16px solid #fff}
  .tauthor{display:flex;align-items:center;gap:15px;margin-top:32px;padding-left:20px}
  .tavatar{width:54px;height:54px;border-radius:50%;background:#fff;border:1px solid var(--grey-200);display:grid;place-items:center;color:var(--blue);flex:0 0 auto;box-shadow:0 6px 16px rgba(1,38,57,.10)}
  .tauthor b{display:block;color:var(--blue);font-size:16px}
  .tauthor span{display:block;color:var(--grey);font-size:14px}
  .tdots{display:flex;gap:9px;justify-content:center;margin-top:38px}
  .tdot{width:10px;height:10px;border-radius:50%;background:var(--grey-200);border:0;cursor:pointer;transition:.2s;padding:0}
  .tdot.active{background:var(--orange);transform:scale(1.15)}
  .tnote{text-align:center;color:var(--grey);font-size:12.5px;margin-top:22px}
  @media(max-width:680px){.tbubble{padding:28px 26px}.tbubble blockquote{font-size:17px}}

  html[lang="en"] .proj .top::after{content:"Project image"}
  html[lang="en"] .news-card .thumb::after{content:"Image"}

  /* Tweetalige pagina-inhoud: toon alleen de actieve taal (werkt met lang="nl-NL" en "en") */
  /* Standaard Nederlands (ongeacht WordPress-sitetaal); Engels alleen als html.ind-en actief is */
  .lang-en{display:none}
  html.ind-en .lang-en{display:block}
  html.ind-en .lang-nl{display:none}
  .lang-nl .wp-block-group,.lang-en .wp-block-group{margin:0}

  /* ============ Binnenpagina's (page, single, project) ============ */
  .page-main{min-height:50vh}
  .page-hero{position:relative;overflow:hidden;background:radial-gradient(1000px 460px at 80% -20%,#0a5a8a 0%,transparent 60%),linear-gradient(160deg,var(--blue) 0%,var(--blue-900) 100%);color:#fff;padding:64px 0 56px}
  .page-hero>.wrap{position:relative;z-index:3}
  .page-hero-media{position:absolute;inset:0;z-index:1;background-size:cover;background-position:center right;opacity:.5;-webkit-mask-image:linear-gradient(108deg,transparent 30%,rgba(0,0,0,.55) 50%,#000 80%);mask-image:linear-gradient(108deg,transparent 30%,rgba(0,0,0,.55) 50%,#000 80%)}
  .page-hero.has-media::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(108deg,var(--blue) 32%,rgba(1,38,57,.35) 58%,rgba(1,38,57,0) 100%)}
  .page-hero h1{color:#fff;font-size:clamp(30px,4.4vw,46px);font-weight:800;margin-top:6px}
  .page-hero .eyebrow{color:#7fc3ea}
  .page-hero-sub{color:#cfe0ec;font-size:17px;margin-top:12px}
  .page-hero .crumb{font-size:13.5px;color:#9fc0d6;margin-bottom:14px}
  .page-hero .crumb a{color:#cfe0ec}.page-hero .crumb a:hover{color:var(--orange)}
  .badge-solid{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:12.5px;font-weight:700;padding:5px 13px;border-radius:999px}
  .page-wrap{max-width:820px}
  .page-thumb{margin:0 0 28px;border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
  .page-thumb img{width:100%;height:auto;display:block}
  .proj-heroimg{max-width:var(--maxw);margin:-34px auto 0;padding:0 24px}
  .proj-heroimg img{width:100%;height:auto;display:block;border-radius:16px;box-shadow:var(--shadow-lg)}
  .page-content{color:#3c4653;font-size:16.5px;line-height:1.8}
  .page-content h2{margin:6px 0 16px}
  .page-content h3{color:var(--blue);margin:26px 0 10px;font-size:21px}
  .page-content p{margin-bottom:16px}
  .page-content ol{margin:0 0 16px 22px}
  .page-content li{margin-bottom:8px}
  /* Opsommingen met de oranje vink-symbolen van de homepage */
  .page-content ul{list-style:none;margin:0 0 18px;padding:0}
  .page-content ul li{position:relative;padding-left:34px;margin-bottom:11px}
  .page-content ul li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;line-height:1}
  .page-content img{max-width:100%;height:auto;border-radius:12px;margin:14px 0}
  .page-content a{color:var(--orange);font-weight:600}
  .page-content blockquote{border-left:3px solid var(--orange);padding-left:18px;color:#4a5563;font-style:italic;margin:16px 0}
  /* Certificeringsblok met dezelfde symbolen als de homepage-hero */
  .page-content .cert-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px 26px;margin:10px 0 24px}
  .page-content .cert-item{display:flex;align-items:center;gap:13px}
  .page-content .cert-ico{flex:0 0 auto;color:var(--orange);display:grid;place-items:center}
  .page-content .cert-ico svg{width:30px;height:30px;display:block}
  .page-content .cert-txt{display:block}
  .page-content .cert-txt b{display:block;color:var(--blue);font-size:16.5px;font-weight:800;line-height:1.25}
  .page-content .cert-txt span{display:block;color:var(--grey);font-size:14px}
  /* Fotoslider op projectpagina's: galerij-blok als horizontale slider */
  .page-content .wp-block-gallery{display:flex!important;flex-wrap:nowrap;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;margin:6px 0 26px;-webkit-overflow-scrolling:touch}
  .page-content .wp-block-gallery figure{flex:0 0 auto;width:min(80%,520px);margin:0;scroll-snap-align:start}
  .page-content .wp-block-gallery img{width:100%;height:320px;object-fit:cover;border-radius:14px;display:block}
  .page-content .wp-block-gallery::-webkit-scrollbar{height:8px}
  .page-content .wp-block-gallery::-webkit-scrollbar-thumb{background:var(--grey-200);border-radius:8px}
  @media(max-width:680px){.page-content .wp-block-gallery figure{width:86%}.page-content .wp-block-gallery img{height:240px}}

  .proj-detail-grid{display:grid;grid-template-columns:1.7fr .9fr;gap:44px;align-items:start}
  .proj-aside{position:sticky;top:100px;display:grid;gap:20px}
  .facts{background:var(--grey-100);border:1px solid var(--grey-200);border-radius:16px;padding:26px}
  .facts h3{font-size:16px;margin-bottom:14px}
  .facts dl{display:grid;gap:12px}
  .facts .frow{display:grid;gap:2px;padding-bottom:12px;border-bottom:1px solid var(--grey-200)}
  .facts .frow:last-child{border-bottom:0;padding-bottom:0}
  .facts .fk{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--grey)}
  .facts .fv{font-size:15px;color:var(--ink);font-weight:600}
  .proj-cta{background:linear-gradient(150deg,var(--blue),var(--blue-900));color:#fff;border-radius:16px;padding:26px}
  .proj-cta h3{color:#fff;font-size:18px;margin-bottom:8px}
  .proj-cta p{color:#cfe0ec;font-size:14.5px;margin-bottom:16px}
  .page-pagination{margin-top:36px}
  .page-pagination .nav-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
  .page-pagination a,.page-pagination .current{padding:9px 15px;border-radius:9px;border:1px solid var(--grey-200);font-weight:700;color:var(--blue)}
  .page-pagination .current{background:var(--orange);color:#fff;border-color:var(--orange)}
  @media(max-width:900px){.proj-detail-grid{grid-template-columns:1fr;gap:30px}.proj-aside{position:static}}

  /* WordPress-basis */
  .screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
  .wp-caption{max-width:100%}
  .aligncenter{margin-left:auto;margin-right:auto;display:block}
  .admin-bar header.nav{top:32px}
  @media(max-width:782px){.admin-bar header.nav{top:46px}}

  /* Klikbare diensttegels */
  .card-link{display:block;color:inherit}
  .card-more{display:inline-block;margin-top:12px;color:var(--orange);font-weight:700;font-size:14px}

  /* Projectpagina-slider */
  .proj-gallery-sec{padding:46px 0 0}
  .pslider{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:var(--grey-100)}
  .pslides{position:relative;width:100%;aspect-ratio:16/9}
  .pslide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .55s ease;display:grid;place-items:center;pointer-events:none}
  .pslide.active{opacity:1;pointer-events:auto}
  .pslide img{width:100%;height:100%;object-fit:cover;display:block}
  .pnav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border:0;border-radius:50%;background:rgba(1,38,57,.5);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s}
  .pnav:hover{background:var(--blue)}
  .pnav.prev{left:14px}.pnav.next{right:14px}
  .pdots{position:absolute;left:0;right:0;bottom:14px;display:flex;gap:8px;justify-content:center;z-index:3}
  .pdot{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0;transition:.2s}
  .pdot.active{background:#fff;width:24px;border-radius:5px}
  @media(max-width:680px){.pnav{width:38px;height:38px;font-size:23px}.proj-gallery-sec{padding:30px 0 0}}
