.wpb-block .wpb-section__bg-assets { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; overflow: hidden; pointer-events: none; 
    .wpb-block:has(&) .wpb-section__body{ position: relative; z-index: 2; }
}


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

/*** ---------- Block: FAQ ---------- ***/
.wpb-block--faq {
    .wpb-section__header{ margin-bottom: clamp(2.4rem, 4vw, 6rem); }
}


/*** ---------- Block: Blurb ---------- ***/
.wpb-block--blurb .wpb-section__header .container { justify-content: center; }
.wpb-block--blurb .wpb-card.wpb-card--blurb .wpb-card__header img { aspect-ratio: 16/9; object-fit: cover; }
.wpb-block--blurb .row { --inline-spacing: 1.5rem; }

/*** ---------- Block: Carousel ---------- ***/
.wpb-block--carousel .wpb-text { margin-bottom: 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%; }

/*** ---------- Block: Text media tabs ---------- ***/
.wpb-block--media-tabs .container > .wpb-text { margin-bottom: 2rem; }
.wpb-block--media-tabs .inner { gap: 3.2rem; align-items: center; }
.wpb-block--media-tabs .tab__images { display: grid; overflow: hidden; } 
.wpb-block--media-tabs .tab__images > figure { grid-row: 1/-1; grid-column: 1/-1; opacity: 0; transition: opacity var(--ts-15) ease; transition-delay: var(--ts-35); }
.wpb-block--media-tabs .tab__images figure.active { opacity: 1; transform: scale(1); }
.wpb-block--media-tabs .tab__images figure img { height: 100%; width: 100%; object-fit: contain; }
.wpb-block--media-tabs .tab__content { display: grid; position: relative; gap: 2rem; }
.wpb-block--media-tabs .tab__item { display: grid; align-items: center; }
.wpb-block--media-tabs .tab__item.has-icon { grid-template-columns: 6.4rem 1fr; -ms-grid-columns: 6.4rem 1fr; gap: 1.6rem; }
.wpb-block--media-tabs .tab__item .icon { background-color: var(--wpb-primary); border-radius: 50%; width: 6.4rem; height: 6.4rem; padding: 1.4rem; transition: box-shadow var(--ts-15) ease; }
.wpb-block--media-tabs .tab__item .icon img { width: 100%; height: 100%; object-fit: contain; }

@media (min-width: 992px) {
    .wpb-block--media-tabs .inner { gap: 8.2rem; }
}


/*** ---------- Block: Tabs ---------- ***/
.wpb-block--tabs .wpb-text { margin-bottom: 2rem; }



/*** ---------- Block: Kennisbank ---------- ***/
.wpb-block--knowledge-base{ --gc: 1; --column-gap: 1.8rem; --row-gap: 1.8rem;
    .wpb-section__header .wpb-text{ max-width: var(--section-mw); }
    .wpb-section__body .container{ display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: var(--column-gap); row-gap: var(--row-gap); }
}

@media(min-width: 768px){
    .wpb-block--knowledge-base{ --gc: 2; }
}
@media(min-width: 992px){
    .wpb-block--knowledge-base{ --column-gap: 2.4rem; --row-gap: 4rem; }
}
@media(min-width: 1200px){
    .wpb-block--knowledge-base{ --column-gap: 3rem; --row-gap: 6rem; }
}


/*** ---------- Block: Klantcases ---------- ***/
.wpb-block--cases{ --gc: 1; --column-gap: 1.8rem; --row-gap: var(--column-gap);
    .wpb-section__header .wpb-text{ max-width: var(--section-mw); }
    .wpb-section__body .container{ display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: var(--column-gap); row-gap: var(--row-gap); }
}

@media(min-width: 768px){
    .wpb-block--cases{ --gc: 2; }
}
@media(min-width: 992px){
    .wpb-block--cases{ --column-gap: 2.4rem; }
}
@media(min-width: 1200px){
    .wpb-block--cases{ --column-gap: 3rem; }
}

/*** ---------- Block: Text Shortcode ---------- ***/
.wpb-block--text-shortcode .container { column-gap: 2rem; row-gap: 2rem; }

@media (min-width: 992px) {
    .wpb-block--text-shortcode .container { column-gap: 3.2rem; }
    .wpb-block--text-shortcode-primary .wpb-card { order: -1; }
}

@media (min-width: 1200px) {
    .wpb-block--text-shortcode .container { column-gap: 6.4rem; }
}

@media (min-width: 1200px) {
    .wpb-block--text-shortcode .container { column-gap: 9.8rem; }
} 

/*** ---------- Block: Form ---------- ***/
.wpb-block--form{ --image-size: 100%; --image-max-height: 32rem; --gap: 2.4rem;
    .container{ display: grid; gap: var(--gap); }
    .wpb-text{ margin-bottom: clamp(2.4rem, 3.2vw, 4.8rem); }
    .wpb-text h2{ --fs: clamp(2.4rem, 3vw, 4rem); }
    .wpb-text p:has(+ :is(h1, h2, h3)):has(em){ --fs: clamp(1.6rem, 2vw, 2.8rem); }
    .wpb-text p:has(em:only-child) + :is(h1, h2, h3){ --mt: .8rem; }

    .wpb-block__image{ --br: 2rem; width: var(--image-size); height: 100%; max-height: var(--image-max-height); position: relative; }
    .wpb-block__image img{ width: 100%; height: 100%; object-fit: cover; border-radius: var(--br); }
    .wpb-block__image::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(to top left, rgb(var(--clr-tertiary-rgb), .3), rgb(var(--clr-primary-rgb), 0) 60%); border-radius: var(--br); pointer-events: none; }
}

@media (min-width: 992px){
    .wpb-block--form{ --image-size: 32rem; --image-max-height: min(100%, 66rem);
        .container{ grid-template-columns: 1fr var(--image-size); }

        &.wpb-block--form--media-left{
            .wpb-block__image{ order: -1; }
            .container{ grid-template-columns: var(--image-size) 1fr; }
        }
    }
}
@media (min-width: 1200px){
    .wpb-block--form{ --image-size: 40rem; --gap: 4.8rem; }
}
@media (min-width: 1400px){
    .wpb-block--form{ --image-size: 50rem; --gap: 8rem; }
}
@media (min-width: 1600px){
    .wpb-block--form{ --gap: 12.6rem; }
}

/*** ---------- Block: Content ---------- ***/
.wpb-block--content{ 
    .wpb-ratio::after{ content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(to top left, rgb(var(--clr-tertiary-rgb), .3), rgb(var(--clr-primary-rgb), 0) 50%); pointer-events: none; }
    /* .wpb-usps .wpb-usp .wpb-usp__icon { background-color: var(--clr-primary); color: #FFF; 
        i { --icon-clr: var(--clr-light);  }
    } */
    .wpb-usps { --mt: clamp(2.4rem, 3.2vw, 5rem); }
    &.has-sticky-column .wpb-text { --mt: 2.4rem; }
}

@media(min-width: 768px) {
    .wpb-block--content .wpb-check-usps { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.2rem; }
}

@media(min-width: 992px) {
    .wpb-block--content.has-sticky-column .wpb-text > * + *:is(h2, h3) { --mt: 8rem; }
}

@media(min-width: 1200px) {
    .wpb-block--content.has-sticky-column .wpb-text > * + *:is(h2, h3) { --mt: 20rem; }
}

/*** ---------- Block: Contact ---------- ***/
.wpb-block--contact{ --gap: 2.4rem; --gtc: minmax(0, 1fr); --offset: 2.4rem; --mask: var(--dot-mask); --mask-clr: rgba(0, 0, 0, 0.1);
    &::before { content: ''; pointer-events: none; position: absolute; top: 0; right: 0; bottom: 0; left: 0; -webkit-mask-size: 1.8rem; mask-size: 1.8rem; -webkit-mask-repeat: repeat; mask-repeat: repeat; -webkit-mask-position: left top; mask-position: left top; background: var(--mask-clr);   -webkit-mask-image: var(--mask), var(--dot-fade); mask-image: var(--mask), var(--dot-fade); -webkit-mask-composite: source-in; mask-composite: intersect; }
    & > *:not(.wpb-section__bg-assets){ position: relative; z-index: 2; }

    .container{ display: grid; align-items: center; grid-template-columns: var(--gtc); gap: var(--gap); } 
    .wpb-text h1{ --lh: 1; --mt: 2.4rem; }
    .wpb-text p{ --fs: clamp(1.4rem, 1.5vw, 1.6rem); }
    .wpb-text p:has(+ :is(h1, h2, h3)):has(em){ --fs: clamp(2rem, 2.8vw, 3.6rem); line-height: 1; }

    .wpb-section__bg-assets .wpb-asset{ --asset-clr: #FFFF; --w: clamp(32rem, 70vw, 127.5rem); top: -20rem; right: -10%; }
}
.wpb-card.wpb-card--contact{ --p: 2.4rem; --br: 2rem; border: none; position: relative; background-color: transparent; overflow: hidden; height: 100%;
    & *:not(.btn, .btn *){ color: #FFFF; }
    .wpb-card__title{ --fs: clamp(1.8rem, 2vw, 2.4rem); line-height: 1; }
    .contact-links{ --fs: 1.6rem; font-size: var(--fs); display: flex; flex-direction: column; gap: .2em; 
        a{ display: flex; align-items: center; gap: .6rem; }
        a i{ font-size: 1.4rem; width: 1.4rem; }
    }

    .wpb-card__header{ --backdrop-1: linear-gradient(to top left, rgb(var(--clr-tertiary-rgb), .3), rgb(var(--clr-primary-rgb), 0) 50%); --backdrop-2: linear-gradient(to left, rgba(0, 0, 0, 0) calc(100% - 40rem), rgba(0, 0, 0, .6)); z-index: -1;
        img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -3; }
        &::before, &::after{ content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; pointer-events: none; }
        &::before{ background: var(--backdrop-1); z-index: 2;  }
        &::after{ background: var(--backdrop-2); z-index: 1; }
    }
    .wpb-card__body{ flex-grow: 0; margin-top: auto; display: flex; flex-direction: column; gap: 1.2rem; 
        address{ font-style: normal; font-size: 1.6rem; line-height: 1.7; }
        .btn{ width: fit-content; }
    }
}

@media (min-width: 768px){
    .wpb-block--contact{ --gtc: 34rem minmax(0, 1fr); }
    .wpb-block--contact .wpb-text{ padding-block: var(--offset); }
    .wpb-card.wpb-card--contact{ --p: 3.2rem; }
}
@media (min-width: 992px){
    .wpb-block--contact{ --gap: 4.8rem; --gtc: 40rem minmax(0, 1fr); --offset: 4.8rem; }
    .wpb-card.wpb-card--contact{ --p: 4.8rem; }
}
@media (min-width: 1200px){
    .wpb-block--contact{ --gap: 11rem; --gtc: 48rem minmax(0, 1fr); --offset: 8rem; }
}
@media (min-width: 1400px){
    .wpb-block--contact{ --offset: 12rem; }
}

/*** ---------- Block: Vacatures ---------- ***/
.wpb-block--vacancies{ --gap: 1rem; 
    .wpb-section__body .container{ display: grid; gap: var(--gap); }
    .wpb-section__header{ margin-bottom: clamp(2.4rem, 4vw, 6rem); }

    .wpb-section__footer{ margin-top: clamp(2.4rem, 4vw, 6rem); 
        .container{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1.2rem; }
        .wpb-text { max-width: 66rem; 
            p { font-size: clamp(1.8rem, 2vw, 2.4rem); font-weight: 500; }
        }
    }
}

/*** ---------- Block: Reviews ---------- ***/
.wpb-block--reviews{ --gap: 1rem; 
    .wpb-section__footer{ margin-top: clamp(2.4rem, 4vw, 6rem); 
        .container{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1.2rem; }
        .wpb-text { max-width: 66rem; 
            p { font-size: clamp(1.8rem, 2vw, 2.4rem); font-weight: 500; }
        }

    }
    
    .wpb-section__body { overflow-x: hidden; }

    .swiper{ overflow: visible; 
        .swiper-header { display: flex; justify-content: space-between; align-items: end; margin-bottom: clamp(2.4rem, 4vw, 6rem); align-items: center; }
        .swiper-slide + .swiper-slide::before { content: ''; position: absolute; top: 50%; left: -3.5rem; z-index: 10; transform: translateY(-50%); width: 4rem; height: 1rem; background-image: url(/app/themes/wuxnl-theme/assets/icons/diamond-line.svg); background-size: contain; background-repeat: no-repeat; }
    }
}



/*** ---------- Block: Archief ---------- ***/
.wpb-block--archive{ --gc: 1; --column-gap: 1.8rem; --row-gap: var(--column-gap); --mask: var(--dot-mask); --mask-clr: rgba(255,255,255,.2); --mask-clr: rgba(0, 0, 0, 0.1);
    &::before { content: ''; pointer-events: none; position: absolute; top: 0; right: 0; bottom: 0; left: 0; -webkit-mask-size: 1.8rem; mask-size: 1.8rem; -webkit-mask-repeat: repeat; mask-repeat: repeat; -webkit-mask-position: left top; mask-position: left top; background: var(--mask-clr);   -webkit-mask-image: var(--mask), var(--dot-fade); mask-image: var(--mask), var(--dot-fade); -webkit-mask-composite: source-in; mask-composite: intersect; }
    & > *:not(.wpb-section__bg-assets){ position: relative; z-index: 2; }

    .wpb-text h1{ --fs: clamp(3.2rem, 4vw, 6rem); line-height: 1; }
    .wpb-text p:has(em:only-child){ line-height: 1.2; }
    .wpb-text p:has(em:only-child) + :is(h1, h2, h3){ --mt: 1.2rem }

    .wpb-section__header .container .wpb-text{ max-width: 128rem; margin-left: auto; margin-right: auto; }
    .wpb-section__body .container{ display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: var(--column-gap); row-gap: var(--row-gap); }
    .wpb-section__bg-assets .wpb-asset{ --asset-clr: #FFFF; --w: clamp(32rem, 70vw, 127.5rem); top: -20rem; right: -10%; }
}

@media(min-width: 768px){
    .wpb-block--archive{ --gc: 2; }
}
@media(min-width: 992px){
    .wpb-block--archive{ --column-gap: 2.4rem; }
    .wpb-block--archive.wpb-block--archive-news{ --row-gap: 4rem; }
    .wpb-block--archive .wpb-section__bg-assets .wpb-asset{ top: -40rem; }
}
@media(min-width: 1200px){
    .wpb-block--archive{ --column-gap: 3rem; }
    .wpb-block--archive.wpb-block--archive-news{ --row-gap: 6rem; }
}

/*** ---------- Block: Youtube embed ---------- ***/
.wpb-block--youtube .container { column-gap: 2rem; row-gap: 2rem; }
.wpb-block--youtube .wpb-ratio :is(iframe, img) { border-radius: .5rem; }
.wpb-block--youtube .wpb-ratio .youtube-play { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 5; cursor: pointer; transition: opacity var(--ts-35) ease; }
.wpb-block--youtube .wpb-ratio .youtube-play img { object-fit: cover; width: 100%; height: 100%; }
.wpb-block--youtube .wpb-ratio .youtube-play .play-icon { position: absolute; top: calc(50% - 3.2rem); left: calc(50% - 3.2rem); display: grid; place-items: center; z-index: 2; background-color: var(--clr-primary); border-radius: 50%; width: 6.4rem; height: 6.4rem; transition: .25s ease; }
.wpb-block--youtube .wpb-ratio .youtube-play .play-icon i { color: rgb(255,255,255); }
.wpb-block--youtube .wpb-ratio:hover .youtube-play .play-icon { transform: scale(1.065); }

@media (min-width: 992px) {
    .wpb-block--youtube .container { column-gap: 3.2rem; }
    .wpb-block--youtube.wpb-block--youtube-primary .wpb-ratio { order: -1; }
}

@media (min-width: 1200px) {
    .wpb-block--youtube .container { column-gap: 6.4rem; }
}

@media (min-width: 1400px) {
    .wpb-block--youtube .container { column-gap: 9.8rem; }
}

/*** ---------- Block: Grid ---------- ***/
.wpb-block.wpb-block--grid .wpb-section__inner { display: grid; grid-template-columns: repeat(var(--gc, 1), minmax(0, 1fr)); gap: 2rem; grid-auto-flow: dense;
    .content-grid { --br: 2rem; background-color: #FFF; border-radius: var(--br, 2rem); position: relative; min-height: 36rem; 
        h3{ --fs: clamp(2rem, 2.4vw, 3.2rem); }
        img{ border-radius: var(--br, 2rem); }
    }
    .content-grid--text-image { display: grid; grid-template-columns: 1fr; overflow: hidden;
        .wpb-text { padding: var(--p); --p: 5rem 5.6rem 4.2rem 5rem; display: flex; flex-direction: column;
            .wpb-logo { margin-bottom: auto; }
        }
        .wpb-video video, .wpb-image img { width: 100%; height: 100%; object-fit: cover; object-position: top left; border-top-left-radius: var(--br, 1rem); }
    }
    .content-grid--image { position: relative;
        .wpb-text { position: absolute; --location: 2.4rem; bottom: var(--location); left: var(--location); right: var(--location);
            * { color: #FFF; }
        }
        .wpb-image::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(124.4deg, rgba(243, 142, 0, 0) 29.68%, rgba(0, 234, 255, 0.25) 90.62%), linear-gradient(187.47deg, rgba(0, 0, 0, 0) 55.16%, rgba(0, 0, 0, 0.69) 100%); border-radius: var(--br); }
    }
    .content-grid--video {
        .wpb-video { width: 100%; height: 100%;
            video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; border-radius: var(--br); }
        }
        .wpb-text { position: absolute; --location: 2.4rem; top: var(--location); left: var(--location); right: var(--location);
            h3 { color: #FFF; }
        }
    }
    .content-grid--text { background: var(--gradient-primary); overflow: hidden;
        &::before { --mask: var(--dot-mask); --mask-clr: rgba(255, 255, 255, .2); pointer-events: none; content: ''; width: 100%; height: 100%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; -webkit-mask-image: var(--mask); mask-image: var(--mask); -webkit-mask-size: 1.8rem; mask-size: 1.8rem; -webkit-mask-repeat: repeat; mask-repeat: repeat; -webkit-mask-position: left top; mask-position: left top; background: var(--mask-clr); }
        .wpb-text { padding: 2.4rem;
            * { color: #FFF; }
        }
        &::after { content: ''; pointer-events: none; position: absolute; top: 2.4rem; height: 100%; bottom: 50%; width: 100%; background-repeat: no-repeat; background-position: center; background-size: cover; background-image: url('/app/themes/wuxnl-theme/assets/icons/rainbow_line.svg'); pointer-events: none; }
    }
    .wpb-video { position: relative; }
    .wpb-image { width: 100%; height: 100%;
        img { height: 100%; object-fit: cover; }
    }
    .wpb-logo { width: 16.5rem; }
}

@media (max-width: 767.98px) {
    .wpb-block.wpb-block--grid .wpb-section__inner .content-grid--text-image :is(.wpb-video video, .wpb-image img) { margin-left: 2rem; }
}

@media (min-width: 525px) {
    .wpb-block.wpb-block--grid .content-grid--text-image :is(.wpb-image img, .wpb-video video) { margin-top: 5rem; }
    .wpb-block.wpb-block--grid .wpb-section__inner { --gc: 2;
        .content-grid--text-image { grid-template-columns: 1fr 30rem; grid-column: span 2; }
    }
}

@media (min-width: 1200px) {
    .wpb-block.wpb-block--grid .wpb-section__inner { --gc: 12; gap: 2.4rem; grid-template-rows: repeat(2, 36rem);
        .content-grid {
            &:nth-child(1) { grid-column: span 3; }
            &:nth-child(2) { grid-column: span 6; }
            &:nth-child(3) { grid-column: span 3; grid-row: span 2; }
            &:nth-child(4) { grid-column: span 6; }
            &:nth-child(5) { grid-column: span 3; }
        }
        .content-grid--text::after { top: 0; }
    }
}
@media (min-width: 1400px) {
    .wpb-block.wpb-block--grid .wpb-section__inner {
        .content-grid--image .wpb-text { --location: 4.8rem; }
        .content-grid--video .wpb-text { --location: 4.8rem; }
        .content-grid--text .wpb-text { padding: 4.8rem; }
    }
}


/*** ---------- Single content (Structure) ---------- ***/
.wpb-content{ --p-small: 2.4rem; --p-medium: 3.6rem; --p-large: 5.4rem;
    .wpb-text h2{ --fs: clamp(2.4rem, 3vw, 4rem); --lh: 1.2; text-wrap: pretty; }
    .wpb-text p{ --fs: clamp(1.4rem, 1.5vw, 1.6rem); line-height: 1.7; }
    .wpb-text p:has(+ :is(h1, h2, h3)):has(em){ --fs: clamp(1.6rem, 2vw, 2.8rem); }
    .wpb-text p:has(em:only-child) + :is(h1, h2, h3){ --mt: .8rem; }

    .wpb-content__main > *:last-child{ --pb: 0; }
    .wpb-content__sidebar .wpb-card{ position: sticky; top: calc(var(--nav-height) + 2.4rem); width: 100%; max-width: 100%; }
    & > *:not(.wpb-section__bg-assets){ position: relative; z-index: 2; }

    .wpb-content__bg-assets{ --mask: var(--dot-mask); --mask-clr: rgba(255, 255, 255, .2); --mask-clr: rgba(0, 0, 0, 0.1); position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; overflow: hidden; pointer-events: none;
        &::before { content: ''; pointer-events: none; position: absolute; top: 0; right: 0; bottom: 0; left: 0; -webkit-mask-size: 1.8rem; mask-size: 1.8rem; -webkit-mask-repeat: repeat; mask-repeat: repeat; -webkit-mask-position: left top; mask-position: left top; background: var(--mask-clr);   -webkit-mask-image: var(--mask), var(--dot-fade); mask-image: var(--mask), var(--dot-fade); -webkit-mask-composite: source-in; mask-composite: intersect; }
        .wpb-asset{ --asset-clr: #FFFF; --w: clamp(32rem, 70vw, 127.5rem); top: -20rem; right: -10%; }
    }    

    &.wpb-content--news, &.wpb-content--vacancies{ --p-small: 1.6rem; --p-medium: 2.4rem; --p-large: 3.6rem; 
        .wpb-text h2{ --fs: clamp(2rem, 2.5vw, 3rem); }
        .wpb-text h3{ --fs: clamp(1.8rem, 2vw, 2.4rem); }
    }
    &.wpb-content--sidebar{ --column-gap: 6.4rem; --sidebar-width: 35rem; 
        .container{ display: grid; column-gap: var(--column-gap); row-gap: 2.4rem; }
    }

    &.wpb-content--vacancies{
        .wpb-check-usps + *{ --mt: clamp(1.6rem, 2.4vw, 3.2rem); }
        .btn-group{ --mt: clamp(1.6rem, 2.4vw, 3.2rem); }
        #content{ padding-top: clamp(2.4rem, 4vw, 6rem); }
    }
} 
@media (min-width: 992px) {
    .wpb-content{ --p-small: 3.2rem; --p-medium: 4.8rem; --p-large: 7.2rem; }
    .wpb-content .wpb-content__bg-assets .wpb-asset{ top: -40rem; }
    .wpb-content.wpb-content--sidebar .container{ grid-template-columns: minmax(0, 1fr) var(--sidebar-width); }
}
@media (min-width: 1200px) {
    .wpb-content.wpb-content--sidebar{ --column-gap: 10rem; --sidebar-width: 42rem;  }
}
@media (min-width: 1600px) {
    .wpb-content.wpb-content--sidebar{ --column-gap: 12rem; --sidebar-width: 50rem;  }
}

/*** ---------- Content sections (Single content blocks) ---------- ***/
.content-section{ --inner-padding: 1.8rem; --inner-br: 1rem;
    &.wpb-wst--small { --pt: var(--p-small); }
    &.wpb-wst--medium { --pt: var(--p-medium); }
    &.wpb-wst--large { --pt: var(--p-large); }

    &.wpb-wsb--small { --pb: var(--p-small); }
    &.wpb-wsb--medium { --pb: var(--p-medium); }
    &.wpb-wsb--large { --pb: var(--p-large); }

    .content-section__inner:is([class*='wpb-bg-clr--']):not(.wpb-bg-clr--transparent){ padding: var(--inner-padding); border-radius: var(--inner-br); }
}
.content-section.content-section--intro .wpb-text .badge-group + h1{ --mt: clamp(1.2rem, 1.8vw, 2.4rem)}
.content-section.content-section--quote blockquote p{ font-size: clamp(1.6rem, 1.8vw, 2rem); font-weight: 400; line-height: 1.5; }
.content-section.content-section--quote .wpb-profile{ margin-top: clamp(2.4rem, 3vw, 3.2rem); }
.content-section.content-section--links .wpb-logo img{ max-height: 2rem; width: auto; }
.content-section.content-section--links .wpb-logo + :is(h1, h2, h3){ --mt: 1.2rem; }
.content-section.content-section--footer .content-section__inner{ display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.2rem; padding-bottom: clamp(1.6rem, 2.4vw, 3.2rem); border-bottom: 1px solid rgba(0, 0, 0, 0.15); }

@media(max-width: 575.98px){
    .content-section:has(.content-section__inner:is([class*='wpb-bg-clr--']):not(.wpb-bg-clr--transparent)){ --inner-br: 0; width: calc(100% + (var(--inline-spacing) * 2)); margin-left: calc(-1 * var(--inline-spacing)); margin-right: calc(-1 * var(--inline-spacing)); }
}
@media(min-width: 576px){
    .content-section{ --inner-padding: 2.4rem; --inner-br: 2rem; }
    .content-section.content-section--footer .content-section__inner .wpb-text{ max-width: clamp(24rem, 24vw, 50rem); }
}
@media (min-width: 992px) {
    .content-section{ --inner-padding: 3.2rem; }
}
@media (min-width: 1400px) {
    .content-section.content-section--quote{ --inner-padding: 4.8rem; }
}

/*** ---------- Gerelateerde posts ---------- ***/
.wpb-related-posts{ --gc: 1; --column-gap: 1.8rem; --row-gap: var(--column-gap); 
    .wpb-section__header{ margin-bottom: clamp(2.4rem, 4vw, 6rem); }
    .wpb-section__header .container .wpb-text{ max-width: 88rem; margin-left: auto; margin-right: auto; text-align: center; }
    .wpb-section__body .container{ display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: var(--column-gap); row-gap: var(--row-gap); }
    .wpb-section__footer{ margin-top: clamp(2.4rem, 4vw, 6rem); }
    .wpb-section__footer .inner{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1.2rem; padding-bottom: clamp(1.8rem, 2.4vw, 3.2rem); border-bottom: 1px solid rgba(0, 0, 0, 0.15); }
    .wpb-section__footer .wpb-text p{ font-size: clamp(1.8rem, 2vw, 2.4rem); font-weight: 500; }
}

@media(min-width: 768px){
    .wpb-related-posts{ --gc: 2; }
    .wpb-related-posts .wpb-section__footer .wpb-text{ max-width: clamp(40vw, 48vw, 100rem); }
}
@media(min-width: 992px){
    .wpb-related-posts{ --column-gap: 2.4rem; }
    .wpb-related-posts.wpb-related-posts--news{ --row-gap: 4rem; }
}
@media(min-width: 1200px){
    .wpb-related-posts{ --column-gap: 3rem; }
    .wpb-related-posts.wpb-related-posts--news{ --row-gap: 6rem; }
}

/*** ---------- Block footers ---------- ***/
.wpb-block--faq .wpb-section__footer{ margin-top: clamp(2.4rem, 4vw, 6rem); 
    .inner{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1.2rem; border-bottom: 1px solid rgba(0, 0, 0, 0.15); padding-bottom: clamp(1.6rem, 2.4vw, 3.2rem); }
    .wpb-text { max-width: 66rem; }
    p{ font-size: clamp(1.8rem, 2vw, 2.4rem); font-weight: 500; }
}

/*** ---------- Block: Team stories ---------- ***/
.wpb-block.wpb-block--team-stories {
    .wpb-section__body { overflow: clip; }
    .swiper-header { display: flex; justify-content: space-between; margin-bottom: 4.7rem;
        .swiper-buttons { display: flex; gap: 1.2rem; 
            .btn:hover i { background-color: #FFF; }
        }
    }
    .swiper { overflow: visible; 
        .swiper-slide { position: relative; }
        .swiper-slide + .swiper-slide::before { content: ''; position: absolute; top: 50%; left: -3.5rem; z-index: 10; transform: translateY(-50%); width: 4rem; height: 1rem; background-image: url('/app/themes/wuxnl-theme/assets/icons/diamond-line.svg'); background-size: contain; background-repeat: no-repeat; }
    }
}

@media(max-width: 767.98px) {
    .swiper .swiper-header .swiper-buttons { display: none !important; }
}

/*** ---------- Block: Team ---------- ***/
.wpb-block--team { 
    --gc: 1; --gap: 1.6rem; --mask-clr: rgba(0, 0, 0, 0.1);
    
    .wpb-section__body { 
        position: relative;
        .container { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); gap: var(--gap); }
        &::before { content: ''; position: absolute; inset: 25% 0 0 0; pointer-events: none; background: var(--mask-clr); mask: var(--dot-mask), var(--dot-fade); mask-composite: intersect; mask-size: 1.8rem; }
    } 

    .card-wrapper {  position: relative;
        &:last-child .card-wrapper__asset:not(.--side) { display: none; }

        .card-wrapper__asset { 
            --diamond-size: .7rem; --overlap: 0px; --asset-clr: var(--clr-border); 
            position: absolute; display: flex; align-items: center; justify-content: center; z-index: 20;
            top: 100%; left: 50%; transform: translateX(-50%);

            & > span { 
                display: block; position: relative; width: 1px; height: var(--gap); background-color: var(--asset-clr); 
                &::before, &::after { content: ''; position: absolute; width: var(--diamond-size); height: var(--diamond-size); background-color: inherit; left: 50%; transform: translate(-50%, -50%) rotate(45deg); }
                &::before { top: var(--overlap); }
                &::after { top: calc(100% - var(--overlap)); }
            }

            &.--side { 
                display: none; top: 50%; left: calc(var(--gap) * -1); transform: translateY(-50%);
                & > span { width: var(--gap); height: 1px; 
                    &::before { top: 50%; left: var(--overlap); }
                    &::after { top: 50%; left: calc(100% - var(--overlap)); }
                }
            }
        }
    }
}

@media (min-width: 576px) {
    .wpb-block--team { --gc: 2; 
        .card-wrapper__asset.--side { display: flex; }
        .card-wrapper:nth-child(2n+1) .card-wrapper__asset.--side { display: none; }
        .card-wrapper:nth-last-child(-n+2) .card-wrapper__asset:not(.--side) { display: none; }
    }
}

@media (min-width: 992px) {
    .wpb-block--team { --gc: 3; 
        .card-wrapper:nth-child(n) .card-wrapper__asset.--side { display: flex; }
        .card-wrapper:nth-child(3n+1) .card-wrapper__asset.--side { display: none; }
        .card-wrapper:nth-last-child(-n+3) .card-wrapper__asset:not(.--side) { display: none; }
    }
}

@media (min-width: 1200px) {
    .wpb-block--team { --gc: 4; --gap: 3rem; 
        .card-wrapper:nth-child(n) .card-wrapper__asset.--side { display: flex; }
        .card-wrapper:nth-child(4n+1) .card-wrapper__asset.--side { display: none; }
        .card-wrapper:nth-last-child(-n+4) .card-wrapper__asset:not(.--side) { display: none; }
    }
}

/*** ---------- Block: Companies ---------- ***/
.wpb-block--companies {
        .wpb-section__footer .container { padding-top: 7.7rem; 
            .inner { border-bottom: 1px solid rgba(0,0,0,.15); padding-bottom: 3.2rem; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 2.4rem;  
                p { font-weight: 500; font-size: clamp(1.8rem, 2vw, 2.4rem); }
            }
    }
    .wpb-section__header .container { justify-content: center; 
        .wpb-text{ text-align: center; }
    }
}

/*** ----------  Block: Solutions ---------- ***/
.wpb-header + .wpb-block--solutions { margin-top: -15rem; z-index: 5; }
.wpb-header:has( + .wpb-block--solutions) { padding-bottom: 21.5rem; }

.wpb-block--solutions { 
    .inner { display: grid; row-gap: 3rem; }
}

@media(min-width: 768px) {
    .wpb-header + .wpb-block--solutions { margin-top: -8rem; }
}

/*** ---------- Block: CTA ---------- ***/
.wpb-block--cta {
    .wpb-block__inner { border-radius: 2rem; overflow: hidden; }
    .wpb-block__body { z-index: 1; position: relative; }
    .wpb-text { padding: 0 2rem 3.2rem 2rem; line-height: 1.7; 
        :is(p, li, a):not(.btn) { color: var(--clr-light)!important; }
        p{ --fs: clamp(1.4rem, 1.5vw, 1.6rem); line-height: 1.7; }
        .btn { --p: .6rem 3.2rem .6rem .6rem; }
        .btn-group{ --mt: clamp(1.4rem, 1.6vw, 2rem) }
    }
    .container--medium .wpb-block__body h2 { font-size: clamp(3.2rem, 2vw, 4rem); }
    .wpb-section__bg-assets{ bottom: -5rem; 
        .wpb-asset.wpb-asset--dots{ --composite-mask: var(--dot-mask), linear-gradient(to top, transparent, black 10rem, black 40%, transparent); bottom: 0; }
    }
}

@media (min-width: 576px) {
    .wpb-block--cta {
        .wpb-text { padding: 0 3.2rem 4.8rem 3.2rem; }
    }
}

@media (min-width: 768px) {
    .wpb-block--cta {
        .wpb-block__inner { display: grid; grid-template-columns: 1fr 1fr; align-items: start; }
        .wpb-image { order: 1; }
        .wpb-text { padding: 4.8rem 0 4.8rem 3.2rem; }

        .btn-group { position: relative; justify-self: start;
            .text-blob { --offset: 6.4rem; --line-width: var(--offset); position: absolute; left: calc(100% + var(--offset)); bottom: 50%; white-space: nowrap; }
        }
    }
}

@media (min-width: 992px) {
    .wpb-block--cta {
        .wpb-block__inner { grid-template-columns: 2fr 3fr; }
        .wpb-text { padding: 6.4rem 0 6.4rem 4.8rem; }

        .btn-group .text-blob { --offset: 8rem; }
    }
}

@media (min-width: 1200px) {
    .wpb-block--cta {
        .wpb-block__inner { grid-template-columns: 3fr 5fr; }
        .wpb-text { padding: 8rem 0 8rem 6.4rem; }
        .btn-group .text-blob { --offset: 12rem; }
    }
}

@media (min-width: 1400px) {
    .wpb-block--cta {
        .wpb-text { padding: 12rem 2.4rem 12rem 8rem; }
        .btn-group .text-blob { --offset: 16.2rem; }
    }
}

@media (min-width: 1600px) {
    .wpb-block--cta {
        .wpb-text { padding: 15rem 2.4rem 15rem 12rem; }
        .btn-group .text-blob { --offset: 20rem; }
        .container--medium .wpb-block__body .wpb-text { padding: 8rem 2.8rem 7.8rem 9rem; }
        .container--medium .wpb-block__body .wpb-text .text-blob { --offset: 10rem; }

    }
}