/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.1.1793200984
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* =====================================================================
   VDH Online — all site CSS (Flerque). Units in em; colours only via kit globals.
   Globals: primary = yellow (CTA) · secondary = navy · text · accent = navy deep
   b0a0001 bg · b0a0002 band · b0a0003 card · b0a0004 muted · b0a0005 band soft
   b0a0006 line · b0a0007 footer · b0a0008 white (fixed) · b0a000a ink (fixed)
   Signature: the pipe "|" from the logo tagline.
   ===================================================================== */

/* ---------- 1. Base + Flerque Magic ---------- */
/* metric-matched fallback for Cal Sans: no layout shift when the web font swaps in */
@font-face { font-family: "Cal Sans Fallback"; src: local("Arial"), local("Helvetica Neue"), local("Roboto"); size-adjust: 99.6%; ascent-override: 100.4%; descent-override: 30.1%; line-gap-override: 0%; }
header { width: 100% !important; }
html, body { overflow-x: clip; overflow-y: visible; position: relative; }
::selection { background: var(--e-global-color-primary) !important; color: #1D1E40; }
body { font-size: 1.0vw !important; }
@media screen and (min-width: 1920px) { body { font-size: 20px !important; } }
@media screen and (min-width: 1101px) and (max-width: 1400px) { body { font-size: 1.2vw !important; } }
@media screen and (min-width: 768px) and (max-width: 1100px) { body { font-size: 1.8vw !important; } }
@media screen and (max-width: 767px) { body { font-size: max(15px, 3.2vw) !important; } }
body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html { scroll-padding-top: 8em; }
:focus-visible { outline: .1875em solid var(--e-global-color-text); outline-offset: .1875em; }
.vd-band :focus-visible, .vd-footer :focus-visible, .vd-utility :focus-visible { outline-color: var(--e-global-color-primary); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; } }
.vd-show-sm { display: none; }
@media (max-width: 767px) { .vd-hide-sm { display: none; } .vd-show-sm { display: inline; } }


/* ---------- 3. Type ---------- */
.elementor-heading-title { text-wrap: balance; }
.elementor-heading-title strong { font-weight: inherit; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-widget-text-editor a { font: inherit; color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.vd-h1 mark { background: none; color: inherit; background-image: linear-gradient(var(--e-global-color-primary), var(--e-global-color-primary)); background-size: 100% .32em; background-position: 0 88%; background-repeat: no-repeat; padding-inline: .04em; }
.vd-h1 .elementor-heading-title { max-width: 11em; }
.vd-h1--page .elementor-heading-title { font-size: clamp(2.2em, 1.5em + 2.4vw, 3.5em); }

/* eyebrow with the pipe */
.vd-eyebrow .elementor-heading-title { display: flex; align-items: center; gap: .6em; }
.vd-eyebrow .elementor-heading-title::before { content: ""; flex: none; width: .28em; height: 1.15em; background: var(--e-global-color-secondary); border-radius: 1px; }
.vd-eyebrow--ink .elementor-heading-title::before { background: #1D1E40 !important; }

/* text link with arrow + yellow underline */
.vd-link .elementor-heading-title a { display: inline-flex; gap: .5em; align-items: center; padding-bottom: .15em; border-bottom: .14em solid var(--e-global-color-primary); text-decoration: none; color: inherit; }
.vd-link .elementor-heading-title a::after { content: "→"; transition: translate .35s; }
.vd-link--down .elementor-heading-title a::after { content: "↓"; }
.vd-link .elementor-heading-title a:hover::after { translate: .3em 0; }

/* ---------- 4. Logo (pure text, like the brand mark) ---------- */
.vd-logo .elementor-heading-title { line-height: .9; }
.vd-logo a { display: inline-grid; justify-items: end; color: inherit; text-decoration: none; }
.vd-logo__name { font-size: 1.65em; letter-spacing: -.025em; white-space: nowrap; }
.vd-logo__tag { display: flex; align-items: center; margin-top: .3em; font-size: .72em; letter-spacing: -.01em; white-space: nowrap; }
.vd-logo__tag i { display: inline-block; width: 0; height: 1.15em; margin-inline: .26em; border-left: max(1px, .11em) solid currentColor; }
.vd-logo--light .elementor-heading-title { color: #fff !important; font-size: 1.3em; }

/* ---------- 5. Header ---------- */
.vd-utility .elementor-widget-text-editor p { margin: 0; }
.vd-utility__contact .elementor-icon-list-items { display: flex; flex-wrap: nowrap; gap: 1.5em; margin: 0 !important; }
.vd-utility__contact .elementor-icon-list-item { margin: 0 !important; }
.vd-utility__contact .elementor-icon-list-item::after { display: none; }
.vd-utility__contact a:hover .elementor-icon-list-text { text-decoration: underline; text-decoration-color: var(--e-global-color-primary); }
@media (max-width: 1024px) { .vd-utility__contact .elementor-icon-list-item:nth-child(2) { display: none; } }
.vd-mainbar { border-bottom: 1px solid var(--e-global-color-b0a0006); transition: padding .3s; }
.elementor-sticky--effects .vd-mainbar { padding-block: .5em !important; }

/* menu: the pipe slides up under hover/active */
.vd-nav .e-n-menu-title { position: relative; }
.vd-nav .e-n-menu-title::before { content: ""; position: absolute; left: .25em; top: 50%; width: .2em; height: 1.1em; background: var(--e-global-color-primary); translate: 0 -50%; scale: 1 0; transition: scale .25s; }
.vd-nav .e-n-menu-title:hover::before, .vd-nav .e-n-menu-item:not(:first-child) .e-n-menu-title.e-current::before, .vd-nav .e-n-menu-item:has([aria-expanded="true"]) .e-n-menu-title::before { scale: 1 1; }
.vd-nav .e-n-menu-toggle { width: 3em; height: 3em; padding: 0 !important; border-radius: .5em !important; border: 1px solid var(--e-global-color-b0a0006) !important; background: var(--e-global-color-b0a0003) !important; box-shadow: none !important; place-items: center; justify-content: center; }
.vd-nav .e-n-menu-toggle svg, .vd-nav .e-n-menu-toggle i { fill: var(--e-global-color-text) !important; color: var(--e-global-color-text) !important; }

/* mega panel */
.vd-mega { box-shadow: 0 .9em 2.2em rgb(25 26 56 / .14); }
.vd-mega-link { position: relative; text-decoration: none; border-bottom: 1px solid var(--e-global-color-b0a0006); transition: padding .25s; }
.vd-mega-link::before { content: ""; position: absolute; left: 0; top: .8em; bottom: .8em; width: .2em; background: var(--e-global-color-primary); scale: 1 0; transition: scale .25s; }
.vd-mega-link::after { content: "→"; position: absolute; right: .9em; top: 50%; translate: -.4em -50%; opacity: 0; transition: .25s; color: var(--e-global-color-text); }
.vd-mega-link:hover, .vd-mega-link:focus-visible { padding-left: 1.4em !important; }
.vd-mega-link:hover::before, .vd-mega-link:focus-visible::before { scale: 1 1; }
.vd-mega-link:hover::after, .vd-mega-link:focus-visible::after { opacity: 1; translate: 0 -50%; }
.vd-mega-group a:hover .elementor-icon-list-text { text-decoration: underline; text-decoration-color: var(--e-global-color-primary); text-decoration-thickness: .15em; }
.vd-mega-preview { position: relative; border-radius: .875em; overflow: hidden; background: #23244B; }
.vd-mega-preview::after { content: ""; position: absolute; left: 1em; top: 1em; bottom: 1em; width: .35em; background: #FFD23F; border-radius: 1px; z-index: 2; }
.vd-mega-preview .vd-mega-img img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 0 !important; }
.vd-mega-preview .vd-mega-img:not(.vd-mega-img--1) { position: absolute; inset: 0; opacity: 0; transition: opacity .25s; }
.vd-mega-img--1 { transition: opacity .25s; }
.vd-mega:has(.vd-mega-link--2:hover) .vd-mega-img--2, .vd-mega:has(.vd-mega-link--3:hover) .vd-mega-img--3, .vd-mega:has(.vd-mega-link--4:hover) .vd-mega-img--4,
.vd-mega:has(.vd-mega-link--5:hover) .vd-mega-img--5, .vd-mega:has(.vd-mega-link--6:hover) .vd-mega-img--6 { opacity: 1; }
.vd-mega:has(.vd-mega-link--2:hover, .vd-mega-link--3:hover, .vd-mega-link--4:hover, .vd-mega-link--5:hover, .vd-mega-link--6:hover) .vd-mega-img--1 { opacity: 0; }
.vd-mega-help strong { display: block; color: var(--e-global-color-text); }
@media (max-width: 1024px) {
  .vd-nav .e-n-menu-wrapper { margin-top: .6em !important; padding: .4em .9em !important; background: var(--e-global-color-b0a0003) !important; border: 1px solid var(--e-global-color-b0a0006) !important; border-radius: .875em !important; box-shadow: 0 .9em 2.2em rgb(25 26 56 / .14) !important; max-height: calc(100dvh - 8em); overflow: auto; }
  .vd-nav .e-n-menu-heading { padding: 0 !important; background: none !important; }
  .vd-nav .e-n-menu-item, .vd-nav .e-n-menu-item > .e-n-menu-title, .vd-nav .e-n-menu-content { margin-inline: 0 !important; inset-inline: auto !important; width: 100% !important; max-width: 100% !important; }
  .vd-nav .e-n-menu-item { border-bottom: 1px solid var(--e-global-color-b0a0006); }
  .vd-nav .e-n-menu-item:last-child { border-bottom: 0; }
  .vd-nav .e-n-menu-title { justify-content: space-between !important; width: 100% !important; padding: .85em .2em !important; background: none !important; }
  .vd-nav .e-n-menu-title::before { display: none; }
  .vd-nav .e-n-menu-content > .e-con { width: 100% !important; padding: 0 !important; }
  .vd-mega { width: 100% !important; padding: 0 0 .5em !important; border: 0 !important; box-shadow: none !important; background: none !important; }
}

/* ---------- 6. Buttons: straight sweep + sliding arrow (transition, not keyframes) ---------- */
.vd-btn .elementor-button { position: relative; isolation: isolate; overflow: hidden; border-radius: .5em; padding: .35em .4em .35em 1.15em !important; min-height: 3em; transition: color .35s, box-shadow .35s, transform .15s; }
.vd-btn .elementor-button::before { content: ""; position: absolute; inset: 0; z-index: -1; background: #23244B; transform: scaleX(0); transform-origin: right; transition: transform .45s cubic-bezier(.7, 0, .2, 1); }
.vd-btn .elementor-button:hover::before, .vd-btn .elementor-button:focus-visible::before { transform: scaleX(1); transform-origin: left; }
.vd-btn--accent .elementor-button { background: #FFD23F !important; color: #1D1E40 !important; }
.vd-btn--accent .elementor-button:hover, .vd-btn--accent .elementor-button:focus-visible { color: #fff !important; box-shadow: 0 .6em 1.4em rgb(245 192 0 / .32); }
.vd-btn .elementor-button:active { transform: scale(.97); }
.vd-btn .elementor-button-content-wrapper { align-items: center; gap: .85em; }
.vd-btn .elementor-button-text { white-space: nowrap; }
.vd-btn .elementor-button-icon { position: relative; display: grid; place-items: center; width: 2.3em; height: 2.3em; overflow: hidden; border-radius: .4em; background: #23244B; transition: background-color .35s; }
.vd-btn .elementor-button-icon svg { width: .9em; height: .9em; fill: #fff !important; transition: translate .45s cubic-bezier(.2, .7, .2, 1); }
.vd-btn .elementor-button-icon::before { content: "→"; position: absolute; inset: 0; display: grid; place-items: center; color: #1D1E40; font-size: 1.05em; translate: -100% 0; transition: translate .45s cubic-bezier(.2, .7, .2, 1); }
.vd-btn .elementor-button:hover .elementor-button-icon, .vd-btn .elementor-button:focus-visible .elementor-button-icon { background: #FFD23F; }
.vd-btn .elementor-button:hover .elementor-button-icon svg, .vd-btn .elementor-button:focus-visible .elementor-button-icon svg { translate: 200% 0; }
.vd-btn .elementor-button:hover .elementor-button-icon::before, .vd-btn .elementor-button:focus-visible .elementor-button-icon::before { translate: 0 0; }
.vd-btn--ghost .elementor-button { background: transparent !important; color: var(--e-global-color-text) !important; border: 1px solid var(--e-global-color-b0a0006); }
.vd-btn--ghost .elementor-button:hover { color: #fff !important; }

/* ---------- 7. Photos + reveal ---------- */
.vd-photo img { display: block; width: 100%; object-fit: cover; border-radius: .875em !important; }
.vd-ratio-hero img { aspect-ratio: 4 / 4.8; }
/* reserve the photo's space before the image and all CSS are in: no layout shift */
.vd-hero-photo { aspect-ratio: 4 / 4.8; width: 100%; }
.vd-hero-photo img { height: 100% !important; }
.vd-ratio-portrait img { aspect-ratio: 4 / 5; }
.vd-ratio-photo img { aspect-ratio: 3 / 2; }
.vd-ratio-wide img { aspect-ratio: 16 / 9; }
.vd-ratio-faq img { aspect-ratio: 4 / 3.4; }
.vd-avatar img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 50% !important; }
@media (prefers-reduced-motion: no-preference) {
  .vd-js .vd-photo:not(.vd-hero-photo):not(.vd-avatar):not(.vd-mega-img) { position: relative; overflow: hidden; border-radius: .875em; }
  .vd-js .vd-photo:not(.vd-hero-photo):not(.vd-avatar):not(.vd-mega-img) img { scale: 1.12; transition: scale 1.4s cubic-bezier(.2, .7, .2, 1); }
  .vd-js .vd-photo:not(.vd-hero-photo):not(.vd-avatar):not(.vd-mega-img)::after { content: ""; position: absolute; inset: 0; z-index: 2; background: #FFD23F; transform-origin: right; transition: transform 1s cubic-bezier(.7, 0, .2, 1); pointer-events: none; }
  .vd-js .vd-photo.is-in img { scale: 1; }
  .vd-js .vd-photo.is-in::after { transform: scaleX(0); }
  .vd-js .vd-reveal { opacity: 0; translate: 0 1.5em; transition: opacity .8s, translate .8s cubic-bezier(.2, .7, .2, 1); }
  .vd-js .vd-reveal.is-in { opacity: 1; translate: none; }
}
.elementor-editor-active .vd-reveal, .elementor-editor-active .vd-photo img { opacity: 1 !important; translate: none !important; scale: 1 !important; clip-path: none !important; animation: none !important; }
.elementor-editor-active .vd-photo::after { display: none !important; }

/* ---------- 8. Hero ---------- */
.vd-hero { overflow: hidden; }
.vd-hero-visual { position: relative; isolation: isolate; padding: 0 0 2.5em 2.25em !important; align-self: stretch !important; justify-content: center; }
.vd-hero-visual::before { content: ""; position: absolute; z-index: -1; top: -4em; bottom: -1em; left: 34%; right: -50vw; background: var(--e-global-color-b0a0002); border-radius: 0 0 0 .875em; }
.vd-bars { position: absolute !important; z-index: 2; left: 0; top: 12%; height: 46%; width: auto !important; pointer-events: none; }
.vd-bars .elementor-heading-title { display: flex; gap: .5em; height: 100%; }
.vd-bars i { display: block; width: .55em; height: 100%; border-radius: 1px; background: #FFD23F; }
.vd-bars i:nth-child(2) { background: var(--e-global-color-secondary); height: 72%; align-self: end; }
.vd-bars i:nth-child(3) { height: 40%; }
.vd-bars--right { left: auto; right: -1.25em; top: auto; bottom: 18%; height: 40%; }
.vd-float { position: absolute !important; z-index: 3; border-radius: .875em; box-shadow: 0 .9em 2.2em rgb(25 26 56 / .14); }
.vd-float .elementor-heading-title strong { display: block; font-family: "Cal Sans", sans-serif; font-size: 1.12em; line-height: 1.2; color: var(--e-global-color-text); }
.vd-float--person .elementor-widget-heading { min-width: 0; flex: 1 1 0 !important; }
.vd-float--person { left: -1.5em; bottom: 0; width: 21em !important; max-width: calc(100% + 1.5em); padding: .85em 1.1em .85em .85em; background: var(--e-global-color-b0a0003); }
.vd-float--channels { right: 1em; top: 1em; width: auto !important; }
.vd-float--channels .elementor-heading-title { display: flex; padding: .55em .8em; background: #23244B; border-radius: .875em; font-size: .85em; }
.vd-float--channels span + span::before { content: ""; display: inline-block; width: .12em; height: 1em; margin: 0 .55em; background: #FFD23F; vertical-align: -.12em; }
@media (max-width: 1024px) { .vd-hero-visual::before { left: 20%; right: -2em; top: 2.5em; bottom: 1.5em; } .vd-float--person { left: 0; } }

/* keuzehulp card (Gravity Forms radio tiles + conditional advice) */
.vd-picker-card { box-shadow: 0 .9em 2.2em rgb(25 26 56 / .14); border: 1px solid var(--e-global-color-b0a0006); }
.vd-picker legend.gfield_label { font-family: "Cal Sans", sans-serif; font-size: 1.15em !important; font-weight: 400 !important; margin-bottom: .85em !important; }
.vd-gf-tiles .gfield_radio { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(12em, 1fr)); gap: .5em; }
.vd-gf-tiles .gchoice { position: relative; display: flex; margin: 0 !important; }
.vd-gf-tiles .gchoice input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.vd-gf-tiles .gchoice label { display: flex !important; align-items: center; gap: .7em; width: 100%; max-width: none !important; margin: 0 !important; padding: .8em .9em; border: 1px solid var(--e-global-color-b0a0006); border-radius: .5em; font-size: .95em !important; line-height: 1.3; cursor: pointer; transition: background-color .2s, border-color .2s; }
.vd-gf-tiles .gchoice label::before { content: ""; flex: none; width: 1.05em; height: 1.05em; border-radius: 50%; border: 2px solid currentColor; opacity: .45; box-sizing: border-box; }
.vd-gf-tiles .gchoice:hover label { border-color: var(--e-global-color-text); }
.vd-gf-tiles .gchoice input:checked + label { background: #23244B; border-color: #23244B; color: #fff; }
.vd-gf-tiles .gchoice input:checked + label::before { opacity: 1; border: .32em solid currentColor; }
.vd-gf-tiles .gchoice input:focus-visible + label { outline: .1875em solid var(--e-global-color-text); outline-offset: .15em; }
.vd-advice { margin: 0; padding: .8em 1em; border-left: .22em solid #FFD23F; background: color-mix(in srgb, #FFD23F 12%, transparent); border-radius: 0 .5em .5em 0; font-size: .92em; color: var(--e-global-color-text); }

.vd-quicklinks { padding-top: 1.5em; border-top: 1px solid var(--e-global-color-b0a0006); }
.vd-quicklinks .elementor-icon-list-items { display: flex; flex-wrap: wrap; gap: .5em 0; margin: 0 !important; }
.vd-quicklinks .elementor-icon-list-item { margin: 0 !important; }
.vd-quicklinks .elementor-icon-list-item::after { display: none; }
.vd-quicklinks .elementor-icon-list-item + .elementor-icon-list-item::before { content: ""; display: inline-block; width: .14em; height: 1.05em; margin: 0 .9em; background: #FFD23F; }
.vd-quicklinks a:hover .elementor-icon-list-text { text-decoration: underline; text-decoration-color: #FFD23F; text-decoration-thickness: .15em; }

/* ---------- 9. Sections ---------- */
.vd-approach-visual { position: relative; padding-bottom: 3em !important; }
.vd-stamp { position: absolute !important; right: -2em; bottom: 0; z-index: 3; width: 14em !important; }
.vd-stamp .elementor-heading-title { padding: 1.1em 1.2em; background: #FFD23F; border-radius: .875em; }
@media (max-width: 767px) { .vd-stamp { right: -.5em; } }
.vd-cases { border-top: 1px solid var(--e-global-color-b0a0006); }
.vd-case { position: relative; text-decoration: none; border-bottom: 1px solid var(--e-global-color-b0a0006); }
.vd-case::after { content: "→"; position: absolute; right: 0; top: 50%; translate: 0 -50%; font-family: "Cal Sans", sans-serif; transition: translate .3s; color: var(--e-global-color-text); }
.vd-case:hover::after { translate: .35em -50%; }
.vd-case:hover .elementor-heading-title { text-decoration: underline; text-decoration-color: #FFD23F; text-decoration-thickness: .15em; }

.vd-service { border-top: 1px solid rgb(255 255 255 / .16); }
.vd-service-label .elementor-heading-title { display: flex; align-items: center; gap: .55em; }
.vd-service-label .elementor-heading-title::before { content: ""; width: .14em; height: 1.05em; background: #FFD23F; }
.vd-chips .elementor-icon-list-items, .vd-also .elementor-icon-list-items, .vd-anchors .elementor-icon-list-items { display: flex; flex-wrap: wrap; gap: .45em; margin: 0 !important; }
.vd-chips .elementor-icon-list-item, .vd-anchors .elementor-icon-list-item, .vd-also .elementor-icon-list-item { margin: 0 !important; }
.vd-chips .elementor-icon-list-item::after, .vd-anchors .elementor-icon-list-item::after, .vd-also .elementor-icon-list-item::after { display: none; }
.vd-chips a { display: block; padding: .4em .75em; border: 1px solid rgb(255 255 255 / .16); border-radius: .5em; transition: background-color .2s, border-color .2s; }
.vd-chips a:hover { background: #FFD23F; border-color: #FFD23F; }
.vd-chips a:hover .elementor-icon-list-text { color: #1D1E40 !important; }
.vd-also .elementor-icon-list-items { gap: .4em 0; }
.vd-also .elementor-icon-list-item + .elementor-icon-list-item::before { content: ""; display: inline-block; width: .11em; height: .95em; margin: 0 .7em; background: #FFD23F; }
.vd-also a:hover .elementor-icon-list-text { text-decoration: underline; text-decoration-color: #FFD23F; }
.vd-rule-top { border-top: 1px solid var(--e-global-color-b0a0006); }
.vd-band .vd-rule-top { border-top-color: rgb(255 255 255 / .16); }

.vd-personal-visual { position: relative; padding-bottom: 2em !important; max-width: 26em; }
.vd-name-tag { position: absolute !important; left: 1em; bottom: 0; z-index: 3; width: auto !important; }
.vd-name-tag .elementor-heading-title { padding: .8em 1.1em; background: #23244B; border-left: .3em solid #FFD23F; border-radius: .5em; color: #D6D7EC !important; }
.vd-name-tag strong { display: block; color: #fff; font-family: "Cal Sans", sans-serif; font-size: 1.15em; }
.vd-facts { border-top: 1px solid var(--e-global-color-b0a0006); }
.vd-fact { border-bottom: 1px solid var(--e-global-color-b0a0006); }

/* steps on yellow */
.vd-steps { border: 1px solid rgb(29 30 64 / .2); border-radius: .875em; overflow: hidden; }
.vd-step { border-right: 1px solid rgb(29 30 64 / .2); border-bottom: 1px solid rgb(29 30 64 / .2); }
@media (min-width: 1025px) { .vd-step { border-bottom: 0; } .vd-step:last-child { border-right: 0; } }

/* FAQ: nested accordion */
.vd-faq .e-n-accordion-item { border-bottom: 1px solid var(--e-global-color-b0a0006); }
.vd-faq .e-n-accordion-item:first-child { border-top: 1px solid var(--e-global-color-b0a0006); }
.vd-faq .e-n-accordion-item-title { padding: 1.15em 0 !important; border: 0 !important; background: none !important; justify-content: space-between !important; flex-direction: row !important; }
.vd-faq .e-n-accordion-item-title-header { flex: 1; text-align: left; }
.vd-faq .e-n-accordion-item-title-icon { order: 2; }
.vd-faq .e-n-accordion-item-title-icon { display: grid !important; place-items: center; width: 2em; height: 2em; border-radius: .5em; background: #FFD23F; }
.vd-faq .e-n-accordion-item-title-icon svg { fill: #1D1E40 !important; width: .8em; height: .8em; }
.vd-faq-visual { position: relative; padding-bottom: 3em !important; }
.vd-float--note { left: -2.5em; bottom: 0; width: 18em !important; }
.vd-float--note .elementor-heading-title { padding: 1em 1.15em; background: var(--e-global-color-b0a0003); border-left: .3em solid #FFD23F; border-radius: .875em; }
@media (max-width: 1024px) { .vd-float--note { left: -.5em; } }

/* contact band */
.vd-ticks .elementor-icon-list-item { align-items: baseline !important; }
.vd-ticks .elementor-icon-list-item::before { content: ""; flex: none; width: .22em; height: 1em; margin-right: .75em; background: #FFD23F; translate: 0 .15em; }
.vd-contact-person { border: 1px solid rgb(255 255 255 / .16); }
.vd-contact-person strong { display: block; color: #fff; font-family: "Cal Sans", sans-serif; font-size: 1.1em; }
.vd-form-card { box-shadow: 0 1.5em 3em rgb(0 0 0 / .25); }
@media (min-width: 1025px) { #kennismaking .vd-reveal { position: sticky; top: 9em; } }

/* ---------- 10. Gravity Forms ---------- */
.vd-gf-wrap .gform_wrapper.gravity-theme { margin: 0; font: inherit; color: var(--e-global-color-text); }
.vd-gf-wrap .gform_wrapper.gravity-theme .gform_fields { row-gap: 1em; column-gap: 1em; }
.vd-gf-wrap .gform_wrapper.gravity-theme .gfield_label { margin-bottom: .35em; font-size: .92em; font-weight: 600; color: var(--e-global-color-text); }
.vd-gf-wrap .gfield_required, .vd-gf-wrap .gform_required_legend { display: none !important; }
.vd-gf-wrap .gform_wrapper.gravity-theme input[type="text"], .vd-gf-wrap .gform_wrapper.gravity-theme input[type="email"],
.vd-gf-wrap .gform_wrapper.gravity-theme input[type="tel"], .vd-gf-wrap .gform_wrapper.gravity-theme select, .vd-gf-wrap .gform_wrapper.gravity-theme textarea {
  width: 100%; min-height: 3em; padding: .7em .85em; border: 1px solid color-mix(in srgb, var(--e-global-color-text) 35%, transparent); border-radius: .5em;
  background: var(--e-global-color-b0a0001); color: var(--e-global-color-text); font: inherit; font-size: 1em; line-height: 1.4; box-shadow: none;
}
.vd-gf-wrap .gform_wrapper.gravity-theme textarea { height: 7em; min-height: 7em; }
.vd-gf-wrap .gform_wrapper.gravity-theme :is(input, select, textarea):focus-visible { outline: .1875em solid var(--e-global-color-text); outline-offset: 0; border-color: transparent; }
.vd-gf-wrap .gform_wrapper.gravity-theme .gform_footer { margin: .5em 0 0; padding: 0; }
.vd-gf-wrap .gform_wrapper.gravity-theme .gform_button {
  min-height: 3.5em; padding: .35em 4em .35em 1.4em; border: 0; border-radius: .5em; cursor: pointer;
  background: #FFD23F url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Crect width='40' height='40' rx='7' fill='%2323244B'/%3E%3Cpath d='M13 20h13M21 15l5 5-5 5' fill='none' stroke='%23fff' stroke-width='2.2'/%3E%3C/svg%3E") right .4em center / 2.3em no-repeat;
  color: #1D1E40; font: 1.02em/1.1 "Cal Sans", sans-serif; transition: background-color .35s, color .35s, box-shadow .35s, transform .15s;
}
.vd-gf-wrap .gform_wrapper.gravity-theme .gform_button:hover { background-color: #23244B; color: #fff; box-shadow: 0 .6em 1.4em rgb(245 192 0 / .32);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Crect width='40' height='40' rx='7' fill='%23FFD23F'/%3E%3Cpath d='M13 20h13M21 15l5 5-5 5' fill='none' stroke='%231D1E40' stroke-width='2.2'/%3E%3C/svg%3E"); }
.vd-gf-wrap .gform_wrapper.gravity-theme .gform_button:active { transform: scale(.97); }
.vd-gf-wrap .gform_wrapper.gravity-theme .gfield_error :is(input, textarea) { border-color: #C4242B; border-width: .125em; }
.vd-gf-wrap .gform_wrapper.gravity-theme .validation_message { margin-top: .35em; padding: 0; border: 0; background: none; font-size: .85em; font-weight: 600; color: #B3181F; }
.vd-gf-wrap .gform_validation_errors { border-radius: .5em; }
.vd-gf-confirm { padding: 1.5em; border-left: .3em solid #FFD23F; border-radius: .5em; background: color-mix(in srgb, #FFD23F 14%, var(--e-global-color-b0a0003)); }
.vd-gf-confirm__title { margin: 0 0 .3em; font-family: "Cal Sans", sans-serif; font-size: 1.5em; }

/* ---------- 11. Detail pages ---------- */
.vd-breadcrumb a { color: var(--e-global-color-text); }
.vd-anchors a { display: block; padding: .45em .8em; border: 1px solid var(--e-global-color-b0a0006); border-radius: .5em; font-family: "Cal Sans", sans-serif; transition: background-color .2s, border-color .2s; }
.vd-anchors a:hover { background: #FFD23F; border-color: #FFD23F; }
.vd-anchors a:hover .elementor-icon-list-text { color: #1D1E40 !important; }
.vd-callout .elementor-heading-title { padding: 1.1em 1.25em; border-left: .3em solid #FFD23F; background: var(--e-global-color-b0a0003); border-radius: 0 .5em .5em 0; box-shadow: 0 .9em 2.2em rgb(25 26 56 / .14); font-family: inherit; }
.vd-callout strong { display: block; margin-bottom: .25em; font-family: "Cal Sans", sans-serif; font-size: 1.1em; }
.vd-pillar { border: 1px solid rgb(255 255 255 / .16); border-radius: .875em; background: rgb(255 255 255 / .03); }
.vd-pillar__n .elementor-heading-title { display: grid; place-items: center; width: 2.4em; height: 2.4em; border-radius: .5em; background: #FFD23F; }
.vd-pillar__link { margin-top: auto !important; }
.vd-pillar__link a { color: #fff; text-decoration: none; border-bottom: .14em solid #FFD23F; font-family: "Cal Sans", sans-serif; }
@media (min-width: 1025px) { .vd-pillar { flex: 1 1 0 !important; width: auto !important; } }
.vd-tasks .elementor-icon-list-items { display: grid; grid-template-columns: repeat(auto-fit, minmax(14em, 1fr)); column-gap: 1.5em; border-top: 1px solid var(--e-global-color-b0a0006); }
.vd-tasks .elementor-icon-list-item { margin: 0 !important; padding: .7em 0 !important; border-bottom: 1px solid var(--e-global-color-b0a0006); align-items: baseline !important; }
.vd-tasks .elementor-icon-list-item::before { content: ""; flex: none; width: .2em; height: .95em; margin-right: .7em; background: #FFD23F; translate: 0 .1em; }
.vd-tasks .elementor-icon-list-item::after { display: none; }
.vd-tasks a .elementor-icon-list-text { font-weight: 600; text-decoration: underline; text-decoration-color: #FFD23F; text-decoration-thickness: .14em; }
.vd-metrics { border: 1px solid var(--e-global-color-b0a0006); border-radius: .875em; overflow: hidden; background: var(--e-global-color-b0a0006); gap: 1px !important; }
.vd-metric { background: var(--e-global-color-b0a0003); width: calc(50% - .5px) !important; }
.vd-metric::before { content: ""; width: 1.75em; height: .3em; background: #FFD23F; border-radius: 1px; margin-bottom: .4em; }
@media (max-width: 767px) { .vd-metric { width: 100% !important; } }
.vd-landscape { border: 1px solid var(--e-global-color-b0a0006); }
.vd-related { text-decoration: none; }
.vd-related img { transition: scale .6s cubic-bezier(.2, .7, .2, 1); }
.vd-related:hover img { scale: 1.05; }
.vd-related:hover .elementor-heading-title { text-decoration: underline; text-decoration-color: #FFD23F; text-decoration-thickness: .14em; }
.vd-related-section { border-top: 1px solid var(--e-global-color-b0a0006); }

/* ---------- 12. Footer ---------- */
.vd-footer { position: relative; }
.vd-footer::after { content: ""; position: absolute; right: 6%; top: -1em; left: auto !important; bottom: auto !important; width: .9em !important; height: 5em !important; z-index: 2; background: #FFD23F; border-radius: 1px; box-shadow: -1.6em 1.25em 0 #3A3C78, -3.2em 2.5em 0 rgb(255 210 63 / .5); }
.vd-footer a { text-decoration: none; }
.vd-footer-links a:hover .elementor-icon-list-text, .vd-dots a:hover .elementor-icon-list-text, .vd-legal a:hover .elementor-icon-list-text { text-decoration: underline; text-decoration-color: #FFD23F; }
.vd-footer-contact a:hover .elementor-icon-list-text { text-decoration: underline; text-decoration-color: #FFD23F; }
.vd-footer-rule { border-top: 1px solid rgb(255 255 255 / .12); }
.vd-dots .elementor-icon-list-items { display: flex; flex-wrap: wrap; margin: 0 !important; }
.vd-dots .elementor-icon-list-item { margin: 0 !important; }
.vd-dots .elementor-icon-list-item::after { display: none; }
.vd-dots .elementor-icon-list-item + .elementor-icon-list-item::before { content: "·"; margin: 0 .5em; color: #9FA1C4; }
.vd-credit a { color: #fff !important; text-decoration: underline !important; text-decoration-color: rgb(255 255 255 / .35) !important; }
.vd-sticky { display: none !important; }
@media (max-width: 1024px) {
  .vd-footer { padding-bottom: 6em !important; }
  .vd-sticky { display: flex !important; position: fixed !important; z-index: 90; left: 0; right: 0; bottom: 0; padding: .6em 1.25em calc(.6em + env(safe-area-inset-bottom)) !important; background: #191A38; translate: 0 110%; transition: translate .35s; }
  .vd-sticky.is-visible { translate: 0 0; }
  .vd-sticky .elementor-button { width: 100%; justify-content: space-between; }
  .vd-sticky .elementor-button-content-wrapper { width: 100%; justify-content: space-between; }
}

/* cookie banner (Flerque Cookies) in VDH colours */
#cookie-consent.fcc { --fcc-accent: #FFD23F; --fcc-accent-text: #1D1E40; --fcc-line: #FFD23F; border-left-width: .35em; border-radius: .875em; }
#cookie-consent .fcc__title { font-family: "Cal Sans", sans-serif; font-weight: 400; }
#cookie-consent .fcc__btn { border-radius: .5em !important; font-family: "Cal Sans", sans-serif !important; font-weight: 400 !important; }

/* footer regions: four in a row on desktop */
@media (min-width: 1025px) { .vd-footer-regions > .e-con { flex: 1 1 0 !important; width: auto !important; } }

/* Cal Sans has a tall ascent (1000/300): trim to cap height + baseline so button text sits exactly in the middle */
.vd-btn .elementor-button-text, .e-n-menu-title-text, .vd-anchors .elementor-icon-list-text, .vd-chips .elementor-icon-list-text { text-box: trim-both cap alphabetic; line-height: 1.1; }
.vd-btn .elementor-button { align-items: center; }

/* legal text */
.vd-legal h2 { margin: 1.75em 0 .5em; font-family: "Cal Sans", sans-serif; font-weight: 400; font-size: 1.5em; color: var(--e-global-color-text); }
.vd-legal h2:first-child { margin-top: 0; }
.vd-legal table { width: 100%; margin: .5em 0 1em; border-collapse: collapse; font-size: .92em; }
.vd-legal th, .vd-legal td { padding: .6em .5em; border: 0; border-bottom: 1px solid var(--e-global-color-b0a0006); text-align: left; background: none !important; }
.vd-legal th { color: var(--e-global-color-text); font-weight: 600; }

/* cookie banner: the cookies photo instead of the half ring */
#cookie-consent .fcc__icon { width: 4.25rem !important; height: 3.6rem !important; margin-top: 0 !important; border: 0 !important; border-radius: 0 !important; rotate: 0deg !important;
  background: url(/wp-content/uploads/2026/10/vdho-cookies.webp) center / contain no-repeat; }

/* keuzehulp advice: only the one for the checked option, pure CSS */
.vd-picker .vd-gf-advice { display: none !important; }
.vd-picker form:has(input[value="aanvragen"]:checked) .vd-gf-advice--aanvragen { display: block !important; }
.vd-picker form:has(input[value="google"]:checked) .vd-gf-advice--google { display: block !important; }
.vd-picker form:has(input[value="ads"]:checked) .vd-gf-advice--ads { display: block !important; }
.vd-picker form:has(input[value="website"]:checked) .vd-gf-advice--website { display: block !important; }

/* Gravity Forms runs without its own stylesheets (130 KB): only the layout bits it needs */
.vd-gf-wrap .gform_fields { display: grid; grid-template-columns: repeat(12, 1fr); gap: 1em; margin: 0; padding: 0; list-style: none; }
.vd-gf-wrap .gfield { grid-column: span 12; min-width: 0; margin: 0; padding: 0; border: 0; }
@media (min-width: 641px) { .vd-gf-wrap .gfield--width-half { grid-column: span 6; } }
.vd-gf-wrap fieldset.gfield { min-width: 0; }
.vd-gf-wrap legend.gfield_label { display: block; float: none; width: 100%; padding: 0; }
.vd-gf-wrap .gfield_label { display: block; margin-bottom: .35em; font-size: .92em; font-weight: 600; color: var(--e-global-color-text); }
.vd-gf-wrap .ginput_container input, .vd-gf-wrap .ginput_container select, .vd-gf-wrap .ginput_container textarea {
  width: 100%; min-height: 3em; padding: .7em .85em; border: 1px solid color-mix(in srgb, var(--e-global-color-text) 35%, transparent); border-radius: .5em;
  background: var(--e-global-color-b0a0001); color: var(--e-global-color-text); font: inherit; font-size: 1em; line-height: 1.4; box-shadow: none; }
.vd-gf-wrap .ginput_container textarea { height: 7em; min-height: 7em; resize: vertical; }
.vd-gf-wrap .ginput_container :is(input, select, textarea):focus-visible { outline: .1875em solid var(--e-global-color-text); outline-offset: 0; border-color: transparent; }
.vd-gf-wrap .gfield_radio input { min-height: 0; width: auto; }
.vd-gf-wrap .gform_footer { margin: 1.25em 0 0; padding: 0; }
.vd-gf-wrap .gform_button { min-height: 3em; padding: .35em 3.6em .35em 1.15em; border: 0; border-radius: .5em; cursor: pointer;
  background: #FFD23F url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Crect width='40' height='40' rx='7' fill='%2323244B'/%3E%3Cpath d='M13 20h13M21 15l5 5-5 5' fill='none' stroke='%23fff' stroke-width='2.2'/%3E%3C/svg%3E") right .4em center / 2.3em no-repeat;
  color: #1D1E40; font: .97em/1.1 "Cal Sans", sans-serif; transition: background-color .35s, color .35s, box-shadow .35s, transform .15s; }
.vd-gf-wrap .gform_button:hover { background-color: #23244B; color: #fff; box-shadow: 0 .6em 1.4em rgb(245 192 0 / .32);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Crect width='40' height='40' rx='7' fill='%23FFD23F'/%3E%3Cpath d='M13 20h13M21 15l5 5-5 5' fill='none' stroke='%231D1E40' stroke-width='2.2'/%3E%3C/svg%3E"); }
.vd-gf-wrap .gform_button:active { transform: scale(.97); }
.vd-gf-wrap .gform_validation_container, .vd-gf-wrap .gform_hidden, .vd-gf-wrap .gfield_visibility_hidden, .vd-gf-wrap .gform_ajax_spinner + .gform_ajax_spinner { display: none !important; position: absolute !important; left: -9999px !important; }
.vd-gf-wrap .gform_ajax_spinner { width: 1.2em; margin-left: .6em; vertical-align: middle; }
.vd-gf-wrap .gform_required_legend, .vd-gf-wrap .gfield_required { display: none; }
.vd-gf-wrap .gfield_error :is(input, textarea) { border-color: #C4242B; border-width: .125em; }
.vd-gf-wrap .validation_message, .vd-gf-wrap .gfield_validation_message { margin-top: .35em; font-size: .85em; font-weight: 600; color: #B3181F; }
.vd-gf-wrap .gform_validation_errors { margin-bottom: 1em; padding: .8em 1em; border-left: .3em solid #C4242B; border-radius: .5em; background: #FDECEC; }
.vd-gf-wrap .gform_validation_errors h2 { margin: 0; font-size: .95em; color: #8A1016; }
.vd-gf-wrap .screen-reader-text, .vd-gf-wrap .gform_submission_error.hide_summary .gform_submission_error { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.vd-gf-wrap .gfield--type-html { font-size: 1em; }
