.elementor-kit-2755{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-7a1e7454:#F5D42D;--e-global-color-a0a6eee:#F0F0F0;--e-global-color-5a7b9171:#4054B2;--e-global-color-fd4edff:#23A455;--e-global-color-a005e8e:#3C3C3C;--e-global-color-17bc67ab:#FFF;--e-global-color-1eed7052:#000000;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;font-family:"Montserrat", Sans-serif;font-size:16px;line-height:1.3em;}.elementor-kit-2755 e-page-transition{background-color:#FFBC7D;}.elementor-kit-2755 a{font-family:"Montserrat", Sans-serif;text-decoration:none;}.elementor-kit-2755 a:hover{color:#C80012;}.elementor-kit-2755 h1{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:400;}.elementor-kit-2755 h2{font-family:"Montserrat", Sans-serif;font-size:24px;font-weight:400;}.elementor-kit-2755 h3{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:400;}.elementor-kit-2755 h4{font-family:"Montserrat", Sans-serif;font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.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);}@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-2755 h2{font-size:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Elementor Nested Accordion: tekst wisselen Lees verder / Lees minder */
.leesverder-accordion .e-n-accordion-item-title-text{
  visibility: hidden;         /* verberg originele tekst */
  position: relative;
}

/* standaard label (dicht) */
.leesverder-accordion .e-n-accordion-item-title-text::before{
  content: "lees meer";
  visibility: visible;
  position: absolute;
  left: 0;
  top: 0;
}

/* open state: details heeft attribuut [open] */
.leesverder-accordion details[open] .e-n-accordion-item-title-text::before{
  content: "lees minder";
}
/* Houd "Lees verder" op één regel */
.leesverder-accordion .e-n-accordion-item-title-text,
.leesverder-accordion .e-n-accordion-item-title-text::before{
  white-space: nowrap;
}
/* Maak details een flex-container */
.leesverder-accordion details {
  display: flex;
  flex-direction: column;
}

/* Als accordion open is: button onder de tekst */
.leesverder-accordion details[open] {
  flex-direction: column-reverse;
}
.leesverder-intro,
.leesverder-intro p {
  margin-bottom: 0;
}
.leesverder-intro {
  line-height: 1.35;
}
.reviews-loadmore .reviews-batch { display: none; }
.reviews-loadmore .reviews-batch.is-visible { display: block; }
/* ===== Toon meer knop – wit met rood dakje ===== */
.reviews-loadmore .reviews-more{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px; /* ruimte tussen tekst en dakje */

  background-color: #ffffff;
  color: #7b2d2d;
  border: 2px solid #7b2d2d;

  padding: 14px 26px;
  min-width: 220px;

  border-radius: 0px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1;

  cursor: pointer;
  text-decoration: none;
  box-shadow: none;
  outline: none;
}

/* ===== SVG chevron-icoon ===== */
.reviews-loadmore .reviews-more::after{
  content: "";
  width: 22px;
  height: 22px;

  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;

  /* SVG chevron-down (Font Awesome style) */
  background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'>\
<path fill='%237b2d2d' d='M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0L160 256l96.5-96.3c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.4 9.4-24.6 9.4-34 0z'/>\
</svg>");
}
/* ❌ geen hover-effect */
.reviews-loadmore .reviews-more:hover{
  background-color: #ffffff;
  color: #7b2d2d;
  border-color: #7b2d2d;
}

/* ❌ geen active-effect */
.reviews-loadmore .reviews-more:active{
  background-color: #ffffff;
  color: #7b2d2d;
}
/* ❌ GEEN focus / outline */
.reviews-loadmore .reviews-more:focus,
.reviews-loadmore .reviews-more:active{
  outline: none;
  box-shadow: none;
}

/* ===== knop altijd horizontaal centreren ===== */
.reviews-loadmore .reviews-more-wrap{
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 24px;
  margin-bottom: 0px; /* ← ruimte onder de knop */
}
.reviews-loadmore .reviews-batch{
  margin-bottom: 30px;
}
/* === RESET: haal alle verticale spacing weg binnen de reviews sectie === */
.reviews-loadmore,
.reviews-loadmore *{
  box-sizing: border-box;
}

/* Elementor containers (oude + nieuwe DOM) resetten */
.reviews-loadmore .e-con,
.reviews-loadmore .e-con-inner,
.reviews-loadmore .elementor-container,
.reviews-loadmore .elementor-widget-wrap,
.reviews-loadmore .elementor-element{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* FLEX/GAP reset (dit is vaak de boosdoener) */
.reviews-loadmore .e-con,
.reviews-loadmore .e-con-inner{
  row-gap: 0 !important;
}

/* === NU bepalen we zelf de spacing === */
.reviews-loadmore .reviews-batch{
  margin: 0 !important;
  padding: 0 !important;
}

/* vaste afstand TUSSEN batches */
.reviews-loadmore .reviews-batch + .reviews-batch{
  margin-top: 30px !important;
}

/* knop spacing */
.reviews-loadmore .reviews-more-wrap{
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 30px;
}
.reviews-loadmore .reviews-batch > .e-con + .e-con{
  margin-top: 30px !important;
}
/* Maak elke review-box een flex-kolom zodat we onderdelen kunnen uitlijnen */
.review-card{
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Haal gekke standaard marges uit tekst widgets (vaak oorzaak van “scheef”) */
.review-card p{
  margin: 0;
}
/* ===== ruimte ONDER de knop (veilig, zonder layout-shift) ===== */
.reviews-loadmore .reviews-more-wrap{
  padding-bottom: 40px; /* pas dit getal aan naar wens */
}
/* ===== altijd ruimte ONDER de hele reviews-sectie (ook als knop verdwijnt) ===== */
.reviews-loadmore{
  padding-bottom: 60px; /* pas aan naar wens: 40/60/80 */
}
/* ===== 1) RIJ containers: laat kinderen (review boxen) stretchen ===== */
/* Dit target: reviews-loadmore -> reviews-batch -> rij-container -> e-con-inner */
.reviews-loadmore .reviews-batch > .e-con > .e-con-inner{
  align-items: stretch !important;
}

/* ===== 2) REVIEW BOXEN: maak elke box een column en 100% hoogte ===== */
.reviews-loadmore .reviews-batch > .e-con > .e-con-inner > .e-con{
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* ===== 3) Zorg dat de binnenkant ook meerekt (Elementor gebruikt e-con-inner) ===== */
.reviews-loadmore .reviews-batch > .e-con > .e-con-inner > .e-con > .e-con-inner{
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* (optioneel) als je wilt dat “naam/plaats” onderin blijft:
   zet dan margin-top:auto op het laatste element in je box */
.reviews-loadmore .reviews-batch > .e-con > .e-con-inner > .e-con > .e-con-inner > :last-child{
  margin-top: auto;
}
/* Desktop & tablet: rechts */
.responsive-text-align,
.responsive-text-align *{
  text-align: right !important;
}

/* Mobiel: links */
@media (max-width: 767px){
  .responsive-text-align,
  .responsive-text-align *{
    text-align: left !important;
  }
}
/* ============ REVIEW BOXEN GELIJKE HOOGTE PER RIJ ============ */

/* de rij met 3 kaarten moet flex zijn + stretch */
.reviews-loadmore .reviews-row{
  display: flex;
  align-items: stretch;     /* 🔑 dit maakt gelijke hoogte mogelijk */
  gap: 30px;                /* pas aan naar jouw spacing */
}

/* elke kaart pakt een gelijk deel van de rij en wordt zelf flex */
.reviews-loadmore .reviews-row > .review-card{
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  height: auto;             /* 100% is hier niet nodig */
}

/* Elementor binnen-wrappers ook als kolom laten werken */
.reviews-loadmore .review-card > .e-con-inner,
.reviews-loadmore .review-card .elementor-widget-wrap{
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* (optioneel) zet laatste tekstblok (naam/plaats) onderin vast */
.reviews-loadmore .review-card .elementor-widget-text-editor:last-of-type{
  margin-top: auto;
}
/* ============ MOBIEL: 1 REVIEW PER RIJ + 30px RUIMTE ============ */
@media (max-width: 767px){

  /* rij onder elkaar */
  .reviews-loadmore .reviews-row{
    display: flex;
    flex-direction: column;
  }

  /* elke kaart volle breedte */
  .reviews-loadmore .reviews-row > .review-card{
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-bottom: 30px; /* ruimte tussen kaarten */
  }

  /* laatste kaart geen extra marge */
  .reviews-loadmore .reviews-row > .review-card:last-child{
    margin-bottom: 0;
  }
}
/* ============ MOBIEL: 1 REVIEW PER RIJ + 20px RUIMTE ============ */
@media (max-width: 767px){

  /* 1) Zet de "row wrapper" altijd als kolom + geef gap */
  .reviews-loadmore .reviews-row,
  .reviews-loadmore .reviews-row > .e-con-inner,
  .reviews-loadmore .reviews-row > .elementor-container,
  .reviews-loadmore .reviews-row > .elementor-widget-wrap{
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;           /* ✅ 20px ruimte tussen kaarten */
  }

  /* 2) Zorg dat elke kaart volle breedte is */
  .reviews-loadmore .review-card{
    width: 100% !important;
    max-width: 100% !important;
  }

  /* 3) Fallback (als gap niet pakt): margin onder elke kaart */
  .reviews-loadmore .reviews-row > .review-card{
    margin: 0 0 20px 0 !important;  /* ✅ 20px onder elke kaart */
  }
  .reviews-loadmore .reviews-row > .review-card:last-child{
    margin-bottom: 0 !important;
  }
}/* End custom CSS */