/*
Theme Name: Bold theme
Theme URI: https://www.boldonline.nl
Author: Bold Online
Author URI: https://www.boldonline.nl
Description: Bold Online
Version: 1.0
Template: hello-elementor
*/



/* Add your custom styles here */

h1, h2, h3, h4, h5, h6 {
  font-family: 'Glacial Indifference', sans-serif !important;
  margin-top: 0;
  margin-bottom: 0;
}
p strong {
	color:#95C93D;
}


/* Containerkleur op hover */
.service-box:hover {
    background-color: #95C93D;
}

/* Icoon, koptekst en teksteditor blijven hetzelfde als eerder */
.service-box:hover .elementor-icon svg,
.service-box:hover .elementor-icon i           { fill:#231F20;color:#231F20; }
.service-box:hover .elementor-heading-title   { color:#F6F6F6; }
.service-box:hover .elementor-widget-text-editor,
.service-box:hover .elementor-widget-text-editor p { color:#231F20; }

/* Knop verandert zodra de container wordt gehoverd */
/* Gebruik !important om Elementor-inline of -hoverregels te overtreffen */
.service-box:hover .elementor-button {
    background-color:#231F20 !important;
    color:#F6F6F6 !important;
    border-color:#231F20 !important;
}

/* Optioneel, laat de knop zijn eigen hoverkleur behouden wanneer
   je óók rechtstreeks over de knop gaat */
.service-box:hover .elementor-button:hover {
    /* Hier dezelfde kleuren als je in Elementor voor de knop-hover hebt ingesteld,
       bijvoorbeeld een omgekeerde variant:               */
    background-color:#F6F6F6 !important;
    color:#231F20 !important;
    border-color:#F6F6F6 !important;
}

/* Vlotte overgang voor alles samen */
.service-box,
.service-box .elementor-icon svg,
.service-box .elementor-heading-title,
.service-box .elementor-widget-text-editor p,
.service-box .elementor-button {
    transition:all .3s ease;
}
/* overgang mee laten animeren */
.service-box .service-icon { transition:filter .3s ease; }

/* container hover */
.service-box:hover .service-icon {
    /* maakt eerst alles zwart en keert dan om naar wit */
    filter:brightness(0) invert(1);
}


/* horizontaal scrollen tabellen op schermen tot 768 px */
@media (max-width: 1200px) {

  .table-scroll {
    overflow-x: auto;      /* maakt de wrapper scrollbaar */
    -webkit-overflow-scrolling: touch; /* soepel scrollen op iOS */
  }

  /* tabel mag breder zijn dan het scherm zodat er iets te scrollen valt */
  .table-scroll table.tablepress {
    min-width: 1200px;      /* pas aan aan jouw kolom­breedte */
    width: 100%;           /* vult de wrapper */
    border-collapse: collapse;
  }
}

/* ---------- algemene opmaak TABELLEN ---------- */
.tablepress-id-2-wrapper,
.tablepress-id-4-wrapper,
.tablepress-id-5-wrapper,
.tablepress-id-6-wrapper {                    /* wrappers krijgen scroll */
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.tablepress-id-2,
.tablepress-id-4,
.tablepress-id-5,
.tablepress-id-6 {
  width: 100%;
  border-collapse: collapse;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  line-height: 1.35;
  table-layout: fixed;                        /* desktop */
  min-width: 1080px;                          /* ook boven 1024 px scroll */
}

/* celranden en padding */
.tablepress-id-2 th,
.tablepress-id-2 td,
.tablepress-id-4 th,
.tablepress-id-4 td,
.tablepress-id-5 th,
.tablepress-id-5 td,
.tablepress-id-6 th,
.tablepress-id-6 td {
  border: 1px solid #c6ccd1;
  padding: 8px 12px;
}

/* ---------- koprij ---------- */
.tablepress-id-2 thead th,
.tablepress-id-4 thead th,
.tablepress-id-5 thead th,
.tablepress-id-6 thead th {
  background: #8cc63f;
  color: #ffffff;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  position: sticky;
  top: 0;
  z-index: 5;                                   /* altijd boven sticky cellen */
}

/* ---------- zebra-patroon ---------- */
.tablepress-id-2 tbody tr:nth-child(odd)  td,
.tablepress-id-4 tbody tr:nth-child(odd)  td,
.tablepress-id-5 tbody tr:nth-child(odd)  td,
.tablepress-id-6 tbody tr:nth-child(odd)  td { background: #f2f8f9; }

.tablepress-id-2 tbody tr:nth-child(even) td,
.tablepress-id-4 tbody tr:nth-child(even) td,
.tablepress-id-5 tbody tr:nth-child(even) td,
.tablepress-id-6 tbody tr:nth-child(even) td { background: #e8e6e6; }

/* ---------- uitlijning per kolom ---------- */
.tablepress-id-2 .column-1,
.tablepress-id-4 .column-1,
.tablepress-id-5 .column-1,
.tablepress-id-6 .column-1  { text-align: left;  font-weight: 400; }

.tablepress-id-2 .column-2,
.tablepress-id-4 .column-2,
.tablepress-id-5 .column-2,
.tablepress-id-6 .column-2  { text-align: center; }

.tablepress-id-2 .column-3,
.tablepress-id-2 .column-4,
.tablepress-id-2 .column-5,
.tablepress-id-2 .column-7,
.tablepress-id-2 .column-8,
.tablepress-id-2 .column-9,
.tablepress-id-4 .column-3,
.tablepress-id-4 .column-4,
.tablepress-id-4 .column-5,
.tablepress-id-4 .column-7,
.tablepress-id-4 .column-8,
.tablepress-id-4 .column-9,
.tablepress-id-5 .column-3,
.tablepress-id-5 .column-4,
.tablepress-id-5 .column-5,
.tablepress-id-5 .column-7,
.tablepress-id-5 .column-8,
.tablepress-id-5 .column-9,
.tablepress-id-6 .column-3,
.tablepress-id-6 .column-4,
.tablepress-id-6 .column-5,
.tablepress-id-6 .column-7,
.tablepress-id-6 .column-8,
.tablepress-id-6 .column-9  { text-align: center; }

/* kolomtitels L, B, H wat smaller (desktop) */
.tablepress-id-2 .column-7,
.tablepress-id-2 .column-8,
.tablepress-id-2 .column-9,
.tablepress-id-4 .column-7,
.tablepress-id-4 .column-8,
.tablepress-id-4 .column-9,
.tablepress-id-5 .column-7,
.tablepress-id-5 .column-8,
.tablepress-id-5 .column-9,
.tablepress-id-6 .column-7,
.tablepress-id-6 .column-8,
.tablepress-id-6 .column-9  { width: 75px; }

/* ---------- iconen netjes centreren ---------- */
.tablepress-id-2 td img,
.tablepress-id-4 td img,
.tablepress-id-5 td img,
.tablepress-id-6 td img {
  max-width: 40px;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* ---------- categorie-tussenkoppen (als dezelfde rijen bestaan) ---------- */
.tablepress-id-2 tr.row-3 td,
.tablepress-id-2 tr.row-14 td,
.tablepress-id-2 tr.row-20 td,
.tablepress-id-2 tr.row-31 td,
.tablepress-id-2 tr.row-41 td,
.tablepress-id-4 tr.row-3 td,
.tablepress-id-4 tr.row-14 td,
.tablepress-id-4 tr.row-20 td,
.tablepress-id-4 tr.row-31 td,
.tablepress-id-4 tr.row-41 td,
.tablepress-id-5 tr.row-3 td,
.tablepress-id-5 tr.row-14 td,
.tablepress-id-5 tr.row-20 td,
.tablepress-id-5 tr.row-31 td,
.tablepress-id-5 tr.row-41 td,
.tablepress-id-6 tr.row-3 td,
.tablepress-id-6 tr.row-14 td,
.tablepress-id-6 tr.row-20 td,
.tablepress-id-6 tr.row-31 td,
.tablepress-id-6 tr.row-41 td {
  background: #d9e9d0;
  color: #2b2b2b;
  font-weight: 400;
  border-top: 0px solid #8cc63f;
}

/* ---------- responsive: extra optimalisatie onder 1024 px ---------- */
@media (max-width: 1023px) {

  .tablepress-id-2,
  .tablepress-id-4,
  .tablepress-id-5,
  .tablepress-id-6 {
    table-layout: auto;                /* flexibele kolommen */
  }

  .tablepress-id-2,
  .tablepress-id-2 thead th,
  .tablepress-id-4,
  .tablepress-id-4 thead th,
  .tablepress-id-5,
  .tablepress-id-5 thead th,
  .tablepress-id-6,
  .tablepress-id-6 thead th { font-size: 12px; }

  .tablepress-id-2 th,
  .tablepress-id-2 td,
  .tablepress-id-4 th,
  .tablepress-id-4 td,
  .tablepress-id-5 th,
  .tablepress-id-5 td,
  .tablepress-id-6 th,
  .tablepress-id-6 td { padding: 6px 8px; }

  .tablepress-id-2 thead th,
  .tablepress-id-2 td,
  .tablepress-id-4 thead th,
  .tablepress-id-4 td,
  .tablepress-id-5 thead th,
  .tablepress-id-5 td,
  .tablepress-id-6 thead th,
  .tablepress-id-6 td { white-space: nowrap; }

  /* minimale breedte per kolom */
  .tablepress-id-2 .column-1,
  .tablepress-id-4 .column-1,
  .tablepress-id-5 .column-1,
  .tablepress-id-6 .column-1  { min-width: 84px; }

  .tablepress-id-2 .column-2,
  .tablepress-id-4 .column-2,
  .tablepress-id-5 .column-2,
  .tablepress-id-6 .column-2  { min-width: 90px; }

  .tablepress-id-2 .column-3,
  .tablepress-id-2 .column-4,
  .tablepress-id-2 .column-5,
  .tablepress-id-4 .column-3,
  .tablepress-id-4 .column-4,
  .tablepress-id-4 .column-5,
  .tablepress-id-5 .column-3,
  .tablepress-id-5 .column-4,
  .tablepress-id-5 .column-5,
  .tablepress-id-6 .column-3,
  .tablepress-id-6 .column-4,
  .tablepress-id-6 .column-5  { min-width: 80px; }

  .tablepress-id-2 .column-6,
  .tablepress-id-4 .column-6,
  .tablepress-id-5 .column-6,
  .tablepress-id-6 .column-6  { min-width: 85px; }

  .tablepress-id-2 .column-7,
  .tablepress-id-2 .column-8,
  .tablepress-id-2 .column-9,
  .tablepress-id-4 .column-7,
  .tablepress-id-4 .column-8,
  .tablepress-id-4 .column-9,
  .tablepress-id-5 .column-7,
  .tablepress-id-5 .column-8,
  .tablepress-id-5 .column-9,
  .tablepress-id-6 .column-7,
  .tablepress-id-6 .column-8,
  .tablepress-id-6 .column-9  { min-width: 60px; }

  .tablepress-id-2 .column-10,
  .tablepress-id-4 .column-10,
  .tablepress-id-5 .column-10,
  .tablepress-id-6 .column-10 { min-width: 75px; }

  .tablepress-id-2 .column-11,
  .tablepress-id-4 .column-11,
  .tablepress-id-5 .column-11,
  .tablepress-id-6 .column-11 { min-width: 85px; }

  .tablepress-id-2 .column-12,
  .tablepress-id-4 .column-12,
  .tablepress-id-5 .column-12,
  .tablepress-id-6 .column-12 { min-width: 90px; }

  .tablepress-id-2 .column-13,
  .tablepress-id-4 .column-13,
  .tablepress-id-5 .column-13,
  .tablepress-id-6 .column-13 { min-width: 90px; }

  .tablepress-id-2 .column-14,
  .tablepress-id-4 .column-14,
  .tablepress-id-5 .column-14,
  .tablepress-id-6 .column-14 { min-width: 80px; }

  /* eerste kolom blijft zichtbaar tijdens scrollen */
  .tablepress-id-2 thead th:first-child,
  .tablepress-id-2 tbody td:first-child,
  .tablepress-id-4 thead th:first-child,
  .tablepress-id-4 tbody td:first-child,
  .tablepress-id-5 thead th:first-child,
  .tablepress-id-5 tbody td:first-child,
  .tablepress-id-6 thead th:first-child,
  .tablepress-id-6 tbody td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
  }
}

/* ---------- KAART ---------- */
/* ---------- basis container ---------- */
.gm-style-iw,
.gm-style-iw-c {
    padding: 0 !important;              /* geen extra witruimte */
    background: #ffffff !important;     /* witte achtergrond */
    border-radius: 12px !important;     /* afgeronde hoeken */
    box-shadow: 0 4px 8px rgba(0,0,0,.25) !important;
}

/* ---------- binnenkant uit WP Go Maps ---------- */
.wpgmza-infowindow {
    padding: 16px 24px;                 /* eigen marge binnen het venster */
    font-family: 'Poppins', sans-serif; /* zelfde lettertype als site */
    color: #262626;                     /* basiskleur tekst */
}

/* titel (groen en vet) */
.wpgmza_infowindow_title {
    margin: 0 0 8px 0;
    font-size: 18px;
    font-weight: 700;
    color: #8dc63f;                     /* zelfde groen als marker */
}

/* adresregels */
.wpgmza_infowindow_address {
    margin: 0 0 8px 0;
    font-size: 16px;
    line-height: 1.3;
}

/* optionele beschrijving (bijv. Platinum) in iets lichtere tint */
.wpgmza_infowindow_description {
    margin: 0 0 8px 0;
    font-size: 16px;
    color: #262626;
}
.wpgmza_infowindow_description a {
	color: #262626;
}
.wpgmza_infowindow_description a:hover {
	color: #8dc63f;
}
.wpgmza_infowindow_categories {
	font-weight:700;
}

/* lijstitem Mobiel */
.wpgmaps_blist_row{
    display:flex;          /* zet icoon en tekst naast elkaar */
    align-items:flex-start;/* bovenranden gelijk */
}

.wpgmza_div_marker{
    flex:0 0 14px;         /* geen krimp of groei, 14 px breed */
}

.wpgmza-basic-list-item-wrapper{
    display:flex;          
    flex-direction:column; /* zet titel en adres onder elkaar */
    margin-left:8px;       /* wat ruimte tussen icoon en tekst */
}

.wpgmza_div_title,
.wpgmza_div_address{
    margin:0;
    line-height:1.3;
}
/* iets kleinere marker */
.wpgmza_div_marker{
    flex:0 0 12px;     /* nieuwe vaste breedte */
}

.wpgmza_div_marker img{
    width:32px;        /* icoonbreedte */
    height:32px;       /* icoonhoogte, vierkant blijft netjes */
    object-fit:contain;
}

/* volledige lijst als grid */
#wpgmza_marker_list_2{
    display:grid;
    grid-template-columns:1fr 1fr; /* twee gelijke kolommen */
    gap:0px 32px;                 /* rij- en kolomafstand */
}

/* laat de bestaande flex-instellingen per rij intact */
.wpgmaps_blist_row{
    width:100%;     /* vult mooi de cel */
}
@media(max-width:640px){
    #wpgmza_marker_list_2{
        grid-template-columns:1fr; /* één kolom op mobiel */
    }
}

/* link onderaan */
.wpgmza_infowindow_link a {
    font-size: 16px;
    text-decoration: underline;
    color: #262626;
}
.wpgmza_filter_select button, select {
	width: 120px !important;
}
/* ---------- kruisje rechtsboven ---------- */
.gm-ui-hover-effect span {
    filter: invert(18%) sepia(0%) saturate(0%) hue-rotate(180deg) brightness(96%) contrast(91%);
    /* zet het kruisje op donkergrijs */
}

/* ---------- pijl onder het venster ---------- */
/* Google genereert de pijl via ::after op .gm-style-iw-c, dus overschrijf alleen de grootte als nodig is */
.gm-style-iw-c::after {
    box-shadow: 0 4px 8px rgba(0,0,0,.25);
}
.wpgmaps_blist_row {
	padding:20px 10px !important;
}
.wpgmaps_blist_row:hover {
    background-color: #231F20 !important;
}
/* kleinere kaart op schermen tot 767 px */
@media only screen and (max-width: 767px) {
    #wpgmza_map_2 {          /* vervang 2 door het id uit je shortcode */
        height: 500px !important;   /* kies zelf de gewenste hoogte  */
    }
}




