.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-accordion .elementor-accordion-icon, .elementor-widget-accordion .elementor-accordion-title{color:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-accordion-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon, .elementor-widget-accordion .elementor-active .elementor-accordion-title{color:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-accordion-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-accordion .elementor-tab-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}/* Start custom CSS for html, class: .elementor-element-3181725 *//* --- MOBIEL FIXES --- */

/* 1) Toon de TABEL óók op mobiel en maak 'm swipebaar */
@media (max-width: 767px) {
  .zb-table-wrap { 
    display: block !important;        /* was none */
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .zb-table { 
    min-width: 620px;                  /* breed genoeg om te kunnen swipen */
  }
}

/* 2) Zorg dat de CARDS echt kunnen scrollen en niet worden afgeknipt */
.zb-wrap { overflow: visible; }        /* voorkom clipping door parent */
.zb-cards {
  display: inline-flex;                /* robuuster dan flex bij nested wrappers */
  overflow-x: auto !important;         /* overridet eventuele theme styles */
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  gap: 0.875rem;
  padding: .5rem .25rem;
  width: 100%;
  max-width: 100%;
}
.zb-card {
  flex: 0 0 92%;                       /* kaart vrijwel schermvullend */
  max-width: 92%;
  scroll-snap-align: start;
}

/* Maak de laatste kaart niet “afgekapt” aan de rechterrand */
.zb-cards::after {
  content: "";
  flex: 0 0 .25rem;
}

/* 3) Compactere typografie en padding op mobiel zodat alles past */
@media (max-width: 767px) {
  .zb-table thead th,
  .zb-table td,
  .zb-table tbody th { 
    padding: .75rem .875rem;
  }
  .zb-card h3 { font-size: 1rem; }
  .zb-card p  { font-size: .98rem; line-height: 1.45; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6439dee *//* Zelfde tabelstijl als tabel 1 */
.zb-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(2,6,23,.06);
  padding: .25rem;
}
.zb-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 640px;                /* smartphone: swipen */
  background: #fff;
}
.zb-table thead th {
  text-align: left;
  background: #f1f5f9;
  color: #0f172a;
  font-weight: 600;
  padding: .9rem 1rem;
  border-bottom: 1px solid #e2e8f0;
}
.zb-table tbody th,
.zb-table td {
  padding: .9rem 1rem;
  border-bottom: 1px solid #e5e7eb;
  vertical-align: top;
  color: #1f2937;
}
.zb-table tbody tr:nth-child(odd) td,
.zb-table tbody tr:nth-child(odd) th {
  background: #f8fafc;
}
.zb-table thead th:first-child { border-top-left-radius: 12px; }
.zb-table thead th:last-child  { border-top-right-radius: 12px; }
.zb-table tbody tr:last-child th:first-child { border-bottom-left-radius: 12px; }
.zb-table tbody tr:last-child td:last-child  { border-bottom-right-radius: 12px; }

/* Desktop: altijd volledig in beeld, geen horizontale scroll */
@media (min-width: 1024px) {
  .zb-table-scroll { overflow-x: visible; }
  .zb-table { min-width: 0; }      /* vult 100% van de contentkolom */
}

/* Compacte typografie (tegen thema-opschaling) */
#zonneboiler-merken .zb-table,
#zonneboiler-kosten .zb-table {
  font-size: 16px;
  line-height: 1.45;
}/* End custom CSS */