.elementor-kit-6{--e-global-color-primary:#34393C;--e-global-color-secondary:#747579;--e-global-color-text:#4A5054;--e-global-color-accent:#155C8F;--e-global-color-nddark:#22262A;--e-global-color-ndbluedark:#0F4570;--e-global-color-ndlight:#F3F4F5;--e-global-color-ndline:#E2E5E7;--e-global-color-ndwhite:#FFFFFF;--e-global-typography-primary-font-family:"Jost";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.1em;--e-global-typography-primary-letter-spacing:-0.5px;--e-global-typography-secondary-font-family:"Jost";--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-weight:600;--e-global-typography-accent-letter-spacing:0.3px;color:#4A5054;font-family:"Inter", Sans-serif;font-size:17px;font-weight:400;line-height:1.75em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#155C8F;font-family:"Jost", Sans-serif;font-size:16px;font-weight:600;letter-spacing:0.3px;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:18px 34px 18px 34px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#155C8F;}.elementor-kit-6 a:hover{color:#0F4570;}.elementor-kit-6 h1{color:#34393C;font-family:"Jost", Sans-serif;font-size:62px;font-weight:600;line-height:1.05em;letter-spacing:-1px;}.elementor-kit-6 h2{color:#34393C;font-family:"Jost", Sans-serif;font-size:42px;font-weight:600;line-height:1.12em;letter-spacing:-0.6px;}.elementor-kit-6 h3{color:#34393C;font-family:"Jost", Sans-serif;font-size:24px;font-weight:600;line-height:1.25em;}.elementor-kit-6 h4{color:#34393C;font-family:"Jost", Sans-serif;font-size:20px;font-weight:600;line-height:1.3em;}.elementor-kit-6 h5{color:#34393C;font-family:"Jost", Sans-serif;font-size:17px;font-weight:600;}.elementor-kit-6 h6{color:#34393C;font-family:"Jost", Sans-serif;font-size:15px;font-weight:600;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{color:#FFFFFF;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}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-6 h1{font-size:46px;}.elementor-kit-6 h2{font-size:34px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:26px;--container-default-padding-bottom:0px;--container-default-padding-left:26px;}}@media(max-width:767px){.elementor-kit-6{font-size:16px;}.elementor-kit-6 h1{font-size:34px;}.elementor-kit-6 h2{font-size:28px;}.elementor-kit-6 h3{font-size:21px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:18px;--container-default-padding-bottom:0px;--container-default-padding-left:18px;}}
/* Start custom CSS *//* ============ NIMO DEUREN — centrale custom CSS ============ */
:root{
  --nd-dark:#34393C; --nd-darker:#22262A; --nd-blue:#155C8F; --nd-blue-d:#0F4570;
  --nd-grey:#747579; --nd-light:#F3F4F5; --nd-line:#E2E5E7;
}

/* ---- 1. Mega menu (alleen desktop) ---- */
#nd-header .nd-mainbar{position:relative;}
/* Elementor zet position:relative op elke container. Alleen de keten van balk naar
   navigatie-item mag static zijn, zodat het megapaneel zich op de balk richt en de
   volle breedte krijgt. Descendants van het paneel blijven relative, anders lekken
   hun achtergrond-overlays over het hele paneel. */
#nd-header .nd-mainbar > .e-con,
#nd-header .nd-mainbar > .e-con > .e-con-inner,
#nd-header .nd-nav,
#nd-header .nd-nav-item{position:static;}
#nd-header .nd-nav{gap:0;}
#nd-header .nd-nav-item{position:static;--width:auto;flex:0 0 auto;}
#nd-header .nd-nav{--width:auto;flex:1 1 auto;}
#nd-header .nd-mega{--width:100%;}
#nd-header .nd-mega-panel{--width:100%;}
#nd-header .nd-nav-link .elementor-heading-title{margin:0;}
#nd-header .nd-nav-link a,
#nd-header .nd-nav-link .elementor-heading-title{
  display:inline-flex;align-items:center;gap:7px;
  padding:26px 15px;color:var(--nd-dark);
  font-family:"Jost",sans-serif;font-weight:500;font-size:16px;line-height:1;
  text-decoration:none;transition:color .16s ease;
}
#nd-header .nd-has-mega .nd-nav-link a::after{
  content:"";width:7px;height:7px;border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);
  transition:transform .18s ease;
}
#nd-header .nd-nav-item:hover .nd-nav-link a,
#nd-header .nd-nav-item:focus-within .nd-nav-link a{color:var(--nd-blue);}
#nd-header .nd-has-mega:hover .nd-nav-link a::after,
#nd-header .nd-has-mega:focus-within .nd-nav-link a::after{transform:rotate(225deg) translateY(-4px);}
#nd-header .nd-nav-item > .e-con-inner > .nd-nav-link,
#nd-header .nd-nav-item > .nd-nav-link{width:auto;}

#nd-header .nd-mainbar .nd-mega{
  position:absolute;top:100%;left:0;right:0;width:100%;
  background:#fff;border-top:1px solid var(--nd-line);
  box-shadow:0 22px 44px -18px rgba(34,38,42,.30);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;
  z-index:60;
}
#nd-header .nd-has-mega:hover > .e-con-inner > .nd-mega,
#nd-header .nd-has-mega:hover > .nd-mega,
#nd-header .nd-has-mega:focus-within > .e-con-inner > .nd-mega,
#nd-header .nd-has-mega:focus-within > .nd-mega{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);
}
#nd-header .nd-mega-card .elementor-widget-image img{
  transition:transform .4s ease;display:block;width:100%;
  aspect-ratio:16/10;object-fit:cover;
}
#nd-header .nd-mega-card:hover .elementor-widget-image img{transform:scale(1.05);}
#nd-header .nd-mega-card .elementor-widget-image{overflow:hidden;border-radius:8px;}
#nd-header .nd-mega-card:hover .elementor-heading-title{color:var(--nd-blue);}
#nd-header .nd-mega-link a{
  display:flex;align-items:center;gap:10px;padding:11px 0;
  border-bottom:1px solid var(--nd-line);color:var(--nd-dark);
  font-family:"Inter",sans-serif;font-size:15px;text-decoration:none;transition:color .16s ease;
}
#nd-header .nd-mega-link:last-child a{border-bottom:0;}
#nd-header .nd-mega-link a:hover{color:var(--nd-blue);}
#nd-header .nd-mega-foot{border-top:1px solid var(--nd-line);background:#FAFBFB;}
#nd-header .nd-mega-foot .e-con-inner > .e-con{--width:auto;flex:0 0 auto;}
#nd-header .nd-mega-foot .elementor-icon-list-items{margin:0;}
#nd-header .nd-mega-foot a{color:var(--nd-dark);text-decoration:none;}
#nd-header .nd-mega-foot a:hover{color:var(--nd-blue);}

#nd-header .elementor-button{white-space:nowrap;}
#nd-header .nd-cta .elementor-button{padding-left:26px;padding-right:26px;}
@media (max-width:1024px){ #nd-header .nd-mega{display:none !important;} }

/* ---- 1b. Mobiel menu: schermbreed uitklappen onder de balk ---- */
#nd-header .nd-mobile-call .elementor-button{min-width:46px;justify-content:center;}
#nd-header .nd-mobile-call .elementor-button-icon{margin:0;}
@media (max-width:1024px){
  #nd-header .nd-mobile-nav,
  #nd-header .nd-mobile-nav .elementor-widget-nav-menu,
  #nd-header .nd-mobile-nav .elementor-nav-menu--main{position:static;}
  #nd-header .elementor-nav-menu--dropdown{
    position:absolute !important;top:100% !important;left:0 !important;right:0 !important;
    width:100% !important;max-width:none !important;
    background:var(--nd-darker) !important;
    box-shadow:0 20px 40px -16px rgba(34,38,42,.45);
    max-height:calc(100vh - 100px);overflow-y:auto;
  }
  #nd-header .elementor-nav-menu--dropdown a{
    padding:16px 24px !important;font-size:16px !important;
    border-bottom:1px solid rgba(255,255,255,.10);
  }
  #nd-header .elementor-nav-menu--dropdown .sub-menu a{
    padding-left:44px !important;font-size:15px !important;
    background:rgba(255,255,255,.04);
  }
  #nd-header .elementor-menu-toggle{
    width:46px;height:46px;border-radius:999px;background:var(--nd-light);
    color:var(--nd-dark);
  }
  #nd-header .elementor-menu-toggle.elementor-active{background:var(--nd-dark);color:#fff;}
}

/* ---- 2. Kaarten ---- */
.nd-card{transition:box-shadow .22s ease,transform .22s ease;overflow:hidden;}
.nd-card:hover{box-shadow:0 18px 38px -20px rgba(34,38,42,.32);transform:translateY(-3px);}
.nd-card .elementor-widget-image{overflow:hidden;}
.nd-card .elementor-widget-image img{transition:transform .45s ease;display:block;width:100%;}
.nd-card:hover .elementor-widget-image img{transform:scale(1.045);}

/* ---- 3. Toegankelijkheid: zichtbare focus ---- */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible{
  outline:3px solid var(--nd-blue);outline-offset:2px;border-radius:3px;
}
#nd-header .nd-nav-link a:focus-visible{outline-offset:-3px;}

/* ---- 3b. Vangnet: nooit breder dan het scherm op tablet en mobiel ---- */
@media (max-width:1024px){
  .elementor-location-single .e-con,
  .elementor-location-single .e-con-inner,
  .elementor-location-footer .e-con{max-width:100%;}
}

/* ---- 4. Formulieren ---- */
/* Elementor gebruikt negatieve marges op de veldenwrapper; dat veroorzaakt
   horizontale overflow op smalle schermen. Hier vervangen door een echte gap. */
.elementor-form .elementor-form-fields-wrapper{
  margin-left:0 !important;margin-right:0 !important;
  display:flex;flex-wrap:wrap;column-gap:18px;row-gap:18px;width:100%;
}
.elementor-form .elementor-form-fields-wrapper > .elementor-field-group{
  padding-left:0 !important;padding-right:0 !important;flex:0 0 auto;
}
.elementor-form .elementor-col-100{width:100%;}
.elementor-form .elementor-col-80{width:calc(80% - 3.6px);}
.elementor-form .elementor-col-75{width:calc(75% - 4.5px);}
.elementor-form .elementor-col-66{width:calc(66.66% - 6px);}
.elementor-form .elementor-col-60{width:calc(60% - 7.2px);}
.elementor-form .elementor-col-50{width:calc(50% - 9px);}
.elementor-form .elementor-col-40{width:calc(40% - 10.8px);}
.elementor-form .elementor-col-33{width:calc(33.33% - 12px);}
.elementor-form .elementor-col-25{width:calc(25% - 13.5px);}
.elementor-form .elementor-col-20{width:calc(20% - 14.4px);}
.elementor-form .elementor-col-auto{width:auto;}
@media (max-width:767px){
  .elementor-form .elementor-form-fields-wrapper > .elementor-field-group{width:100%;}
  .elementor-form .elementor-col-auto{width:auto;}
}
.elementor-field-group .elementor-field:focus{
  border-color:var(--nd-blue) !important;
  box-shadow:0 0 0 3px rgba(21,92,143,.14);
}
.elementor-field-type-acceptance .elementor-field-option{display:flex;gap:10px;align-items:flex-start;}
.elementor-field-type-acceptance .elementor-field-option label{font-size:15px;line-height:1.6;color:var(--nd-grey);}
.elementor-field-type-acceptance input[type=checkbox]{margin-top:3px;width:18px;height:18px;flex:0 0 18px;}
.elementor-field-type-upload .elementor-field{padding:12px;background:#fff;}
.elementor-message.elementor-message-success{
  background:#EAF3F9;border:1px solid #B9D6E9;color:#0F4570;
  padding:18px 20px;border-radius:10px;font-size:16px;line-height:1.6;
}
.elementor-message.elementor-message-danger{
  background:#FDECEC;border:1px solid #F3C2C2;color:#8A1F1F;
  padding:16px 18px;border-radius:10px;
}
/* multi-step */
.e-form__indicators{margin-bottom:30px;align-items:flex-start;}
.e-form__indicators__indicator{font-family:"Jost",sans-serif;}
.e-form__indicators__indicator__label{
  white-space:nowrap;font-family:"Jost",sans-serif;font-size:13px;
  font-weight:600;margin-top:9px;letter-spacing:.2px;
}
.e-form__indicators__indicator__separator{margin-top:15px;}
.e-form__buttons{gap:12px;flex-wrap:wrap;}
.e-form__buttons__wrapper{gap:12px;display:flex;flex-wrap:wrap;}
.elementor-form .e-form__buttons__wrapper__button,
.elementor-form .elementor-button[type=submit]{
  border-radius:999px;padding:18px 34px;font-family:"Jost",sans-serif;
  font-weight:600;font-size:16px;
}
.elementor-form .e-form__buttons__wrapper__button-previous{
  background:transparent;color:var(--nd-dark);border:2px solid var(--nd-line);
}
.elementor-form .e-form__buttons__wrapper__button-previous:hover{
  background:var(--nd-dark);color:#fff;border-color:var(--nd-dark);
}
@media (max-width:520px){
  .e-form__indicators__indicator__label{font-size:11px;white-space:normal;}
}

/* ---- 5. Algemeen ---- */
html{scroll-behavior:smooth;}
body{overflow-x:hidden;}
img{max-width:100%;height:auto;}
.elementor-widget-text-editor p:last-child{margin-bottom:0;}
.elementor-accordion .elementor-tab-title{transition:background-color .16s ease;}
.elementor-accordion .elementor-tab-title:hover{background-color:#F7F9FA !important;}
.elementor-button{transition:background-color .18s ease,color .18s ease,border-color .18s ease;}

/* ---- 6. Footer ---- */
.elementor-location-footer .elementor-nav-menu a{padding-left:0 !important;}
/* ruimere tapdoelen in de footer en de juridische balk */
.elementor-location-footer .elementor-nav-menu a{padding-top:9px;padding-bottom:9px;}
.elementor-location-footer .elementor-icon-list-item a{display:inline-block;padding:3px 0;}

/* ---- 7. Responsive fijnslijpen ---- */
@media (max-width:767px){
  .elementor-button{width:100%;justify-content:center;}
  .nd-keep-inline .elementor-button{width:auto;}
}/* End custom CSS */