/*** Basic style v1 ***/

/*** ---------- Global ---------- ***/
:root {
    --ts-100: 1000ms; --ts-95: 950ms; --ts-90: 900ms; --ts-85: 850ms; --ts-80: 800ms; --ts-75: 750ms; --ts-70: 700ms; --ts-65: 650ms; --ts-60: 600ms; --ts-55: 550ms; --ts-50: 500ms; --ts-45: 450ms; --ts-40: 400ms; --ts-35: 350ms; --ts-30: 300ms; --ts-25: 250ms; --ts-20: 200ms; --ts-15: 150ms; 
}

/*** Disable animations & transitions ***/
@media (prefers-reduced-motion) {
    *, *::before, *::after { transition: 0s; animation: none; }
    :root {
        --ts-100: 0; --ts-95: 0; --ts-90: 0; --ts-85: 0; --ts-80: 0; --ts-75: 0; --ts-70: 0; --ts-65: 0; --ts-60: 0; --ts-55: 0; --ts-50: 0; --ts-45: 0; --ts-40: 0; --ts-35: 0; --ts-30: 0; --ts-25: 0; --ts-20: 0; --ts-15: 0;
    }
}

*, *::before, *::after { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 10px; height: -webkit-fill-available; scroll-behavior: smooth; }
body { font-size: var(--fs); line-height: var(--lh); color: var(--clr-text); min-height: 100dvh; min-height: -webkit-fill-available; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
body.--no-scroll { overflow: hidden; }
.wpb-pagewrapper { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

/*** ---------- Accordion ---------- ***/
.wpb-accordion {
    --br: .5rem; 
    --p: 0 1.8rem; 
    --bg: #fff; 
    --active-bg: #fff; 
    --active-clr: inherit; 
    --body-p: 1.8rem; 
}
.wpb-accordion .collapse:not(.show) { display: none; }
.wpb-accordion__item { color: var(--clr); border: .1rem solid var(--clr-border); }
.wpb-accordion__item:first-of-type { border-top-left-radius: var(--br); border-top-right-radius: var(--br); }
.wpb-accordion__item:last-of-type { border-bottom-left-radius: var(--br); border-bottom-right-radius: var(--br); }
.wpb-accordion__item:not(:first-of-type) { border-top: 0; }
.wpb-accordion__item .wpb-accordion__header { --fs: 1.8rem; margin: 0; }
.wpb-accordion__item .wpb-accordion__button { font: inherit; color: inherit; min-height: 5.3rem; cursor: pointer; display: grid; grid-template-columns: 1fr 2rem; column-gap: 2rem; align-items: center; width: 100%; font-size: 1.6rem; text-align: left; padding: var(--p); background-color: var(--bg); border: 0; overflow-anchor: none; border-radius: 0; transition: background-color var(--ts-duration) ease-in-out, color var(--ts-duration) ease-in-out, border-radius var(--ts-duration) ease-in-out; }
.wpb-accordion__item .wpb-accordion__button span { transition: color var(--ts-duration) ease-in-out; }
.wpb-accordion__item:first-of-type .wpb-accordion__button { border-top-left-radius: var(--br); border-top-right-radius: var(--br); }
.wpb-accordion__item:last-of-type .wpb-accordion__button { border-bottom-left-radius: var(--br); border-bottom-right-radius: var(--br); }
.wpb-accordion__item .wpb-accordion__button i { --w: 1.4rem; --h: 1.4rem; margin: auto; transition: transform var(--ts-25) ease; }
.wpb-accordion__item .wpb-accordion__button.is-active { color: var(--active-clr); background-color: var(--active-bg); border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.wpb-accordion__item .wpb-accordion__button.is-active i { transform: rotate(-180deg); }
.wpb-accordion__item .wpb-accordion__body { background-color: #fff; padding: var(--body-p); border-top: 1px solid var(--clr-border); }
.wpb-accordion__item:last-of-type .wpb-accordion__body { border-bottom-left-radius: var(--br); border-bottom-right-radius: var(--br); }
.wpb-accordion__item .collapse:not(.show) { display: none; }
.wpb-accordion__item .collapsing { height: 0; overflow: hidden; transition: height .35s ease; }

/*** ---------- Images ---------- ***/
.wpb-image { --br: 1rem; }
.wpb-image img { border-radius: var(--br); }
.wpb-image figcaption { display: block; padding-top: .5rem; font-size: 1.4rem; }

.wpb-image.wpb-image--square img {object-fit: cover; aspect-ratio: 1/1;}
.wpb-image.wpb-image--rectangle img {object-fit: cover; aspect-ratio: 4/3;}
.wpb-image.wpb-image--landscape img {object-fit: cover; aspect-ratio: 16/9;}
.wpb-image.wpb-image--portrait img {object-fit: cover; aspect-ratio: 9/16;}

.wpb-image:has(.wpb-image__text){ position: relative; overflow: hidden; border-radius: var(--br); }
.wpb-image .wpb-image__text{ --w: 45rem; --p: 2.4rem; --br: 2rem; --bg-clr: var(--clr-secondary-60); --clr: #fff; position: absolute; bottom: 0; right: 0; width: var(--w); padding: var(--p); }
.wpb-image .wpb-image__text *{ position: relative; z-index: 1; }
.wpb-image .wpb-image__text p{ color: var(--clr); font-size: clamp(1.2rem, 1.5vw, 1.4rem); --excerpt-line-clamp: 4; display: -webkit-box; -webkit-line-clamp: var(--excerpt-line-clamp); -webkit-box-orient: vertical; overflow: hidden; }
.wpb-image .wpb-image__text .btn{ margin-top: 1.4rem; }
.wpb-image .wpb-image__text::after{ content: ''; position: absolute; top: -66%; right: 0; bottom: 0; left: -6%; width: 175%; height: 200%; background-color: var(--bg-clr); border-radius: var(--br); transform: rotate(var(--glob-rotation)); }

@media(max-width: 1200px){
    .wpb-image .wpb-image__text{ --w: 30rem; }
    .wpb-image:has(.wpb-image__text){ --glob-rotation: -7deg; }
    .wpb-image:has(.wpb-image__text) img{ min-height: 40rem; object-fit: cover; }
    .wpb-image .wpb-image__text::after{ top: -24%; left: -3%; }
}

img { display: block; width: 100%; height: auto; }

/*** ---------- Containers ---------- ***/
.container, .container-fluid { --wpb-width: var(--container-width); --p: 2rem; width: 100%; max-width: var(--wpb-width); margin-left: auto; margin-right: auto; padding-left: var(--p); padding-right: var(--p); position: relative; }

@media (min-width: 576px) {
    body { --wp--style--global--content-size: var(--container-width--sm); } 
    .container { --wpb-width: var(--container-width--sm); }
}

@media (min-width: 768px) {
    body { --wp--style--global--content-size: var(--container-width--md); } 
    .container { --wpb-width: var(--container-width--md); }
    .container.container--x-small { --wpb-width: 750px; } /*before: 640*/
}

@media (min-width: 992px) {
    body { --wp--style--global--content-size: var(--container-width--lg); } 
    .container { --wpb-width: var(--container-width--lg); }
    .container.container--x-small { --wpb-width: 750px; }
}

@media (min-width: 1200px) {
    body { --wp--style--global--content-size: var(--container-width--xl); } 
    .container { --wpb-width: var(--container-width--xl); }

    .container.container--x-small { --wpb-width: 750px; }
    .container.container--small { --wpb-width: 1000px; }
    .container.container--medium { --wpb-width: 1180px; }
}

@media (min-width: 1400px) {
    body { --wp--style--global--content-size: var(--container-width--2xl); } 
    .container { --wpb-width: var(--container-width--2xl); }

    .container.container--x-small { --wpb-width: 750px; }
    .container.container--small { --wpb-width: 1000px; }
    .container.container--medium { --wpb-width: 1220px; }
}

@media (min-width: 1600px) {
    body { --wp--style--global--content-size: var(--container-width--3xl); } 
    .container { --wpb-width: var(--container-width--3xl); }

    .container.container--x-small { --wpb-width: 750px; }
    .container.container--small { --wpb-width: 1000px; }
    .container.container--medium { --wpb-width: 1220px; }
    .container.container--large { --wpb-width: 1500px; }
}

@media (min-width: 1800px) {
    body { --wp--style--global--content-size: var(--container-width--4xl); } 
    .container { --wpb-width: var(--container-width--4xl); }

    .container.container--x-small { --wpb-width: 750px; }
    .container.container--small { --wpb-width: 1000px; }
    .container.container--medium { --wpb-width: 1280px; }
    .container.container--large { --wpb-width: 1500px; }
}

/*** ----- Sections ----- ***/
section { position: relative; }
.has-background-image { position: relative; }
.has-background-image::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(to bottom, rgba(36, 53, 33, 1), rgba(36, 53, 33, 0) 40%, rgba(36, 53, 33, .15) 42.5%, rgba(36, 53, 33, .8)); }
.has-background-image .wpb-text :is(h1, h2, h3, h4, h5, p, ul, ul li, ol, ol li, .wpb-breadcrumbs, .wpb-breadcrumbs *, em) { color: #fff; }
.has-background-image .container { z-index: 1; }

img.is-background-image { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%!important; object-fit: cover; }
figure.is-background-image { position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
figure.is-background-image img { width: 100%; height: 100%!important; object-fit: cover; }

.wpb-section__header { padding-bottom: 3.2rem; }
.wpb-section__header .container { display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; gap: 1.6rem; }
.wpb-section__header .wpb-text { margin: 0; }

/*** ---------- Icons ---------- ***/
.wpb-icon { --src: ; --clr: var(--clr-dark); --w: 1.8rem; --h: 1.8rem; display: inline-flex; background: transparent; }
.wpb-icon::after { content:''; -webkit-mask-image: var(--src); mask-image: var(--src); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; display: inline-block; width: var(--w); height: var(--h); min-width: var(--w); min-height: var(--h); background-color: var(--clr); transition: background-color var(--ts-duration) var(--ts-function); }

.wpb-icon.wpb-icon--arrow-turn-right{ --src: url(/app/themes/wuxnl-theme/assets/icons/default/arrow-turn-right.svg); }

.wpb-icon.wpb-icon--houses-count{ --src: url(/app/themes/wuxnl-theme/assets/icons/default/grondgebonden_woningen.png); }
.wpb-icon.wpb-icon--flat-count{ --src: url(/app/themes/wuxnl-theme/assets/icons/default/appartementen.png); }
.wpb-icon.wpb-icon--non-residential-ground{ --src: url(/app/themes/wuxnl-theme/assets/icons/default/commerciele_ruimte.png); }


/*** ---------- Background colors ---------- ***/
[class*="wpb-bg-clr--"]     { --wpb-bg-clr: transparent; background-color: var(--wpb-bg-clr); }
.wpb-bg-clr--transparent    { --wpb-bg-clr: transparent; }
.wpb-bg-clr--white          { --wpb-bg-clr: #fff; }
.wpb-bg-clr--grey           { --wpb-bg-clr: var(--clr-border); }
.wpb-bg-clr--light          { --wpb-bg-clr: var(--clr-moss); }

/*** ---------- Typography ---------- ***/
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { color: var(--clr-text); font-size: var(--fs); line-height: var(--lh); text-wrap: balance; }

h1, .h1 { --fs: clamp(0.32rem, 0.32rem + 0.40000vw, 6.4rem); --lh: 1.15; }
h2, .h2 { --fs: clamp(2.8rem, 2.8rem + 0.10526vw, 4.4rem); --lh: 1.15; }
h3, .h3 { --fs: clamp(2rem, 2rem + 0.05263vw, 2.8rem); --lh: 1.15; }
h4, .h4 { --fs: 1.8rem; --lh: 1.15; }
h5, .h5 { --fs: 1.6rem; --lh: 1.15; }
h6, .h6 { --fs: 1.4rem; --lh: 1.15; }

.wpb-text { --mt: 1em; }
.wpb-text > * + *:not(.btn .blockquote) { margin-top: var(--mt); } 

.wpb-text :is(ul, ol) { padding-left: 3.8rem; }
.wpb-text :is(ul, ol) li { font: inherit; }

.wpb-text a:not(.btn) { font: inherit; text-underline-offset: .25rem; }
.wpb-text blockquote { --mt: 4rem; border-left: 4px solid var(--clr-primary); padding-left: 1.8rem; font-family: var(--font-heading); font-size: clamp(1.6rem, 2vw, 2.4rem); color: var(--clr-secondary-80); }
.wpb-text p:has(strong:only-child){ font-family: var(--font-heading); font-size: clamp(1.6rem, 2vw, 2.2rem); }

@media(min-width: 768px){
    .wpb-text blockquote { padding-left: 3.2rem; }
}

.wpb-text iframe { width: 100%; height: 100%; aspect-ratio: 16/9; border-radius: 1rem; }

strong, strong * { font: inherit; font-weight: 700; color: inherit; }
em, em * { color: inherit; }

.text-uppercase { text-transform: uppercase; }
.text-heading { font-family: var(--wpb-font-headings); }

/*** ---------- Cards ----------  ***/
.wpb-card { --br: 1rem; --p: 2rem; border-radius: var(--br); border: 1px solid var(--clr-border); background-color: #fff; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; position: relative; text-decoration: none; transition: background var(--ts-duration) ease, border var(--ts-duration) ease; }
.wpb-card a { text-decoration: none; }
.wpb-card .card-title { font-family: var(--font-heading); font-weight: 700; line-height: 1.4; --excerpt-line-clamp: 2; display: -webkit-box; -webkit-line-clamp: var(--excerpt-line-clamp); -webkit-box-orient: vertical; overflow: hidden; transition: color var(--ts-duration) ease; }
.wpb-card .wpb-card__header { display: flex; overflow: hidden; }
.wpb-card .wpb-card__header img { width: 100%; height: auto; } 
.wpb-card .wpb-card__body { padding: var(--p); -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }
.wpb-card .wpb-card__footer  { padding: var(--p); padding-top: 0; }
.wpb-card > *:first-child { border-top-left-radius: var(--br); border-top-right-radius: var(--br); }
.wpb-card > *:first-child img { border-top-left-radius: var(--br); border-top-right-radius: var(--br); } 
.wpb-card > *:last-child { border-bottom-left-radius: var(--br); border-bottom-right-radius: var(--br); }

.wpb-card .card-item-group{ display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: 1.4rem; }
.wpb-card > * > .card-item-group:not(:first-child){ margin-top: 3.2rem; }

.wpb-card .card-item{ display: flex; flex-direction: column; gap: .6rem; line-height: 1.2; }
.wpb-card .card-item .card-item__subtitle{ color: var(--clr-secondary-60); font-size: 1.2rem; }
.wpb-card .card-item .card-item__label{ font-size: 1.4rem; display: flex; align-items: center; gap: 1rem; }
.wpb-card .card-item .card-item__label i{ font-size: 1.6rem; }
.wpb-card .card-item .card-item__label .wpb-icon{ --clr: var(--clr-secondary); --w: 2.4rem; --h: 2.4rem; }
.wpb-card .card-item .card-item__label span{ font-size: 1.6rem; }

.wpb-card.wpb-card--article{ --br: 0; border: none; background-color: transparent; }
.wpb-card.wpb-card--article .card-title{ font-size: clamp(1.6rem, 2vw, 2.2rem); }
.wpb-card.wpb-card--article .card-title.is_foundation{ color: var(--clr-secondary-60); }
.wpb-card.wpb-card--article .wpb-card__header{ border-radius: .6rem; overflow: hidden; }
.wpb-card.wpb-card--article .wpb-card__header img{ transition: transform var(--ts-duration) ease;  position: absolute; top: 0; bottom: 0; right: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.wpb-card.wpb-card--article .wpb-card__body{ padding-left: 0; padding-right: 0; padding-top: 3rem; }
.wpb-card.wpb-card--article:hover .card-title{ color: var(--clr-secondary-60); }
.wpb-card.wpb-card--article:hover .card-title.is_foundation{ color: var(--clr-secondary); }
.wpb-card.wpb-card--article:hover .wpb-card__header img{ transform: scale(1.1); }

.wpb-bg-clr--light .wpb-card.wpb-card--article .badge{ background-color: #fff; border: none; }

.wpb-card.wpb-card--article-short{ --br: 0; border: none; border-bottom: 1px solid var(--clr-border); }
.wpb-card.wpb-card--article-short .badge-group{ margin-bottom: 1.2rem; }
.wpb-card.wpb-card--article-short .card-title{ font-size: 1.6rem; }
.wpb-card.wpb-card--article-short .card-title.is_foundation{ color: var(--clr-secondary-60); }
.wpb-card.wpb-card--article-short .wpb-card__body{ padding-left: 0; padding-right: 0; }
.wpb-card.wpb-card--article-short:hover{ border-color: rgb(var(--clr-secondary-rgb), .3); }
.wpb-card.wpb-card--article-short:hover .card-title{ color: var(--clr-primary); }
.wpb-card.wpb-card--article-short:hover .card-title.is_foundation{ color: var(--clr-secondary); }

.wpb-card.wpb-card--blurb{ --p: 3.2rem; }
.wpb-card.wpb-card--blurb .wpb-card__header{ padding: var(--p); padding-bottom: 0; }
.wpb-card.wpb-card--blurb .wpb-card__header h3{ --fs: clamp(1.8rem, 2vw, 2.4rem); display: flex; align-items: center; gap: 1rem; }
.wpb-card.wpb-card--blurb .wpb-card__header h3 i{ --w: var(--fs); --h: var(--fs); }
.wpb-card.wpb-card--blurb .wpb-text p{ font-size: clamp(1.4rem, 2vw, 1.6rem); color: var(--clr-secondary-60); }
.wpb-card.wpb-card--blurb > *:last-child{ padding-top: 1.8rem; }

.wpb-card.wpb-card--pijlers{ --p: 2.8rem 3.2rem; padding: var(--p); flex-direction: row; align-items: end; position: relative; overflow: hidden; transition: background var(--ts-duration) ease, border var(--ts-duration) ease;}
.wpb-card.wpb-card--pijlers .wpb-card__header .wpb-icon{ --w: 2.8rem; --h: 2.8rem; margin-bottom: 1.6rem; }
.wpb-card.wpb-card--pijlers .wpb-card__title{ --fs: clamp(1.8rem, 2vw, 2.4rem); display: block; margin-bottom: .8rem; transition: color var(--ts-duration) ease; }
.wpb-card.wpb-card--pijlers::before{ content: ''; position: absolute; top: -50%; right: 0; bottom: 2.5%; left: 2.5%; width: 95%; height: 200%; transform: rotate(var(--glob-rotation)); border: 1px solid var(--clr-border); pointer-events: none; }
.wpb-card.wpb-card--pijlers .wpb-card__body { display: flex; width: 100%; padding: 0; justify-content: space-between; align-items: flex-end; }
.wpb-card.wpb-card--pijlers .wpb-card__body .wpb-text p {margin-top: 0; font-size: 1.5rem; color: var(--clr-secondary-80); transition: color var(--ts-duration) ease; }
.wpb-card.wpb-card--pijlers .wpb-card__body .btn{ height: fit-content; min-height: 2.8rem; border-width: 1px; }
.wpb-card.wpb-card--pijlers .wpb-card__body .btn i{ font-size: 1.2rem; }

.wpb-card.wpb-card--pijlers:hover{ background-color: var(--clr); border: 1px solid var(--clr); }
.wpb-card.wpb-card--pijlers:hover .wpb-card__body :is(.wpb-card__title, .wpb-text p){ color: #ffff; }
.wpb-card.wpb-card--pijlers:hover .wpb-card__header .wpb-icon{ --clr: #ffff !important; }
.wpb-card.wpb-card--pijlers:hover .wpb-card__body .btn{ --clr: #fff; }

@media (min-width: 768px) {
    .wpb-card.wpb-card--pijlers {flex-direction: column; }
    .wpb-card.wpb-card--pijlers .wpb-card__header {width: 100%; flex-basis: 100%;}
}

.wpb-card.wpb-card--cta{ background-color: var(--clr-moss); border: none; height: fit-content; }
.wpb-card.wpb-card--cta .card-title{ font-size: clamp(1.4rem, 1.5vw, 1.8rem); line-height: 1; }
.wpb-card.wpb-card--cta .wpb-card__header{ padding: var(--p); padding-bottom: 0; display: flex; align-items: center; gap: 2rem; row-gap: 1rem; }
.wpb-card.wpb-card--cta .wpb-card__header p{ width: 100%; }
.wpb-card.wpb-card--cta .wpb-card__header i{ font-size: 3rem; color: var(--clr-primary); position: relative; }
.wpb-card.wpb-card--cta .wpb-card__header i.fa-bell::after{ content: ''; position: absolute; top: 0; right: -.5rem; width: .7rem; height: .7rem; background-color: var(--clr-primary); border-radius: 50%; }
.wpb-card.wpb-card--cta .wpb-card__body p{ font-size: clamp(1.2rem, 1.5vw, 1.6rem); color: var(--clr-secondary-60); }
.wpb-card.wpb-card--cta .wpb-card__body .btn{ margin-top: 1rem; }
.wpb-card.wpb-card--cta > *:last-child{ padding-top: 1rem; }

.wpb-card.wpb-card--cta.wpb-card--cta-big:target { scroll-margin-top: 50rem; }
.wpb-card.wpb-card--cta.wpb-card--cta-big{ --p: 4.5rem 3.6rem; overflow: hidden;  }
.wpb-card.wpb-card--cta.wpb-card--cta-big::before{ content: ''; position: absolute; top: -75%; bottom: 0; left: 2rem;  right: 5rem; width: calc(100% - 7rem); height: 250%; transform: rotate(var(--glob-rotation)); border: 1px solid var(--clr-border); pointer-events: none; }
.wpb-card.wpb-card--cta.wpb-card--cta-big .card-title{ font-size: clamp(1.8rem, 1.5vw, 2.4rem); width: calc(100% - 6rem); }
.wpb-card.wpb-card--cta.wpb-card--cta-big .wpb-card__header{ flex-wrap: wrap; }
.wpb-card.wpb-card--cta.wpb-card--cta-big .wpb-person .wpb-person__image .wpb-person__image-label{ --bg-clr: var(--clr-primary); }
.wpb-card.wpb-card--cta.wpb-card--cta-big .wpb-card__body{ display: flex; align-items: center; row-gap: 2.4rem; column-gap: 3.8rem; flex-wrap: wrap; justify-content: space-between;}
.wpb-card.wpb-card--cta.wpb-card--cta-big .wpb-card__body .btn{ margin: 0; }
.wpb-card.wpb-card--cta.wpb-card--cta-big > *:last-child{ padding-top: 4rem; }
.wpb-card.wpb-card--cta.wpb-card--cta-big > *{ z-index: 2; }


.wpb-card.wpb-card--projects{ --p: 2.4rem; --btn-offset: var(--p); position: relative; min-height: 33rem; overflow: hidden; }
.wpb-card.wpb-card--projects::before{ content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(to bottom, rgb(var(--clr-dark-rgb), .6), rgb(var(--clr-dark-rgb), 0), rgb(var(--clr-dark-rgb), 0) 40%, rgb(var(--clr-dark-rgb), .6)); z-index: 1; }
.wpb-card.wpb-card--projects .wpb-card__header{ padding: var(--p); }
.wpb-card.wpb-card--projects .wpb-card__header > *:not(img){ z-index: 2; }
.wpb-card.wpb-card--projects .wpb-card__header img{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; transition: transform var(--ts-duration) ease; }
.wpb-card.wpb-card--projects .wpb-card__body{ flex-grow: 0; margin-top: auto; z-index: 1; }
.wpb-card.wpb-card--projects .wpb-card__body *:not(.btn, .btn *){ color: #fff; }
.wpb-card.wpb-card--projects .wpb-card__body .badge{ margin-bottom: 1.6rem; }
.wpb-card.wpb-card--projects .card-title{ font-size: clamp(1.8rem, 2vw, 2.4rem); line-height: 1; padding-right: 3rem; }
.wpb-card.wpb-card--projects .card-info{ display: flex; align-items: center; flex-wrap: wrap; gap: 1.8rem; row-gap: 1rem; margin-top: 2.6rem; padding-right: 4rem; }
.wpb-card.wpb-card--projects .card-info .card-info__item{ display: flex; align-items: center; gap: 1.2rem; font-size: 1.4rem; }
.wpb-card.wpb-card--projects .card-info .card-info__item i{ font-size: 1.6rem; }
.wpb-card.wpb-card--projects .btn.btn--square{ min-height: 2.8rem; font-size: 1.2rem; position: absolute; right: var(--btn-offset); bottom: var(--btn-offset); }
.wpb-card.wpb-card--projects:hover .wpb-card__header img{ transform: scale(1.1); }
.wpb-card.wpb-card--projects:hover .btn.btn--square{ background-color: var(--hover-bg-clr); }

@media (min-width: 992px){
    .wpb-card.wpb-card--projects{ --p: 3.6rem; }
}

.wpb-card.wpb-card--project-info{ --p: 2.4rem 2.8rem; border: none; }
.wpb-card.wpb-card--project-info .wpb-card__header{ padding: var(--p); flex-direction: column; }
.wpb-card.wpb-card--project-info .wpb-text{ font-size: clamp(1.4rem, 2vw, 1.6rem); }
.wpb-card.wpb-card--project-info .wpb-card__header + .wpb-card__body{ border-top: 1px solid var(--clr-border); }
.wpb-card.wpb-card--project-info .wpb-card__body .card-item + .card-item{ margin-top: 2.4rem; }

.wpb-card.wpb-card--related-project{ border: none; }
.wpb-card.wpb-card--related-project .wpb-card__body{ display: flex; flex-direction: column; border-bottom: 1px solid var(--clr-border); }
.wpb-card.wpb-card--related-project .wpb-card__body span{ color: var(--clr-secondary-60); font-size: 1.2rem; }
.wpb-card.wpb-card--related-project .wpb-card__body strong{ font-family: var(--font-heading); font-weight: 700; font-size: 1.5rem; line-height: 1; margin-top: .8rem; }
.wpb-card.wpb-card--related-project .wpb-card__footer{ padding-block: 1.6rem; color: var(--clr-primary); font-size: 1.5rem; font-weight: 700; line-height: 1; transition: background var(--ts-duration) ease; }
.wpb-card.wpb-card--related-project .wpb-card__footer:hover{ background-color: var(--clr-moss); }

@media (min-width: 992px){
    .wpb-card.wpb-card--project-info{ --p: 3.5rem 4rem; }
}

.wpb-card--team { --p: 1.2rem; }
.wpb-card--team .wpb-card__header img{ height: 100%; object-position: top; transition: transform var(--ts-duration) ease; }
.wpb-card--team .wpb-card__body{ line-height: 1; }
.wpb-card--team .card-title{ font-size: clamp(1.8rem, 2vw, 2.4rem); }
.wpb-card--team .card-text{ font-size: clamp(1.3rem, 1.2vw, 1.5rem); color: var(--clr-secondary-80); }
.wpb-card--team:hover .wpb-card__header img{ transform: scale(1.1); }

@media (min-width: 992px){
    .wpb-card--team { --p: 2.4rem; }
}

/*** ---------- Tabs ---------- ***/
.wpb-tabs { 
    --p: 0 2rem; 
    --clr: var(--clr-text); 
    --bg-clr: transparent; 
    --br: .5rem;
    --border: .1rem solid transparent; 
    --active-clr: var(--clr-primary); 
    --active-bg-clr: #fff; 
    --active-border: .1rem solid var(--clr-border);

    display: grid; }
.wpb-tabs .wpb-tabs__header { display: flex; flex-wrap: wrap; position: relative; z-index: 1; margin-bottom: -0.1rem; }
.wpb-tabs .tab-button { font: inherit; display: inline-block; padding: var(--p); color: var(--clr); min-height: 4.3rem; background-color: var(--bg-clr); border-radius: var(--br) var(--br) 0 0; border: var(--border); text-align: center; text-decoration: none; vertical-align: middle; cursor: pointer; user-select: none; transition-duration: var(--ts-duration); transition-timing-function: var(--ts-function); transition-property: color, background-color, border-color; }
.wpb-tabs .tab-button.is-active { color: var(--active-clr); border-color: var(--active-clr); background-color: var(--active-bg-clr); border: var(--active-border); border-bottom: 1px solid transparent; }
.wpb-tabs .wpb-tabs__content { background-color: #fff; display: grid; border: .1rem solid var(--clr-border); border-radius: 0 0 var(--br) var(--br); }
.wpb-tabs .wpb-tabs__content .tab-pane { grid-column: 1/-1; grid-row: 1/-1; pointer-events: none; opacity: 0; transition: opacity var(--ts-25) ease; }
.wpb-tabs .wpb-tabs__content .tab-pane.is-active { pointer-events: all; opacity: 1; }
.wpb-tabs .wpb-tabs__content .tab-pane { padding: 2rem; }
.wpb-tabs .wpb-tabs__content .tab-pane > * + * { margin-top: 1em; }

.wpb-bg-clr--dark .wpb-tabs .tab-button { color: #fff; } 
.wpb-bg-clr--dark .wpb-tabs .tab-button.is-active { color: var(--active-clr); }

.wpb-tabs.wpb-tabs--secondary { --gc: 15rem 1fr; display: grid; grid-template-columns: var(--gc); align-items: start; }
.wpb-tabs.wpb-tabs--secondary .wpb-tabs__header { margin-bottom: 0; margin-right: -0.1rem; }
.wpb-tabs.wpb-tabs--secondary .tab-button { border-right: 0; margin: 0; width: 100%; border-radius: var(--br) 0 0 var(--br); } 
.wpb-tabs.wpb-tabs--secondary .tab-button.is-active { border: var(--active-border); border-right: 0; }
.wpb-tabs.wpb-tabs--secondary .wpb-tabs__content { border-radius: 0 var(--br) var(--br) 0; }



/*** ---------- Alignment ---------- ***/
.wpb-align-y__top .inner { -webkit-box-align: start; -ms-flex-align: start; align-items: start; }
.wpb-align-y__center .inner { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.wpb-align-y__bottom .inner { -webkit-box-align: end; -ms-flex-align: end; align-items: end; }

@media (min-width: 992px) {
    .wpb-align-left { order: -1; }
    .wpb-align-right { order: 999; }
}

/*** ---------- Badge ---------- ***/
.badge-group { display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: .5rem; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-bottom: 1.6rem; }
.badge { --fs: 1.3rem; --lh: 1; --p: .6rem 1.2rem; --clr: #fff; --bg-clr: var(--clr-secondary); --br: 2rem; --border: none; --box-shadow: none; --hover-clr: var(--clr); --hover-bg-clr: var(--bg-clr); --hover-border: var(--border); --hover-box-shadow: var(--box-shadow); display: inline-block; font-size: var(--fs); line-height: var(--lh); padding: var(--p); color: var(--clr); background-color: var(--bg-clr); border-radius: var(--br); border: var(--border); box-shadow: var(--box-shadow); text-align: center; text-decoration: none; vertical-align: middle; user-select: none; transition-duration: var(--ts-duration); transition-timing-function: var(--ts-function); transition-property: color, background-color, border-color, box-shadow; }
.badge:hover { color: var(--hover-clr); background-color: var(--hover-bg-clr); border: var(--hover-border); box-shadow: var(--hover-box-shadow); }
.badge.badge--outline { --clr: var(--clr-secondary-60); --bg-clr: transparent; border: 1px solid var(--clr-border); }
.badge.badge--primary { --clr: #fff; --bg-clr: var(--clr-primary); }
.badge.badge--white { --clr: var(--clr-secondary); --bg-clr: rgba(255, 255, 255, 1);  }
.badge.badge--blur { --clr: #fff; --bg-clr: rgba(255, 255, 255, 0.2); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }

/*** ---------- backdrop ---------- ***/
.wpb-backdrop { background-color: rgba(0,0,0,.35); position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 1010; opacity: 0; pointer-events: none; transition: opacity var(--ts-25) ease; }    
.wpb-backdrop.active { opacity: 1; pointer-events: all; }

/*** ---------- Breadcrumb ---------- ***/
.wpb-breadcrumbs { margin-bottom: .6rem; }
.wpb-breadcrumbs :is(span, a) { display: flex; align-items: center; color: inherit; text-decoration: none; font-size: 1.4rem; }
.wpb-breadcrumbs a:hover { text-decoration: underline }
.wpb-breadcrumbs .breadcrumb_last { font-weight: 500; }
.wpb-breadcrumbs > span { display: flex; column-gap: .8rem; }
.wpb-breadcrumbs ii--chevron-right { --w: .6rem; --h: 1rem; min-width: var(--w); }

/*** ---------- Social media ---------- ***/
.wpb-social-media {
    --br: .3rem;
    --clr: var(--clr-primary); 
    --bg-clr: var(--clr-primary-20); 
    --border: 1px solid var(--clr-border); 
    --box-shadow: none; 
    --hover-clr: #fff; 
    --hover-bg-clr: var(--clr-primary); 
    --hover-border: 1px solid var(--hover-bg-clr); 
    --hover-box-shadow: var(--box-shadow); 
    --focus-clr: var(--hover-clr); 
    --focus-bg-clr: var(--hover-bg-clr); 
    --focus-border: var(--hover-border); 
    --focus-box-shadow: var(--hover-box-shadow); 
    --active-clr: var(--focus-clr); 
    --active-bg-clr: var(--focus-bg-clr); 
    --active-border: var(--focus-border); 
    --active-box-shadow: var(--focus-box-shadow); 
}

.wpb-social-media { display: flex; flex-wrap: wrap; column-gap: 1.2rem; row-gap: 1.2rem; }
.wpb-social-media a { background-color: var(--bg-clr); text-decoration: none; width: 3.8rem; height: 3.8rem; display: inline-grid; place-items: center; transform: rotate(var(--glob-rotation)); border-radius: var(--br); border: var(--border); transition: background-color var(--ts-duration) ease, border var(--ts-duration) ease; }
.wpb-social-media a i { --clr: inherit; font-size: 1.6rem; transform: rotate(calc(-1 * var(--glob-rotation))); transition: color var(--ts-duration) ease; }
.wpb-social-media a:hover { background-color: var(--hover-bg-clr)!important; border: var(--hover-border)!important; box-shadow: var(--hover-box-shadow)!important; }
.wpb-social-media a:hover i { color: var(--hover-clr); }
.wpb-social-media a:focus { background-color: var(--focus-bg-clr)!important; border: var(--focus-border)!important; box-shadow: var(--focus-box-shadow)!important; }
.wpb-social-media a:focus i { color: var(--focus-clr); }
.wpb-social-media a:active { background-color: var(--active-bg-clr)!important; border: var(--active-border)!important; box-shadow: var(--active-box-shadow)!important; }
.wpb-social-media a:hover i { color: var(--active-clr); }

/*** ---------- Footer CTA ---------- ***/
.wpb-footer-cta { --p: 4.8rem; --border: 1px solid var(--clr-border); padding-block: var(--p); border-top: var(--border); overflow: hidden; }
.wpb-footer-cta .container{ --gap: 4rem; display: grid; gap: var(--gap); }

.wpb-footer-cta .wpb-person .wpb-person__image{ --size: 5.6rem !important; }
.wpb-footer-cta .wpb-person .wpb-person__text strong{ display: block; font-family: var(--font-heading); font-size: clamp(1.8rem, 2vw, 2.4rem); margin-bottom: .8rem; }
.wpb-footer-cta .wpb-person .wpb-person__text p{ font-size: clamp(1.4rem, 2vw, 1.6rem); }

.wpb-footer-cta .wpb-person:has(+ .wpb-newsletter){ padding-bottom: var(--gap); position: relative; gap: 0; }
.wpb-footer-cta .wpb-person:has(+ .wpb-newsletter)::before{ content: ''; position: absolute; bottom: 0; left: -50%; right: -50%; width: calc(100vw + 100%); border-bottom: var(--border); }

.wpb-footer-cta .wpb-image{ --br: 2rem; border-radius: var(--br); position: relative; right: -15rem; margin-top: -10rem; margin-bottom: -20rem; transform: rotate(var(--glob-rotation)); overflow: hidden; max-height: 40rem; z-index: -1; }
.wpb-footer-cta .wpb-image img{ position: relative; transform: rotate(calc(-1 * var(--glob-rotation))); top: -15rem; left: -20%; width: 140%; height: 120%; object-fit: cover; }

.wpb-newsletter{ max-width: 55rem; }
.wpb-newsletter .wpb-text{ margin-bottom: 2.4rem; }
.wpb-newsletter .wpb-text p{ font-size: clamp(1.5rem, 2vw, 2.4rem); color: var(--clr-secondary-60); line-height: 1; }
/* .wpb-newsletter form{ --offset: .5rem; --input-mh: calc(3.9rem + var(--offset)); position: relative; }
.wpb-newsletter form input[type="email"]{ --br: 5rem; --p: 0 2.8rem; }
.wpb-newsletter form button[type="submit"]{ --p: 0 1.8rem; font-size: 1.4rem; position: absolute; top: var(--offset); right: var(--offset); bottom: var(--offset); min-height: 3.4rem; font-weight: 400; } */

@media (min-width: 768px) {
    .wpb-newsletter form{ --offset: 1rem; --input-mh: calc(4.6rem + var(--offset)); }
    .wpb-newsletter form button[type="submit"]{ min-height: 3.6rem; }
}

@media (min-width: 992px) {
    .wpb-footer-cta { --p: 8rem; }
    .wpb-footer-cta .container{ --gc: 2; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); align-items: center; }

    .wpb-footer-cta .wpb-person:has(+ .wpb-newsletter){ padding-bottom: 0; padding-right: calc(var(--gap) - 2rem); border-right: var(--border); }
    .wpb-footer-cta .wpb-person:has(+ .wpb-newsletter)::before{ display: none; }

    .wpb-footer-cta .wpb-image{ --h: 60rem; position: absolute; right: -20rem; max-height: var(--h); height: var(--h); width: 25rem; margin: 0; }
    .wpb-footer-cta .wpb-image img{ top: 7rem; width: 85rem; height: auto; }
}
@media (min-width: 1200px) {
    .wpb-footer-cta { --p: 12rem; }
    .wpb-footer-cta .container{ --gap: 6rem; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)) 20rem; }
    .wpb-footer-cta .wpb-person{ gap: 2.6rem; }
    .wpb-footer-cta .wpb-image{ --h: 80rem; top: -15rem; right: -40rem; width: 57.5rem; }
    .wpb-footer-cta .wpb-image img{ top: -2.5rem; }
}
@media (min-width: 1400px) {
    .wpb-footer-cta .container{ --gap: 8rem; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)) 25rem; }
    .wpb-footer-cta .wpb-image{ right: -40rem; width: 67.5rem; }
}
@media (min-width: 1600px) {
    .wpb-footer-cta .wpb-image{ right: -30rem; }
}

/*** ---------- Footer ---------- ***/
.wpb-footer { margin-top: auto; border-top: 1px solid var(--clr-border); }   
.wpb-footer .wpb-footer__main { --p: 4rem; padding: var(--p) 0; }
.wpb-footer .wpb-footer__main .container { display: flex; flex-wrap: wrap; justify-content: space-between; column-gap: 2rem; row-gap: 2rem; }
.wpb-footer .wpb-footer__main .container .wpb-footer__menu {flex-basis: 100%;}

.wpb-footer .wpb-footer__seperator .container{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1.8rem; }

.wpb-footer .logo { display: flex; align-items: center; gap: 2rem; text-decoration: none; transition: opacity var(--ts-duration) ease; }
.wpb-footer .logo img { width: 5rem; height: auto; }
.wpb-footer .logo span{ font-size: 1.4rem; color: var(--clr-secondary-60); }
.wpb-footer .logo:hover{ opacity: .75; }

.wpb-footer .wpb-footer__menu {}
.wpb-footer .wpb-footer__menu .footer-menu__title { display: block; padding: 0 0 1.4rem 0; font-size: clamp(1.8rem, 2vw, 2.1rem); color: inherit; text-decoration: none; text-decoration: none; font-weight: bold; line-height: 1; }
.wpb-footer .wpb-footer__menu ul { list-style: none; }
.wpb-footer .wpb-footer__menu ul li a{ display: block; text-decoration: none; font-size: clamp(1.4rem, 1.5vw, 1.6rem); padding-block: .15em; color: var(--clr-secondary-80); width: fit-content; transition: color var(--ts-duration) ease; }
.wpb-footer .wpb-footer__menu ul li a:hover{ color: var(--clr-primary); }

.wpb-footer .wpb-footer__bottom { --p: 3.2rem; padding: var(--p) 0; }
.wpb-footer .wpb-footer__bottom .container { display: flex; flex-direction: column; justify-content: space-between; align-items: center; column-gap: 3.2rem; row-gap: 3.2rem; }
.wpb-footer .wpb-footer__bottom .container .wpb-footer__bottom-logos{ display: flex; gap: 1.2rem; }
.wpb-footer .wpb-footer__bottom .container .wpb-footer__bottom-logos img{ height: 2rem; max-width: 8rem; align-items: center; object-fit: contain; }
.wpb-footer .wpb-footer__bottom .wpb-footer__sub-links { --fs: 1.2rem; font-size: var(--fs); text-align: center; display: flex; flex-wrap: wrap; column-gap: 1.6rem;  }
.wpb-footer .wpb-footer__bottom .wpb-footer__sub-links * { color: var(--clr-secondary-60); display: flex; align-items: center; column-gap: 1.6rem; text-decoration: none; transition: color var(--ts-duration) ease; }
.wpb-footer .wpb-footer__bottom .wpb-footer__sub-links *:hover { color: var(--clr-secondary); }


@media (width < 768px) {
    .wpb-footer .wpb-footer__bottom .container .wpb-footer__bottom-logos { order: -1; }
}

@media (min-width: 576px) {
    .wpb-footer .wpb-footer__main {  }
    .wpb-footer .wpb-footer__main .container .wpb-footer__menu {flex-basis: calc(50% - 1rem);}
}
@media (min-width: 768px) {
    .wpb-footer .wpb-footer__main { --p: 6.4rem; }
    .wpb-footer .wpb-footer__menu ul li a{ padding-block: .3em; }

    .wpb-footer .wpb-footer__bottom .container { flex-direction: row; }
    
    .wpb-footer .wpb-footer__seperator .container > *{ background-color: #fff; }
    .wpb-footer .wpb-footer__seperator .container::before{ content: ''; position: absolute; left: var(--p); right: var(--p); height: .1rem; margin: auto; background-color: var(--clr-border); z-index: -1; }
    .wpb-footer .wpb-footer__seperator .container > *:first-child{ padding-right: 4.8rem; }
    .wpb-footer .wpb-footer__seperator .container > *:last-child{ padding-left: 3.4rem; }

    .wpb-footer .wpb-footer__bottom .wpb-footer__sub-links { --fs: 1.3rem; }
    .wpb-footer .wpb-footer__bottom .wpb-footer__sub-links * + *::before { content: '|'; font-size: 1.1rem; }
}
@media (min-width: 992px) {
    .wpb-footer .wpb-footer__main { --p: 8rem;  }
    .wpb-footer .wpb-footer__main .container .wpb-footer__menu {flex-basis: auto;}
    .wpb-footer .wpb-footer__menu .footer-menu__title { padding: 0 0 2.8rem 0; }
    .wpb-footer .wpb-footer__bottom { --p: 5.4rem; padding-bottom: calc(var(--p) + 1rem); }

}
@media (min-width: 1200px) {
    .wpb-footer .wpb-footer__main { --p: 10rem; padding-bottom: 8rem; }
}

/*** ---------- Teammember Snippet ---------- ***/
.wpb-person {}
.wpb-person.wpb-person--full {}
.wpb-person.wpb-person--small {}

/* .wpb-text > p{ font-size: clamp(1.8rem, 2vw, 2.8rem); line-height: 1.4; color: var(--clr-secondary); } */
.wpb-person { --mt: 3.6rem; position: relative;}
.wpb-person .wpb-person__image-label{ --bg-clr: var(--clr-primary); }
.wpb-person .wpb-person__function { position: absolute; left: 6.4rem; bottom: 0.8rem; font-size: 1.4rem; text-wrap: nowrap;}

/*** ---------- USP Snippet ---------- ***/
.wpb-usp { --gc: repeat(auto-fit, minmax(20rem, 1fr)); --gap: 2.2rem; --p: 2rem 4rem; --bg: none; --b: 1px solid var(--clr-border); --br: .5rem; }
.wpb-usp .inner { display: grid; grid-template-columns: var(--gc); -ms-grid-columns: var(--gc); gap: var(--gap); }
.wpb-usp .wpb-usp-item i{ --w: 5rem; --h: 5rem; --clr: var(); }
.wpb-usp .wpb-usp-item{ display: flex; flex-direction: column; gap: 2rem; justify-content: center; align-items: center; text-align: center; background-color: var(--bg); padding: var(--p); border: var(--b); border-radius: var(--br); }

@media (min-width: 992px) {
    .wpb-usp.full-width { grid-column: span 2; }
}

/*** ---------- Modal ---------- ***/
.modal { --br: .8rem; --p: 2rem; --backdrop-clr: rgba(0,0,0,.45); --border: 1px solid var(--clr-border); position: fixed; top: 0; right: 0; bottom: 0; left: 0; opacity: 0; pointer-events: none; padding: 2rem; background-color: var(--backdrop-clr); display: none; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; transition: opacity var(--ts-duration) ease-in-out; z-index: 1090; }
.modal.show { display: flex; opacity: 1; pointer-events: all; }
.modal.show .modal-dialog { transform: translateY(0); }
.modal .modal-dialog { display: flex; flex-direction: column; border-radius: var(--br); width: 100%; max-width: 74rem; height: auto; max-height: 80vh; transform: translateY(5rem); transition: transform var(--ts-25) ease; background-color: #fff; overflow: hidden; }
.modal.modal--small .modal-dialog { max-width: 60rem; max-height: 60rem; }
.modal.modal--large .modal-dialog { max-width: 100rem; max-height: 60rem; }
.modal.modal--fullscreen { padding: 0; }
.modal.modal--fullscreen .modal-dialog { height: 100%; max-height: 100%; max-width: 100%; border-radius: 0; }
.modal .modal-dialog .modal-dialog__header { display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; align-items: center; padding: var(--p); padding-block: 2.4rem !important; background-color: #fff; font-family: inherit; border-bottom: var(--border); }
.modal .modal-dialog .modal-dialog__header .modal-title { font-size: 2rem; margin: 0; }
.modal .modal-dialog .modal-dialog__header .btn { min-height: 3.4rem !important; }
.modal .modal-dialog .modal-dialog__header p { margin: 0; font-size: 1.6rem; line-height: 1.6rem; }
.modal .modal-dialog .modal-dialog__body { background-color: #fff; padding: var(--p); overflow-y: auto; overflow-x: hidden; }
.modal .modal-dialog .modal-dialog__body:has(form#wux-filters){ padding: 0; }
.modal .modal-dialog .modal-dialog__body form#wux-filters .wf-filter-group{ padding: 2rem var(--p); }
.modal .modal-dialog .modal-dialog__body form#wux-filters .wf-filter-group  + .wf-filter-group { border-top: var(--border); }
.modal .modal-dialog .modal-dialog__footer { display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; gap: 2rem; border-top: var(--border); background-color: #fff; padding: var(--p); z-index: 2; margin-top: auto; }
.modal.modal--filter .modal-dialog__footer .btn{ min-height: 5.3rem; font-size: clamp(1.4rem, 1.5vw, 1.8rem); }
.modal.modal--filter .modal-dialog__footer .btn.btn--wide{ width: 100%; }

@media (min-width: 576px) {
    .modal.modal--fullscreen { --p: 2rem calc((100% - 540px) / 2 + 2rem); }
}

@media (min-width: 768px) {
    .modal.modal--fullscreen { --p: 2rem; }
    .modal.modal--fullscreen .modal-dialog { max-width: 64rem; height: auto; max-height: 80vh; border-radius: var(--br); }
}

@media (min-width: 992px) {
    .modal { --p: 3.2rem; }
    .modal.modal--fullscreen { --p: 3.2rem; }
}

/*** ---------- Tooltips ---------- ***/
.wpb-tooltip { --bg: rgb( 255,255,255); position: absolute; pointer-events: none; opacity: 0; background-color: var(--bg); color: inherit; font-size: 1.3rem; line-height: 2rem; padding: .5rem 1rem; border-radius: .5rem; z-index: 9999; box-shadow: 0 0 .75rem .25rem rgba(0,0,0,.1); }
.wpb-tooltip::after { content: ''; position: absolute; width: 0; height: 0; border-style: solid; border-width: 0 .5rem .5rem .5rem; border-color: transparent transparent var(--bg) transparent; bottom: 100%; transform: translateX(-50%); left: 50%; }
.wpb-tooltip.wpb-tooltip--left::after { border-width: .7rem 0 .7rem .7rem; border-color: transparent transparent transparent var(--bg); top: 50%; transform: translateY(-50%); left: calc(100% - 1px); }
.wpb-tooltip.wpb-tooltip--right::after { border-width: .7rem .7rem .7rem 0; border-color: transparent var(--bg) transparent transparent; top: 50%; transform: translateY(-50%); right: calc(100% - 1px); left: auto; }
.wpb-tooltip.wpb-tooltip--top::after { border-width:  .5rem .5rem 0 .5rem; border-color: var(--bg) transparent transparent transparent; top: 100%; transform: translateX(-50%); left: 50%; }
.wpb-tooltip.show { opacity: 1; }

/*** ---------- Dropdowns ---------- ***/
.wpb-dropdown { position: relative; }
.wpb-dropdown .wpb-dropdown__menu { opacity: 0; pointer-events: none; min-width: 10rem; border-radius: .5rem; position: absolute; top: calc(100% + .5rem); left: 0; background-color: #fff; box-shadow: 0 0.5rem 0.5rem rgb(21, 47, 51, .1); border: 1px solid rgba(var(--clr-border)); padding: 1.25rem; transition: opacity var(--ts-duration) ease-in-out; }
.wpb-dropdown .wpb-dropdown__menu-right { left: auto; right: 0; }
.wpb-dropdown .wpb-dropdown__menu ul { list-style: none; }
.wpb-dropdown .wpb-dropdown__menu ul .dropdown-item { white-space: nowrap; display: flex; gap: .5rem; text-decoration: none; }
.wpb-dropdown.wpb-dropdown__left .wpb-dropdown__menu { top: 0; right: calc(100% + .5rem); left: auto; } 
.wpb-dropdown.wpb-dropdown__left .wpb-dropdown__toggle i { order: -1; transform: rotate(90deg); }
.wpb-dropdown.wpb-dropdown__right .wpb-dropdown__menu { top: 0; left: calc(100% + .5rem); right: auto; } 
.wpb-dropdown.wpb-dropdown__right .wpb-dropdown__toggle i { order: 9999; transform: rotate(-90deg); }
.wpb-dropdown .wpb-dropdown__toggle[aria-expanded="true"] + .wpb-dropdown__menu { opacity: 1; pointer-events: all; z-index: 850; }  

/*** ---------- Tables ---------- ***/
.wpb-table { overflow-x: auto; }
table { 
    --clr: var(--clr-text); 
    --border-clr: var(--clr-border); 
    --accent-bg-clr: transparent; 
    --hover-clr: var(--clr-text); 
    --hover-bg-clr: rgba(0, 0, 0, 0.075); 
    --border-width: .1rem; 
    
    border-collapse: collapse; width: 100%; color: var(--clr); vertical-align: top; border-color: var(--border-clr); border-spacing: 0; margin: 0 0 1.41575em; }
table td, table th { padding: 1em 1.41575em; text-align: left; vertical-align: top; border-color: inherit; border-style: solid; border-width: 0; border-bottom-width: var(--border-width); }
table thead { vertical-align: bottom; }

/*** ---------- Filters ---------- ***/
.wpb-toolbar{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; margin-bottom: 2.8rem; gap: 2rem; }
.wpb-toolbar h3{ font-size: clamp(1.6rem, 2vw, 2.4rem); }
.wpb-toolbar .wpb-toolbar__count{ font-size: clamp(1.3rem, 1.5vw, 1.5rem); color: var(--clr-secondary-80); font-weight: 700; }
.wpb-toolbar .wpb-toolbar__filters{ display: flex; align-items: center; gap: 3rem; flex-wrap: wrap; }

#wux-active-filters{ display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
#wux-active-filters span{ display: flex; align-items: center; gap: .5rem; font-size: 1.4rem; border: 2px solid var(--clr-border); color: var(--clr-secondary); font-weight: 700; padding: .6rem 1.2rem; border-radius: 5rem; cursor: pointer; transition: border var(--ts-25) ease; }
#wux-active-filters span i{ color: var(--clr-secondary-40); font-size: 1.6rem; transition: color var(--ts-25) ease; }
#wux-active-filters span:hover{ border-color: rgb(var(--clr-secondary-rgb), .3); }
#wux-active-filters span:hover i{ color: var(--clr-danger); }

.wf-filter-group--multiselect .wf-filter-group__body{ display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; }
.wf-filter-group--multiselect > label{ font-family: var(--font-heading); font-weight: 700; font-size: 1.6rem; }
.wf-filter-group--multiselect .input-controller{ --br: 5rem; --border: 2px solid var(--clr-border); border-radius: var(--br); border: var(--border); font-size: 1.6rem; font-weight: 700; cursor: pointer; position: relative; min-height: 4.4rem; padding: 0 2.2rem; display: flex; align-items: center; transition: color var(--ts-duration) ease, border var(--ts-duration) ease; }
.wf-filter-group--multiselect .input-controller i{ width: 0; opacity: 0; transition: width var(--ts-duration) ease, opacity var(--ts-duration) ease, margin var(--ts-duration) ease; }
.wf-filter-group--multiselect .input-controller input[type='checkbox']{ width: 0px; opacity: 0; padding: 0; }
.wf-filter-group--multiselect .input-controller:hover{ border-color: rgb(var(--clr-secondary-rgb), .3); }
.wf-filter-group--multiselect .input-controller:has(input[type='checkbox']:checked){ border-color: var(--clr-primary); color: var(--clr-primary); }
.wf-filter-group--multiselect .input-controller:has(input[type='checkbox']:checked) i{ width: 1.6rem; opacity: 1; margin-right: 1rem; }

/*** ---------- Pagination ---------- ***/
.wpb-pagination { --p: 0; --clr: var(--clr-text); --bg-clr: #fff; --border: 1px solid transparent; --br: 4rem; --hover-clr: #fff; --hover-bg-clr: var(--clr-primary); --hover-border: var(--border); --active-color: var(--hover-clr); --active-bg-clr: var(--hover-bg-clr); --active-border: var(--hover-border); min-height: 5.1rem; position: relative; }
.wpb-pagination .has-prev-next { font-size: clamp(1.2rem, 2vw, 1.5rem); padding-left: 3.8rem; padding-right: 3.8rem; line-height: 5.1rem; } 
.wpb-pagination ul { --gap: .25rem; list-style: none; display: flex; justify-content: center; flex-wrap: wrap; gap: var(--gap); padding-top: 3.2rem; }
.wpb-pagination li > * i { --w: 1.5rem; --h: 1.5rem; pointer-events: none; }
.wpb-pagination li > *:hover i { --clr: var(--hover-clr) }
.wpb-pagination li :is(> *:hover, > *:focus, > *:active) { color: var(--hover-clr); background-color: var(--hover-bg-clr); border: var(--hover-border); }
.wpb-pagination li > *.current { color: var(--active-color); background-color: var(--active-bg-clr); border: var(--active-border); }
.wpb-pagination li :is(.page-number__prev, .page-number__next){ 
    --size: 5.1rem; --br: .5rem; display: flex; justify-content: center; align-items: center; width: var(--size); height: var(--size); min-width: var(--size); min-height: var(--size); text-decoration: none; border-radius: var(--br); background-color: var(--clr-moss); cursor: pointer; 
    font-size: 2rem; transform: rotate(var(--glob-rotation)); transition: background var(--ts-duration) var(--cb--smooth), color var(--ts-duration) var(--cb--smooth), transform var(--ts-duration) var(--cb--smooth);
}
.wpb-pagination li :is(.page-number__prev, .page-number__next) i{ transform: rotate(calc(-1 * var(--glob-rotation)));transition: transform var(--ts-duration) var(--cb--smooth); }
.wpb-pagination li :is(.page-number__prev, .page-number__next):hover{ background-color: var(--clr-primary); color: #fff; transform: rotate(0); }
.wpb-pagination li :is(.page-number__prev, .page-number__next):hover i{ transform: rotate(0); }
.wpb-pagination li .page-number__prev { position: absolute; left: 0; }
.wpb-pagination li .page-number__next { position: absolute; right: 0; }
.wpb-pagination li:has([data-page="…"]),
.wpb-pagination li [data-page="…"] { pointer-events: none!important; }


/*** ---------- Offcanvas ---------- ***/
.wpb-offcanvas { --p: 1.8rem; width: 100%; position: fixed; top: 0; right: 0; bottom: 0; left: auto; flex-direction: column; z-index: 9999; background-color: #fff; transform: translate3d(100%, 0, 0); transition: transform var(--ts-35) ease; }
.wpb-offcanvas.wpb-offcanvas--left { transform: translate3d(-100%, 0, 0); top: 0; right: auto; bottom: 0; left: 0; }
.wpb-offcanvas.is-active { pointer-events: all; transform: translate3d(0%, 0, 0); }
.wpb-offcanvas .wpb-offcanvas__header { display: flex; justify-content: space-between; align-items: center; padding: var(--p); }
.wpb-offcanvas .wpb-offcanvas__body { padding: var(--p); flex-grow: 1; overflow-y: auto; }
.wpb-offcanvas .wpb-offcanvas__footer { display: grid; padding: var(--p); }
.btn[data-target="#productFilters"] { position: fixed; bottom: 2rem; left: 50%; transform: translateX(-50%); z-index: 600; }

.wpb-offcanvas.wpb-offcanvas--filters form > * + * { margin-top: 2rem; }

@media (min-width: 576px) {
    .wpb-offcanvas { max-width: 45rem; }
}

@media (min-width: 992px) {
    .wpb-offcanvas.wpb-offcanvas--filters { --p: 0; display: flex!important; position: static; transform: none; }
    .wpb-offcanvas.wpb-offcanvas--filters .wpb-offcanvas__header,
    .wpb-offcanvas.wpb-offcanvas--filters .wpb-offcanvas__footer { display: none; }
    .btn[data-target="#productFilters"] { display: none; }
}

/* Contact links */
.contact-link { display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; }
.contact-link span{ font-size: 1.2rem; color: var(--clr-secondary-60); width: 100%; margin-bottom: .5rem; }
.contact-link strong { max-width: 25rem; font-size: clamp(1.4rem, 1.5vw, 1.6rem); display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 1rem; width: 100%; line-height: 1; transition: color var(--ts-duration) ease; }

a.contact-link:hover strong{ color: var(--clr-primary); }
.contact-link + .contact-link{ margin-top: 2rem; }

.contact-link .contact-link__text{ display: inline-grid; }
.contact-link .contact-link__side{ display: flex; align-items: center; gap: 1rem; font-size: 1.6rem; font-weight: 700; color: var(--clr-primary);; }
.contact-link .contact-link__side .wpb-icon{ --clr: var(--clr-primary); }
.contact-link:has(.contact-link__side){ justify-content: space-between; align-items: center; gap: 1rem; }


/*** ---------- Archive ---------- ***/
.wpb-archive { --gc: 1; --gap: 2.4rem; }
.wpb-archive .container{ display: grid; gap: var(--gap); row-gap: 4.8rem; }
.wpb-archive .wpb-archive__content .inner{ display: grid; grid-template-columns: repeat(auto-fill, minmax(30rem, 1fr)); gap: 2.4rem; }

.wpb-sidebar{ position: sticky; top: 2.4rem; }
.wpb-sidebar .wpb-sidebar__label{ --fs: clamp(1.6rem, 3vw, 2.4rem); padding-bottom: 2.4rem; border-bottom: 1px solid var(--clr-border); }

@media (min-width: 768px) {
    .wpb-archive { --gap: 4rem; }
    .wpb-archive .container{ grid-template-columns: 1fr 27.5rem; }
}
@media (min-width: 1200px) {
    .wpb-archive { --gap: 6.4rem; }
    .wpb-archive .container{ grid-template-columns: 1fr 40rem; }
    .wpb-archive .wpb-archive__content .inner{ grid-template-columns: repeat(auto-fill, minmax(35rem, 1fr)); gap: 5.2rem; }
}
@media (min-width: 1400px) {
    .wpb-archive { --gap: 10rem; }
}

/*** ---------- Single ---------- ***/
.wpb-related--posts { --gc: 1; --gap: 1.8rem; }
.wpb-related--posts .container.container--articles { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); gap: var(--gap); }

.wpb-content .container { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 4.8rem; }


@media (min-width: 768px) {
    .wpb-related--posts { --gc: 2; }
}

@media (min-width: 992px) {
    .wpb-related--posts { --gc: 3; }  

    .wpb-content .container { grid-template-columns: minmax(0, 1fr) minmax(0, 30rem); column-gap: 4.8rem; }
}
@media (min-width: 1200px) {
    .wpb-related--posts { --gap: 3.2rem; }  
    .wpb-content .container { grid-template-columns: minmax(0, 1fr) minmax(0, 40rem); column-gap: 7.2rem; }
}
@media (min-width: 1400px) {
    .wpb-content .container { column-gap: 10rem; }
}

.social-share-icons { display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: .25rem; padding-top: 1.6rem; }

/*** ---------- Aspect ratio ---------- ***/
.wpb-ratio { --wpb-aspect-ratio: 100%; position: relative; width: 100%; }
.wpb-ratio::before { display: block; padding-top: var(--wpb-aspect-ratio); content: ""; }
.wpb-ratio--21x9 { --wpb-aspect-ratio: 42.8571428571%; }
.wpb-ratio--16x9 { --wpb-aspect-ratio: 56.25%; }
.wpb-ratio--1x1 { --wpb-aspect-ratio: 100%; }
.wpb-ratio--4x3 { --wpb-aspect-ratio: 75%; }
.wpb-ratio--3x4 { --wpb-aspect-ratio: 125%; }

.wpb-ratio > * { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.wpb-ratio > img { object-fit: cover; } 

/*** ---------- Alerts ---------- ***/
.wpb-alert { --clr: #fff; --bg: var(--clr-primary); --br: 1.6rem; display: block; padding: 1.6rem; color: var(--clr); background-color: var(--bg); border-radius: var(--br); }
.wpb-alert.wpb-alert-icon { display: grid; grid-template-columns: 2.8rem 1fr; gap: 1.6rem; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.wpb-alert.wpb-alert-icon i-wrapper { width: 2.8rem; height: 2.8rem; }
.wpb-alert.wpb-alert-icon i-wrapper i { --w: 2.8rem; --h: 2.8rem; }
.wpb-alert *:not(.btn) { color: inherit; }

.wpb-alert.wpb-alert--info { --border: 1px solid rgb(0, 143, 214); --bg: rgb(0, 143, 214); }
.wpb-alert.wpb-alert--warning { --border: 1px solid rgb(194, 100, 47); --bg: rgb(194, 100, 47); }
.wpb-alert.wpb-alert--danger { --border: 1px solid rgb(216, 19, 19); --bg: rgb(216, 19, 19); }
.wpb-alert.wpb-alert--success { --border: 1px solid rgb(78, 168, 69); --bg: rgb(78, 168, 69); }

/*** ---------- Page: Search ---------- ***/
.wpb-search-results { --gc: 1; --gap: 2.2rem; }
.wpb-search-results .wpb-text { margin-bottom: 3.2rem; }
.wpb-search-results .inner { display: grid; gap: var(--gap); grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); }
.wpb-search-results .result { text-decoration: none; display: flex; gap: .5rem; padding: .75rem 1.25rem; margin-bottom: -.1rem; transition: background-color var(--ts-duration) ease-in-out; }
.wpb-search-results .result .info { display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; gap: .5rem; }
.wpb-search-results .result .info i { margin-left: auto; }
.wpb-search-results .result { border: 1px solid var(--clr-border); }
.wpb-search-results .result:hover { background-color: #f2f2f2; }
.wpb-search-results :is(.result:first-child, .no-result) { margin-top: 1.6rem; }

/*** ---------- Wux Advanced Search ---------- ***/
.wpb-search-results { display: grid; gap: 2.2rem; position: relative; }
.wpb-search-results h3 { --fs: 2rem; padding-bottom: .8rem; }
.wpb-search-results.--loading { min-height: 6.4rem; margin-top: 2.2rem; }
.wpb-search-results.--loading::after { content: ''; --src: url('/app/themes/wuxnl-theme/assets/icons/default/icon_loading.svg'); --clr: var(--clr-text); --w: 2rem; --h: 2rem; -webkit-mask-image: var(--src); mask-image: var(--src); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; display: inline-block; width: var(--w); height: var(--h); background-color: var(--clr); position: absolute; top: calc(50% - (var(--h) / 2)); left: calc(50% - (var(--w) / 2)); animation: rotate 0.5s linear infinite; }
.wpb-search-results.--loading .result-section { opacity: .5; }
.wpb-search-results .result-section:nth-child(1) { margin-top: 2.2rem; }
.wpb-search-results.--loading .result-section:nth-child(1) { margin-top: 0; }
.wpb-search-results .result-section .results:is(.posts, .terms) { display: grid; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); gap: .8rem; }
.wpb-search-results .no-result-section { border: 1px solid var(--clr-border); padding: 2.2rem; border-radius: 1rem; margin-top: 2.2rem; }
.wpb-search-results.--loading .no-result-section { margin-top: 0; }

@media (min-width: 768px) {
    .wpb-search-results .result-section .results:is(.posts, .terms) { grid-template-columns: repeat(auto-fill, minmax(25rem, 1fr)); }
}

/* Add to cart/bookmark animation */
.add-success, .saved-success { position: fixed; top: 3.2rem; right: 3.2rem; background-color: var(--clr-primary); z-index: 9999; width: 4.4rem; height: 4.4rem; border-radius: 50%; display: inline-grid; place-items: center; transform: scale(0); animation: scale .5s cubic-bezier(0,0,.5,1.5) forwards, transform .5s forwards; animation-delay: 0s, 1.6s; } 
.add-success i, .saved-success i { --clr: #fff; }
.add-success:after, .saved-success:after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; border-radius: 50%; animation: pulse 1s forwards; animation-delay: .6s; }

@keyframes rotate {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes scale {
    0% { transform: scale(0); }
    100% { transform: scale(100%); }
}

@keyframes transform {
    0% { transform: scale(100%) translateY(0px); opacity: 1; }
    100% { transform: scale(100%)  translateY(-10rem); opacity: 0; }
}

@keyframes pulse {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 var(--clr-primary); opacity: .7; }
    70% { transform: scale(1); box-shadow: 0 0 0 1.5rem var(--clr-primary); opacity: 0; }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 var(--clr-primary); opacity: 0; }
}

/*** ---------- Wux Bulk Pricing ---------- ***/
.wpb-bp-overview { margin-bottom: 2.2rem; }
.wpb-bp-overview .wpb-bp-rules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.wpb-bp-overview .wpb-bp-rules .wpb-bp-rule { cursor: pointer; border: 1px solid var(--clr-border); border-radius: .5rem; display: grid;}
.wpb-bp-overview .wpb-bp-rules .wpb-bp-rule > span { font-size: 1.6rem; line-height: 1; padding: 1rem 1.5rem; display: flex; gap: .5rem; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.wpb-bp-overview .wpb-bp-rules .wpb-bp-rule > span strong { font-size: 1.8rem; }
.wpb-bp-overview .wpb-bp-rules .wpb-bp-rule > span small { margin-left: auto; font-size: 1.2rem; line-height: 1; }
.wpb-bp-overview .wpb-bp-rules .wpb-bp-rule > span small * { font-size: inherit; line-height: inherit; }
.wpb-bp-overview .wpb-bp-rules .wpb-bp-rule > span + * { border-top: 1px solid var(--clr-border); }

@media (min-width: 992px) {
    .wpb-bp-overview { margin-bottom: 3.2rem; }
}

/*** ---------- Blaze slider ---------- ***/
.blaze-slider{ position: relative; }
.blaze-slider .blaze-pagination-container { --p: 1.8rem 0 0 0; padding: var(--p); }
.blaze-slider .blaze-pagination-container .blaze-pagination { display: flex; align-items: center; }
.blaze-slider .blaze-pagination-container .blaze-pagination button { --size: .3rem; --br: 0px; --bg: var(--clr-border); cursor: pointer; width: 100%; height: var(--size); border-radius: var(--br); background: var(--bg); border: none; text-indent: -9999rem; overflow: clip; transition: background var(--ts-duration) var(--ts-function); }
.blaze-slider .blaze-pagination-container .blaze-pagination button.active { --bg: var(--clr-primary); }
.blaze-slider .blaze-nav-container { --p: 1.8rem 0 0 0; padding: var(--p); transform: rotate(var(--glob-rotation)); }
.blaze-slider .blaze-nav-container > button { 
    --size: 6.4rem; --inner-clr: var(--clr-secondary); --hover-inner-clr: #fff; --bg-clr: var(--clr-moss); --hover-bg-clr: var(--clr-primary); --border: 1px solid transparent; --hover-border: 1px solid var(--hover-bg-clr); --br: .5rem; 
    width: var(--size); min-width: var(--size); height: var(--size); min-height: var(--size); background: var(--bg-clr); border: var(--border); border-radius: var(--br); cursor: pointer; transition: background var(--ts-duration) var(--ts-function), border var(--ts-duration) var(--ts-function);  
}
.blaze-slider .blaze-nav-container > button:hover{ background: var(--hover-bg-clr); border: var(--hover-border); }
.blaze-slider .blaze-nav-container > button i{ font-size: 2.2rem; color: var(--inner-clr); transform: rotate(calc(-1 * var(--glob-rotation))); } 
.blaze-slider .blaze-nav-container > button:hover i{ color: var(--hover-inner-clr); }

.blaze-slider.start .blaze-nav-container .blaze-prev, .blaze-slider.end .blaze-nav-container .blaze-next{ pointer-events: none; }
.blaze-slider.static .blaze-nav-container{ display: none; }

.blaze-slider.blaze-slider--gallery .blaze-track img{ height: 90dvh; object-fit: cover; }
.blaze-slider.blaze-slider--gallery .blaze-nav-container{ position: absolute; right: 5rem; bottom: 8rem; }
.blaze-slider.blaze-slider--gallery .blaze-nav-container > button{ --bg-clr: rgba(255, 255, 255, 0.2); --inner-clr: #fff; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }

.blaze-slider.blaze-slider--featured-projects{ overflow: hidden; }
.blaze-slider.blaze-slider--featured-projects .blaze-track{ position: relative !important; transform: none !important; }
.blaze-slider.blaze-slider--featured-projects .blaze-track::before{ content: ''; position: absolute; top: 0; bottom: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0.6)); z-index: 1; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project:not(:first-child){ position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project{ display: flex; align-items: end; height: 52rem; position: relative; pointer-events: none; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project img{ position: absolute; top: 0; bottom: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: transform var(--ts-duration) ease, opacity var(--ts-50) var(--cb--smooth); }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project.active-slide{ pointer-events: all; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project.active-slide img{ opacity: 1; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project.active-slide .blaze-track__project__inner{ opacity: 1; transform: translateY(0); }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project:has(.blaze-track__project__inner a:hover) img{ transform: scale(1.05); }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project .container{ z-index: 2; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project__inner{ --p: 3.6rem; transform: translateY(2rem); max-width: 50rem; padding-block: var(--p); opacity: 0; position: relative; transition: opacity var(--ts-50) ease, transform var(--ts-50) ease; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project__inner .badge-group{ margin-bottom: 2.8rem; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project__inner a{ text-decoration: none; width: fit-content; }
.blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project__inner h2{ --fs: clamp(2.8rem, 4vw, 5.6rem); color: #ffff; font-weight: 400; transition: color var(--ts-duration) ease; }
.blaze-slider.blaze-slider--featured-projects .blaze-nav-container{ display: none; }
.blaze-slider.blaze-slider--featured-projects .blaze-nav-container > button{ --bg-clr: rgba(255, 255, 255, 0.2); --inner-clr: #fff; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }

.blaze-slider.blaze-slider--projects .blaze-nav-container{ width: fit-content; }

@media (min-width: 768px) {
    .blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project{ height: 68rem; }
    .blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project__inner{ --p: 7.2rem; }
    .blaze-slider.blaze-slider--featured-projects .blaze-nav-container{ display: block; bottom: 7.2rem; position: absolute; right: 5rem; }
    .blaze-slider .blaze-pagination-container { --p: 2.8rem 0 0 0; }
}
@media (min-width: 1200px) {
    .blaze-slider .blaze-pagination-container { --p: 4.8rem 0 0 0; }
    .blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project{ height: 86rem; }
    .blaze-slider.blaze-slider--featured-projects .blaze-track .blaze-track__project__inner{ --p: 10rem; max-width: 75rem; }
    .blaze-slider.blaze-slider--featured-projects .blaze-nav-container{ bottom: 10rem; }
}

/*** ---------- Temlate: Contact ---------- ***/
.wpb-contact .wpb-contact__inner { --br: 1rem; --p: 2.4rem; --border: 1px solid var(--clr-border); display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)); -webkit-box-align: start; -ms-flex-align: start; border-radius: var(--br); border: var(--border); align-items: start; overflow: hidden; }
.wpb-contact .wpb-contact__inner .wpb-contact__info__part{ padding: var(--p); }
.wpb-contact .wpb-contact__inner .wpb-contact__info__part + .wpb-contact__info__part{ border-top: var(--border); }
.wpb-contact .wpb-contact__inner .wpb-contact__info__part h2{ margin-top: 1rem; margin-bottom: 2rem; }

.wpb-contact :is( .wpb-contact__map, .wpb-contact__map img){ width: 100%; height: 100%; overflow: hidden; }
.wpb-contact .wpb-contact__map img{ object-fit: cover; transition: transform var(--ts-duration) ease; }

.wpb-contact .wpb-contact__inner:has(.contact-link--route:hover) .wpb-contact__map img{ transform: scale(1.2); }

@media (min-width: 768px) {
    .wpb-contact .wpb-contact__inner { grid-template-columns: minmax(0, 34rem) minmax(0, 1fr); }
}

@media (min-width: 1200px) {
    .wpb-contact .wpb-contact__inner { grid-template-columns:  minmax(0, 48rem) minmax(0, 1fr); }
    .wpb-contact .wpb-contact__inner { --p: 3rem 4rem; }
}