.elementor-kit-9{--e-global-color-primary:#FDFCFB;--e-global-color-secondary:#003D55;--e-global-color-text:#2D3039D9;--e-global-color-accent:#FFFFFF;--e-global-color-d504aff:#F4980A;--e-global-color-bb2dfc3:#EB4F26;--e-global-color-5d21edc:#02010100;--e-global-color-43661f7:#2D30391C;--e-global-color-1cdc1b1:#2D30391C;--e-global-color-d21b904:#003D55;--e-global-color-e4d1eb2:#E7EBEE;--e-global-color-7ec8034:#171717;--e-global-color-18260ec:#F5F8F9;--e-global-color-d2bb6c9:#00233D;--e-global-color-631e273:#F6F6F5;--e-global-color-d001178:#DEE2E2;--e-global-typography-primary-font-family:"DM Sans";--e-global-typography-primary-font-size:4rem;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-size:clamp(2.4rem, 2.1231rem + 1.2308vw, 3rem);--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:1.05rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:0.875rem;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.5em;--e-global-typography-e39e01c-font-family:"DM Sans";--e-global-typography-e39e01c-font-size:clamp(1.6rem, 1.5308rem + 0.3077vw, 1.75rem);--e-global-typography-e39e01c-font-weight:400;--e-global-typography-e39e01c-line-height:1.3em;--e-global-typography-bb25952-font-family:"DM Sans";--e-global-typography-bb25952-font-size:clamp(1.4rem, 1.3538rem + 0.2051vw, 1.6rem);--e-global-typography-bb25952-font-weight:500;--e-global-typography-bb25952-line-height:1.2em;--e-global-typography-fa430d4-font-family:"DM Sans";--e-global-typography-fa430d4-font-size:clamp(1.2rem, 1.1769rem + 0.1026vw, 1.25rem);--e-global-typography-fa430d4-font-weight:500;--e-global-typography-fa430d4-line-height:1.3em;--e-global-typography-fe87d79-font-family:"DM Sans";--e-global-typography-fe87d79-font-size:2.2rem;--e-global-typography-fe87d79-font-weight:600;--e-global-typography-fe87d79-line-height:1em;--e-global-typography-b80e91d-font-family:"DM Sans";--e-global-typography-b80e91d-font-size:1rem;--e-global-typography-b80e91d-font-weight:700;--e-global-typography-b80e91d-line-height:1.5em;--e-global-typography-128670f-font-family:"DM Sans";--e-global-typography-128670f-font-size:1.1rem;--e-global-typography-128670f-font-weight:400;--e-global-typography-128670f-line-height:1.5em;--e-global-typography-ce8222c-font-family:"DM Sans";--e-global-typography-ce8222c-font-size:1.1rem;--e-global-typography-ce8222c-font-weight:700;--e-global-typography-ce8222c-line-height:1.5em;--e-global-typography-c940302-font-family:"DM Sans";--e-global-typography-c940302-font-size:1rem;--e-global-typography-c940302-font-weight:600;--e-global-typography-c940302-line-height:1.5em;--e-global-typography-798b7a3-font-family:"DM Sans";--e-global-typography-798b7a3-font-size:1rem;--e-global-typography-798b7a3-font-weight:900;--e-global-typography-798b7a3-text-transform:uppercase;--e-global-typography-798b7a3-line-height:1.2em;--e-global-typography-65d2e1a-font-family:"DM Sans";--e-global-typography-65d2e1a-font-size:1.3rem;--e-global-typography-65d2e1a-font-weight:700;--e-global-typography-65d2e1a-line-height:1.5em;--e-global-typography-00c645b-font-family:"DM Sans";--e-global-typography-00c645b-font-size:1rem;--e-global-typography-00c645b-font-weight:600;--e-global-typography-00c645b-text-transform:uppercase;--e-global-typography-00c645b-line-height:1.2em;--e-global-typography-130166e-font-family:"DM Sans";--e-global-typography-130166e-font-size:1.4rem;--e-global-typography-130166e-font-weight:500;--e-global-typography-130166e-line-height:1.5em;--e-global-typography-bd76eab-font-family:"DM Sans";--e-global-typography-bd76eab-font-size:0.8rem;--e-global-typography-bd76eab-font-weight:600;--e-global-typography-bd76eab-text-transform:uppercase;--e-global-typography-bd76eab-line-height:1em;--e-global-typography-bd76eab-letter-spacing:0.5px;--e-global-typography-1a45d21-font-family:"DM Sans";--e-global-typography-1a45d21-font-size:0.8rem;--e-global-typography-1a45d21-font-weight:600;--e-global-typography-1a45d21-text-transform:uppercase;--e-global-typography-1a45d21-line-height:1em;--e-global-typography-1a45d21-letter-spacing:0.5px;--e-global-typography-65ebf7c-font-family:"DM Sans";--e-global-typography-65ebf7c-font-size:0.9rem;--e-global-typography-65ebf7c-font-weight:600;--e-global-typography-65ebf7c-text-transform:uppercase;--e-global-typography-65ebf7c-line-height:1.2em;--e-global-typography-65ebf7c-letter-spacing:0.1px;--e-global-typography-fa08583-font-family:"DM Sans";--e-global-typography-fa08583-font-size:1.7rem;--e-global-typography-fa08583-font-weight:600;--e-global-typography-fa08583-line-height:1.3em;--e-global-typography-2a8edd0-font-family:"DM Sans";--e-global-typography-2a8edd0-font-size:0.8rem;--e-global-typography-2a8edd0-font-weight:600;--e-global-typography-2a8edd0-text-transform:uppercase;--e-global-typography-2a8edd0-line-height:1em;--e-global-typography-2a8edd0-letter-spacing:0.5px;background-color:var( --e-global-color-primary );font-family:"DM Sans", Sans-serif;font-size:1rem;font-weight:400;line-height:1.5em;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{background-color:var( --e-global-color-d504aff );font-family:var( --e-global-typography-b80e91d-font-family ), Sans-serif;font-size:var( --e-global-typography-b80e91d-font-size );font-weight:var( --e-global-typography-b80e91d-font-weight );line-height:var( --e-global-typography-b80e91d-line-height );color:var( --e-global-color-accent );border-radius:25px 25px 25px 25px;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 a{color:var( --e-global-color-secondary );font-family:"DM Sans", Sans-serif;}.elementor-kit-9 h1{font-family:"DM Sans", Sans-serif;}.elementor-kit-9 h2{font-family:"DM Sans", Sans-serif;}.elementor-kit-9 h3{font-family:"Manrope", Sans-serif;}.elementor-kit-9 h4{font-family:"Manrope", Sans-serif;}.elementor-kit-9 h5{font-family:"Manrope", Sans-serif;}.elementor-kit-9 h6{font-family:"Manrope", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1618px;}.e-con{--container-max-width:1618px;--container-default-padding-top:0rem;--container-default-padding-right:0rem;--container-default-padding-bottom:0rem;--container-default-padding-left:0rem;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#0407137A;--lightbox-ui-color:var( --e-global-color-accent );--lightbox-header-icons-size:28px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1200px){.elementor-kit-9{--e-global-typography-secondary-line-height:1.1em;}}@media(max-width:1024px){.elementor-kit-9{--e-global-typography-primary-font-size:3.7rem;--e-global-typography-primary-line-height:1.2em;--e-global-typography-1a45d21-font-size:0.7rem;--e-global-typography-65ebf7c-font-size:0.875rem;--e-global-typography-65ebf7c-line-height:1rem;--e-global-typography-2a8edd0-font-size:0.8rem;--e-global-typography-2a8edd0-line-height:1.2em;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-size:var( --e-global-typography-b80e91d-font-size );line-height:var( --e-global-typography-b80e91d-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-9{--e-global-typography-primary-font-size:2.5rem;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-size:1.8rem;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-text-font-size:1.1rem;--e-global-typography-text-line-height:1.4em;--e-global-typography-1a45d21-font-size:0.6rem;--e-global-typography-1a45d21-line-height:1.2em;--e-global-typography-65ebf7c-line-height:1.2em;--e-global-typography-fa08583-font-size:1.6rem;--e-global-typography-2a8edd0-font-size:0.8rem;--e-global-typography-2a8edd0-line-height:1.2em;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-size:var( --e-global-typography-b80e91d-font-size );line-height:var( --e-global-typography-b80e91d-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Improved Animations*/

@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0,-30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInDown {
    animation-name: fadeDown
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInLeft {
    animation-name: fadeLeft
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInRight {
    animation-name: fadeRight
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0,30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInUp {
    animation-name: fadeUp
}

.knop .elementor-button:hover {
    transform: translateY(-3px);
    transition: transform 0.3s ease;
}

.elementor-widget-text-editor p:last-child{ margin-bottom:0px;}

/* ============================================= */
/* 1. BASIS & CENTRERING (Desktop & Algemeen)    */
/* ============================================= */

.btn-animate-chars, 
.btn-glass-chars, 
.tertiair-knop-vdi {
  font-family: "DM Sans", sans-serif;
  font-weight: 500;
  font-size: 1em;
  padding: 1.2em 1.8em; 
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  border-radius: .5em;
  position: relative;
  cursor: pointer;
  box-sizing: border-box;
  overflow: hidden !important; 
  line-height: 1; 
  min-width: 180px;
  max-width: fit-content;
}

/* De achtergronden met jouw originele smooth timing */
.btn-animate-chars__bg, 
.btn-glass-chars__bg, 
.tertiair-knop-vdi__bg {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  transition: inset 0.6s cubic-bezier(0.625, 0.05, 0, 1);
  z-index: 1;
}

.btn-animate-chars:hover .btn-animate-chars__bg,
.btn-glass-chars:hover .btn-glass-chars__bg,
.tertiair-knop-vdi:hover .tertiair-knop-vdi__bg {
  inset: 0.125em;
}

/* ============================================= */
/* 2. CHARACTER ANIMATIE                         */
/* ============================================= */

[data-button-animate-chars] {
  display: flex; 
  align-items: center;
  position: relative;
  z-index: 2;
  overflow: hidden !important;
  height: 1.1em; 
  line-height: 1.1em;
  pointer-events: none;
}

[data-button-animate-chars] span {
  display: inline-block;
  position: relative;
  height: 1.1em;
  line-height: 1.1em;
  text-shadow: 0px 1.1em currentColor; 
  transform: translateY(0) rotate(0.001deg);
  transition: transform 0.6s cubic-bezier(0.625, 0.05, 0, 1);
}

.btn-animate-chars:hover [data-button-animate-chars] span,
.btn-glass-chars:hover [data-button-animate-chars] span,
.tertiair-knop-vdi:hover [data-button-animate-chars] span {
  transform: translateY(-1.1em) rotate(0.001deg);
}

/* Kleuren */
.btn-animate-chars__bg { background: linear-gradient(135deg, #F39D10 0%, #EC5126 100%); }
.btn-glass-chars__bg { 
  /* 1. Solide Fallback: Een lichte grijs-witte kleur die niet transparant is */
  /* Dit zorgt ervoor dat de knop direct zichtbaar is, zelfs zonder de blur */
  background-color: #e0e0e0; 

  /* 2. De Glass-laag (RGBA) */
  background: rgba(255, 255, 255, 0.25); 
  
  /* 3. De Blur (die soms vertraging heeft) */
  backdrop-filter: blur(12px); 
  -webkit-backdrop-filter: blur(12px);
  
  /* 4. De rand (maakt hem direct scherp) */
  border: 1px solid rgba(255, 255, 255, 0.6);

  /* 5. Optimalisatie voor direct laden */
  position: absolute;
  inset: 0;
  border-radius: inherit;
  transition: inset 0.6s cubic-bezier(0.625, 0.05, 0, 1);
  z-index: 1;

  /* Forceer de browser om deze laag direct op de videokaart te zetten */
  transform: translateZ(0);
  will-change: backdrop-filter;
}

.tertiair-knop-vdi__bg { 
  border: 0.8px solid rgba(0, 62, 84, 0.3); 
  background: linear-gradient(135deg, #003D55 60%, #00233D 100%);
}

.btn-animate-chars, .btn-glass-chars { color: #ffffff !important; }
.tertiair-knop-vdi { color: #ffffff !important; }

/* ============================================= */
/* 3. MOBIEL: FORCEER FULL WIDTH                 */
/* ============================================= */

@media (max-width: 767px) {
  .btn-animate-chars, 
  .btn-glass-chars, 
  .tertiair-knop-vdi {
    display: flex !important;      /* Veranderd van inline-flex naar flex */
    width: 100% !important;       /* Dwingt de breedte naar 100% */
    max-width: none !important;   /* Verwijdert de fit-content beperking */
    margin-bottom: 0px;          /* Ruimte tussen de knoppen onder elkaar */
    text-align: center;
  }
}

.vandongenlink {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0rem; /* ruimte tussen punt en tekst */
    transition: transform 0.7s ease;
}

/* Titel iets naar rechts op hover */
.vandongenlink:hover {
    transform: translateX(10px);
}

/* Punt is altijd aanwezig maar onzichtbaar */
.vandongenlink::before {
    content: "•";
    color: #EB4F26;
    opacity: 0;             /* onzichtbaar, maar neemt ruimte in */
    transform: scale(0.8);  /* klein starten */
    transition: opacity 0.6s ease, transform 0.6s ease;
    margin-right: 0.3rem;   /* vaste afstand zodat tekst niet verspringt */
}

/* Op hover wordt punt smooth zichtbaar en iets groter */
.vandongenlink:hover::before {
    opacity: 1;
    transform: scale(1.2);
}

/* Basisstijl voor de card */
.vd-card {
  /* High-end transitie: iets langer (0.5s) met een custom curve */
  transition: transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
  
  /* Optimalisatie voor de browser */
  will-change: transform;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}

/* Alleen animeren op apparaten met een aanwijzer (desktop/laptop) */
@media (hover: hover) and (pointer: fine) {
  .vd-card:hover {
    /* Subtiele schaling met een lichte lift door translateZ */
    transform: scale(1.01) translateZ(0);
  }
}

.vd-link {
    transition: transform 0.4s ease; /* Apply transition for smooth movement */
}

.vd-link:hover {
    transform: translateX(5px); /* Move the aitem 20 pixels to the left on hover */
}/* End custom CSS */