/*** ---------- Block ---------- ***/
.wpb-header:has(+ .wpb-contact) { padding-bottom: calc(var(--pb) + 9.6rem); }
.wpb-header + .wpb-contact { margin-top: -9.6rem; }



/*** ---------- Text ---------- ***/
/** Disabled but keep for reference for now, as it may be needed again in the future. **/
/*
.wpb-block--text .container:has(.wpb-text__title) { margin-bottom: 1.6rem; }
.wpb-block--text .container:has(.btn-group) { margin-top: 1.6rem; }
*/



/*** ---------- Text & Media ---------- ***/
/** Disabled but keep for reference for now, as it may be needed again in the future. **/
/*
.wpb-block--text-media { --gc: 1; }
.wpb-block--text-media .container { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: 1.6rem; row-gap: 1.6rem; }

@media (min-width: 992px) { 
    .wpb-block--text-media { --gc: 2; }
    .wpb-block--text-media .container { column-gap: 3.2rem; }
}
@media (min-width: 1200px) {
    .wpb-block--text-media .container { column-gap: 6.4rem; }
}
*/



/*** ---------- Media ---------- ***/
.wpb-block--media .wpb-text { margin-bottom: 2rem; }



/*** ---------- Blurb ---------- ***/
.wpb-block--blurb .wpb-text { margin-bottom: 2rem; }



/*** ---------- Carousel ---------- ***/
.wpb-block--carousel .wpb-text { margin-bottom: 3.2rem; }
.wpb-block--carousel .wpb-image { position: relative; }
.wpb-block--carousel .wpb-image img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.wpb-block--carousel .wpb-image::after { content: ''; display: block; width: 100%; padding-top: 75%; }



/*** ---------- Header ---------- ***/
.wpb-header input { color: var(--clr-text-light); }
.wpb-header .wpb-header__toolbar { display: flex; align-items: center; gap: 1.6rem; padding-bottom: 3.2rem; }
.wpb-header .wpb-header__toolbar .btn { white-space: nowrap; }
.wpb-header .wpb-header__toolbar .wpb-breadcrumbs { margin: 0; --excerpt-line-clamp: 1; display: -webkit-box; -webkit-line-clamp: var(--excerpt-line-clamp); -webkit-box-orient: vertical; overflow: hidden; }
.wpb-header .wpb-header__toolbar .wpb-breadcrumbs > span > span:not(.breadcrumb_last) { opacity: .65; }

.wpb-header__filters { display: flex; }



/*** ---------- Header > Home > Slider ---------- ***/
.wpb-header--home.wpb-var--slider { --bp: 70%; overflow: hidden; background: linear-gradient(to bottom, var(--clr-primary), var(--clr-primary) var(--bp), var(--clr-background) var(--bp)); }
.wpb-header--home.wpb-var--slider .wpb-text * { color: var(--clr-text-primary); }

.wpb-header--home.wpb-var--slider .swiper { padding-top: 6.4rem; overflow-y: visible; }
.wpb-header--home.wpb-var--slider .swiper .wpb-card { transition: transform var(--wpb-timing) ease; }
.wpb-header--home.wpb-var--slider .swiper .wpb-card { height: 16rem; }
.wpb-header--home.wpb-var--slider .swiper .wpb-card .wpb-card__header { height: 100%; }

@media (min-width: 992px) {
    .wpb-header--home.wpb-var--slider .swiper .wpb-card { height: 40rem; }
}



/*** ---------- Header > Home > Subpage ---------- ***/
.wpb-header.wpb-header--subpage:is(.wpb-bg-clr--primary, .wpb-bg-clr--dark, .has-background-image) { overflow: hidden; }
.wpb-header.wpb-header--subpage:is(.wpb-bg-clr--primary, .wpb-bg-clr--dark, .has-background-image)::before { --w: 74rem; --h: 22rem; content: ''; position: absolute; left: calc(-1 * var(--w) / 4); bottom: calc(-1 * var(--h) / 12); background: var(--bg-asset) no-repeat center / contain; width: var(--w); height: var(--h); opacity: .6; z-index: 1; pointer-events: none; }
.wpb-header.wpb-header--subpage:is(.wpb-bg-clr--primary, .wpb-bg-clr--dark, .has-background-image) .container { z-index: 2; }
.wpb-header.wpb-header--subpage:is(.wpb-bg-clr--primary, .wpb-bg-clr--dark, .has-background-image) .wpb-breadcrumbs { --home-hover-bg-clr: var(--clr-dark); }
.wpb-header.wpb-header--subpage:is(.wpb-bg-clr--dark, .has-background-image)::before { content: ''; filter: invert(1); }

@media(min-width: 992px) {
    .wpb-header.wpb-header--subpage:is(.wpb-bg-clr--primary, .wpb-bg-clr--dark, .has-background-image)::before{ --w: 102rem; --h: 36rem; }
}



/*** ---------- Header > Home template ---------- ***/
.wpb-header--home-template .container { --inline-spacing: var(--p-y-medium); overflow: hidden; min-height: var(--mh, 48rem); display: flex; align-items: end; }
.wpb-header--home-template .container .wpb-text { position: static; z-index: 99; text-decoration: none; transition: var(--wpb-timing) ease;}
.wpb-header--home-template .container .wpb-text::after { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; }
.wpb-header--home-template .container .wpb-text:hover + .is-background-image { transform: scale(1.05); }
.wpb-header--home-template .container .wpb-text h1 { margin-top: 1rem; }
.wpb-header--home-template .container .wpb-text p { --fs: 28px; --fw: 600; --lh: 1; --clr: var(--clr-text-invert-dark); }
.wpb-header--home-template .container .is-background-image { transition: transform var(--wpb-timing) ease; }


@media(min-width: 576px) {
    .wpb-header--home-template .container { --mh: min(64rem, 50vh);  border-radius: var(--wpb-br--large); }
}
@media(min-width: 992px) {
    .wpb-header--home-template .container { --mh: min(80rem, 65vh);  }
}



/*** ---------- Header > 404 template ---------- ***/
.wpb-header--404 {}



/*** ---------- Header > Blog ---------- ***/
.wpb-header--blog {}


/*** ---------- Header > Blog > Wide headers ---------- ***/
.wpb-header--blog[class*="wide"] .container { --inline-spacing: var(--header-padding); --header-padding: var(--pt); overflow: hidden; min-height: var(--mh, 48rem); display: flex; align-items: end; }
.wpb-header--blog[class*="wide"] .container .wpb-text { position: relative; z-index: 99; }

.wpb-header--blog[class*="wide"][class*="-center"] .container .wpb-text * { text-align: center; }
.wpb-header--blog[class*="wide"][class*="-center"] .container .wpb-text .badge-group { justify-content: center; }

.wpb-header--blog[class*="wide"][class*="middle-center"] .container { align-items: center; }

@media(min-width: 576px) {
    .wpb-header--blog[class*="wide"] .container { --mh: min(64rem, 50vh); border-radius: var(--wpb-br--large); }
}
@media(min-width: 992px) {
    .wpb-header--blog[class*="wide"] .container { --mh: min(80rem, 65vh);  }
}



/*** ---------- Header > Blog > Full width headers ---------- ***/
.wpb-header--blog[class*="full"] .container { --inline-spacing: var(--header-padding); --header-padding: 1.6rem; overflow: hidden; min-height: var(--mh, 48rem); display: flex; align-items: end; }
.wpb-header--blog[class*="full"] .container .wpb-text { position: relative; z-index: 99; }

.wpb-header--blog[class*="center"] .container{ justify-content: center; }

.wpb-header--blog[class*="full"][class*="-center"] .container .wpb-text * { text-align: center; }
.wpb-header--blog[class*="full"][class*="-center"] .container .wpb-text .badge-group { justify-content: center; }
.wpb-header--blog[class*="full"][class*="-center"] .container > .wpb-meta-group{ right: 0; left: 0; justify-content: center; }

.wpb-header--blog[class*="full"][class*="middle-center"] .container { align-items: center; }

@media(min-width: 576px) {
    .wpb-header--blog[class*="full"] .container { --mh: min(64rem, 50vh); }
}
@media(min-width: 992px) {
    .wpb-header--blog[class*="full"] .container { --mh: min(80rem, 65vh);  }
}



/*** ---------- Header > Blog > Side by side header ---------- ***/
.wpb-header--blog.side-by-side { --inline-spacing: var(--header-padding); --header-padding: 1.6rem; overflow: hidden; min-height: var(--mh, 48rem); display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(0, 1fr)); background-color: var(--clr-sidebar); }

.wpb-header--blog.side-by-side .wpb-text-container { min-height: calc(var(--mh) / 2); padding: var(--header-padding); display: grid; place-content: center; }
.wpb-header--blog.side-by-side .wpb-text-container .wpb-text { position: relative; z-index: 99; }
.wpb-header--blog.side-by-side .wpb-text-container .wpb-text * { text-align: center; }
.wpb-header--blog.side-by-side .wpb-text-container .wpb-text .badge-group { justify-content: center; }

.wpb-header--blog.side-by-side .wpb-image img { min-height: calc(var(--mh) / 2); border-radius: 0; height: 100% !important; object-fit: cover; }

.wpb-header--blog.side-by-side > .wpb-meta-group { position: absolute; right: var(--header-padding); bottom: var(--header-padding); z-index: 1; }

@media(min-width: 576px) {
    .wpb-header--blog.side-by-side { --mh: min(64rem, 50vh); }
}
@media(min-width: 768px) {
    .wpb-header--blog.side-by-side { --gc: 2; }
    .wpb-header--blog.side-by-side .wpb-image img { border-radius: var(--wpb-br--large) 0 0 var(--wpb-br--large); }
    .wpb-header--blog.side-by-side > .wpb-meta-group { right: var(--header-padding); top: var(--header-padding); bottom: unset; }
}
@media(min-width: 992px) {
    .wpb-header--blog.side-by-side { --mh: min(80rem, 65vh); }
}


/*** ---------- Featured ---------- ***/
.wpb-block--featured .wpb-section__body .container { display: grid; grid-template-columns: repeat(auto-fill, minmax(32rem, 1fr)); gap: var(--gap, 1.6rem); }

.wpb-block--featured-home .wpb-section__body .container { display: grid; grid-template-columns: repeat(auto-fill, minmax(32rem, 1fr)); gap: var(--gap, 1.6rem); }

@media (min-width: 1200px) {
    .wpb-block--featured,
    .wpb-block--featured-home { --gap: 3.2rem; }
}



/*** ---------- Categories ---------- ***/
.wpb-block--categories .wpb-section__body .container { display: grid; grid-template-columns: repeat(auto-fill, minmax(32rem, 1fr)); gap: var(--gap, 1.6rem); }

@media (min-width: 992px) {
    .wpb-block--categories .wpb-section__body .container { --gap: 3.2rem; }
}



/*** ---------- Search ---------- ***/
.wpb-block--search .wpb-block__header { padding-bottom: 3.2rem; }
.wpb-block--search .wpb-block__header .wpb-text p { margin-top: 0.8rem; }
.wpb-block--search .container--results:not(:has(> .wpb-text)) { display: grid; grid-template-columns: repeat(auto-fill, minmax(40r32remem, 1fr)); gap: var(--gap, 1.6rem); }

@media (min-width: 1200px) {
    .wpb-block--search .container--results { --gap: 3.2rem; }
}



/*** ---------- Zoeken ---------- ***/
.wpb-block--search .wpb-search-form input { background-color: var(--clr-light); }
.wpb-block--search.wpb-bg-clr--light input {  background-color: var(--clr-background); }



/*** ---------- 404 ---------- ***/
.wpb-block--404-posts .inner { display: grid; grid-template-columns: repeat(auto-fill, minmax(32rem, 1fr)); gap: var(--gap, 1.6rem); }

@media (min-width: 1200px) {
    .wpb-block--404-posts .inner { --gap: 3.2rem; }
}