.elementor-kit-71{--e-global-color-primary:#1C244B;--e-global-color-secondary:#F3F5F8;--e-global-color-text:#324A6D;--e-global-color-accent:#467FF7;--e-global-color-c696dce:#FFFFFF;--e-global-color-14ef391:#C8D5DC;--e-global-color-764183d:#F9FAFD;--e-global-color-d6cea4e:#FFFFFF;--e-global-color-86b4fcd:#02010100;--e-global-color-57c8da2:#000000CC;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:65px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-primary-word-spacing:0em;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:capitalize;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-secondary-word-spacing:0em;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:300;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-text-word-spacing:0em;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-accent-word-spacing:0em;--e-global-typography-392b9e0-font-family:"Poppins";--e-global-typography-392b9e0-font-size:22px;--e-global-typography-392b9e0-font-weight:600;--e-global-typography-392b9e0-text-transform:capitalize;--e-global-typography-392b9e0-font-style:normal;--e-global-typography-392b9e0-text-decoration:none;--e-global-typography-392b9e0-line-height:1.2em;--e-global-typography-392b9e0-letter-spacing:0px;--e-global-typography-c05b693-font-family:"Poppins";--e-global-typography-c05b693-font-size:22px;--e-global-typography-c05b693-font-weight:300;--e-global-typography-c05b693-text-transform:none;--e-global-typography-c05b693-font-style:normal;--e-global-typography-c05b693-text-decoration:none;--e-global-typography-c05b693-line-height:1.5em;--e-global-typography-c05b693-letter-spacing:0px;--e-global-typography-6558fb1-font-family:"Poppins";--e-global-typography-6558fb1-font-size:16px;--e-global-typography-6558fb1-font-weight:300;--e-global-typography-6558fb1-text-transform:none;--e-global-typography-6558fb1-font-style:normal;--e-global-typography-6558fb1-text-decoration:none;--e-global-typography-6558fb1-line-height:1.5em;--e-global-typography-6558fb1-letter-spacing:10px;--e-global-typography-92bce3b-font-family:"Poppins";--e-global-typography-92bce3b-font-size:16px;--e-global-typography-92bce3b-font-weight:400;--e-global-typography-92bce3b-text-transform:capitalize;--e-global-typography-92bce3b-font-style:italic;--e-global-typography-92bce3b-text-decoration:underline;--e-global-typography-92bce3b-line-height:1em;--e-global-typography-92bce3b-letter-spacing:0px;--e-global-typography-b2deeae-font-family:"Poppins";--e-global-typography-b2deeae-font-size:85px;--e-global-typography-b2deeae-font-weight:600;--e-global-typography-b2deeae-text-transform:none;--e-global-typography-b2deeae-font-style:normal;--e-global-typography-b2deeae-text-decoration:none;--e-global-typography-b2deeae-line-height:1em;--e-global-typography-b2deeae-letter-spacing:0px;--e-global-typography-fb1a3e0-font-family:"Poppins";--e-global-typography-fb1a3e0-font-size:200px;--e-global-typography-fb1a3e0-font-weight:600;--e-global-typography-fb1a3e0-text-transform:none;--e-global-typography-fb1a3e0-font-style:normal;--e-global-typography-fb1a3e0-text-decoration:none;--e-global-typography-fb1a3e0-line-height:1.2em;--e-global-typography-fb1a3e0-letter-spacing:0px;--e-global-typography-397e168-font-family:"Poppins";--e-global-typography-397e168-font-size:16px;--e-global-typography-397e168-font-weight:400;--e-global-typography-397e168-text-transform:capitalize;--e-global-typography-397e168-font-style:italic;--e-global-typography-397e168-text-decoration:none;--e-global-typography-397e168-line-height:1.3em;--e-global-typography-397e168-letter-spacing:0px;--e-global-typography-71b5b38-font-family:"Poppins";--e-global-typography-71b5b38-font-size:16px;--e-global-typography-71b5b38-font-weight:300;--e-global-typography-71b5b38-text-transform:none;--e-global-typography-71b5b38-font-style:normal;--e-global-typography-71b5b38-text-decoration:line-through;--e-global-typography-71b5b38-line-height:1.5em;--e-global-typography-71b5b38-letter-spacing:0px;--e-global-typography-71b5b38-word-spacing:0em;--e-global-typography-555f776-font-family:"Poppins";--e-global-typography-555f776-font-size:16px;--e-global-typography-555f776-font-weight:400;--e-global-typography-555f776-text-transform:capitalize;--e-global-typography-555f776-font-style:normal;--e-global-typography-555f776-text-decoration:none;--e-global-typography-555f776-line-height:1em;--e-global-typography-555f776-letter-spacing:0px;background-color:var( --e-global-color-c696dce );}.elementor-kit-71 e-page-transition{background-color:#FFBC7D;}.elementor-kit-71 a{color:var( --e-global-color-accent );}.elementor-kit-71 a:hover{color:var( --e-global-color-primary );}.elementor-kit-71 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-392b9e0-font-family ), Sans-serif;font-size:var( --e-global-typography-392b9e0-font-size );font-weight:var( --e-global-typography-392b9e0-font-weight );text-transform:var( --e-global-typography-392b9e0-text-transform );font-style:var( --e-global-typography-392b9e0-font-style );text-decoration:var( --e-global-typography-392b9e0-text-decoration );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1650px;}.e-con{--container-max-width:1650px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}{}h1.entry-title{display:var(--page-title-display);}.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:1024px){.elementor-kit-71{--e-global-typography-primary-font-size:45px;--e-global-typography-secondary-font-size:25px;--e-global-typography-text-font-size:14px;--e-global-typography-accent-font-size:14px;--e-global-typography-c05b693-font-size:14px;--e-global-typography-6558fb1-font-size:14px;--e-global-typography-92bce3b-font-size:14px;--e-global-typography-b2deeae-font-size:65px;--e-global-typography-fb1a3e0-font-size:145px;--e-global-typography-397e168-font-size:14px;--e-global-typography-555f776-font-size:14px;--e-global-typography-555f776-line-height:2em;}.elementor-kit-71 h4{font-size:var( --e-global-typography-392b9e0-font-size );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-71{--e-global-typography-primary-font-size:28px;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-size:20px;--e-global-typography-392b9e0-font-size:18px;--e-global-typography-b2deeae-font-size:48px;--e-global-typography-b2deeae-line-height:1em;--e-global-typography-fb1a3e0-font-size:100px;--e-global-typography-fb1a3e0-line-height:1em;}.elementor-kit-71 h4{font-size:var( --e-global-typography-392b9e0-font-size );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================================================
   OVERDAGKOOR CUSTOM CSS
   Video-knop, stadsblokken en formulieren
   ============================================================ */


/* ------------------------------------------------------------
   VIDEO WRAP & VIDEO
   Zorgt dat video's altijd netjes schalen
------------------------------------------------------------ */
.video-wrap {
  position: relative;
}

.video-wrap video,
.video-wrap .elementor-video {
  display: block;
  width: 100%;
  height: auto;
}

/* Extra fallback voor YouTube/Vimeo iframes */
.video-wrap .elementor-wrapper,
.video-wrap iframe {
  width: 100%;
  height: 100%;
  display: block;
}


/* ------------------------------------------------------------
   PLAY BUTTON (opvallende rode knop in het midden)
------------------------------------------------------------ */
.play-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;

  /* Formaat */
  width: 132px;
  height: 132px;
  border-radius: 9999px;

  /* Stijl: Overdagkoor rood, witte icon */
  background: #C7202C !important;
  display: flex;
  align-items: center;
  justify-content: center;

  box-shadow: 0 8px 24px rgba(0, 0, 0, .30);
  pointer-events: none; /* Klik gaat naar de video eronder */
  transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.play-btn i,
.play-btn svg {
  color: #FFFFFF !important;
  font-size: 60px; /* Grootte play-icoon */
  line-height: 1;
}

/* Hover-effect op desktop */
@media (hover:hover) {
  .play-btn:hover {
    transform: translate(-50%, -50%) scale(1.03);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
  }
}

/* Verberg knop zodra de video speelt (JS voegt .is-playing toe) */
.video-wrap.is-playing .play-btn {
  opacity: 0;
  visibility: hidden;
}

/* Responsieve maten */
@media (max-width: 1024px) {
  .play-btn { width: 112px; height: 112px; }
  .play-btn i, .play-btn svg { font-size: 48px; }
}
@media (max-width: 767px) {
  .play-btn { width: 88px; height: 88px; }
  .play-btn i, .play-btn svg { font-size: 36px; }
}

/* Hover/focus effecten via container */
@media (hover:hover) {
  .elementor .video-wrap:hover .play-btn {
    transform: translate(-50%, -50%) scale(1.06);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .38);
    opacity: 0.95;
  }
}

/* Toetsenbord-focus */
.elementor .video-wrap:focus-within .play-btn {
  transform: translate(-50%, -50%) scale(1.06);
  box-shadow: 0 12px 32px rgba(0, 0, 0, .38);
}

/* Tik-feedback op touch apparaten */
.elementor .video-wrap:active .play-btn {
  transform: translate(-50%, -50%) scale(0.98);
}

/* Respecteer 'reduce motion' instellingen */
@media (prefers-reduced-motion: reduce) {
  .play-btn { transition: none; }
  .elementor .video-wrap:hover .play-btn,
  .elementor .video-wrap:focus-within .play-btn {
    transform: translate(-50%, -50%);
  }
}


/* ------------------------------------------------------------
   COMPACTE VERTICALE SPACING VOOR MOBIEL
------------------------------------------------------------ */
@media (max-width: 767px) {
  .tight-mobile { padding-top: 12px; padding-bottom: 12px; }
  .tight-mobile.e-con { row-gap: 10px; } /* Elementor container gap */
  .tight-mobile .elementor-widget { margin-bottom: 10px; }
  .tight-mobile .elementor-widget:last-child { margin-bottom: 0; }
  .tight-mobile .elementor-heading-title { margin-bottom: .25em; }
}


/* ------------------------------------------------------------
   STADS BLOKKEN (City Blocks)
   Klikbare containers met hover-effect
------------------------------------------------------------ */
.city-block {
  /* Basis layout */
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
  height: 100%;
  width: 100%;
  padding: 16px 18px;

  /* Styling */
  background: #F8F8F8;
  border: 1px solid #E6E6E6;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .06);

  /* Interactie */
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
}

/* Tekst in blok */
.city-block h1,
.city-block h2,
.city-block h3,
.city-block .elementor-icon-box-title {
  margin: 0 0 4px 0;
  line-height: 1.2;
  color: #0B1C4A; /* donkerblauw */
}

.city-block p,
.city-block .elementor-icon-box-description {
  margin: 0;
  color: #444;
}

/* Hover-effect */
.city-block:hover {
  background: #FFFFFF;
  border-color: #EDEDED;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
  transform: translateY(-3px);
  cursor: pointer;
}

/* Titel & tekst worden rood bij hover */
.city-block:hover h1,
.city-block:hover h2,
.city-block:hover h3,
.city-block:hover .elementor-icon-box-title,
.city-block:hover .elementor-icon-box-description {
  color: #C7202C !important; /* Overdagkoor-rood */
}

/* Klik-feedback */
.city-block:active {
  transform: translateY(-1px) scale(.99);
  box-shadow: 0 3px 12px rgba(0, 0, 0, .10);
}

/* Toetsenbord-focus */
.city-block:focus,
.city-block:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(199,32,44,.28), 0 6px 18px rgba(0, 0, 0, .12);
}

/* Mobiel iets compacter */
@media (max-width: 767px) {
  .city-block { padding: 14px 16px; border-radius: 10px; }
}

/* Preventie rare afbrekingen */
.e-con { min-width: 0; }

/* Koptekst altijd op één regel */
.no-wrap { white-space: nowrap; }

/* Op mobiel mag tekst weer afbreken */
@media (max-width: 767px) {
  .no-wrap { white-space: normal; }
}

/* Zorg dat de video-wrapper zich exact aanpast aan de video */
.video-wrap {
  display: inline-block; /* Alleen zo breed als de video */
  position: relative;
  max-width: 100%; /* Zorgt dat het responsive blijft */
  overflow: hidden; /* Verbergt alles buiten de video */
}

.video-wrap iframe,
.video-wrap video,
.video-wrap .elementor-video {
  display: block;
  width: 100%; /* Video vult netjes zijn container */
  height: auto;
}

/* Play-knop exact in het midden */
.video-wrap .play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none; /* Zodat klik op de knop de video start */
}

/* Responsive aanpassing voor kleinere schermen */
@media (max-width: 768px) {
  .video-wrap {
    width: 100%;
  }
}/* End custom CSS */