/* Expert Exact — v37 afwerking (11-10-2026, Claude, op feedback van Nitien).
   Eén laag bovenop de v34/v35-stijl: uitlijning, typografie en rustige micro-animaties.
   Geen nieuwe kleuren of lettertypen: alleen het bestaande palet (navy #0c1c2e, blauw #00639a,
   oranje #aa6620, groen #1f8a5b, crème #fffefa/#faf8f4) en Archivo / IBM Plex Sans / IBM Plex Mono.
   Selectors beginnen met `html body` zodat deze laag wint van de later geladen v34-ritme/-formaat. */

/* ── Basis: animatie-tokens en in-beeld-onthulling ───────────────────────────────── */
html body{--v37-ease:cubic-bezier(.2,.8,.2,1)}
@media (prefers-reduced-motion:no-preference){
  html body .v37-op{opacity:0;transform:translateY(14px);transition:opacity .6s var(--v37-ease),transform .6s var(--v37-ease);transition-delay:var(--v37-d,0s)}
  html body .v37-op.v37-in{opacity:1;transform:none}
}

/* ── 1. Kopbalk: telefoonnummer trekt rustig de aandacht ──────────────────────────── */
html body .v34-telkop{position:relative;transition:color .2s}
html body .v34-telkop svg{transform-origin:50% 60%}
html body .v34-telkop::after{content:'';position:absolute;left:30px;right:0;bottom:-6px;height:2px;background:#aa6620;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--v37-ease)}
@media (hover:hover){html body .v34-telkop:hover{color:#aa6620}html body .v34-telkop:hover::after{transform:scaleX(1)}}
@media (prefers-reduced-motion:no-preference){
  html body .v34-telkop svg{animation:v37bel 7s ease-in-out 2.5s infinite}
  html body .v34-telkop:hover svg{animation:v37bel-kort .6s ease-in-out}
}
@keyframes v37bel{0%,86%,100%{transform:rotate(0)}88%{transform:rotate(-14deg)}90%{transform:rotate(12deg)}92%{transform:rotate(-10deg)}94%{transform:rotate(8deg)}96%{transform:rotate(-4deg)}98%{transform:rotate(0)}}
@keyframes v37bel-kort{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(4deg)}}

/* ── 2. Hero: kenmerken met vinkjes, rechtsonder leesbaar en verzorgd ─────────────── */
html body .v34-hero .v34-usps{align-items:center;padding:24px 0 28px;font:600 15px/1.3 'IBM Plex Sans',sans-serif;gap:0}
html body .v34-hero .v34-usps>span:not(.v34-credit){display:inline-flex;align-items:center;gap:10px}
html body .v34-hero .v34-usps>span:not(.v34-credit)::before{content:'';flex:0 0 18px;width:18px;height:18px;border-radius:50%;background:rgba(195,224,238,.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c3e0ee' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4L18 8'/%3E%3C/svg%3E") center/11px no-repeat;box-shadow:inset 0 0 0 1px rgba(195,224,238,.45)}
html body .v34-hero .v34-usps>span+span:not(.v34-credit){margin-left:24px;padding-left:24px}
html body .v34-hero .v34-usps .v34-credit{opacity:1;font:600 12.5px/1 'IBM Plex Mono',monospace!important;letter-spacing:.22em;color:#c3e0ee;display:inline-flex;align-items:center;gap:12px;padding:10px 16px;border:1px solid rgba(195,224,238,.32)!important;border-radius:999px;background:rgba(12,28,46,.28);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
@media (max-width:1024px){html body .v34-hero .v34-usps{font-size:13.5px;padding:18px 0 22px}html body .v34-hero .v34-usps>span+span:not(.v34-credit){margin-left:14px;padding-left:14px}}

/* ── 3. "Waar kunnen wij u mee helpen?" — echte kop, grotere keuzes, levende iconen ── */
html body .v37-hulpkop{font:700 clamp(19px,1.6vw,22px)/1.2 'Archivo',sans-serif!important;letter-spacing:-.015em;color:#1f1d1a!important;margin:6px 0 16px!important}
html body .v34-routes{gap:14px}
html body .v34-route{padding:18px 22px;border:1px solid #e2dcd2;border-radius:10px;background:#fffefa;gap:16px;transition:transform .25s var(--v37-ease),box-shadow .25s,border-color .25s,background .25s}
html body .v34-route+.v34-route{border-left:1px solid #e2dcd2}
html body .v34-route>svg{box-sizing:content-box;width:24px;height:24px;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--acc) 10%,#fffefa);transition:transform .35s var(--v37-ease),background .25s}
html body .v34-route strong{font-size:18.5px!important}
html body .v34-route small{font-size:14.5px!important;color:#57514a!important}
html body .v34-route .v34-arr{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid color-mix(in srgb,var(--acc) 35%,transparent);font-size:16px;transition:transform .25s var(--v37-ease),background .25s,color .25s,border-color .25s}
@media (hover:hover){
  html body .v34-route:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--acc) 40%,#e2dcd2);box-shadow:0 18px 34px -24px rgba(12,28,46,.45);background:#fff}
  html body .v34-route:hover>svg{transform:translateY(-2px) rotate(-6deg);background:color-mix(in srgb,var(--acc) 16%,#fffefa)}
  html body .v34-route:hover .v34-arr{background:var(--acc);color:#fff;border-color:var(--acc);transform:translateX(3px)}
}
@media (prefers-reduced-motion:no-preference){
  html body .v34-route[href*="spoed"]>svg{animation:v37wekker 6s ease-in-out 3s infinite;transform-origin:50% 55%}
  html body .v34-route[href*="offerte"]>svg{animation:v37dak 6s ease-in-out 1s infinite}
  html body .v34-route[href*="zakelijk"]>svg{animation:v37dak 6s ease-in-out 2s infinite}
}
@keyframes v37wekker{0%,88%,100%{transform:rotate(0)}90%{transform:rotate(-10deg)}92%{transform:rotate(10deg)}94%{transform:rotate(-8deg)}96%{transform:rotate(6deg)}98%{transform:rotate(0)}}
@keyframes v37dak{0%,90%,100%{transform:translateY(0)}94%{transform:translateY(-4px)}97%{transform:translateY(0)}}
@media (max-width:1024px){html body .v34-routes{gap:10px}html body .v34-route+.v34-route{border-top:1px solid #e2dcd2}html body .v34-route{padding:14px 16px}html body .v34-route strong{font-size:17px!important}html body .v34-route small{font-size:13.5px!important}}

/* ── 4. Storingsdienst: kicker, kop en tekst in balans ─────────────────────────────── */
html body #spoed .v34-k{font-size:13px!important;letter-spacing:.16em}
html body #spoed .v34-spoed h2{font-size:clamp(24px,2.3vw,31px)!important;line-height:1.18!important;letter-spacing:-.02em;margin-top:6px}
html body #spoed .v34-spoed h2+p{font-size:17px!important;line-height:1.6;color:#3f3a33;margin-top:14px!important}

html body #spoed .v34-spoed>div:first-child{align-self:center}
/* ── 5. Uurtarief: waarom dit tarief nu geldt, en een rustige puls ─────────────────── */
html body .trr.is-nu strong[data-nu]::before{content:attr(data-nu)}
@media (prefers-reduced-motion:no-preference){
  html body .trr.is-nu strong::before{animation:v37nu 2.6s ease-out infinite}
  html body .v34-tar .trnu-m{animation:v37gloed 2.6s ease-out infinite}
}
@keyframes v37nu{0%{box-shadow:0 0 0 0 rgba(232,163,90,.55)}70%{box-shadow:0 0 0 8px rgba(232,163,90,0)}100%{box-shadow:0 0 0 0 rgba(232,163,90,0)}}
@keyframes v37gloed{0%{box-shadow:0 0 0 0 rgba(216,133,47,.5)}70%{box-shadow:0 0 0 7px rgba(216,133,47,0)}100%{box-shadow:0 0 0 0 rgba(216,133,47,0)}}

/* ── 6. Vakgebieden: kop en intro gelijk uitgelijnd, voetregel leesbaar ─────────────── */
html body #diensten .v34-split{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;gap:32px 56px!important;align-items:end!important}
html body #diensten .v34-split>p{justify-self:end!important;font-size:17px!important;line-height:1.6!important;max-width:44ch!important;margin:0 0 6px!important;padding-left:18px;border-left:2px solid #00639a}
@media (max-width:1024px){html body #diensten .v34-split{grid-template-columns:1fr!important;gap:14px!important}html body #diensten .v34-split>p{justify-self:start!important}}
html body .v37-noot{display:inline-flex!important;align-items:center;gap:10px;font:600 15.5px/1.35 'Archivo',sans-serif!important;color:#1f1d1a!important;letter-spacing:-.005em}
html body .v37-noot::before{content:'';width:22px;height:2px;background:#00639a;flex:0 0 auto}

/* ── 7. Pijltjes: één verzorgde vorm (cirkel), animeert bij hover ──────────────────── */
html body :is(.v34-d,.v34-tools a,.v34-bizl a) .v34-arr,html body .v34-bizl a .bz-arr{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border-radius:50%;border:1px solid color-mix(in srgb,var(--acc,#00639a) 30%,transparent);color:var(--acc,#00639a);font-size:14px!important;line-height:1;transition:transform .25s var(--v37-ease),background .25s,color .25s,border-color .25s}
html body .v34-bizl a .bz-arr{--acc:#00639a}
@media (hover:hover){
  html body :is(.v34-d,.v34-tools a,.v34-bizl a):hover :is(.v34-arr,.bz-arr){background:var(--acc,#00639a);border-color:var(--acc,#00639a);color:#fff;transform:translate(2px,-2px)}
  html body .v34-tools a:hover .v34-arr[style*="→"],html body .v34-tools a[href*="laadpaal"]:hover .v34-arr{transform:translateX(3px)}
}

/* ── 8. Snelkoppelingen onder de vakgebieden: tegels i.p.v. losse regel ─────────────── */
html body .v34-tools{gap:12px!important;border-top:0!important;padding:8px 0 24px!important}
html body .v34-tools a{justify-content:flex-start;gap:12px!important;padding:14px 16px;border:1px solid #e2dcd2!important;border-radius:10px;background:#fffefa;font:600 14.5px/1.25 'Archivo',sans-serif!important;transition:transform .25s var(--v37-ease),box-shadow .25s,border-color .25s}
html body .v34-tools a .v34-arr{margin-left:auto!important}
html body .v34-tools a>svg{transition:transform .35s var(--v37-ease)}
@media (hover:hover){html body .v34-tools a:hover{transform:translateY(-2px);box-shadow:0 14px 28px -22px rgba(12,28,46,.45);border-color:#cfc5b6!important}html body .v34-tools a:hover>svg{transform:scale(1.1) rotate(-6deg)}}
@media (max-width:1024px){html body .v34-tools{gap:10px!important}html body .v34-tools a{min-height:56px;border-bottom:1px solid #e2dcd2!important}}

/* ── 9. Zakelijk: kaarten met lucht, iconen en pijl die meebewegen ──────────────────── */
html body .v34-bizl a{transition:transform .25s var(--v37-ease),box-shadow .25s,background .25s}
html body .v34-bizl a .bz-ico{transition:transform .35s var(--v37-ease)}
@media (hover:hover){html body .v34-bizl a:hover{transform:translateY(-3px);box-shadow:0 18px 34px -24px rgba(12,28,46,.45)}html body .v34-bizl a:hover .bz-ico{transform:translateY(-2px) rotate(-6deg)}}

/* ── 10. Exact-methode: label in de foto, accentwoord en 1-2-3 ──────────────────────── */
html body .v34-mlbl{display:inline-flex;align-items:center;gap:10px;padding:9px 14px 9px 12px;border-radius:999px;background:rgba(12,28,46,.62);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 8px 22px -12px rgba(0,0,0,.55);color:#fff!important;font:600 12px/1 'IBM Plex Mono',monospace!important;letter-spacing:.16em}
html body .v34-mlbl::before{content:'';width:8px;height:8px;border-radius:50%;background:#7fc4e6;box-shadow:0 0 0 3px rgba(127,196,230,.25)}
/* accentwoord in koppen: overal dezelfde rustige onderstreping die bij in beeld komen intekent */
html body main h2 em:is(.v34-em-a,.v34-em-b,.v34-em-c){color:var(--acc,#00639a);font-style:normal;background:linear-gradient(90deg,color-mix(in srgb,var(--acc,#00639a) 85%,#fff),color-mix(in srgb,var(--acc,#00639a) 45%,#fff)) 0 92%/0 .11em no-repeat;padding-bottom:.02em;transition:background-size .7s var(--v37-ease) .15s}
html body main h2 em:is(.v34-em-a,.v34-em-b,.v34-em-c):is(.in,.v37-in){background-size:100% .11em}
html body main :is(.v34-contact,.v34-hero) h2 em:is(.v34-em-a,.v34-em-b,.v34-em-c){color:#9fd0e8;background-image:linear-gradient(90deg,#9fd0e8,rgba(159,208,232,.45))}
@media (prefers-reduced-motion:reduce){html body main h2 em:is(.v34-em-a,.v34-em-b,.v34-em-c){background-size:100% .11em;transition:none}}
/* 1-2-3: bij in beeld komen tikken de cijfers één voor één aan; hover laat de stap oplichten */
html body .v34-tijd li{transition:transform .3s var(--v37-ease)}
html body .v34-tijd .tn{position:relative}
html body .v34-tijd .tn::after{content:'';position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--acc);opacity:0}
@media (prefers-reduced-motion:no-preference){
  html body .v34-tijd.aan li .tn::after{animation:v37ring 1.1s ease-out both}
  html body .v34-tijd.aan li:nth-child(2) .tn::after{animation-delay:.35s}
  html body .v34-tijd.aan li:nth-child(3) .tn::after{animation-delay:.7s}
}
@keyframes v37ring{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(1.55)}}
@media (hover:hover){html body .v34-tijd li:hover{transform:translateX(4px)}html body .v34-tijd li:hover .tn{transform:scale(1.08)}}

/* ── 11. Case-blok: eigen ruimte en een verzorgde kaart ─────────────────────────────── */
html body #praktijk{border-top:1px solid #ece6db}
html body #praktijk>.v34-wrap{padding-top:64px!important;padding-bottom:72px!important}
html body #praktijk .v34-work{border-radius:14px;border:1px solid #e6ddcf;box-shadow:0 30px 60px -44px rgba(12,28,46,.45);background:linear-gradient(135deg,#f3ece2,#efe7dc)}
html body #praktijk .v34-work image-slot{transition:transform .9s var(--v37-ease)}
@media (hover:hover){html body #praktijk .v34-work:hover image-slot{transform:scale(1.03)}}
@media (max-width:1024px){html body #praktijk>.v34-wrap{padding-top:36px!important;padding-bottom:40px!important}}

/* ── 12. Waarom + vergelijker: verticaal gecentreerd, onthulling en hover ───────────── */
@media (min-width:1025px){
  html body #waarom .v34-split{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:64px!important;align-items:center!important}
  html body #waarom .v34-split>*:last-child{justify-self:stretch!important;max-width:none!important}
}
html body #waarom>.v34-wrap{padding-top:72px!important;padding-bottom:72px!important}
html body #waarom ul li{align-items:flex-start}
html body #waarom ul li>span:first-child{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:rgba(31,138,91,.12);font-size:13px;margin-top:1px}
html body .v34-dverg{border-radius:12px!important;overflow:hidden;box-shadow:0 34px 70px -48px rgba(12,28,46,.55);transition:transform .35s var(--v37-ease),box-shadow .35s}
@media (hover:hover){
  html body .v34-dverg:hover{transform:translateY(-4px);box-shadow:0 40px 80px -46px rgba(12,28,46,.6)}
  html body .v34-dverg .v34-vr:not(.v34-vh){transition:background .2s}
  html body .v34-dverg .v34-vr:not(.v34-vh):hover{background:#fbf8f2}
}
html body .v34-dverg .v34-vr span[role=rowheader]{font-size:14px!important}
html body .v34-dverg .v34-vr :is(.vee,.vel){font-size:14.5px!important}
@media (prefers-reduced-motion:no-preference){
  html body .v34-dverg .v34-vr{opacity:0;transform:translateX(18px);transition:opacity .5s var(--v37-ease),transform .5s var(--v37-ease)}
  html body .v34-dverg.v37-in .v34-vr{opacity:1;transform:none}
  html body .v34-dverg.v37-in .v34-vr:nth-child(2){transition-delay:.08s}
  html body .v34-dverg.v37-in .v34-vr:nth-child(3){transition-delay:.16s}
  html body .v34-dverg.v37-in .v34-vr:nth-child(4){transition-delay:.24s}
  html body .v34-dverg.v37-in .v34-vr:nth-child(5){transition-delay:.32s}
  html body .v34-dverg.v37-in .v34-vr:nth-child(6){transition-delay:.4s}
}

/* ── 13. Kosten vooraf: velden en knop op één lijn, pijl van de keuzelijst netjes ────── */
html body #kosten .ks-grid{align-items:center}
html body #kosten .ks-kaart{border-radius:12px;padding:30px 30px 28px;box-shadow:0 30px 60px -46px rgba(12,28,46,.5)}
html body #kosten .ks-form{grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr) auto;gap:14px;align-items:end}
html body #kosten .ks-veld{gap:8px;align-content:end}
html body #kosten .ks-veld>span{font:600 13.5px/1.2 'Archivo',sans-serif;color:#3f3a33;min-height:16px}
html body #kosten .ks-veld :is(select,input){height:54px;min-height:54px;border-radius:8px;border-color:#cfc6b8;padding:0 16px;transition:border-color .2s,box-shadow .2s}
html body #kosten .ks-veld select{-webkit-appearance:none;appearance:none;padding-right:46px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300639a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 16px center/18px no-repeat;cursor:pointer}
html body #kosten .ks-veld :is(select,input):hover{border-color:#00639a}
html body #kosten .ks-veld :is(select,input):focus{box-shadow:0 0 0 4px rgba(0,99,154,.14)}
html body #kosten .ks-form .v34-btn{height:54px;min-height:54px;border-radius:8px;padding:0 24px;white-space:nowrap}
@media (max-width:620px){html body #kosten .ks-form{grid-template-columns:1fr}html body #kosten .ks-form .v34-btn{width:100%;justify-content:center}}
/* de merkenregel staat nu sitebreed als carrousel boven de voet */
html body #projecten .v34-merken{display:none!important}

/* ── 14. Merkencarrousel (sitebreed, boven de voet) ─────────────────────────────────── */
html body .v37-merken{background:#fffefa;border-top:1px solid #e2dcd2;padding:22px 0}
html body .v37-merken .v34-wrap{display:flex;align-items:center;gap:28px}
html body .v37-merken .v37-mk{flex:0 0 auto;font:600 12px/1 'IBM Plex Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#57514a;display:inline-flex;align-items:center;gap:10px}
html body .v37-merken .v37-mk::before{content:'';width:22px;height:2px;background:#00639a}
html body .v37-merken .v37-band{position:relative;flex:1 1 auto;min-width:0;overflow:hidden;padding:4px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
html body .v37-merken .v37-rail{display:flex;width:max-content;gap:12px}
html body .v37-merken .v37-merk{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:46px;padding:0 20px;border:1px solid #e2dcd2;border-radius:999px;background:#fff;color:#3f3a33;font:700 15px/1 'Archivo',sans-serif;letter-spacing:.01em;white-space:nowrap;text-decoration:none;transition:color .2s,border-color .2s,transform .2s}
html body .v37-merken .v37-merk img{height:22px;width:auto;max-width:96px;object-fit:contain;filter:grayscale(1);opacity:.85;transition:filter .2s,opacity .2s}
@media (hover:hover){html body .v37-merken .v37-merk:hover{color:#00639a;border-color:#9fc3d8}html body .v37-merken .v37-merk:hover img{filter:none;opacity:1}}
@media (prefers-reduced-motion:no-preference){
  html body .v37-merken .v37-rail.v37-loopt{animation:v37merken var(--v37-duur,40s) linear infinite}
  html body .v37-merken .v37-band:hover .v37-rail,html body .v37-merken .v37-band:focus-within .v37-rail,html body .v37-merken.v37-stil .v37-rail{animation-play-state:paused}
}
@media (prefers-reduced-motion:reduce){html body .v37-merken .v37-rail{flex-wrap:wrap;width:auto}html body .v37-merken .v37-rail [aria-hidden="true"]{display:none}}
@keyframes v37merken{from{transform:translateX(0)}to{transform:translateX(var(--v37-schuif,calc(-50% - 6px)))}}
@media (max-width:720px){html body .v37-merken .v34-wrap{flex-direction:column;align-items:flex-start;gap:14px}html body .v37-merken .v37-band{width:100%}}

/* ── 15. Afsluitende CTA: knoppen in een strak raster met beweging ─────────────────── */
html body .v34-contact .v34-in{align-items:center!important}
html body .v34-contact .v34-cslot{width:100%;max-width:520px;justify-self:end;gap:14px!important}
html body .v34-contact .v34-cslot>.v34-btn{width:100%;justify-content:space-between;min-height:58px;border-radius:10px;font-size:16px;box-shadow:0 18px 36px -22px rgba(0,0,0,.6);transition:transform .25s var(--v37-ease),filter .25s,box-shadow .25s}
html body .v34-contact .v34-cslot>.v34-btn span[aria-hidden]{transition:transform .25s var(--v37-ease)}
@media (hover:hover){html body .v34-contact .v34-cslot>.v34-btn:hover{transform:translateY(-2px);filter:brightness(1.07)}}
html body .v34-contact .v34-cknop{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px!important;width:100%;position:relative;padding-top:30px}
html body .v34-contact .v34-cknop::before{content:attr(data-l);position:absolute;left:0;top:0;font:600 12px/1 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#b3d5e5}
html body .v34-contact .v34-cknop a{justify-content:center;min-height:54px;border-radius:10px;padding:0 14px;font-size:14.5px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
html body .v34-contact .v34-cknop .bel{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.4);color:#fff}
html body .v34-contact .v34-cknop .ml{grid-column:auto!important}
@media (max-width:620px){html body .v34-contact .v34-cknop{grid-template-columns:1fr 1fr}html body .v34-contact .v34-cknop .bel{grid-column:1/-1!important}html body .v34-contact .v34-cknop :is(.wa,.ml,[href*="wa.me"],[href^="mailto"]){grid-column:auto!important}}

/* ── 16. Voet: meer lucht tussen de kolommen en een eigen kaart voor openingstijden ── */
@media (min-width:1025px){html body .v34-voet .v34-fgrid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,.95fr)!important;gap:72px!important}}
html body .v34-voet .v34-uren{max-width:360px!important;width:100%;box-sizing:border-box;margin-top:22px;padding:18px 20px 16px;border:1px solid #e2dcd2;border-radius:12px;background:#fffefa;box-shadow:0 18px 40px -34px rgba(12,28,46,.45)}
html body .v34-voet .v34-urk{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
html body .v34-voet .v34-urk>span:first-child{font:600 12px/1 'IBM Plex Mono',monospace!important;letter-spacing:.18em;text-transform:uppercase;color:#57514a!important}
html body .v34-voet .v34-urst:not(:empty){display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;font:600 12px/1 'IBM Plex Sans',sans-serif!important;background:#f1ece4;color:#57514a!important}
html body .v34-voet .v34-urst.open{background:rgba(31,138,91,.12);color:#1a7a50!important}
html body .v34-voet .v34-urst::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
@media (prefers-reduced-motion:no-preference){html body .v34-voet .v34-urst.open::before{animation:v37nu 2.4s ease-out infinite}}
html body .v34-voet .v34-ur24{margin:12px -20px 0!important;padding:14px 20px!important;background:linear-gradient(90deg,rgba(170,102,32,.1),rgba(170,102,32,.03));border-top:1px solid #efe1cf;align-items:center}
html body .v34-voet .v34-ur24>span{display:inline-flex;align-items:center;gap:9px;font-weight:600;color:#1f1d1a}
html body .v34-voet .v34-ur24>span::before{content:'';width:18px;height:18px;flex:0 0 18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23aa6620' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center/contain no-repeat}
html body .v34-voet .v34-ur24 strong,html body .v34-voet .v34-ur24 strong a{color:#aa6620!important;font-weight:700}
html body .v34-voet p.v34-urbron{margin:12px 0 0!important}

/* ── 17. Chatballon bij Zack ────────────────────────────────────────────────────────── */
html body .v37-zb{position:fixed;z-index:96;visibility:hidden;max-width:min(270px,calc(100vw - 110px));padding:12px 34px 12px 15px;border-radius:14px 14px 4px 14px;background:#0c1c2e;color:#fff;font:500 14.5px/1.35 'IBM Plex Sans',sans-serif;box-shadow:0 18px 40px -16px rgba(12,28,46,.6);cursor:pointer;opacity:0;transform:translateY(8px) scale(.96);transform-origin:100% 100%;pointer-events:none;transition:opacity .35s var(--v37-ease),transform .35s var(--v37-ease),visibility 0s linear .35s}
html body .v37-zb.v37-toon{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition-delay:0s}
html body .v37-zb button:focus-visible{outline:2px solid #9fd0e8;outline-offset:2px}
html body .v37-zb::after{content:'';position:absolute;right:-6px;bottom:10px;width:12px;height:12px;background:#0c1c2e;transform:rotate(45deg);border-radius:2px}
html body .v37-zb.v37-boven{border-radius:14px 14px 4px 14px;max-width:min(290px,calc(100vw - 32px))}
html body .v37-zb.v37-boven::after{right:16px;bottom:-6px}
html body .v37-zb strong{display:block;font:700 14.5px/1.3 'Archivo',sans-serif;color:#9fd0e8;margin-bottom:2px}
html body .v37-zb button{position:absolute;top:-4px;right:-4px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;z-index:0;color:#fff;font:600 14px/1 'IBM Plex Sans',sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center}
html body .v37-zb button::before{content:'';position:absolute;inset:10px;border-radius:50%;background:rgba(255,255,255,.1);z-index:-1;transition:background .2s}
html body .v37-zb button:hover::before{background:rgba(255,255,255,.22)}
@media (prefers-reduced-motion:reduce){html body .v37-zb{transition:none}}

/* ── 17. Mobiel en tablet: niets breder dan het scherm, rustige opbouw ─────────────── */
html body #spoed .v34-spoed>*,html body .v34-tools>*{min-width:0}
@media (max-width:820px){
  html body .v34-hero .v34-usps .v34-credit{display:none!important}
  html body .v34-hero .v34-usps{display:flex!important;flex-direction:column;align-items:flex-start;gap:9px}
  html body .v34-hero .v34-usps>span+span:not(.v34-credit){margin-left:0!important;padding-left:0!important;border-left:0!important}
  html body .v34-hero .v34-usps>span:not(.v34-credit)::before{content:''!important;display:block!important}
}
@media (max-width:620px){
  html body .v34-tools{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .v34-tools a{padding:12px 12px;gap:10px!important;font-size:14px!important;min-height:64px}
  html body .v34-tools a .v34-arr{display:none!important}
  html body .v34-tar .trr{flex-wrap:wrap;row-gap:8px}
  html body .v34-tar .trr .trl{flex:1 1 0;min-width:0}
  html body .v34-tar .trr strong{white-space:normal;margin-left:auto;text-align:right}
  html body .v34-tar .trr strong.ee-bedrag-leeg{flex:1 0 100%;margin-left:0;text-align:left;display:flex;align-items:center;flex-wrap:wrap;gap:4px 0}
  html body .v34-tar .trr strong.ee-bedrag-leeg .ee-bedrag-bel{padding:0!important;display:inline-flex!important;align-items:center;min-height:40px}
}
html body .v37-merken .v37-merk:focus-visible{outline:2px solid #00639a;outline-offset:2px}
html body .v37-merken .v37-stop{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1px solid #e2dcd2;background:#fff;color:#3f3a33;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s}
html body .v37-merken .v37-stop::before{content:'';width:10px;height:11px;border-left:3px solid currentColor;border-right:3px solid currentColor;box-sizing:border-box}
html body .v37-merken.v37-stil .v37-stop::before{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent currentColor;margin-left:3px}
@media (hover:hover){html body .v37-merken .v37-stop:hover{border-color:#00639a;color:#00639a}}
@media (max-width:720px){html body .v37-merken .v37-stop{position:absolute;right:18px;top:11px}html body .v37-merken{position:relative}}

/* ── 18. Telefoon: sectiekoppen gecentreerd (kicker, titel, korte intro); kaarten en lijsten blijven links ── */
@media (max-width:620px){
  html body main section:not(#spoed) .v34-k:has(+ h2){display:flex!important;justify-content:center;text-align:center;margin-left:auto;margin-right:auto}
  html body main section:not(#spoed) .v34-k:has(+ h2)::after{content:'';width:22px;height:2px;background:currentColor;flex:0 0 auto}
  html body main section:not(#spoed) .v34-k + h2{text-align:center;margin-left:auto;margin-right:auto}
  html body main section:not(#spoed) p.v37-intro:not(#ee-r){text-align:center!important;margin-left:auto!important;margin-right:auto!important}
  html body main section:not(#spoed) p.v37-intro + a.v34-tl{display:flex!important;justify-content:center;width:fit-content;margin-left:auto;margin-right:auto}
  html body #diensten .v34-split>p:not(#ee-r){text-align:center!important;justify-self:center!important;border-left:0!important;padding-left:0!important;margin-left:auto;margin-right:auto}
  html body main p.v37-hulpkop:not(#ee-r){text-align:center!important}
  html body main p.v37-noot:not(#ee-r){display:flex!important;justify-content:center;text-align:center!important}
  html body .v37-noot::after{content:'';width:22px;height:2px;background:#00639a;flex:0 0 auto}
  html body .v34-contact .v34-cslot>.v34-btn{justify-content:center}
  html body .v34-contact .v34-cknop::before{left:0;right:0;text-align:center}
}

/* ── 19. Pijlen: micro-animaties (knoppen, tekstlinks en pijlcirkels) ────────────────── */
html body .v37-pi{display:inline-block;font-style:normal;line-height:1;transition:transform .25s var(--v37-ease)}
html body .v37-ring{overflow:hidden}
@media (prefers-reduced-motion:no-preference){
  html body :is(a,button):is(:hover,:focus-visible) .v37-pi[data-r="r"]{animation:v37pijl-r .55s var(--v37-ease)}
  html body :is(a,button):is(:hover,:focus-visible) .v37-pi[data-r="ru"]{animation:v37pijl-ru .55s var(--v37-ease)}
  html body :is(a,button):is(:hover,:focus-visible) .v37-pi[data-r="rd"]{animation:v37pijl-rd .55s var(--v37-ease)}
  html body :is(a,button):is(:hover,:focus-visible) .v37-pi[data-r="d"]{animation:v37pijl-d .55s var(--v37-ease)}
  html body :is(a,button):active .v37-pi[data-r="r"]{transform:translateX(5px);transition-duration:.08s}
  html body :is(a,button):active .v37-pi[data-r="ru"]{transform:translate(3px,-3px);transition-duration:.08s}
  html body :is(a,button):active .v37-pi[data-r="d"]{transform:translateY(4px);transition-duration:.08s}
  /* hoofdknoppen: elke 7 s een klein duwtje naar rechts, stopt zodra de muis erop staat */
  html body .v37-pi.v37-duw{animation:v37duw 7s ease-in-out 3s infinite}
  html body :is(a,button):is(:hover,:focus-visible) .v37-pi.v37-duw{animation:v37pijl-r .55s var(--v37-ease)}
}
/* het pijltje schuift eruit en komt aan de andere kant weer binnen */
@keyframes v37pijl-r{0%{transform:none;opacity:1}45%{transform:translateX(12px);opacity:0}46%{transform:translateX(-12px);opacity:0}100%{transform:none;opacity:1}}
@keyframes v37pijl-ru{0%{transform:none;opacity:1}45%{transform:translate(10px,-10px);opacity:0}46%{transform:translate(-10px,10px);opacity:0}100%{transform:none;opacity:1}}
@keyframes v37pijl-rd{0%{transform:none;opacity:1}45%{transform:translate(10px,10px);opacity:0}46%{transform:translate(-10px,-10px);opacity:0}100%{transform:none;opacity:1}}
@keyframes v37pijl-d{0%{transform:none;opacity:1}45%{transform:translateY(10px);opacity:0}46%{transform:translateY(-10px);opacity:0}100%{transform:none;opacity:1}}
@keyframes v37duw{0%,82%,100%{transform:none}86%{transform:translateX(6px)}90%{transform:none}94%{transform:translateX(3px)}97%{transform:none}}
