.elementor-kit-7{--e-global-color-primary:#313E35;--e-global-color-secondary:#273630;--e-global-color-text:#3B3B3B;--e-global-color-accent:#2A3A34;--e-global-color-364ffeb:#E4E1D4;--e-global-color-72baa70:#E5E2D5;--e-global-color-6c93ab9:#00000000;--e-global-color-1bff68d:#FFFFFF;--e-global-color-7eea967:#F0F0F0;--e-global-typography-primary-font-family:"Lato";--e-global-typography-primary-font-size:19px;--e-global-typography-primary-font-weight:300;--e-global-typography-secondary-font-family:"Lato";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Lato";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lato";--e-global-typography-accent-font-weight:500;font-family:"Lato", Sans-serif;font-size:17px;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-primary );text-shadow:0px 0px 10px rgba(0,0,0,0.3);color:var( --e-global-color-72baa70 );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-radius:5px 5px 5px 5px;padding:16px 22px 16px 22px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{font-family:"Lato", Sans-serif;}.elementor-kit-7 a:hover{font-family:"Lato", Sans-serif;}.elementor-kit-7 h1{font-family:"Lato", Sans-serif;font-size:24px;}.elementor-kit-7 h2{font-family:"Lato", Sans-serif;font-size:30px;}.elementor-kit-7 h3{font-family:"Lato", Sans-serif;}.elementor-kit-7 h4{font-family:"Lato", Sans-serif;}.elementor-kit-7 h5{font-family:"Lato", Sans-serif;}.elementor-kit-7 h6{font-family:"Lato", Sans-serif;}.elementor-kit-7 label{font-family:"Lato", Sans-serif;}.elementor-kit-7 input:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea,.elementor-kit-7 .elementor-field-textual{font-family:"Lato", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;}.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);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7 h1{font-size:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:100%;}.e-con{--container-max-width:100%;}}/* Start custom CSS *//* =========================
   RESPONSIVE TABEL STIJL
   ========================= */

/* Wrapper voor horizontaal scrollen */
.table-responsive {
   
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive .tabel {
  min-width: 640px; /* optioneel: dwingt scroll bij smal scherm */
}

/* ========== Mobile-first (< 769px) ========== */
.tabel {
  width: 100%;
      color: #000;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 14px;
  line-height: 1.3;
}

.tabel th,
.tabel td {
  vertical-align: middle;
}


/* Zebra in body */
/*.tabel tbody tr:nth-child(odd) {
/*  background: #eee;
/*}

/* Head verbergen op mobiel */
.tabel thead {
  display: none;
}

/* Rij als kaart */
.tabel tr {
   
  text-align: left;
  display: block;
  margin-bottom: 30px;
  padding-left: 10px
  border: 1px solid #ccc;
}

/* Cel als flex: label + waarde */
.tabel td {
    
  valign-items: center;   /* <-- verticaal centreren binnen de cel */
  text-align: center;
  display: flex;
  gap: 10px;
  border: none;
   border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding: 10px 0px 0px 0px;
  position: relative;
}

/* Label uit data-attribute */
.tabel td::before {
  content: attr(data-label);
  flex: 0 0 25%;
  font-weight: 400;
  color: #000;
  white-space: nowrap;
}

/* Laatste cel in card geen onderrand */
.tabel td:last-child {
  border-bottom:  ;
}

/* Links in cellen */
.tabel a {
  color: #000;
  text-decoration: none;
  display: inline-block;
}






/* Labelkleuren */
.veld-rood  { background:  #C46F5F; color: #000; padding: .25em .5em; }
.veld-geel  { background: #D89A63; color: #000; padding: .25em .5em; }

/* Downloadgewicht */
.downloadplan { font-weight: 600; }



/* ========== Tablet & Desktop (>= 769px) ========== */
@media (min-width: 769px) {
  .tabel { font-size: 14px; line-height: 1.4; }

  /* Klassieke tabelstructuur */
  .tabel thead { display: table-header-group; }
  .tabel tr    { display: table-row; margin: 0; border: none; }
  .tabel th,
  .tabel td    { display: table-cell; border: 1px solid #ccc; }

  /* Desktop headerstijl */
  .tabel th {
    background-color: #dddddd;
    color: #000;
    text-align: center;
    align-items: middle;
    line-height: 32px;
  }

  /* Geen labels meer */
  .tabel td::before { content: none; }

  /* Titel- en bodyrijen */
  .titels tr {
    background-color: #fafafa;
    border-top: 1px solid #fff;
    color: #000;
text-align: center;
    line-height: 40px;
  }
  .body tr {
    background-color: #fafafa;
    border-top: 1px solid #eee;
    font-size: 16px;
    line-height: normal;
  }
  .body tr:hover { background-color: #E4E1D4; }
}



/* ========== Brede desktop (>= 1024px, optioneel) ========== */
@media (min-width: 1024px) {
  .tabel { line-height: 1.6;  align-items: middle; text-align: center; color: #000;}
   .tabel tbody tr { height: 56px; } 

   

}

.open-popup {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  background-color: #313E35;    /* primaire kleur */
  color: #fff;                 /* tekstkleur */
  font-size: 15px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 400;
  line-height: 0;
  padding: 0em 0em;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  transition: background-color 0.2s ease, transform 0.15s ease;
}

.open-popup:hover {
  background-color: #E4E1D4;   /* donkerdere tint bij hover */
  color: #000; 
  transform: translateY(-1px);
}

.open-popup:active {
  background-color: #00263d;   /* nog donkerder bij klik */
  transform: translateY(0);

/* Verwijder alle box-shadows sitewide */
*,
*::before,
*::after {
    box-shadow: none !important;
}

.timeline-arrow{ position:sticky; top:0; z-index:2; }
.scroll-left{ left:0; margin-right:8px; }
.scroll-right{ right:0; margin-left:8px; }


.elementor-widget-text-editor a {
  color: inherit !important;
  text-decoration: none !important;
  font-style: italic;
}

.elementor-widget-text-editor a:hover {
  opacity: 0.7;
}













/* Klikbare Elementor Container-tiles */
.e-con.click-tile {
  position: relative;
  cursor: pointer !important;
  overflow: hidden;               /* clip de zoom aan de randen */
}

/* Zoom de inner wrapper (betrouwbaarder in Elementor) */
.e-con.click-tile .e-con-inner {
  transition: transform .25s ease;
  will-change: transform;
}

.e-con.click-tile:hover .e-con-inner {
  transform: scale(1.02);
}

/* Luxe overlay-tint boven de foto, onder de tekst */
.e-con.click-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background .25s ease;
  z-index: 1;                     /* onder de content */
}

/* Hover: zachte tint */
.e-con.click-tile:hover::before {
  background: rgba(0,0,0,0.08);
}

/* Zorg dat tekst altijd boven de overlay blijft */
.e-con.click-tile * {
  position: relative;
  z-index: 2;
}/* End custom CSS */