.ve-catalogue {margin:clamp(2rem,5vw,5rem) auto;color:var(--wp--preset--color--primary,#07396b)}
.ve-filters {display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem);background:var(--wp--preset--color--light-blue,#edf3ff);border-radius:30px}
.ve-filters label {display:block;font-weight:600;margin-bottom:.5rem}
.ve-filters input,.ve-filters select {box-sizing:border-box;width:100%;min-width:0;min-height:50px;padding:.7rem 1rem;font:inherit;color:inherit;background:#fff;border:1px solid #ccd7ef;border-radius:5px}
.ve-filter-actions {grid-column:1/-1;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.ve-filter-actions button {cursor:pointer;background:var(--wp--preset--color--tertiary,#1bd264);color:var(--wp--preset--color--primary,#07396b);border:0;border-radius:50px;padding:.8rem 1.5rem;font:inherit}
.ve-result-count {margin:1.5rem 0}
.ve-product-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:29px}
.ve-product-card {position:relative;background:#fff;border:0;border-radius:30px;overflow:hidden;min-width:0}
.ve-product-card > p {height:100%;margin:0}
.ve-product-card .ve-product-link {display:flex;flex-direction:column;height:100%;box-sizing:border-box;padding:20px 30px 40px;text-decoration:none;color:var(--wp--preset--color--off-black,#221e1f)}
.ve-product-image {display:block;height:280px;overflow:hidden;flex-shrink:0}
.ve-product-image picture {display:block;height:100%}
.ve-product-card .ve-product-image img {display:block;width:100%;height:100%;object-fit:contain;transition:transform .25s ease}
.ve-product-content {display:grid;grid-template-columns:minmax(0,1fr) 35px;column-gap:5px;align-items:end;padding-top:40px;margin-top:auto}
.ve-product-title {grid-column:1;display:block;font-size:20px;font-weight:400;line-height:35px;overflow-wrap:anywhere}
.ve-product-brand {grid-column:1;display:block;font-size:14px;line-height:20px;color:#666;margin-top:8px}
.ve-product-cta {grid-column:2;grid-row:1/3;display:flex;align-items:center;justify-content:center;position:relative;width:35px;height:35px;border-radius:50%;background:var(--wp--preset--color--light-blue,#e4effa);color:var(--wp--preset--color--primary,#07396b);transition:background-color .2s,color .2s}
.ve-product-card .ve-product-circle {position:absolute;width:35px;height:35px;margin:0;transition:opacity .2s}
.ve-product-chevron {position:relative;font-family:Arial,sans-serif;font-size:24px;font-weight:400;line-height:1;margin-top:-2px}
.ve-product-card .ve-product-link:is(:hover,:focus-visible) .ve-product-cta {background:var(--wp--preset--color--secondary,#00a19a);color:#fff}
.ve-product-card .ve-product-link:is(:hover,:focus-visible) .ve-product-circle {opacity:0}
.ve-product-card .ve-product-link:is(:hover,:focus-visible) .ve-product-image img {transform:scale(1.06)}
.ve-product-card .ve-product-link:visited {color:var(--wp--preset--color--off-black,#221e1f)}
.ve-product-card .ve-product-link:focus-visible {outline:3px solid var(--wp--preset--color--secondary,#00a19a);outline-offset:-3px;border-radius:30px}
.ve-catalogue .ve-pagination {display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:40px 0 0}
.ve-catalogue .ve-pagination .page-numbers {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:40px;min-height:40px;padding:4px 11px;border:2px solid #07396b;border-radius:20px;background:transparent;color:#07396b;font:400 17px/30px var(--wp--preset--font-family--outfit,Outfit,sans-serif);text-decoration:none;transition:background-color .2s,color .2s,border-color .2s}
.ve-catalogue .ve-pagination a:visited {color:#07396b}
.ve-catalogue .ve-pagination .current {background:#07396b;color:#fff;border-color:#07396b}
.ve-catalogue .ve-pagination a:is(:hover,:focus-visible) {background:#00a19a;color:#fff;border-color:#00a19a}
.ve-catalogue .ve-pagination .dots {border-color:#07396b}
.ve-filters :focus-visible {outline:3px solid #07396b;outline-offset:3px}
.ve-filter-actions button {padding:12px 30px;color:#fff;font-size:20px;line-height:30px;font-weight:400;border-radius:34px;transition:background-color .2s}
.ve-filter-actions button:is(:hover,:focus-visible) {background:#00a19a;color:#fff}
.ve-filter-actions a:is(:hover,:focus-visible) {color:#00a19a;text-decoration:underline}
#gform_wrapper_3 .gform_fields,#gform_wrapper_3 .gfield {min-width:0}
#gform_wrapper_3 .gform_footer {display:flex;flex-wrap:wrap;gap:1rem}
#gform_wrapper_3 #gform_submit_button_3 {min-height:50px;width:100%!important;white-space:normal!important;margin:0!important;box-sizing:border-box}
#gform_wrapper_3 input[type=email] {width:100%;min-width:0;box-sizing:border-box}
@media(max-width:1024px){.ve-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.ve-filters{grid-template-columns:1fr 1fr}.ve-filters>div:first-child{grid-column:1/-1}}
@media(max-width:767px){.ve-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ve-filters{grid-template-columns:1fr}.ve-product-image{height:180px}.ve-product-card .ve-product-link{padding:20px}.ve-product-content{padding-top:25px}}
@media(max-width:480px){.ve-product-grid{grid-template-columns:1fr}.ve-product-image{height:240px}.ve-filter-actions{align-items:stretch;flex-direction:column}.ve-filter-actions button{width:100%}}
.ve-catalogue,.ve-catalogue input,.ve-catalogue select,.ve-catalogue button {font-family:var(--wp--preset--font-family--outfit,Outfit,sans-serif)}
.ve-product-title {opacity:1!important;transform:none!important}
.ve-catalogue {scroll-margin-top:160px}


.ve-product-card > p:empty {display:none}

/* Product overzicht, Design - DEF, Figma 16084:209263. */
.ve-catalogue {background:var(--wp--preset--color--off-white,#f5f2f2);padding:50px 35px 60px;box-sizing:border-box}
@media(max-width:767px){.ve-catalogue{padding:30px 15px}.ve-product-title{font-size:18px;line-height:28px}}
@media(pointer:coarse){.ve-catalogue .ve-pagination .page-numbers{min-width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.ve-product-card img,.ve-product-cta,.ve-product-circle,.ve-pagination a{transition:none}.ve-product-card .ve-product-link:is(:hover,:focus-visible) .ve-product-image img{transform:none}}

/* Continue the catalogue background to the viewport edges without widening its content. */
.ve-catalogue {margin-block:0!important;box-shadow:0 0 0 100vmax #f5f2f2;clip-path:inset(0 -100vmax)}

:is(.wp-block-group,.wp-block-post-content):has(> .ve-catalogue) {margin-block:0!important}
.ve-catalogue + *, :is(.wp-block-group,.wp-block-post-content):has(> .ve-catalogue) + * {margin-block-start:0!important}

/* Mobile footer contact cards fill their column instead of shrinking to text. */
@media (max-width: 781px) {
    footer.wp-block-template-part .is-vertical > .wp-block-group:has(> .is-footer-box) {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        align-self: stretch;
    }
    footer.wp-block-template-part .is-footer-box {
        width: 100%;
        box-sizing: border-box;
    }
}
