Verzekerd vooruit.

Hoeijmakers. Verzekerd vooruit.

Verzekerd vooruit is onze belofte aan ondernemers en particulieren: dat zij met vertrouwen de toekomst tegemoet gaan. Onze experts helpen om risico’s te overzien, kansen te benutten en met een persoonlijk, onafhankelijk advies altijd een stap vooruit te blijven.

Verzekerd vooruit is onze belofte aan ondernemers en particulieren: dat zij met vertrouwen de toekomst tegemoet gaan. Onze experts helpen om risico’s te overzien, kansen te benutten en met een persoonlijk, onafhankelijk advies altijd een stap vooruit te blijven.

<?php if (have_rows('ly_hero_1_slider')) : ?>
    <section class="splide" aria-label="Hero Slider">
        <div class="splide__track">
            <ul class="splide__list">
                <?php while (have_rows('ly_hero_1_slider')) : the_row(); 
                    $image = get_sub_field('ly_hero_1_sl_img');
                    if ($image): ?>
                        <li class="splide__slide">
                            <img src="<?php echo esc_url($image['url']); ?>" alt="<?php echo esc_attr($image['alt']); ?>" />
                        </li>
                    <?php endif; ?>
                <?php endwhile; ?>
            </ul>
        </div>
    </section>
<?php endif; ?>

Geworteld in uw sector

Bouw, Transport & Logistiek, Industrie, Agrofood, Handel en Zakelijke dienstverlening – het zijn sectoren die wij als geen ander kennen. We volgen ontwikkelingen, regelgeving en trends op de voet. Zo signaleren we risico’s vroegtijdig en vertalen ze naar praktische adviezen en heldere verzekeringsoplossingen.


'Hoeijmakers staat voor deskundig, onafhankelijk advies én echte betrokkenheid.'
Ruud van Wijlick, Teboza
'Het is belangrijk dat het goed geregeld is wanneer het écht nodig is. Bij Hoeijmakers ben je daarvan verzekerd!'
Stan Heerschap, Heerschap Groep
Ontdek onze vacatures! Kom werken bij Hoeijmakers en verzeker je toekomst.

Ook particulier Verzekerd vooruit

Als particulier wilt u goed verzekerd zijn – zonder gedoe, zonder verrassingen. Bij Hoeijmakers krijgt u eerlijk en deskundig advies dat afgestemd is op uw leven. We denken met u mee, nu én later.


Verzekerd vooruit met onze experts

Gerja Everhardus

Backoffice Specialist pijl zwart

Sem Grinwis

Mail of bel mij voor advies op maat

sem.grinwis@hoeijmakers.nl

077 358 67 35

Sem Grinwis

Verzekeringsspecialist Particulier pijl zwart

Fleur Hoeijmakers

Verzekeringsspecialist Zakelijk pijl zwart

Ronald Lemmen

Mail of bel mij voor advies op maat

ronald.lemmen@hoeijmakers.nl

077 358 67 01

Ronald Lemmen

Verzekeringsspecialist Zakelijk pijl zwart

Luz Smits

Mail of bel mij voor advies op maat

luz.smits@hoeijmakers.nl

077 358 67 31

Luz Smits

Verzekeringsspecialist Zakelijk pijl zwart

Rogér Geurts

Mail of bel mij voor advies op maat

roger.geurts@hoeijmakers.nl

077 399 98 17

Rogér Geurts

Acceptatiespecialist Zakelijk pijl zwart

Chantal Saelmans

Verzekeringsspecialist Zakelijk pijl zwart

Maartje Crompvoets

Acceptatiespecialist Zakelijk pijl zwart

Ellen van Tongerlo

Backoffice Specialist pijl zwart

Sherron Roumen

Acceptatiespecialist Zakelijk pijl zwart

Noud Heijnen

Mail of bel mij voor advies op maat

noud.heijnen@hoeijmakers.nl

077 358 67 12

Noud Heijnen

Risicospecialist pijl zwart

Lonneke Geelen

Backoffice Specialist pijl zwart

Maarten Driessen

Acceptatiespecialist Particulier pijl zwart

Dave Raedts

Mail of bel mij voor advies op maat

dave.raedts@hoeijmakers.nl

077 358 67 21

Dave Raedts

Schadespecialist pijl zwart

Solaiman Dahmani

Schadespecialist pijl zwart

Ruud Hoeijmakers

Directeur pijl zwart

Luuk Meijboom

Mail of bel mij voor advies op maat

luuk.meijboom@hoeijmakers.nl

077 358 67 13

Luuk Meijboom

Acceptatiespecialist Particulier pijl zwart

Frank Hendrix

Mail of bel mij voor advies op maat

frank.hendrix@hoeijmakers.nl

077 358 67 22

Frank Hendrix

Risicospecialist pijl zwart

Anke Maessen

Mail of bel mij voor advies op maat

anke.maessen@hoeijmakers.nl

077 358 67 17

Anke Maessen

Verzekeringsspecialist Zakelijk pijl zwart

Roger Hilkens

Mail of bel mij voor advies op maat

roger.hilkens@hoeijmakers.nl

077 358 67 05

Roger Hilkens

Directeur pijl zwart

Marleen Claessens

Verzekeringsspecialist Particulier pijl zwart

Sven Luijpers

Mail of bel mij voor advies op maat

sven.luijpers@hoeijmakers.nl

077 358 67 33

Sven Luijpers

Verzekeringsspecialist Particulier pijl zwart

Marian Theeuwen

Backoffice Specialist pijl zwart

Rina Boll

Mail of bel mij voor advies op maat

rina.boll@hoeijmakers.nl

077 358 67 18

Rina Boll

Verzekeringsspecialist Particulier pijl zwart

Jort Sieben

Mail of bel mij voor advies op maat

jort.sieben@hoeijmakers.nl

077 358 67 00

Jort Sieben

Backoffice Specialist pijl zwart

Lucie Pennings

Frontoffice Specialist pijl zwart

Wendy Peeters

Mail of bel mij voor advies op maat

wendy.peeters@hoeijmakers.nl

077 358 67 34

Wendy Peeters

Verzekeringsspecialist Zakelijk pijl zwart

Tom Colbers

Mail of bel mij voor advies op maat

tom.colbers@hoeijmakers.nl

077 358 67 19

Tom Colbers

Directeur pijl zwart

Maak kennis met al onze experts.

pijl zwart
Gerja Everhardus

Gerja Everhardus

Backoffice Specialist pijl zwart

Mail of bel mij voor advies op maat

gerja.everhardus@hoeijmakers.nl

077 358 67 26

Sem Grinwis

Sem Grinwis

Verzekeringsspecialist Particulier pijl zwart

Mail of bel mij voor advies op maat

sem.grinwis@hoeijmakers.nl

077 358 67 35

Fleur Hoeijmakers

Fleur Hoeijmakers

Verzekeringsspecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

fleur.hoeijmakers@hoeijmakers.nl

077 358 67 07

Ronald Lemmen

Ronald Lemmen

Verzekeringsspecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

ronald.lemmen@hoeijmakers.nl

077 358 67 01

Luz Smits

Luz Smits

Verzekeringsspecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

luz.smits@hoeijmakers.nl

077 358 67 31

Rogér Geurts

Rogér Geurts

Acceptatiespecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

roger.geurts@hoeijmakers.nl

077 399 98 17

Chantal Saelmans

Chantal Saelmans

Verzekeringsspecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

chantal.saelmans@hoeijmakers.nl

077 358 67 15

Maartje Crompvoets

Maartje Crompvoets

Acceptatiespecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

maartje.crompvoets@hoeijmakers.nl

077 358 67 25

Ellen van Tongerlo

Ellen van Tongerlo

Backoffice Specialist pijl zwart

Mail of bel mij voor advies op maat

ellen.van.tongerlo@hoeijmakers.nl

077 358 67 03

Sherron Roumen

Sherron Roumen

Acceptatiespecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

sherron.roumen@hoeijmakers.nl

077 358 67 24

Noud Heijnen

Noud Heijnen

Risicospecialist pijl zwart

Mail of bel mij voor advies op maat

noud.heijnen@hoeijmakers.nl

077 358 67 12

Lonneke Geelen

Lonneke Geelen

Backoffice Specialist pijl zwart

Mail of bel mij voor advies op maat

lonneke.geelen@hoeijmakers.nl

077 358 67 39

Maarten Driessen

Maarten Driessen

Acceptatiespecialist Particulier pijl zwart

Mail of bel mij voor advies op maat

maarten.driessen@hoeijmakers.nl

077 358 67 16

Dave Raedts

Dave Raedts

Schadespecialist pijl zwart

Mail of bel mij voor advies op maat

dave.raedts@hoeijmakers.nl

077 358 67 21

Solaiman Dahmani

Solaiman Dahmani

Schadespecialist pijl zwart

Mail of bel mij voor advies op maat

solaiman.dahmani@hoeijmakers.nl

077 358 67 36

Ruud Hoeijmakers

Ruud Hoeijmakers

Directeur pijl zwart

Mail of bel mij voor advies op maat

ruud.hoeijmakers@hoeijmakers.nl

077 358 67 23

Luuk Meijboom

Luuk Meijboom

Acceptatiespecialist Particulier pijl zwart

Mail of bel mij voor advies op maat

luuk.meijboom@hoeijmakers.nl

077 358 67 13

Frank Hendrix

Frank Hendrix

Risicospecialist pijl zwart

Mail of bel mij voor advies op maat

frank.hendrix@hoeijmakers.nl

077 358 67 22

Anke Maessen

Anke Maessen

Verzekeringsspecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

anke.maessen@hoeijmakers.nl

077 358 67 17

Roger Hilkens

Roger Hilkens

Directeur pijl zwart

Mail of bel mij voor advies op maat

roger.hilkens@hoeijmakers.nl

077 358 67 05

Marleen Claessens

Marleen Claessens

Verzekeringsspecialist Particulier pijl zwart

Mail of bel mij voor advies op maat

marleen.claessens@hoeijmakers.nl

077 473 81 51

Sven Luijpers

Sven Luijpers

Verzekeringsspecialist Particulier pijl zwart

Mail of bel mij voor advies op maat

sven.luijpers@hoeijmakers.nl

077 358 67 33

Marian Theeuwen

Marian Theeuwen

Backoffice Specialist pijl zwart

Mail of bel mij voor advies op maat

marian.theeuwen@hoeijmakers.nl

077 358 67 28

Rina Boll

Rina Boll

Verzekeringsspecialist Particulier pijl zwart

Mail of bel mij voor advies op maat

rina.boll@hoeijmakers.nl

077 358 67 18

Jort Sieben

Jort Sieben

Backoffice Specialist pijl zwart

Mail of bel mij voor advies op maat

jort.sieben@hoeijmakers.nl

077 358 67 00

Lucie Pennings

Lucie Pennings

Frontoffice Specialist pijl zwart

Mail of bel mij voor advies op maat

lucie.pennings@hoeijmakers.nl

077 358 67 00

Wendy Peeters

Wendy Peeters

Verzekeringsspecialist Zakelijk pijl zwart

Mail of bel mij voor advies op maat

wendy.peeters@hoeijmakers.nl

077 358 67 34

Tom Colbers

Tom Colbers

Directeur pijl zwart

Mail of bel mij voor advies op maat

tom.colbers@hoeijmakers.nl

077 358 67 19

<?php
$ly_tekst_id = get_sub_field('ovz_anker');
if (!empty($ly_tekst_id)) :
    echo '<div id="' . esc_attr($ly_tekst_id) . '"></div>';
endif;

$selected_items = get_sub_field('ovz_overzicht');
$random_experts = is_array($selected_items) ? $selected_items : array();
shuffle($random_experts);

$grid_aantal_items = get_sub_field('ovz_aantal_items');
$class_name = '';
switch ($grid_aantal_items) {
    case '2': $class_name = 'twee-items'; break;
    case '3': $class_name = 'drie-items'; break;
    case '4': $class_name = 'vier-items'; break;
    default: $class_name = 'default-class';
}

$top_afstand = get_sub_field('ly_ovz_bovenruimte');
$class_name_top = '';
switch ($top_afstand) {
    case '0': $class_name_top = 'ge-top'; break;
    case '1': $class_name_top = 'k-top'; break;
    case '2': $class_name_top = 'm-top'; break;
    case '3': $class_name_top = 'gr-top'; break;
    default: $class_name_top = 'default-class';
}

$bottom_afstand = get_sub_field('ly_ovz_onderruimte');
$class_name_bottom = '';
switch ($bottom_afstand) {
    case '0': $class_name_bottom = 'ge-bottom'; break;
    case '1': $class_name_bottom = 'k-bottom'; break;
    case '2': $class_name_bottom = 'm-bottom'; break;
    case '3': $class_name_bottom = 'gr-bottom'; break;
    default: $class_name_bottom = 'default-class';
}

$section_background_color = get_sub_field('ly_ovz_cp');
$show_cta_block = get_sub_field('ly_ovz_cta_vak');
$show_line = get_sub_field('ly_ovz_lijn_boven_blok');
$svg_icon = '/wp-content/uploads/2025/05/pijl-hm-1.svg';
$svg_icon_white = '/wp-content/uploads/2025/05/pijl-hm-wit.svg';

if (!empty($random_experts)): ?>
<section class="brxe-section s-ovz <?php echo $class_name_top; ?> <?php echo $class_name_bottom; ?>" style="background-color: <?php echo esc_attr($section_background_color); ?>;">
    <div class="brxe-container c-ovz">
        <?php if ($show_line): ?><hr><?php endif; ?>
        <?php
        $titel = get_sub_field('ovz_titel', false);
        if (!empty($titel)): ?>
            <div class="ovz-team-titel ovz-titel">
                <?php echo wp_kses_post($titel); ?>
            </div>
        <?php endif; ?>

        <!-- Desktop grid -->
        <div class="bm-ovz-container <?php echo $class_name; ?>">
            <?php foreach ($random_experts as $related_item):
                $related_id = is_object($related_item) ? $related_item->ID : $related_item;
                $title = get_the_title($related_id);
                $mobile_featured_image = get_field('uitgelichte_afbeelding_mobiel', $related_id);
                $image = $mobile_featured_image['url'] ?? get_the_post_thumbnail_url($related_id) ?: 'https://placehold.co/200x200';
                $tags = get_the_terms($related_id, 'post_tag');
                $tag_list = $tags && !is_wp_error($tags) ? implode(', ', wp_list_pluck($tags, 'name')) : '';
                $telefoon = get_field('ex_telefoonnummer', $related_id);
                $email = get_field('ex_email', $related_id);
            ?>
            <a href="/contact" class="bm-ovz-block">
                <div class="bm-ovz-img-wrapper">
                    <img class="bm-ovz-img" src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>">
                    <div class="bm-ovz-hover-overlay">
                    <div class="bm-ovz-hover-inner">
    <!-- <h4 style="color:white;">Persoonlijk contact met onze expert</h4> -->
    <p><strong><span class='underline'>Mail</span> of <span class='underline'>bel</span> mij voor advies op maat</strong></p>
    <p class='bm-ovz-team-contact'>-</p>
    <?php if ($email): ?>
        <p class='bm-ovz-team-contact'><?php echo esc_html($email); ?></p>
    <?php endif; ?>
    <?php if ($telefoon): ?>
        <p class='bm-ovz-team-contact'><?php echo esc_html($telefoon); ?></p>
    <?php endif; ?>
</div>

                    </div>
                </div>
                <div class="bm-ovz-content">
                    <h3 class="bm-ovz-title"><?php echo esc_html($title); ?></h3>
                    <p class="bm-ovz-excerpt ter-cta">
                        <?php echo esc_html($tag_list); ?>
                        <span class="button-icon">
                            <img class="team-pijl" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart" width="24" height="13">
                        </span>
                    </p>
                </div>
            </a>
            <?php endforeach; ?>

            <?php if ($show_cta_block): ?>
            <a href="/contact" class="bm-ovz-block fixed-block ovz-team-cta-block">
                <div class="bm-ovz-img-wrapper"><h2>Kom in contact met onze experts</h2></div>
                <div class="bm-ovz-cta-content">
                    <span class="ovz-cta-icon">
                        <img class="team-pijl-cta" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart">
                    </span>
                </div>
            </a>
            <?php endif; ?>
        </div>

        <!-- Mobile/tablet GSAP-slider -->
        <div class="bm-ovz-slider-gsap-outer">
            <div class="bm-ovz-slider-gsap-track">
                <?php foreach ($random_experts as $related_item):
                    $related_id = is_object($related_item) ? $related_item->ID : $related_item;
                    $title = get_the_title($related_id);
                    $mobile_featured_image = get_field('uitgelichte_afbeelding_mobiel', $related_id);
                    $image = $mobile_featured_image['url'] ?? get_the_post_thumbnail_url($related_id) ?: 'https://placehold.co/200x200';
                    $tags = get_the_terms($related_id, 'post_tag');
                    $tag_list = $tags && !is_wp_error($tags) ? implode(', ', wp_list_pluck($tags, 'name')) : '';
                    $telefoon = get_field('ex_telefoonnummer', $related_id);
                    $email = get_field('ex_email', $related_id);
                ?>
                <div class="bm-ovz-slide">
                    <div class="bm-ovz-block overlay-open">
                        <div class="bm-ovz-img-wrapper">
                            <img class="bm-ovz-img" src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>">
                            <div class="bm-ovz-hover-overlay">
                                <div class="bm-ovz-hover-inner">
                                    <p><strong>Mail of bel mij voor advies op maat</strong></p>
                                    <?php if ($telefoon): ?>
                                        <p><?php echo esc_html($telefoon); ?></p>
                                    <?php endif; ?>
                                    <?php if ($email): ?>
                                        <p><?php echo esc_html($email); ?></p>
                                    <?php endif; ?>
                                </div>
                            </div>
                        </div>
                        <div class="bm-ovz-content">
                            <h3 class="bm-ovz-title"><?php echo esc_html($title); ?></h3>
                            <p class="bm-ovz-excerpt ter-cta">
                                <?php echo esc_html($tag_list); ?>
                                <span class="button-icon">
                                    <img class="team-pijl" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart" width="24" height="13">
                                </span>
                            </p>
                        </div>
                                    </div>
                </div>
                <?php endforeach; ?>
            </div>
        </div>
    </div>
</section>
<?php endif; ?>
/* Desktop: toon grid, verberg slider */
@media (min-width: 1025px) {
  .bm-ovz-container {
    display: grid;
  }

  .bm-ovz-slider-gsap-outer {
    display: none;
  }
}

/* Mobiel/tablet: verberg grid, toon slider */
@media (max-width: 1024px) {
  .bm-ovz-container {
    display: none;
   
  }

  .bm-ovz-slider-gsap-outer {
    display: block;
    overflow: hidden;
    width: 100%;
    position: relative;
  }

  .bm-ovz-slider-gsap-track {
    display: flex;
    gap: 16px;
    will-change: transform;
  }

  .bm-ovz-slide {
    flex: 0 0 auto;
    width: 75vw; /* of bijvoorbeeld 300px */
    padding: 2rem;
    border-radius: 8px;
  }
  
.bm-ovz-hover-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.c-ovz{
   padding-right:0;
}

}

/* Swipe support (optioneel voor touch devices)
.splide__track {
  overflow: visible !important;
  -webkit-overflow-scrolling: touch;
}

.splide__slide {
  touch-action: pan-y;
  min-width: 0;
  box-sizing: border-box;
} */



/* Op desktop: overlay verschijnt bij hover */
@media (hover: hover) and (pointer: fine) {
  .bm-ovz-block:hover .bm-ovz-hover-overlay {
    opacity: 1;
    pointer-events: auto;
  }

  /* Verberg overlay standaard */
.bm-ovz-hover-overlay {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
}

/* Op mobiel: overlay wordt zichtbaar met JS door klasse .overlay-open */
.bm-ovz-block.overlay-open .bm-ovz-hover-overlay {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}


.underline{
  text-decoration: underline; 
}

.bm-ovz-team-contact{
  font-size:26px !important;
  font-weight: 400 !important;
}

.bm-ovz-slide{
  padding-left:0px;
  gap:16px;
}


document.querySelectorAll('.bm-ovz-block').forEach(block => {
  block.addEventListener('click', function(e) {
    if (window.matchMedia('(max-width: 1024px)').matches) {
      e.preventDefault();
      this.classList.toggle('overlay-open');
    }
  });
});
<?php
$ly_tekst_id = get_sub_field('ovz_anker');
if (!empty($ly_tekst_id)) :
    echo '<div id="' . esc_attr($ly_tekst_id) . '"></div>';
endif;

$selected_items = get_sub_field('ovz_overzicht');
$random_experts = is_array($selected_items) ? $selected_items : array();
shuffle($random_experts);

$grid_aantal_items = get_sub_field('ovz_aantal_items');
$class_name = '';
switch ($grid_aantal_items) {
    case '2': $class_name = 'twee-items'; break;
    case '3': $class_name = 'drie-items'; break;
    case '4': $class_name = 'vier-items'; break;
    default: $class_name = 'default-class';
}

$top_afstand = get_sub_field('ly_ovz_bovenruimte');
$class_name_top = '';
switch ($top_afstand) {
    case '0': $class_name_top = 'ge-top'; break;
    case '1': $class_name_top = 'k-top'; break;
    case '2': $class_name_top = 'm-top'; break;
    case '3': $class_name_top = 'gr-top'; break;
    default: $class_name_top = 'default-class';
}

$bottom_afstand = get_sub_field('ly_ovz_onderruimte');
$class_name_bottom = '';
switch ($bottom_afstand) {
    case '0': $class_name_bottom = 'ge-bottom'; break;
    case '1': $class_name_bottom = 'k-bottom'; break;
    case '2': $class_name_bottom = 'm-bottom'; break;
    case '3': $class_name_bottom = 'gr-bottom'; break;
    default: $class_name_bottom = 'default-class';
}

$section_background_color = get_sub_field('ly_ovz_cp');
$show_cta_block = get_sub_field('ly_ovz_cta_vak');
$show_line = get_sub_field('ly_ovz_lijn_boven_blok');
$svg_icon = '/wp-content/uploads/2025/05/pijl-hm-1.svg';
$svg_icon_white = '/wp-content/uploads/2025/05/pijl-hm-wit.svg';

if (!empty($random_experts)): ?>
<section class="brxe-section s-ovz <?php echo $class_name_top; ?> <?php echo $class_name_bottom; ?>" style="background-color: <?php echo esc_attr($section_background_color); ?>;">
    <div class="brxe-container c-ovz">
        <?php if ($show_line): ?><hr><?php endif; ?>
        <?php
        $titel = get_sub_field('ovz_titel', false);
        if (!empty($titel)): ?>
            <div class="ovz-team-titel ovz-titel">
                <?php echo wp_kses_post($titel); ?>
            </div>
        <?php endif; ?>

        <!-- Desktop grid -->
        <div class="bm-ovz-container <?php echo $class_name; ?>">
            <?php foreach ($random_experts as $related_item):
                $title = get_the_title($related_item->ID);
                $mobile_featured_image = get_field('uitgelichte_afbeelding_mobiel', $related_item->ID);
                $image = $mobile_featured_image['url'] ?? get_the_post_thumbnail_url($related_item->ID) ?: 'https://placehold.co/200x200';
                $tags = get_the_terms($related_item->ID, 'post_tag');
                $tag_list = $tags && !is_wp_error($tags) ? implode(', ', wp_list_pluck($tags, 'name')) : '';
            ?>
            <a href="/contact" class="bm-ovz-block">
                <div class="bm-ovz-img-wrapper">
                    <img class="bm-ovz-img" src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>">
                    <div class="bm-ovz-hover-overlay">
                        <div class="bm-ovz-hover-inner">
                            <p>Kom in contact voor advies op maat.</p>
                            <span class="button-icon">
                                <img class="team-pijl-wit" src="<?php echo esc_url($svg_icon_white); ?>" alt="pijl wit">
                            </span>
                        </div>
                    </div>
                </div>
                <div class="bm-ovz-content">
                    <h3 class="bm-ovz-title"><?php echo esc_html($title); ?></h3>
                    <p class="bm-ovz-excerpt ter-cta">
                        <?php echo esc_html($tag_list); ?>
                        <span class="button-icon">
                            <img class="team-pijl" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart" width="24" height="13">
                        </span>
                    </p>
                </div>
            </a>
            <?php endforeach; ?>

            <?php if ($show_cta_block): ?>
            <a href="/contact" class="bm-ovz-block fixed-block ovz-team-cta-block">
                <div class="bm-ovz-img-wrapper"><h2>Kom in contact met onze experts</h2></div>
                <div class="bm-ovz-cta-content">
                    <span class="ovz-cta-icon">
                        <img class="team-pijl-cta" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart">
                    </span>
                </div>
            </a>
            <?php endif; ?>
        </div>

        <!-- Mobile/tablet GSAP-slider -->
<div class="bm-ovz-slider-gsap-outer">
  <div class="bm-ovz-slider-gsap-track">
    <?php foreach ($random_experts as $related_item):
      $title = get_the_title($related_item->ID);
      $mobile_featured_image = get_field('uitgelichte_afbeelding_mobiel', $related_item->ID);
      $image = $mobile_featured_image['url'] ?? get_the_post_thumbnail_url($related_item->ID) ?: 'https://placehold.co/200x200';
      $tags = get_the_terms($related_item->ID, 'post_tag');
      $tag_list = $tags && !is_wp_error($tags) ? implode(', ', wp_list_pluck($tags, 'name')) : '';
    ?>
    <div class="bm-ovz-slide">
      <a href="/contact" class="bm-ovz-block">
        <div class="bm-ovz-img-wrapper">
          <img class="bm-ovz-img" src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>">
          <div class="bm-ovz-hover-overlay">
            <div class="bm-ovz-hover-inner">
              <p>Kom in contact voor advies op maat.</p>
              <span class="button-icon">
                <img class="team-pijl" src="<?php echo esc_url($svg_icon_white); ?>" alt="pijl wit" width="24" height="13">
              </span>
            </div>
          </div>
        </div>
        <div class="bm-ovz-content">
          <h3 class="bm-ovz-title"><?php echo esc_html($title); ?></h3>
          <p class="bm-ovz-excerpt ter-cta">
            <?php echo esc_html($tag_list); ?>
            <span class="button-icon">
              <img class="team-pijl" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart" width="24" height="13">
            </span>
          </p>
        </div>
      </a>
    </div>
    <?php endforeach; ?>
  </div>
</div>

    </div>
</section>
<?php endif; ?>
/* Desktop: toon grid, verberg slider */
@media (min-width: 1025px) {
  .bm-ovz-container {
    display: grid;
  }

  .bm-ovz-slider-gsap-outer {
    display: none;
  }
}

/* Mobiel/tablet: verberg grid, toon slider */
@media (max-width: 1024px) {
  .bm-ovz-container {
    display: none;
  }

  .bm-ovz-slider-gsap-outer {
    display: block;
    overflow: hidden;
    width: 100%;
    position: relative;
  }

  .bm-ovz-slider-gsap-track {
    display: flex;
    gap: 16px;
    will-change: transform;
  }

  .bm-ovz-slide {
    flex: 0 0 auto;
    width: 75vw; /* of bijvoorbeeld 300px */
    padding: 2rem;
    border-radius: 8px;
  }
}

/* Swipe support (optioneel voor touch devices) */
.splide__track {
  overflow: visible !important;
  -webkit-overflow-scrolling: touch;
}

.splide__slide {
  touch-action: pan-y;
  min-width: 0;
  box-sizing: border-box;
}

/* Verberg overlay standaard */
.bm-ovz-hover-overlay {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* Op desktop: overlay verschijnt bij hover */
@media (hover: hover) and (pointer: fine) {
  .bm-ovz-block:hover .bm-ovz-hover-overlay {
    opacity: 1;
    pointer-events: auto;
  }
}

/* Op mobiel: overlay wordt zichtbaar met JS door klasse .overlay-open */
.bm-ovz-block.overlay-open .bm-ovz-hover-overlay {
  opacity: 1;
  pointer-events: auto;
}
document.querySelectorAll('.bm-ovz-block').forEach(block => {
  block.addEventListener('click', function(e) {
    if (window.matchMedia('(max-width: 1024px)').matches) {
      e.preventDefault();
      this.classList.toggle('overlay-open');
    }
  });
});
<?php
$ly_tekst_id = get_sub_field("ovz_anker");
if (!empty($ly_tekst_id)):
    echo '<div id="' . esc_attr($ly_tekst_id) . '"></div>';
endif;

$selected_items = get_sub_field("ovz_overzicht");
$random_experts = is_array($selected_items) ? $selected_items : [];
shuffle($random_experts);

$max_display = 5;
$limited_experts = array_slice($random_experts, 0, $max_display);


$grid_aantal_items = get_sub_field("ovz_aantal_items");
$class_name = match ($grid_aantal_items) {
    "2" => "twee-items",
    "3" => "drie-items",
    "4" => "vier-items",
    default => "default-class"
};

$top_afstand = get_sub_field("ly_ovz_bovenruimte");
$class_name_top = match ($top_afstand) {
    "0" => "ge-top",
    "1" => "k-top",
    "2" => "m-top",
    "3" => "gr-top",
    default => "default-class"
};

$bottom_afstand = get_sub_field("ly_ovz_onderruimte");
$class_name_bottom = match ($bottom_afstand) {
    "0" => "ge-bottom",
    "1" => "k-bottom",
    "2" => "m-bottom",
    "3" => "gr-bottom",
    default => "default-class"
};

$section_background_color = get_sub_field("ly_ovz_cp");
$show_cta_block = get_sub_field("ly_ovz_cta_vak");
$show_line = get_sub_field("ly_ovz_lijn_boven_blok");
$svg_icon = "/wp-content/uploads/2025/05/pijl-hm-1.svg";

if (!empty($random_experts)): ?>
<section class="brxe-section s-ovz <?php echo $class_name_top; ?> <?php echo $class_name_bottom; ?>" style="background-color: <?php echo esc_attr($section_background_color); ?>;">
    <div class="brxe-container c-ovz">
        <?php if ($show_line): ?><hr><?php endif; ?>
        <?php if ($titel = get_sub_field("ovz_titel", false)): ?>
            <div class="ovz-team-titel ovz-titel">
                <?php echo wp_kses_post($titel); ?>
            </div>
        <?php endif; ?>

        <div class="bm-ovz-container <?php echo $class_name; ?>">
            <?php foreach ($random_experts as $related_item):
                $related_id = is_object($related_item) ? $related_item->ID : $related_item;
                $title = get_the_title($related_id);
                $mobile_featured_image = get_field("uitgelichte_afbeelding_mobiel", $related_id);
                $image = $mobile_featured_image["url"] ?? get_the_post_thumbnail_url($related_id) ?: "https://placehold.co/200x200";
                $tags = get_the_terms($related_id, "post_tag");
                $tag_list = $tags && !is_wp_error($tags) ? implode(", ", wp_list_pluck($tags, "name")) : "";

                $telefoon = get_field("ex_telefoonnummer", $related_id);
                $telefoon_link = get_field("ex_telefoonnummer_link", $related_id);
                $email = get_field("ex_email", $related_id);
                $email_link = get_field("ex_email_link", $related_id);
                ?>
            <div class="bm-ovz-block">
                <div class="bm-ovz-img-wrapper">
                    <img class="bm-ovz-img" src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>">
                    <div class="bm-ovz-hover-overlay">
                        <div class="bm-ovz-hover-inner">
                            <p class="hover-cta-text">
                                <?php if ($email_link): ?>
                                    <a class="underline" href="<?php echo esc_attr($email_link); ?>" title="Mail">Mail</a>
                                <?php else: ?>
                                    <span class="underline">Mail</span>
                                <?php endif; ?>
                                of
                                <?php if ($telefoon_link): ?>
                                    <a class="underline" href="<?php echo esc_attr($telefoon_link); ?>" title="Bel">bel</a>
                                <?php else: ?>
                                    <span class="underline">bel</span>
                                <?php endif; ?>
                                mij voor advies op maat
                            </p>
                            <?php if ($email && $email_link): ?>
                                <p class='bm-ovz-team-contact'>
                                    <a href="<?php echo esc_attr($email_link); ?>"><?php echo esc_html($email); ?></a>
                                </p>
                            <?php endif; ?>
                            <?php if ($telefoon && $telefoon_link): ?>
                                <p class='bm-ovz-team-contact'>
                                    <a href="<?php echo esc_attr($telefoon_link); ?>"><?php echo esc_html($telefoon); ?></a>
                                </p>
                            <?php endif; ?>
                        </div>
                    </div>
                </div>
                <div class="bm-ovz-content">
                    <h3 class="bm-ovz-title"><?php echo esc_html($title); ?></h3>
                    <p class="bm-ovz-excerpt ter-cta">
                        <?php echo esc_html($tag_list); ?>
                        <span class="button-icon">
                            <img class="team-pijl" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart" width="24" height="13">
                        </span>
                    </p>
                </div>
            </div>
            <?php endforeach; ?>

            <?php
            $cta_link = get_sub_field("ly_ovz_cta_link");
            $cta_title = $cta_link["title"] ?? '';
            $cta_url = $cta_link["url"] ?? '#';
            $cta_target = $cta_link["target"] ?? '_self';
            ?>

            <?php if ($show_cta_block && $cta_title && $cta_url): ?>
                <a href="<?php echo esc_url($cta_url); ?>" target="<?php echo esc_attr($cta_target); ?>" class="bm-ovz-block fixed-block ovz-team-cta-block">
                    <div class="bm-ovz-img-wrapper">
                        <h2><?php echo esc_html($cta_title); ?></h2>
                    </div>
                    <div class="bm-ovz-cta-content">
                        <span class="ovz-cta-icon">
                            <img class="team-pijl-cta"
                                 src="<?php echo esc_url($svg_icon); ?>"
                                 alt="pijl zwart"
                                 data-default-src="<?php echo esc_url($svg_icon); ?>"
                                 data-hover-src="/wp-content/uploads/2025/05/pijl-hm-1-wit.svg">
                        </span>
                    </div>
                </a>
            <?php endif; ?>
        </div>

                <!-- Mobile/tablet GSAP-slider -->
        <div class="bm-ovz-slider-gsap-outer">
            <div class="bm-ovz-slider-gsap-track">
                <?php foreach ($limited_experts as $related_item):
                    $related_id = is_object($related_item) ? $related_item->ID : $related_item;
                    $title = get_the_title($related_id);
                    $mobile_featured_image = get_field('uitgelichte_afbeelding_mobiel', $related_id);
                    $image = $mobile_featured_image['url'] ?? get_the_post_thumbnail_url($related_id) ?: 'https://placehold.co/200x200';
                    $tags = get_the_terms($related_id, 'post_tag');
                    $tag_list = $tags && !is_wp_error($tags) ? implode(', ', wp_list_pluck($tags, 'name')) : '';
                    $telefoon = get_field('ex_telefoonnummer', $related_id);
                    $email = get_field('ex_email', $related_id);
                ?>
                <div class="bm-ovz-slide">
                    <div class="bm-ovz-block overlay-open">
                        <div class="bm-ovz-img-wrapper">
                            <img class="bm-ovz-img" src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr($title); ?>">
                            <div class="bm-ovz-hover-overlay">
                                <div class="bm-ovz-hover-inner">
                                    <p><strong>Mail of bel mij voor advies op maat</strong></p>
                                    <?php if ($telefoon): ?>
                                        <p><?php echo esc_html($telefoon); ?></p>
                                    <?php endif; ?>
                                    <?php if ($email): ?>
                                        <p><?php echo esc_html($email); ?></p>
                                    <?php endif; ?>
                                </div>
                            </div>
                        </div>
                        <div class="bm-ovz-content">
                            <h3 class="bm-ovz-title"><?php echo esc_html($title); ?></h3>
                            <p class="bm-ovz-excerpt ter-cta">
                                <?php echo esc_html($tag_list); ?>
                                <span class="button-icon">
                                    <img class="team-pijl" src="<?php echo esc_url($svg_icon); ?>" alt="pijl zwart" width="24" height="13">
                                </span>
                            </p>
                        </div>
                                    </div>
                </div>
                <?php endforeach; ?>
            </div>
        </div>


    </div>
</section>

<?php endif; ?>
document.querySelectorAll('.bm-ovz-block').forEach(block => {
  block.addEventListener('click', function(e) {
    if (window.matchMedia('(max-width: 1024px)').matches) {
      e.preventDefault();
      this.classList.toggle('overlay-open');
    }
  });
});

document.addEventListener('DOMContentLoaded', function () {
    const hoverBlocks = document.querySelectorAll('.bm-ovz-block.fixed-block');

    hoverBlocks.forEach(block => {
        const icon = block.querySelector('.team-pijl-cta');
        if (!icon) return;

        const defaultSrc = icon.getAttribute('data-default-src');
        const hoverSrc = icon.getAttribute('data-hover-src');

        block.addEventListener('mouseenter', () => {
            icon.src = hoverSrc;
        });

        block.addEventListener('mouseleave', () => {
            icon.src = defaultSrc;
        });
    });
});

De Hoeijmakers-experts.
Zekerheid op maat, altijd een stap vooruit.

Wij zijn Hoeijmakers. Onafhankelijk, scherp en gedreven door ons vak. Onze core business is zekerheid. Die bieden we door maatwerk te leveren – van grondige risicoanalyse tot zorgvuldig samengesteld verzekeringspakket. Altijd met uw zekerheid als prioriteit.