/*** 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; font-size: var(--fs); line-height: var(--lh); color: var(--clr-text); }
html { font-size: 10px; height: -webkit-fill-available; scroll-behavior: smooth; }
body { 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; }

/*** ---------- Utilities ---------- ***/
.d-none { display: none; }
.d-flex { display: flex; }
.d-flex--center { display: flex; justify-content: center; align-items: center; gap: .8rem; }
.d-flex--v-center { display: flex; align-items: center; gap: .8rem; }
.d-flex--h-center { display: flex; justify-content: center; gap: .8rem; }
.d-inline-flex { display: inline-flex; }
.d-grid { --gc: 1; display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); }

.align-start, .align-top { -webkit-box-align: start; -ms-flex-align: start; align-items: start; }
.align-center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.align-end, .align-bottom { -webkit-box-align: end; -ms-flex-align: end; align-items: end; }
.justify-start { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: start; }
.justify-center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.justify-end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: end; }
.justify-between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

.flex-wrap { flex-wrap: wrap; }
.flex-wrap-reverse { flex-wrap: wrap-reverse; }

.whitespace-nowrap { white-space: nowrap; }

.flex-column { flex-direction: column; }
.flex-row { flex-direction: row; }

/*** ----- Radius ----- ***/
.r-5 { border-radius: .5rem!important; }
.r-8 { border-radius: .8rem!important; }
.r-10 { border-radius: 1rem!important; }
.r-12 { border-radius: 1.2rem!important; }
.r-18 { border-radius: 1.8rem!important; }

/*** ----- Gutters ----- ***/
.g-8 { column-gap: .8rem!important; row-gap: .8rem!important; }
.gy-8 { row-gap: .8rem!important; }
.gx-8 { column-gap: .8rem!important; }

.g-10 { column-gap: 1rem!important; row-gap: 1rem!important; }
.gy-10 { row-gap: 1rem!important; }
.gx-10 { column-gap: 1rem!important; }

.g-16 { column-gap: 1.6rem!important; row-gap: 1.6rem!important; }
.gy-16 { row-gap: 1.6rem!important; }
.gx-16 { column-gap: 1.6rem!important; }

.g-20 { column-gap: 2rem!important; row-gap: 2rem!important; }
.gy-20 { row-gap: 2rem!important; }
.gx-20 { column-gap: 2rem!important; }

.g-24 { column-gap: 2.4rem!important; row-gap: 2.4rem!important; }
.gy-24 { row-gap: 2.4rem!important; }
.gx-24 { column-gap: 2.4rem!important; }

@media (min-width: 576px) {
    .g-sm-8 { column-gap: .8rem!important; row-gap: .8rem!important; }
    .g-sm-16 { column-gap: 1.6rem!important; row-gap: 1.6rem!important; }
    .g-sm-24 { column-gap: 2.4rem!important; row-gap: 2.4rem!important; }
}
@media (min-width: 768px) {
    .g-md-8 { column-gap: .8rem!important; row-gap: .8rem!important; }

    .g-md-16 { column-gap: 1.6rem!important; row-gap: 1.6rem!important; }
    .gy-md-16 { row-gap: 1.6rem!important; }
    .gx-md-16 { column-gap: 1.6rem!important; }

    .g-md-24 { column-gap: 2.4rem!important; row-gap: 2.4rem!important; }
    .gy-md-24 { row-gap: 2.4rem!important; }
    .gx-md-24 { column-gap: 2.4rem!important; }
    
    .g-md-32 { column-gap: 3.2rem!important; row-gap: 3.2rem!important; }
    .gy-md-32 { row-gap: 3.2rem!important; }
    .gx-md-32 { column-gap: 3.2rem!important; }
}
@media (min-width: 992px) {
    .g-lg-8 { column-gap: .8rem!important; row-gap: .8rem!important; }

    .g-lg-16 { column-gap: 1.6rem!important; row-gap: 1.6rem!important; }
    .g-lg-24 { column-gap: 2.4rem!important; row-gap: 2.4rem!important; }

    .g-lg-32 { column-gap: 3.2rem!important; row-gap: 3.2rem!important; }
    .gy-lg-32 { row-gap: 3.2rem!important; }
    .gx-lg-32 { column-gap: 3.2rem!important; }
}
@media (min-width: 1200px) {
    .g-xl-8 { column-gap: .8rem!important; row-gap: .8rem!important; }
    .g-xl-16 { column-gap: 1.6rem!important; row-gap: 1.6rem!important; }
    .g-xl-24 { column-gap: 2.4rem!important; row-gap: 2.4rem!important; }
    .g-xl-32 { column-gap: 3.2rem!important; row-gap: 3.2rem!important; }
}
@media (min-width: 1400px) {
    .g-xxl-8 { column-gap: .8rem!important; row-gap: .8rem!important; }
    .g-xxl-16 { column-gap: 1.6rem!important; row-gap: 1.6rem!important; }
    .g-xxl-24 { column-gap: 2.4rem!important; row-gap: 2.4rem!important; }
    .g-xxl-32 { column-gap: 3.2rem!important; row-gap: 3.2rem!important; }
}

/*** ----- Columns ----- ***/
.cols-1 { --gc: 1; }
.cols-2 { --gc: 2; }
.cols-3 { --gc: 3; }
.cols-4 { --gc: 4; }

@media (min-width: 576px) {
    .cols-sm-1 { --gc: 1; }
    .cols-sm-2 { --gc: 2; }
    .cols-sm-3 { --gc: 3; }
    .cols-sm-4 { --gc: 4; }
}
@media (min-width: 768px) {
    .cols-md-1 { --gc: 1; }
    .cols-md-2 { --gc: 2; }
    .cols-md-3 { --gc: 3; }
    .cols-md-4 { --gc: 4; }
}
@media (min-width: 992px) {
    .cols-lg-1 { --gc: 1; }
    .cols-lg-2 { --gc: 2; }
    .cols-lg-3 { --gc: 3; }
    .cols-lg-4 { --gc: 4; }
}
@media (min-width: 1200px) {
    .cols-xl-1 { --gc: 1; }
    .cols-xl-2 { --gc: 2; }
    .cols-xl-3 { --gc: 3; }
    .cols-xl-4 { --gc: 4; }
    .cols-xl-5 { --gc: 5; }
    .cols-xl-6 { --gc: 6; }
}
@media (min-width: 1400px) {
    .cols-xxl-1 { --gc: 1; }
    .cols-xxl-2 { --gc: 2; }
    .cols-xxl-3 { --gc: 3; }
    .cols-xxl-4 { --gc: 4; }
    .cols-xxl-5 { --gc: 5; }
    .cols-xxl-6 { --gc: 6; }

    .cols-xxl-1-58 { grid-template-columns: 1fr 58rem; }
}

/*** ----- Paddings ----- ***/
.p-0 { padding: 0rem!important; }
.pt-0 { padding-top: 0rem!important; }
.pe-0 { padding-right: 0rem!important; }
.pb-0 { padding-bottom: 0rem!important; }
.ps-0 { padding-left: 0rem!important; }
.px-0 { padding-left: 0rem!important; padding-right: 0rem!important; }
.py-0 { padding-top: 0rem!important; padding-bottom: 0rem!important;}

.p-8 { padding: .8rem; }
.pt-8 { padding-top: .8rem; }
.pe-8 { padding-right: .8rem; }
.pb-8 { padding-bottom: .8rem; }
.ps-8 { padding-left: .8rem; }
.px-8 { padding-left: .8rem; padding-right: .8rem }
.py-8 { padding-top: .8rem; margin-bottom: .8rem; }

.pt-10 { padding-top: 1rem; }
.pe-10 { padding-right: 1rem; }
.pb-10 { padding-bottom: 1rem; }
.ps-10 { padding-left: 1rem; }
.px-10 { padding-left: 1rem; padding-right: 1rem; }
.py-10 { padding-top: 1rem; padding-bottom: 1rem; }

.pt-12 { padding-top: 1.2rem; }
.pe-12 { padding-right: 1.2rem; }
.pb-12 { padding-bottom: 1.2rem; }
.ps-12 { padding-left: 1.2rem; }
.px-12 { padding-left: 1.2rem; padding-right: 1.2rem; }
.py-12 { padding-top: 1.2rem; padding-bottom: 1.2rem; }

.pt-14 { padding-top: 1.4rem; }
.pr-14 { padding-right: 1.4rem; }
.pb-14 { padding-bottom: 1.4rem; }
.ps-14 { padding-left: 1.4rem; }
.px-14 { padding-left: 1.4rem; padding-right: 1.4rem; }
.py-14 { padding-top: 1.4rem; padding-bottom: 1.4rem; }

.pt-16 { padding-top: 1.6rem; }
.pe-16 { padding-right: 1.6rem; }
.pb-16 { padding-bottom: 1.6rem; }
.ps-16 { padding-left: 1.6rem; }
.px-16 { padding-left: 1.6rem; padding-right: 1.6rem; }
.py-16 { padding-top: 1.6rem; padding-bottom: 1.6rem; }

.pt-20 { padding-top: 2rem; }
.pe-20 { padding-right: 2rem; }
.pb-20 { padding-bottom: 2rem; }
.ps-20 { padding-left: 2rem; }
.px-20 { padding-left: 2rem; padding-right: 2rem; }
.py-20 { padding-top: 2rem; padding-bottom: 2rem; }

.pt-24 { padding-top: 2.4rem; }
.pe-24 { padding-right: 2.4rem; }
.pb-24 { padding-bottom: 2.4rem; }
.ps-24 { padding-left: 2.4rem; }
.px-24 { padding-left: 2.4rem; padding-right: 2.4rem; }
.py-24 { padding-top: 2.4rem; padding-bottom: 2.4rem; }

.pt-28 { padding-top: 2.8rem; }
.pe-28 { padding-right: 2.8rem; }
.pb-28 { padding-bottom: 2.8rem; }
.ps-28 { padding-left: 2.8rem; }
.px-28 { padding-left: 2.8rem; padding-right: 2.8rem; }
.py-28 { padding-top: 2.8rem; padding-bottom: 2.8rem; }

.pt-32 { padding-top: 3.2rem; }
.pe-32 { padding-right: 3.2rem; }
.pb-32 { padding-bottom: 3.2rem; }
.ps-32 { padding-left: 3.2rem; }
.px-32 { padding-left: 3.2rem; padding-right: 3.2rem; }
.py-32 { padding-top: 3.2rem; padding-bottom: 3.2rem; }

.pt-64 { padding-top: 6.4rem; }
.pe-64 { padding-right: 6.4rem; }
.pb-64 { padding-bottom: 6.4rem; }
.ps-64 { padding-left: 6.4rem; }
.px-64 { padding-left: 6.4rem; padding-right: 6.4rem; }
.py-64 { padding-top: 6.4rem; padding-bottom: 6.4rem; }

/*** ----- Margins ----- ***/
.mt-8 { margin-top: .8rem; }
.me-8 { margin-right: .8rem; }
.mb-8 { margin-bottom: .8rem; }
.ms-8 { margin-left: .8rem; }
.mx-8 { margin-left: .8rem; margin-right: .8rem; }
.my-8 { margin-top: .8rem; margin-bottom: .8rem; }

.mt-10 { margin-top: 1rem; }
.me-10 { margin-right: 1rem; }
.mb-10 { margin-bottom: 1rem; }
.ms-10 { margin-left: 1rem; }
.mx-10 { margin-left: 1rem; margin-right: 1rem; }
.my-10 { margin-top: 1rem; margin-bottom: 1rem; }

.mt-12 { margin-top: 1.2rem; }
.me-12 { margin-right: 1.2rem; }
.mb-12 { margin-bottom: 1.2rem; }
.ms-12 { margin-left: 1.2rem; }
.mx-12 { margin-left: 1.2rem; margin-right: 1.2rem; }
.my-12 { margin-top: 1.2rem; margin-bottom: 1.2rem; }

.mt-14 { margin-top: 1.4rem; }
.me-14 { margin-right: 1.4rem; }
.mb-14 { margin-bottom: 1.4rem; }
.ms-14 { margin-left: 1.4rem; }
.mx-14 { margin-left: 1.4rem; margin-right: 1.4rem; }
.my-14 { margin-top: 1.4rem; margin-bottom: 1.4rem; }

.mt-16 { margin-top: 1.6rem; }
.me-16 { margin-right: 1.6rem; }
.mb-16 { margin-bottom: 1.6rem; }
.ms-16 { margin-left: 1.6rem; }
.mx-16 { margin-left: 1.6rem; margin-right: 1.6rem; }
.my-16 { margin-top: 1.6rem; margin-bottom: 1.6rem; }

.mt-20 { margin-top: 2rem; }
.me-20 { margin-right: 2rem; }
.mb-20 { margin-bottom: 2rem; }
.ms-20 { margin-left: 2rem; }
.mx-20 { margin-left: 2rem; margin-right: 2rem; }
.my-20 { margin-top: 2rem; margin-bottom: 2rem; }

.mt-24 { margin-top: 2.4rem; }
.me-24 { margin-right: 2.4rem; }
.mb-24 { margin-bottom: 2.4rem; }
.ms-24 { margin-left: 2.4rem; }
.mx-24 { margin-left: 2.4rem; margin-right: 2.4rem; }
.my-24 { margin-top: 2.4rem; margin-bottom: 2.4rem; }

.mt-28 { margin-top: 2.8rem; }
.me-28 { margin-right: 2.8rem; }
.mb-28 { margin-bottom: 2.8rem; }
.ms-28 { margin-left: 2.8rem; }
.mx-28 { margin-left: 2.8rem; margin-right: 2.8rem; }
.my-28 { margin-top: 2.8rem; margin-bottom: 2.8rem; }

.mt-32 { margin-top: 3.2rem; }
.me-32 { margin-right: 3.2rem; }
.mb-32 { margin-bottom: 3.2rem; }
.ms-32 { margin-left: 3.2rem; }
.mx-32 { margin-left: 3.2rem; margin-right: 3.2rem; }
.my-32 { margin-top: 3.2rem; margin-bottom: 3.2rem; }

.mt-64 { margin-top: 6.4rem; }
.me-64 { margin-right: 6.4rem; }
.mb-64 { margin-bottom: 6.4rem; }
.ms-64 { margin-left: 6.4rem; }
.mx-64 { margin-left: 6.4rem; margin-right: 6.4rem; }
.my-64 { margin-top: 6.4rem; margin-bottom: 6.4rem; }

/* sm */
@media (min-width: 576px) {
    .d-sm-none { display: none; }
    .d-sm-block { display: block; }
    .d-sm-flex { display: flex; }

    /* Paddings */
    .pt-sm-8 { padding-top: .8rem; }
    .pe-sm-8 { padding-right: .8rem; }
    .pb-sm-8 { padding-bottom: .8rem; }
    .ps-sm-8 { padding-left: .8rem; }
    .px-sm-8 { padding-left: .8rem; padding-right: .8rem }
    .py-sm-8 { padding-top: .8rem; margin-bottom: .8rem; }

    .pt-sm-10 { padding-top: 1rem; }
    .pe-sm-10 { padding-right: 1rem; }
    .pb-sm-10 { padding-bottom: 1rem; }
    .ps-sm-10 { padding-left: 1rem; }
    .px-sm-10 { padding-left: 1rem; padding-right: 1rem; }
    .py-sm-10 { padding-top: 1rem; padding-bottom: 1rem; }

    .pt-sm-12 { padding-top: 1.2rem; }
    .pe-sm-12 { padding-right: 1.2rem; }
    .pb-sm-12 { padding-bottom: 1.2rem; }
    .ps-sm-12 { padding-left: 1.2rem; }
    .px-sm-12 { padding-left: 1.2rem; padding-right: 1.2rem; }
    .py-sm-12 { padding-top: 1.2rem; padding-bottom: 1.2rem; }

    .pt-sm-14 { padding-top: 1.4rem; }
    .pr-sm-14 { padding-right: 1.4rem; }
    .pb-sm-14 { padding-bottom: 1.4rem; }
    .ps-sm-14 { padding-left: 1.4rem; }
    .px-sm-14 { padding-left: 1.4rem; padding-right: 1.4rem; }
    .py-sm-14 { padding-top: 1.4rem; padding-bottom: 1.4rem; }

    .pt-sm-16 { padding-top: 1.6rem; }
    .pe-sm-16 { padding-right: 1.6rem; }
    .pb-sm-16 { padding-bottom: 1.6rem; }
    .ps-sm-16 { padding-left: 1.6rem; }
    .px-sm-16 { padding-left: 1.6rem; padding-right: 1.6rem; }
    .py-sm-16 { padding-top: 1.6rem; padding-bottom: 1.6rem; }

    .pt-sm-20 { padding-top: 2rem; }
    .pe-sm-20 { padding-right: 2rem; }
    .pb-sm-20 { padding-bottom: 2rem; }
    .ps-sm-20 { padding-left: 2rem; }
    .px-sm-20 { padding-left: 2rem; padding-right: 2rem; }
    .py-sm-20 { padding-top: 2rem; padding-bottom: 2rem; }

    .pt-sm-24 { padding-top: 2.4rem; }
    .pe-sm-24 { padding-right: 2.4rem; }
    .pb-sm-24 { padding-bottom: 2.4rem; }
    .ps-sm-24 { padding-left: 2.4rem; }
    .px-sm-24 { padding-left: 2.4rem; padding-right: 2.4rem; }
    .py-sm-24 { padding-top: 2.4rem; padding-bottom: 2.4rem; }

    .pt-sm-28 { padding-top: 2.8rem; }
    .pe-sm-28 { padding-right: 2.8rem; }
    .pb-sm-28 { padding-bottom: 2.8rem; }
    .ps-sm-28 { padding-left: 2.8rem; }
    .px-sm-28 { padding-left: 2.8rem; padding-right: 2.8rem; }
    .py-sm-28 { padding-top: 2.8rem; padding-bottom: 2.8rem; }

    .pt-sm-32 { padding-top: 3.2rem; }
    .pe-sm-32 { padding-right: 3.2rem; }
    .pb-sm-32 { padding-bottom: 3.2rem; }
    .ps-sm-32 { padding-left: 3.2rem; }
    .px-sm-32 { padding-left: 3.2rem; padding-right: 3.2rem; }
    .py-sm-32 { padding-top: 3.2rem; padding-bottom: 3.2rem; }

    .pt-sm-64 { padding-top: 6.4rem; }
    .pe-sm-64 { padding-right: 6.4rem; }
    .pb-sm-64 { padding-bottom: 6.4rem; }
    .ps-sm-64 { padding-left: 6.4rem; }
    .px-sm-64 { padding-left: 6.4rem; padding-right: 6.4rem; }
    .py-sm-64 { padding-top: 6.4rem; padding-bottom: 6.4rem; }

    /* Margins */
    .mt-sm-8 { margin-top: .8rem; }
    .me-sm-8 { margin-right: .8rem; }
    .mb-sm-8 { margin-bottom: .8rem; }
    .ms-sm-8 { margin-left: .8rem; }
    .mx-sm-8 { margin-left: .8rem; margin-right: .8rem; }
    .my-sm-8 { margin-top: .8rem; margin-bottom: .8rem; }

    .mt-sm-10 { margin-top: 1rem; }
    .me-sm-10 { margin-right: 1rem; }
    .mb-sm-10 { margin-bottom: 1rem; }
    .ms-sm-10 { margin-left: 1rem; }
    .mx-sm-10 { margin-left: 1rem; margin-right: 1rem; }
    .my-sm-10 { margin-top: 1rem; margin-bottom: 1rem; }

    .mt-sm-12 { margin-top: 1.2rem; }
    .me-sm-12 { margin-right: 1.2rem; }
    .mb-sm-12 { margin-bottom: 1.2rem; }
    .ms-sm-12 { margin-left: 1.2rem; }
    .mx-sm-12 { margin-left: 1.2rem; margin-right: 1.2rem; }
    .my-sm-12 { margin-top: 1.2rem; margin-bottom: 1.2rem; }

    .mt-sm-14 { margin-top: 1.4rem; }
    .me-sm-14 { margin-right: 1.4rem; }
    .mb-sm-14 { margin-bottom: 1.4rem; }
    .ms-sm-14 { margin-left: 1.4rem; }
    .mx-sm-14 { margin-left: 1.4rem; margin-right: 1.4rem; }
    .my-sm-14 { margin-top: 1.4rem; margin-bottom: 1.4rem; }

    .mt-sm-16 { margin-top: 1.6rem; }
    .me-sm-16 { margin-right: 1.6rem; }
    .mb-sm-16 { margin-bottom: 1.6rem; }
    .ms-sm-16 { margin-left: 1.6rem; }
    .mx-sm-16 { margin-left: 1.6rem; margin-right: 1.6rem; }
    .my-sm-16 { margin-top: 1.6rem; margin-bottom: 1.6rem; }

    .mt-sm-20 { margin-top: 2rem; }
    .me-sm-20 { margin-right: 2rem; }
    .mb-sm-20 { margin-bottom: 2rem; }
    .ms-sm-20 { margin-left: 2rem; }
    .mx-sm-20 { margin-left: 2rem; margin-right: 2rem; }
    .my-sm-20 { margin-top: 2rem; margin-bottom: 2rem; }

    .mt-sm-24 { margin-top: 2.4rem; }
    .me-sm-24 { margin-right: 2.4rem; }
    .mb-sm-24 { margin-bottom: 2.4rem; }
    .ms-sm-24 { margin-left: 2.4rem; }
    .mx-sm-24 { margin-left: 2.4rem; margin-right: 2.4rem; }
    .my-sm-24 { margin-top: 2.4rem; margin-bottom: 2.4rem; }

    .mt-sm-28 { margin-top: 2.8rem; }
    .me-sm-28 { margin-right: 2.8rem; }
    .mb-sm-28 { margin-bottom: 2.8rem; }
    .ms-sm-28 { margin-left: 2.8rem; }
    .mx-sm-28 { margin-left: 2.8rem; margin-right: 2.8rem; }
    .my-sm-28 { margin-top: 2.8rem; margin-bottom: 2.8rem; }

    .mt-sm-32 { margin-top: 3.2rem; }
    .me-sm-32 { margin-right: 3.2rem; }
    .mb-sm-32 { margin-bottom: 3.2rem; }
    .ms-sm-32 { margin-left: 3.2rem; }
    .mx-sm-32 { margin-left: 3.2rem; margin-right: 3.2rem; }
    .my-sm-32 { margin-top: 3.2rem; margin-bottom: 3.2rem; }

    .mt-sm-64 { margin-top: 6.4rem; }
    .me-sm-64 { margin-right: 6.4rem; }
    .mb-sm-64 { margin-bottom: 6.4rem; }
    .ms-sm-64 { margin-left: 6.4rem; }
    .mx-sm-64 { margin-left: 6.4rem; margin-right: 6.4rem; }
    .my-sm-64 { margin-top: 6.4rem; margin-bottom: 6.4rem; }
}

/* md */
@media (min-width: 768px) {
    .d-md-none { display: none; }
    .d-md-block { display: block; }
    .d-md-flex { display: flex; }

    /* Paddings */
    .pt-md-8 { padding-top: .8rem; }
    .pe-md-8 { padding-right: .8rem; }
    .pb-md-8 { padding-bottom: .8rem; }
    .ps-md-8 { padding-left: .8rem; }
    .px-md-8 { padding-left: .8rem; padding-right: .8rem }
    .py-md-8 { padding-top: .8rem; margin-bottom: .8rem; }

    .pt-md-10 { padding-top: 1rem; }
    .pe-md-10 { padding-right: 1rem; }
    .pb-md-10 { padding-bottom: 1rem; }
    .ps-md-10 { padding-left: 1rem; }
    .px-md-10 { padding-left: 1rem; padding-right: 1rem; }
    .py-md-10 { padding-top: 1rem; padding-bottom: 1rem; }

    .pt-md-12 { padding-top: 1.2rem; }
    .pe-md-12 { padding-right: 1.2rem; }
    .pb-md-12 { padding-bottom: 1.2rem; }
    .ps-md-12 { padding-left: 1.2rem; }
    .px-md-12 { padding-left: 1.2rem; padding-right: 1.2rem; }
    .py-md-12 { padding-top: 1.2rem; padding-bottom: 1.2rem; }

    .pt-md-14 { padding-top: 1.4rem; }
    .pr-md-14 { padding-right: 1.4rem; }
    .pb-md-14 { padding-bottom: 1.4rem; }
    .ps-md-14 { padding-left: 1.4rem; }
    .px-md-14 { padding-left: 1.4rem; padding-right: 1.4rem; }
    .py-md-14 { padding-top: 1.4rem; padding-bottom: 1.4rem; }

    .pt-sm-16 { padding-top: 1.6rem; }
    .pe-sm-16 { padding-right: 1.6rem; }
    .pb-sm-16 { padding-bottom: 1.6rem; }
    .ps-sm-16 { padding-left: 1.6rem; }
    .px-sm-16 { padding-left: 1.6rem; padding-right: 1.6rem; }
    .py-sm-16 { padding-top: 1.6rem; padding-bottom: 1.6rem; }

    .pt-md-20 { padding-top: 2rem; }
    .pe-md-20 { padding-right: 2rem; }
    .pb-md-20 { padding-bottom: 2rem; }
    .ps-md-20 { padding-left: 2rem; }
    .px-md-20 { padding-left: 2rem; padding-right: 2rem; }
    .py-md-20 { padding-top: 2rem; padding-bottom: 2rem; }

    .pt-md-24 { padding-top: 2.4rem; }
    .pe-md-24 { padding-right: 2.4rem; }
    .pb-md-24 { padding-bottom: 2.4rem; }
    .ps-md-24 { padding-left: 2.4rem; }
    .px-md-24 { padding-left: 2.4rem; padding-right: 2.4rem; }
    .py-md-24 { padding-top: 2.4rem; padding-bottom: 2.4rem; }

    .pt-md-28 { padding-top: 2.8rem; }
    .pe-md-28 { padding-right: 2.8rem; }
    .pb-md-28 { padding-bottom: 2.8rem; }
    .ps-md-28 { padding-left: 2.8rem; }
    .px-md-28 { padding-left: 2.8rem; padding-right: 2.8rem; }
    .py-md-28 { padding-top: 2.8rem; padding-bottom: 2.8rem; }

    .pt-md-32 { padding-top: 3.2rem; }
    .pe-md-32 { padding-right: 3.2rem; }
    .pb-md-32 { padding-bottom: 3.2rem; }
    .ps-md-32 { padding-left: 3.2rem; }
    .px-md-32 { padding-left: 3.2rem; padding-right: 3.2rem; }
    .py-md-32 { padding-top: 3.2rem; padding-bottom: 3.2rem; }

    .pt-md-64 { padding-top: 6.4rem; }
    .pe-md-64 { padding-right: 6.4rem; }
    .pb-md-64 { padding-bottom: 6.4rem; }
    .ps-md-64 { padding-left: 6.4rem; }
    .px-md-64 { padding-left: 6.4rem; padding-right: 6.4rem; }
    .py-md-64 { padding-top: 6.4rem; padding-bottom: 6.4rem; }

    /* Margins */
    .mt-sm-8 { margin-top: .8rem; }
    .me-sm-8 { margin-right: .8rem; }
    .mb-sm-8 { margin-bottom: .8rem; }
    .ms-sm-8 { margin-left: .8rem; }
    .mx-sm-8 { margin-left: .8rem; margin-right: .8rem; }
    .my-sm-8 { margin-top: .8rem; margin-bottom: .8rem; }

    .mt-sm-10 { margin-top: 1rem; }
    .me-sm-10 { margin-right: 1rem; }
    .mb-sm-10 { margin-bottom: 1rem; }
    .ms-sm-10 { margin-left: 1rem; }
    .mx-sm-10 { margin-left: 1rem; margin-right: 1rem; }
    .my-sm-10 { margin-top: 1rem; margin-bottom: 1rem; }

    .mt-sm-12 { margin-top: 1.2rem; }
    .me-sm-12 { margin-right: 1.2rem; }
    .mb-sm-12 { margin-bottom: 1.2rem; }
    .ms-sm-12 { margin-left: 1.2rem; }
    .mx-sm-12 { margin-left: 1.2rem; margin-right: 1.2rem; }
    .my-sm-12 { margin-top: 1.2rem; margin-bottom: 1.2rem; }

    .mt-sm-14 { margin-top: 1.4rem; }
    .me-sm-14 { margin-right: 1.4rem; }
    .mb-sm-14 { margin-bottom: 1.4rem; }
    .ms-sm-14 { margin-left: 1.4rem; }
    .mx-sm-14 { margin-left: 1.4rem; margin-right: 1.4rem; }
    .my-sm-14 { margin-top: 1.4rem; margin-bottom: 1.4rem; }

    .mt-sm-16 { margin-top: 1.6rem; }
    .me-sm-16 { margin-right: 1.6rem; }
    .mb-sm-16 { margin-bottom: 1.6rem; }
    .ms-sm-16 { margin-left: 1.6rem; }
    .mx-sm-16 { margin-left: 1.6rem; margin-right: 1.6rem; }
    .my-sm-16 { margin-top: 1.6rem; margin-bottom: 1.6rem; }

    .mt-sm-20 { margin-top: 2rem; }
    .me-sm-20 { margin-right: 2rem; }
    .mb-sm-20 { margin-bottom: 2rem; }
    .ms-sm-20 { margin-left: 2rem; }
    .mx-sm-20 { margin-left: 2rem; margin-right: 2rem; }
    .my-sm-20 { margin-top: 2rem; margin-bottom: 2rem; }

    .mt-sm-24 { margin-top: 2.4rem; }
    .me-sm-24 { margin-right: 2.4rem; }
    .mb-sm-24 { margin-bottom: 2.4rem; }
    .ms-sm-24 { margin-left: 2.4rem; }
    .mx-sm-24 { margin-left: 2.4rem; margin-right: 2.4rem; }
    .my-sm-24 { margin-top: 2.4rem; margin-bottom: 2.4rem; }

    .mt-sm-28 { margin-top: 2.8rem; }
    .me-sm-28 { margin-right: 2.8rem; }
    .mb-sm-28 { margin-bottom: 2.8rem; }
    .ms-sm-28 { margin-left: 2.8rem; }
    .mx-sm-28 { margin-left: 2.8rem; margin-right: 2.8rem; }
    .my-sm-28 { margin-top: 2.8rem; margin-bottom: 2.8rem; }

    .mt-sm-32 { margin-top: 3.2rem; }
    .me-sm-32 { margin-right: 3.2rem; }
    .mb-sm-32 { margin-bottom: 3.2rem; }
    .ms-sm-32 { margin-left: 3.2rem; }
    .mx-sm-32 { margin-left: 3.2rem; margin-right: 3.2rem; }
    .my-sm-32 { margin-top: 3.2rem; margin-bottom: 3.2rem; }

    .mt-sm-64 { margin-top: 6.4rem; }
    .me-sm-64 { margin-right: 6.4rem; }
    .mb-sm-64 { margin-bottom: 6.4rem; }
    .ms-sm-64 { margin-left: 6.4rem; }
    .mx-sm-64 { margin-left: 6.4rem; margin-right: 6.4rem; }
    .my-sm-64 { margin-top: 6.4rem; margin-bottom: 6.4rem; }
}

/* lg */
@media (min-width: 992px) {
    .d-lg-none { display: none; }
    .d-lg-block { display: block; }
    .d-lg-flex { display: flex; }

    /* Paddings */
    .pt-lg-8 { padding-top: .8rem; }
    .pe-lg-8 { padding-right: .8rem; }
    .pb-lg-8 { padding-bottom: .8rem; }
    .ps-lg-8 { padding-left: .8rem; }
    .px-lg-8 { padding-left: .8rem; padding-right: .8rem }
    .py-lg-8 { padding-top: .8rem; margin-bottom: .8rem; }

    .pt-lg-10 { padding-top: 1rem; }
    .pe-lg-10 { padding-right: 1rem; }
    .pb-lg-10 { padding-bottom: 1rem; }
    .ps-lg-10 { padding-left: 1rem; }
    .px-lg-10 { padding-left: 1rem; padding-right: 1rem; }
    .py-lg-10 { padding-top: 1rem; padding-bottom: 1rem; }

    .pt-lg-12 { padding-top: 1.2rem; }
    .pe-lg-12 { padding-right: 1.2rem; }
    .pb-lg-12 { padding-bottom: 1.2rem; }
    .ps-lg-12 { padding-left: 1.2rem; }
    .px-lg-12 { padding-left: 1.2rem; padding-right: 1.2rem; }
    .py-lg-12 { padding-top: 1.2rem; padding-bottom: 1.2rem; }

    .pt-lg-14 { padding-top: 1.4rem; }
    .pr-lg-14 { padding-right: 1.4rem; }
    .pb-lg-14 { padding-bottom: 1.4rem; }
    .ps-lg-14 { padding-left: 1.4rem; }
    .px-lg-14 { padding-left: 1.4rem; padding-right: 1.4rem; }
    .py-lg-14 { padding-top: 1.4rem; padding-bottom: 1.4rem; }

    .pt-lg-16 { padding-top: 1.6rem; }
    .pe-lg-16 { padding-right: 1.6rem; }
    .pb-lg-16 { padding-bottom: 1.6rem; }
    .ps-lg-16 { padding-left: 1.6rem; }
    .px-lg-16 { padding-left: 1.6rem; padding-right: 1.6rem; }
    .py-lg-16 { padding-top: 1.6rem; padding-bottom: 1.6rem; }

    .pt-lg-20 { padding-top: 2rem; }
    .pe-lg-20 { padding-right: 2rem; }
    .pb-lg-20 { padding-bottom: 2rem; }
    .ps-lg-20 { padding-left: 2rem; }
    .px-lg-20 { padding-left: 2rem; padding-right: 2rem; }
    .py-lg-20 { padding-top: 2rem; padding-bottom: 2rem; }

    .pt-lg-24 { padding-top: 2.4rem; }
    .pe-lg-24 { padding-right: 2.4rem; }
    .pb-lg-24 { padding-bottom: 2.4rem; }
    .ps-lg-24 { padding-left: 2.4rem; }
    .px-lg-24 { padding-left: 2.4rem; padding-right: 2.4rem; }
    .py-lg-24 { padding-top: 2.4rem; padding-bottom: 2.4rem; }

    .pt-lg-28 { padding-top: 2.8rem; }
    .pe-lg-28 { padding-right: 2.8rem; }
    .pb-lg-28 { padding-bottom: 2.8rem; }
    .ps-lg-28 { padding-left: 2.8rem; }
    .px-lg-28 { padding-left: 2.8rem; padding-right: 2.8rem; }
    .py-lg-28 { padding-top: 2.8rem; padding-bottom: 2.8rem; }

    .pt-lg-32 { padding-top: 3.2rem; }
    .pe-lg-32 { padding-right: 3.2rem; }
    .pb-lg-32 { padding-bottom: 3.2rem; }
    .ps-lg-32 { padding-left: 3.2rem; }
    .px-lg-32 { padding-left: 3.2rem; padding-right: 3.2rem; }
    .py-lg-32 { padding-top: 3.2rem; padding-bottom: 3.2rem; }

    .pt-lg-64 { padding-top: 6.4rem; }
    .pe-lg-64 { padding-right: 6.4rem; }
    .pb-lg-64 { padding-bottom: 6.4rem; }
    .ps-lg-64 { padding-left: 6.4rem; }
    .px-lg-64 { padding-left: 6.4rem; padding-right: 6.4rem; }
    .py-lg-64 { padding-top: 6.4rem; padding-bottom: 6.4rem; }

    /* Margins */
    .mt-lg-8 { margin-top: .8rem; }
    .me-lg-8 { margin-right: .8rem; }
    .mb-lg-8 { margin-bottom: .8rem; }
    .ms-lg-8 { margin-left: .8rem; }
    .mx-lg-8 { margin-left: .8rem; margin-right: .8rem; }
    .my-lg-8 { margin-top: .8rem; margin-bottom: .8rem; }

    .mt-lg-10 { margin-top: 1rem; }
    .me-lg-10 { margin-right: 1rem; }
    .mb-lg-10 { margin-bottom: 1rem; }
    .ms-lg-10 { margin-left: 1rem; }
    .mx-lg-10 { margin-left: 1rem; margin-right: 1rem; }
    .my-lg-10 { margin-top: 1rem; margin-bottom: 1rem; }

    .mt-lg-12 { margin-top: 1.2rem; }
    .me-lg-12 { margin-right: 1.2rem; }
    .mb-lg-12 { margin-bottom: 1.2rem; }
    .ms-lg-12 { margin-left: 1.2rem; }
    .mx-lg-12 { margin-left: 1.2rem; margin-right: 1.2rem; }
    .my-lg-12 { margin-top: 1.2rem; margin-bottom: 1.2rem; }

    .mt-lg-14 { margin-top: 1.4rem; }
    .me-lg-14 { margin-right: 1.4rem; }
    .mb-lg-14 { margin-bottom: 1.4rem; }
    .ms-lg-14 { margin-left: 1.4rem; }
    .mx-lg-14 { margin-left: 1.4rem; margin-right: 1.4rem; }
    .my-lg-14 { margin-top: 1.4rem; margin-bottom: 1.4rem; }

    .mt-lg-16 { margin-top: 1.6rem; }
    .me-lg-16 { margin-right: 1.6rem; }
    .mb-lg-16 { margin-bottom: 1.6rem; }
    .ms-lg-16 { margin-left: 1.6rem; }
    .mx-lg-16 { margin-left: 1.6rem; margin-right: 1.6rem; }
    .my-lg-16 { margin-top: 1.6rem; margin-bottom: 1.6rem; }

    .mt-lg-20 { margin-top: 2rem; }
    .me-lg-20 { margin-right: 2rem; }
    .mb-lg-20 { margin-bottom: 2rem; }
    .ms-lg-20 { margin-left: 2rem; }
    .mx-lg-20 { margin-left: 2rem; margin-right: 2rem; }
    .my-lg-20 { margin-top: 2rem; margin-bottom: 2rem; }

    .mt-lg-24 { margin-top: 2.4rem; }
    .me-lg-24 { margin-right: 2.4rem; }
    .mb-lg-24 { margin-bottom: 2.4rem; }
    .ms-lg-24 { margin-left: 2.4rem; }
    .mx-lg-24 { margin-left: 2.4rem; margin-right: 2.4rem; }
    .my-lg-24 { margin-top: 2.4rem; margin-bottom: 2.4rem; }

    .mt-lg-28 { margin-top: 2.8rem; }
    .me-lg-28 { margin-right: 2.8rem; }
    .mb-lg-28 { margin-bottom: 2.8rem; }
    .ms-lg-28 { margin-left: 2.8rem; }
    .mx-lg-28 { margin-left: 2.8rem; margin-right: 2.8rem; }
    .my-lg-28 { margin-top: 2.8rem; margin-bottom: 2.8rem; }

    .mt-lg-32 { margin-top: 3.2rem; }
    .me-lg-32 { margin-right: 3.2rem; }
    .mb-lg-32 { margin-bottom: 3.2rem; }
    .ms-lg-32 { margin-left: 3.2rem; }
    .mx-lg-32 { margin-left: 3.2rem; margin-right: 3.2rem; }
    .my-lg-32 { margin-top: 3.2rem; margin-bottom: 3.2rem; }

    .mt-lg-64 { margin-top: 6.4rem; }
    .me-lg-64 { margin-right: 6.4rem; }
    .mb-lg-64 { margin-bottom: 6.4rem; }
    .ms-lg-64 { margin-left: 6.4rem; }
    .mx-lg-64 { margin-left: 6.4rem; margin-right: 6.4rem; }
    .my-lg-64 { margin-top: 6.4rem; margin-bottom: 6.4rem; }
}

/* xl */
@media (min-width: 1200px) {
    .d-xl-none { display: none; }
    .d-xl-block { display: block; }
    .d-xl-flex { display: flex; }

    /* Paddings */
    .pt-xl-8 { padding-top: .8rem; }
    .pe-xl-8 { padding-right: .8rem; }
    .pb-xl-8 { padding-bottom: .8rem; }
    .ps-xl-8 { padding-left: .8rem; }
    .px-xl-8 { padding-left: .8rem; padding-right: .8rem }
    .py-xl-8 { padding-top: .8rem; margin-bottom: .8rem; }

    .pt-xl-10 { padding-top: 1rem; }
    .pe-xl-10 { padding-right: 1rem; }
    .pb-xl-10 { padding-bottom: 1rem; }
    .ps-xl-10 { padding-left: 1rem; }
    .px-xl-10 { padding-left: 1rem; padding-right: 1rem; }
    .py-xl-10 { padding-top: 1rem; padding-bottom: 1rem; }

    .pt-xl-12 { padding-top: 1.2rem; }
    .pe-xl-12 { padding-right: 1.2rem; }
    .pb-xl-12 { padding-bottom: 1.2rem; }
    .ps-xl-12 { padding-left: 1.2rem; }
    .px-xl-12 { padding-left: 1.2rem; padding-right: 1.2rem; }
    .py-xl-12 { padding-top: 1.2rem; padding-bottom: 1.2rem; }

    .pt-xl-14 { padding-top: 1.4rem; }
    .pr-xl-14 { padding-right: 1.4rem; }
    .pb-xl-14 { padding-bottom: 1.4rem; }
    .ps-xl-14 { padding-left: 1.4rem; }
    .px-xl-14 { padding-left: 1.4rem; padding-right: 1.4rem; }
    .py-xl-14 { padding-top: 1.4rem; padding-bottom: 1.4rem; }

    .pt-xl-16 { padding-top: 1.6rem; }
    .pe-xl-16 { padding-right: 1.6rem; }
    .pb-xl-16 { padding-bottom: 1.6rem; }
    .ps-xl-16 { padding-left: 1.6rem; }
    .px-xl-16 { padding-left: 1.6rem; padding-right: 1.6rem; }
    .py-xl-16 { padding-top: 1.6rem; padding-bottom: 1.6rem; }

    .pt-xl-20 { padding-top: 2rem; }
    .pe-xl-20 { padding-right: 2rem; }
    .pb-xl-20 { padding-bottom: 2rem; }
    .ps-xl-20 { padding-left: 2rem; }
    .px-xl-20 { padding-left: 2rem; padding-right: 2rem; }
    .py-xl-20 { padding-top: 2rem; padding-bottom: 2rem; }

    .pt-xl-24 { padding-top: 2.4rem; }
    .pe-xl-24 { padding-right: 2.4rem; }
    .pb-xl-24 { padding-bottom: 2.4rem; }
    .ps-xl-24 { padding-left: 2.4rem; }
    .px-xl-24 { padding-left: 2.4rem; padding-right: 2.4rem; }
    .py-xl-24 { padding-top: 2.4rem; padding-bottom: 2.4rem; }

    .pt-xl-28 { padding-top: 2.8rem; }
    .pe-xl-28 { padding-right: 2.8rem; }
    .pb-xl-28 { padding-bottom: 2.8rem; }
    .ps-xl-28 { padding-left: 2.8rem; }
    .px-xl-28 { padding-left: 2.8rem; padding-right: 2.8rem; }
    .py-xl-28 { padding-top: 2.8rem; padding-bottom: 2.8rem; }

    .pt-xl-32 { padding-top: 3.2rem; }
    .pe-xl-32 { padding-right: 3.2rem; }
    .pb-xl-32 { padding-bottom: 3.2rem; }
    .ps-xl-32 { padding-left: 3.2rem; }
    .px-xl-32 { padding-left: 3.2rem; padding-right: 3.2rem; }
    .py-xl-32 { padding-top: 3.2rem; padding-bottom: 3.2rem; }

    .pt-xl-64 { padding-top: 6.4rem; }
    .pe-xl-64 { padding-right: 6.4rem; }
    .pb-xl-64 { padding-bottom: 6.4rem; }
    .ps-xl-64 { padding-left: 6.4rem; }
    .px-xl-64 { padding-left: 6.4rem; padding-right: 6.4rem; }
    .py-xl-64 { padding-top: 6.4rem; padding-bottom: 6.4rem; }

    /* Margins */
    .mt-xl-8 { margin-top: .8rem; }
    .me-xl-8 { margin-right: .8rem; }
    .mb-xl-8 { margin-bottom: .8rem; }
    .ms-xl-8 { margin-left: .8rem; }
    .mx-xl-8 { margin-left: .8rem; margin-right: .8rem; }
    .my-xl-8 { margin-top: .8rem; margin-bottom: .8rem; }

    .mt-xl-10 { margin-top: 1rem; }
    .me-xl-10 { margin-right: 1rem; }
    .mb-xl-10 { margin-bottom: 1rem; }
    .ms-xl-10 { margin-left: 1rem; }
    .mx-xl-10 { margin-left: 1rem; margin-right: 1rem; }
    .my-xl-10 { margin-top: 1rem; margin-bottom: 1rem; }

    .mt-xl-12 { margin-top: 1.2rem; }
    .me-xl-12 { margin-right: 1.2rem; }
    .mb-xl-12 { margin-bottom: 1.2rem; }
    .ms-xl-12 { margin-left: 1.2rem; }
    .mx-xl-12 { margin-left: 1.2rem; margin-right: 1.2rem; }
    .my-xl-12 { margin-top: 1.2rem; margin-bottom: 1.2rem; }

    .mt-xl-14 { margin-top: 1.4rem; }
    .me-xl-14 { margin-right: 1.4rem; }
    .mb-xl-14 { margin-bottom: 1.4rem; }
    .ms-xl-14 { margin-left: 1.4rem; }
    .mx-xl-14 { margin-left: 1.4rem; margin-right: 1.4rem; }
    .my-xl-14 { margin-top: 1.4rem; margin-bottom: 1.4rem; }

    .mt-xl-16 { margin-top: 1.6rem; }
    .me-xl-16 { margin-right: 1.6rem; }
    .mb-xl-16 { margin-bottom: 1.6rem; }
    .ms-xl-16 { margin-left: 1.6rem; }
    .mx-xl-16 { margin-left: 1.6rem; margin-right: 1.6rem; }
    .my-xl-16 { margin-top: 1.6rem; margin-bottom: 1.6rem; }

    .mt-xl-20 { margin-top: 2rem; }
    .me-xl-20 { margin-right: 2rem; }
    .mb-xl-20 { margin-bottom: 2rem; }
    .ms-xl-20 { margin-left: 2rem; }
    .mx-xl-20 { margin-left: 2rem; margin-right: 2rem; }
    .my-xl-20 { margin-top: 2rem; margin-bottom: 2rem; }

    .mt-xl-24 { margin-top: 2.4rem; }
    .me-xl-24 { margin-right: 2.4rem; }
    .mb-xl-24 { margin-bottom: 2.4rem; }
    .ms-xl-24 { margin-left: 2.4rem; }
    .mx-xl-24 { margin-left: 2.4rem; margin-right: 2.4rem; }
    .my-xl-24 { margin-top: 2.4rem; margin-bottom: 2.4rem; }

    .mt-xl-28 { margin-top: 2.8rem; }
    .me-xl-28 { margin-right: 2.8rem; }
    .mb-xl-28 { margin-bottom: 2.8rem; }
    .ms-xl-28 { margin-left: 2.8rem; }
    .mx-xl-28 { margin-left: 2.8rem; margin-right: 2.8rem; }
    .my-xl-28 { margin-top: 2.8rem; margin-bottom: 2.8rem; }

    .mt-xl-32 { margin-top: 3.2rem; }
    .me-xl-32 { margin-right: 3.2rem; }
    .mb-xl-32 { margin-bottom: 3.2rem; }
    .ms-xl-32 { margin-left: 3.2rem; }
    .mx-xl-32 { margin-left: 3.2rem; margin-right: 3.2rem; }
    .my-xl-32 { margin-top: 3.2rem; margin-bottom: 3.2rem; }

    .mt-xl-64 { margin-top: 6.4rem; }
    .me-xl-64 { margin-right: 6.4rem; }
    .mb-xl-64 { margin-bottom: 6.4rem; }
    .ms-xl-64 { margin-left: 6.4rem; }
    .mx-xl-64 { margin-left: 6.4rem; margin-right: 6.4rem; }
    .my-xl-64 { margin-top: 6.4rem; margin-bottom: 6.4rem; }
}

/* xxl */
@media (min-width: 1400px) {
    .d-xxl-none { display: none; }
    .d-xxl-block { display: block; }
    .d-xxl-flex { display: flex; }

    /* Paddings */
    .pt-xxl-8 { padding-top: .8rem; }
    .pe-xxl-8 { padding-right: .8rem; }
    .pb-xxl-8 { padding-bottom: .8rem; }
    .ps-xxl-8 { padding-left: .8rem; }
    .px-xxl-8 { padding-left: .8rem; padding-right: .8rem }
    .py-xxl-8 { padding-top: .8rem; margin-bottom: .8rem; }

    .pt-xxl-10 { padding-top: 1rem; }
    .pe-xxl-10 { padding-right: 1rem; }
    .pb-xxl-10 { padding-bottom: 1rem; }
    .ps-xxl-10 { padding-left: 1rem; }
    .px-xxl-10 { padding-left: 1rem; padding-right: 1rem; }
    .py-xxl-10 { padding-top: 1rem; padding-bottom: 1rem; }

    .pt-xxl-12 { padding-top: 1.2rem; }
    .pe-xxl-12 { padding-right: 1.2rem; }
    .pb-xxl-12 { padding-bottom: 1.2rem; }
    .ps-xxl-12 { padding-left: 1.2rem; }
    .px-xxl-12 { padding-left: 1.2rem; padding-right: 1.2rem; }
    .py-xxl-12 { padding-top: 1.2rem; padding-bottom: 1.2rem; }

    .pt-xxl-14 { padding-top: 1.4rem; }
    .pr-xxl-14 { padding-right: 1.4rem; }
    .pb-xxl-14 { padding-bottom: 1.4rem; }
    .ps-xxl-14 { padding-left: 1.4rem; }
    .px-xxl-14 { padding-left: 1.4rem; padding-right: 1.4rem; }
    .py-xxl-14 { padding-top: 1.4rem; padding-bottom: 1.4rem; }

    .pt-xxl-16 { padding-top: 1.6rem; }
    .pe-xxl-16 { padding-right: 1.6rem; }
    .pb-xxl-16 { padding-bottom: 1.6rem; }
    .ps-xxl-16 { padding-left: 1.6rem; }
    .px-xxl-16 { padding-left: 1.6rem; padding-right: 1.6rem; }
    .py-xxl-16 { padding-top: 1.6rem; padding-bottom: 1.6rem; }

    .pt-xxl-20 { padding-top: 2rem; }
    .pe-xxl-20 { padding-right: 2rem; }
    .pb-xxl-20 { padding-bottom: 2rem; }
    .ps-xxl-20 { padding-left: 2rem; }
    .px-xxl-20 { padding-left: 2rem; padding-right: 2rem; }
    .py-xxl-20 { padding-top: 2rem; padding-bottom: 2rem; }

    .pt-xxl-24 { padding-top: 2.4rem; }
    .pe-xxl-24 { padding-right: 2.4rem; }
    .pb-xxl-24 { padding-bottom: 2.4rem; }
    .ps-xxl-24 { padding-left: 2.4rem; }
    .px-xxl-24 { padding-left: 2.4rem; padding-right: 2.4rem; }
    .py-xxl-24 { padding-top: 2.4rem; padding-bottom: 2.4rem; }

    .pt-xxl-28 { padding-top: 2.8rem; }
    .pe-xxl-28 { padding-right: 2.8rem; }
    .pb-xxl-28 { padding-bottom: 2.8rem; }
    .ps-xxl-28 { padding-left: 2.8rem; }
    .px-xxl-28 { padding-left: 2.8rem; padding-right: 2.8rem; }
    .py-xxl-28 { padding-top: 2.8rem; padding-bottom: 2.8rem; }

    .pt-xxl-32 { padding-top: 3.2rem; }
    .pe-xxl-32 { padding-right: 3.2rem; }
    .pb-xxl-32 { padding-bottom: 3.2rem; }
    .ps-xxl-32 { padding-left: 3.2rem; }
    .px-xxl-32 { padding-left: 3.2rem; padding-right: 3.2rem; }
    .py-xxl-32 { padding-top: 3.2rem; padding-bottom: 3.2rem; }

    .pt-xxl-64 { padding-top: 6.4rem; }
    .pe-xxl-64 { padding-right: 6.4rem; }
    .pb-xxl-64 { padding-bottom: 6.4rem; }
    .ps-xxl-64 { padding-left: 6.4rem; }
    .px-xxl-64 { padding-left: 6.4rem; padding-right: 6.4rem; }
    .py-xxl-64 { padding-top: 6.4rem; padding-bottom: 6.4rem; }

    /* Margins */
    .mt-xxl-8 { margin-top: .8rem; }
    .me-xxl-8 { margin-right: .8rem; }
    .mb-xxl-8 { margin-bottom: .8rem; }
    .ms-xxl-8 { margin-left: .8rem; }
    .mx-xxl-8 { margin-left: .8rem; margin-right: .8rem; }
    .my-xxl-8 { margin-top: .8rem; margin-bottom: .8rem; }

    .mt-xxl-10 { margin-top: 1rem; }
    .me-xxl-10 { margin-right: 1rem; }
    .mb-xxl-10 { margin-bottom: 1rem; }
    .ms-xxl-10 { margin-left: 1rem; }
    .mx-xxl-10 { margin-left: 1rem; margin-right: 1rem; }
    .my-xxl-10 { margin-top: 1rem; margin-bottom: 1rem; }

    .mt-xxl-12 { margin-top: 1.2rem; }
    .me-xxl-12 { margin-right: 1.2rem; }
    .mb-xxl-12 { margin-bottom: 1.2rem; }
    .ms-xxl-12 { margin-left: 1.2rem; }
    .mx-xxl-12 { margin-left: 1.2rem; margin-right: 1.2rem; }
    .my-xxl-12 { margin-top: 1.2rem; margin-bottom: 1.2rem; }

    .mt-xxl-14 { margin-top: 1.4rem; }
    .me-xxl-14 { margin-right: 1.4rem; }
    .mb-xxl-14 { margin-bottom: 1.4rem; }
    .ms-xxl-14 { margin-left: 1.4rem; }
    .mx-xxl-14 { margin-left: 1.4rem; margin-right: 1.4rem; }
    .my-xxl-14 { margin-top: 1.4rem; margin-bottom: 1.4rem; }

    .mt-xxl-16 { margin-top: 1.6rem; }
    .me-xxl-16 { margin-right: 1.6rem; }
    .mb-xxl-16 { margin-bottom: 1.6rem; }
    .ms-xxl-16 { margin-left: 1.6rem; }
    .mx-xxl-16 { margin-left: 1.6rem; margin-right: 1.6rem; }
    .my-xxl-16 { margin-top: 1.6rem; margin-bottom: 1.6rem; }

    .mt-xxl-20 { margin-top: 2rem; }
    .me-xxl-20 { margin-right: 2rem; }
    .mb-xxl-20 { margin-bottom: 2rem; }
    .ms-xxl-20 { margin-left: 2rem; }
    .mx-xxl-20 { margin-left: 2rem; margin-right: 2rem; }
    .my-xxl-20 { margin-top: 2rem; margin-bottom: 2rem; }

    .mt-xxl-24 { margin-top: 2.4rem; }
    .me-xxl-24 { margin-right: 2.4rem; }
    .mb-xxl-24 { margin-bottom: 2.4rem; }
    .ms-xxl-24 { margin-left: 2.4rem; }
    .mx-xxl-24 { margin-left: 2.4rem; margin-right: 2.4rem; }
    .my-xxl-24 { margin-top: 2.4rem; margin-bottom: 2.4rem; }

    .mt-xxl-28 { margin-top: 2.8rem; }
    .me-xxl-28 { margin-right: 2.8rem; }
    .mb-xxl-28 { margin-bottom: 2.8rem; }
    .ms-xxl-28 { margin-left: 2.8rem; }
    .mx-xxl-28 { margin-left: 2.8rem; margin-right: 2.8rem; }
    .my-xxl-28 { margin-top: 2.8rem; margin-bottom: 2.8rem; }

    .mt-xxl-32 { margin-top: 3.2rem; }
    .me-xxl-32 { margin-right: 3.2rem; }
    .mb-xxl-32 { margin-bottom: 3.2rem; }
    .ms-xxl-32 { margin-left: 3.2rem; }
    .mx-xxl-32 { margin-left: 3.2rem; margin-right: 3.2rem; }
    .my-xxl-32 { margin-top: 3.2rem; margin-bottom: 3.2rem; }

    .mt-xxl-64 { margin-top: 6.4rem; }
    .me-xxl-64 { margin-right: 6.4rem; }
    .mb-xxl-64 { margin-bottom: 6.4rem; }
    .ms-xxl-64 { margin-left: 6.4rem; }
    .mx-xxl-64 { margin-left: 6.4rem; margin-right: 6.4rem; }
    .my-xxl-64 { margin-top: 6.4rem; margin-bottom: 6.4rem; }
}



/*** ---------- Accordion ---------- ***/
.wpb-accordion { --br: 1rem; --p: .5rem 2rem; --bg: rgb(255,255,255); --active-bg: var(--clr-primary-light); --active-clr: var(--clr-primary); --body-p: 0 2rem 2rem 2rem;  }
.wpb-accordion .collapse:not(.show) { display: none; }
.accordion__item { color: var(--clr); border: .1rem solid var(--clr-border); border-radius: var(--br); overflow: hidden; }
.accordion__item + .accordion__item { margin-top: .6rem; }

.accordion__item .accordion__button { font-family: var(--wpb-font-primary); font-size: clamp(1.8rem, 4vw, 2.2rem); font-weight: 800; min-height: 6.4rem; cursor: pointer; display: grid; grid-template-columns: 1fr 3.3rem; column-gap: 2rem; align-items: center; width: 100%; text-align: left; padding: var(--p); background-color: var(--bg); border: 0; overflow-anchor: none; border-radius: 0; transition: background-color var(--ts-15) ease-in-out, color var(--ts-15) ease-in-out, border-radius var(--ts-15) ease-in-out; }
.accordion__item .accordion__button span { display: grid; place-items: center; width: 3.3rem; height: 3.3rem; border: 1px solid var(--clr-border); border-radius: .5rem; margin-block: 1rem; transition: border-color var(--ts-15) ease, background-color var(--ts-15) ease; }
.accordion__item .accordion__button span .wpb-icon { --w: 1.3rem; --h: 1.3rem; transition: background-color var(--ts-15) ease, transform var(--ts-25) ease; }
.accordion__item .accordion__button.is-active span { border-color: var(--clr-primary); background-color: var(--clr-primary); }
.accordion__item .accordion__button.is-active span .wpb-icon { background-color: #fff; transform: rotate(-180deg); }
.accordion__item .accordion__body { background-color: #fff; padding: var(--body-p); }
.accordion__item:last-of-type .accordion__body { border-bottom-left-radius: var(--br); border-bottom-right-radius: var(--br); }
.accordion__item .collapse:not(.show) { display: none; }
.accordion__item .collapsing { height: 0; overflow: hidden; transition: height .35s ease; }



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

/*** ---------- Loader ---------- ***/
/*
.wpb-loader { position: fixed; top: 0; right: 0; bottom: 0; left: 0; height: 100%; width: 100%; z-index: 9999; isolation: isolate; background-color: var(--clr-primary); }
.wpb-loading__icon { display: inline-block; transform: translateZ(1px); position: absolute; right: 3.2rem; bottom: 3.2rem; }
.wpb-loading__icon:after { content: ''; display: inline-block; width: 4.8rem; height: 4.8rem; margin: .8rem; border-radius: 50%; background: #fff; -webkit-animation: coin-flip 2.8s cubic-bezier(0, 0.2, 0.8, 1) infinite; animation: coin-flip 2.8s cubic-bezier(0, 0.2, 0.8, 1) infinite; }

@-webkit-keyframes coin-flip { 
    0%, 100% {
      -webkit-animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5);
              animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5);
    }
    0% {
      -webkit-transform: rotateY(0deg);
              transform: rotateY(0deg);
    }
    50% {
      -webkit-transform: rotateY(1800deg);
              transform: rotateY(1800deg);
      -webkit-animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
              animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
    }
    100% {
      -webkit-transform: rotateY(3600deg);
              transform: rotateY(3600deg);
    }
} 

@keyframes coin-flip { 
    0%, 100% {
      -webkit-animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5);
              animation-timing-function: cubic-bezier(0.5, 0, 1, 0.5);
    }
    0% {
      -webkit-transform: rotateY(0deg);
              transform: rotateY(0deg);
    }
    50% {
      -webkit-transform: rotateY(1800deg);
              transform: rotateY(1800deg);
      -webkit-animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
              animation-timing-function: cubic-bezier(0, 0.5, 0.5, 1);
    }
    100% {
      -webkit-transform: rotateY(3600deg);
              transform: rotateY(3600deg);
    }
} */

/*** ---------- Containers ---------- ***/
.container, .container-fluid { --wpb-width: var(--container-width); --wpb-padding: 2rem; width: 100%; max-width: var(--wpb-width); margin-left: auto; margin-right: auto; padding-left: var(--wpb-padding); padding-right: var(--wpb-padding); 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); }
}

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

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

    .container.container--small { --wpb-width: 980px; }
    .container.container--medium { --wpb-width: 1030px; }
}

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

    .container.container--small { --wpb-width: 980px; }
    .container.container--medium { --wpb-width: 1140px; }
}

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

    .container.container--small { --wpb-width: 960px; }
    .container.container--medium { --wpb-width: 1140px; }
    .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: rgba(0,0,0,.5); }
.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 .wpb-text .wpb-breadcrumbs .wpb-icon { --clr: #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; }

.wpb-section__footer { padding-top: 3.2rem; }

/*** ---------- Background colors ---------- ***/
.wpb-bg-clr--transparent { background-color: transparent; }
.wpb-bg-clr--white { background-color: #fff; }
.wpb-bg-clr--grey { background-color: #f2f2f2; }

/*** ---------- 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(3.8rem, 5vw, 6.4rem); --lh: 1.15; }
h2, .h2 { --fs: clamp(2.8rem, 4vw, 4.4rem); --lh: 1.15; }
h3, .h3 { --fs: clamp(2rem, 3vw, 2.4rem); --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 > * + *:not(.btn .blockquote, .modal) { margin-top: 1em; } 

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

.wpb-text a:not(.btn) { font: inherit; text-underline-offset: .25rem; }
.wpb-text blockquote { border-left: 4px solid #f2f2f2; padding-left: 1.6rem; }

.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); }

/*** ---------- Buttons ---------- ***/
.btn, .gform_button, .gform_next_button, .gform_previous_button, .button { 
    --fs: 1.6rem; 
    --lh: 1; 
    --p: .5rem 2rem; 
    --br: 4rem; 

    --clr: rgb(255,255,255); --bg-clr: rgb(0,0,0); --border: 1px solid rgb(0,0,0); --box-shadow: none; 
    --hover-clr: var(--clr); --hover-bg-clr: var(--bg-clr); --hover-border: var(--border); --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); 
    
    font-family: var(--wpb-font-primary); font-weight: 700; min-height: 4.8rem; display: inline-flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: .5rem; 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; cursor: pointer; user-select: none; 
    
    -webkit-transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, -webkit-box-shadow var(--ts-15) ease-in-out;
    transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, -webkit-box-shadow var(--ts-15) ease-in-out;
    -o-transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, box-shadow var(--ts-15) ease-in-out;
    transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, box-shadow var(--ts-15) ease-in-out;
    transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, box-shadow var(--ts-15) ease-in-out, -webkit-box-shadow var(--ts-15) ease-in-out;
}
.btn span, .gform_button span, .gform_next_button span, .gform_previous_button span, .button span { font: inherit; color: inherit; }
.btn:hover, .gform_button:hover, .gform_next_button:hover, .gform_previous_button:hover, .button:hover { color: var(--hover-clr)!important; background-color: var(--hover-bg-clr)!important; border: var(--hover-border)!important; box-shadow: var(--hover-box-shadow)!important; }
.btn:hover::after, .gform_button:hover::after, .gform_next_button:hover::after, .gform_previous_button:hover::after { --clr: var(--hover-clr); }
.btn:focus, .gform_button:focus, .gform_next_button:focus, .gform_previous_button:focus, .gform_button:focus { color: var(--focus-clr)!important; background-color: var(--focus-bg-clr)!important; border: var(--focus-border)!important; box-shadow: var(--focus-box-shadow)!important; }
.btn:focus::after, .gform_button:focus::after, .gform_next_button:focus::after, .gform_previous_button:focus::after, .gform_button:focus::after { --clr: var(--focus-clr); }
.btn:active, .gform_next_button:active, .gform_previous_button:active, .button:active { color: var(--active-clr)!important; background-color: var(--active-bg-clr)!important; border: var(--active-border)!important; box-shadow: var(--active-box-shadow)!important; }
.btn:active::after, .gform_next_button:active::after, .gform_previous_button:active::after { --clr: var(--active-clr); }

.btn.btn--small { --p: .5rem 1.7rem; --fs: 1.6rem; min-height: 4.4rem; }
.btn.btn--large { --p: .5rem 2.4rem; --fs: 1.6rem; min-height: 4.8rem; }

.btn.btn--square { --p: 0; aspect-ratio: 1/1; }

.btn.btn--white { --clr: var(--clr-dark); --bg-clr: rgb(255,255,255); --border: 1px solid rgb(255,255,255); --box-shadow: none; --hover-clr: rgb(255,255,255); --hover-bg-clr: var(--clr-primary); --hover-border: 1px solid var(--clr-primary); }
.btn.btn--dark { --clr: #fff; --bg-clr: var(--clr-dark); --border: 1px solid var(--clr-dark); --box-shadow: none; --hover-clr: rgb(255,255,255); --hover-bg-clr: var(--clr-primary); --hover-border: 1px solid var(--clr-primary); }
.btn.btn--outline { --clr: rgb(0,0,0); --bg-clr: transparent; --border: 1px solid rgb(0,0,0); --box-shadow: none; --hover-clr: rgb(255,255,255); --hover-bg-clr: rgb(0,0,0); --hover-border: 1px solid rgb(0,0,0); }
.btn.btn--outline-dark { --clr: rgb(0,0,0); --bg-clr: transparent; --border: 1px solid rgb(0,0,0); --box-shadow: none; --hover-clr: rgb(255,255,255); --hover-bg-clr: rgb(0,0,0); --hover-border: 1px solid rgb(0,0,0); }
.btn.btn--outline-primary { --clr: var(--clr-primary); --bg-clr: transparent; --border: 1px solid var(--clr-primary); --box-shadow: none; --hover-clr: rgb(255,255,255); --hover-bg-clr: var(--clr-primary); --hover-border: 1px solid var(--clr-primary); }
.btn.btn--link { --p: 0; --clr: var(--clr-primary); --bg-clr: transparent; --border: 1px solid transparent; --box-shadow: none; min-height: 4.4; }
.btn.btn--link::after { --w: 1rem; --h: 1rem; }

.btn.btn--contact { --br: 0; --p: 0; --bg-clr: transparent; --clr: var(--clr-text); --border: none; --hover-clr: var(--clr-text); column-gap: .8rem; }
.btn.btn--submenu-toggle { --border: none; --bg-clr: none; --p: 0 0 0 2rem; --clr: var(--clr-text); }

.btn.wpb-icon.wpb-icon--xmark::after { --w: 1.6rem; --h: 1.6rem; }
.btn.wpb-icon.wpb-icon--chevron-left::after { --w: 1.4rem; --h: 1.4rem; }
.btn.wpb-icon.wpb-icon--chevron-right::after { --w: 1.4rem; --h: 1.4rem; }
.btn.wpb-icon.wpb-icon--filter::after { --w: 1.6rem; --h: 1.6rem; --clr: #FFF;}

.btn .btn__text { text-align: left; line-height: 1; margin-right: auto; }
.btn .btn__text strong { font-size: 1.8rem; display: block; font-weight: 800; width: 100%; line-height: 1; }
.btn .btn__text span { font-size: 1.4rem; line-height: 1; }

.btn-group { --gap: 1rem; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: var(--gap); }  

.btn.btn--block { width: 100%; justify-content: space-between; }

@media (min-width: 992px) {
    .btn.btn--large { --fs: 1.8rem; }
}

/*** ---------- Grid / Flex ---------- ***/
.align-start { -webkit-box-align: start; -ms-flex-align: start; align-items: start; }
.align-center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.align-end { -webkit-box-align: end; -ms-flex-align: end; align-items: end; }
.justify-start { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: start; }
.justify-center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.justify-end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: end; }
[class*="wpb-gc"] { --gc: 1; --gap: 2.2rem; display: grid; gap: var(--gap); grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); }

@media (min-width: 768px) {
    .wpb-gc__2 { --gc: 2!important; }
    .wpb-gc__3 { --gc: 2; }
    .wpb-gc__4 { --gc: 2; }
    .wpb-gc__5 { --gc: 2; }
    .wpb-gc__6 { --gc: 2; }
}

@media (min-width: 992px) {
    [class*="wpb-gc"] { --gap: 3.2rem; }
    .wpb-gc__3 { --gc: 3; }
    .wpb-gc__4 { --gc: 2; }
    .wpb-gc__5 { --gc: 3; }
    .wpb-gc__6 { --gc: 3; }
}

@media (min-width: 1200px) {
    .wpb-gc__4 { --gc: 4; }
    .wpb-gc__5 { --gc: 5; }
    .wpb-gc__6 { --gc: 6; }
}

/*** ---------- 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; }
.wpb-card a { text-decoration: none; }
.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.wpb-card--article .excerpt { --excerpt-line-clamp: 2; display: -webkit-box; -webkit-line-clamp: var(--excerpt-line-clamp); -webkit-box-orient: vertical; overflow: hidden; }
.wpb-card.wpb-card--article .wpb-card__title { margin-bottom: .8rem; }
.wpb-card.wpb-card--article .toggle-bookmark { position: absolute; top: 1.6rem; right: 1.6rem; z-index: 1; }

.wpb-card.wpb-card__search-result .wpb-card__header img { aspect-ratio: 16/9; object-fit: cover; }
.wpb-card.wpb-card__search-result .wpb-card__footer { display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding: 1.6rem; }

.toggle-bookmark { border: none; background: transparent; cursor: pointer; }
.toggle-bookmark .wpb-icon { background-color: #fff; pointer-events: none; }
.toggle-bookmark .wpb-icon--bookmark-solid { display: none; }
.toggle-bookmark.selected .wpb-icon--bookmark { display: none; }
.toggle-bookmark.selected .wpb-icon--bookmark-solid { display: block; }


/*** ---------- Tabs ---------- ***/
.wpb-tabs { display: grid; --p: 0 2rem; --clr: var(--clr-text); --bg-clr: transparent; --br: .5rem; --border: .1rem solid transparent; --box-shadow: none; --active-clr: var(--clr-primary); --active-bg-clr: #fff; --active-border: .1rem solid var(--clr-border); }
.wpb-tabs .tab__header { display: flex; flex-wrap: wrap; position: relative; z-index: 1; margin-bottom: -0.1rem; }
.wpb-tabs .tab__button { 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); box-shadow: var(--box-shadow); text-align: center; text-decoration: none; vertical-align: middle; cursor: pointer; user-select: none; transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, box-shadow var(--ts-15) ease-in-out; }
.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 .tab__content { display: grid; border: .1rem solid var(--clr-border); border-radius: 0 0 var(--br) var(--br); }
.wpb-tabs .tab__content .tab__pane { grid-column: 1/-1; grid-row: 1/-1; pointer-events: none; opacity: 0; transition: opacity 250ms ease; }
.wpb-tabs .tab__content .tab__pane.is-active { pointer-events: all; opacity: 1; }
.wpb-tabs .tab__content .tab__pane { padding: 2rem; }
.wpb-tabs .tab__content .tab__pane > * + * { margin-top: 1em; }

.wpb-tabs.wpb-tabs--secondary { --gc: 15rem 1fr; display: grid; grid-template-columns: var(--gc); align-items: start; }
.wpb-tabs.wpb-tabs--secondary .tab__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 .tab__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; }

.badge { --fs: 1.4rem; --lh: 1; --p: .5rem 1rem; --clr: #fff; --bg-clr: #000; --br: 0rem; --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); z-index: 1; position: relative; font-weight: 800; display: inline-block; font-size: var(--fs); line-height: var(--lh); padding: var(--p); color: var(--clr); border-radius: var(--br); text-align: center; text-decoration: none; vertical-align: middle; user-select: none; transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out, box-shadow var(--ts-15) ease-in-out; }
.badge:hover { color: var(--hover-clr); }
.badge::after { content: ''; z-index: -1; width: 100%; height: 100%; position: absolute; top:  0; bottom: 0; left: 0; border-radius: 0 0 0 .5rem; transform: skewY(-1.5deg); border: var(--border); background-color: var(--bg-clr); box-shadow: var(--box-shadow); }
.badge:hover::after { background-color: var(--hover-bg-clr); border: var(--hover-border); box-shadow: var(--hover-box-shadow); }
.badge.badge--primary { --clr: rgb(255,255,255); --bg-clr: var(--clr-primary); }
.badge.badge--primary-light { --clr: var(--clr-primary); --bg-clr: var(--clr-primary-20); }


/*** ---------- backdrop ---------- ***/
.wpb-backdrop { background-color: rgba(0,0,0,.45); 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; }

/*** ---------- Function: finckers_nav_menu ---------- ***/
.wpb-menu { list-style: none; }
.wpb-menu .menu-item a { text-decoration: none; transition: color var(--ts-15) ease-in-out; }

/*** ---------- Navigation ---------- ***/
.wpb-navigation { --nav-bg-clr: #fff; position: relative; }
.wpb-navigation .container { display: flex; align-items: center; justify-content: space-between; column-gap: 1rem; padding-top: 2rem; padding-bottom: 2rem; }
.wpb-navigation .logo { display: inline-flex; }
.wpb-navigation .logo img { width: 15.5rem; height: auto; }

.btn.btn--submenu-back,
.btn.btn--close-menu,
.btn.btn--nav-toggle { --fs: 1.6rem; --p: 0 1rem 0 1.6rem; --bg-clr: #fff; --clr: var(--clr-text); --border: 1px solid rgba(var(--clr-primary-rgb), .1); min-height: 4.5rem; --hover-bg-clr: var(--clr-primary); --hover-border: 1px solid var(--clr-border); --hover-clr: #fff; }
.btn.btn--nav-toggle svg { fill: var(--clr); }
.btn.btn--nav-toggle svg rect { transition: y var(--ts-25) ease var(--ts-25), transform var(--ts-25) ease, opacity var(--ts-25), fill var(--ts-25); transform-origin: center; }
.btn.btn--nav-toggle:hover svg rect { fill: var(--hover-clr); }
.btn.btn--nav-toggle:focus svg rect { fill: var(--focus-clr); }
.btn.btn--nav-toggle:active svg rect { fill: var(--active-clr); }
.btn.btn--nav-toggle[aria-expanded="true"] svg rect { fill: var(--active-clr); transition: y var(--ts-25) ease, transform var(--ts-25) ease var(--ts-25), opacity var(--ts-25); }
.btn.btn--nav-toggle[aria-expanded="true"] svg .top { y: 45; transform: rotate(45deg); }
.btn.btn--nav-toggle[aria-expanded="true"] svg .middle { opacity: 0; }
.btn.btn--nav-toggle[aria-expanded="true"] svg .bottom { y: 45; transform: rotate(-45deg); }

.btn.btn--submenu-back { --p: 0 1.6rem 0 1rem; }

.wpb-navigation__collapse { transform: translate3d(100%, 0, 0); width: 100%; display: none; flex-direction: column; position: fixed; top: 0; right: 0; bottom: 0; left: auto; background-color: #fff; z-index: 1030; overflow: hidden; transition: transform var(--ts-35) ease; }
.wpb-navigation__collapse.active { pointer-events: all; transform: translate3d(0%, 0, 0); }
.wpb-navigation__collapse .wpb-collapse__header { padding: 2rem; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--clr-border); }
.wpb-navigation__collapse .wpb-collapse__header span { font-size: 2rem; font-weight: bold; margin: auto; }
.wpb-navigation__collapse .wpb-collapse__body { padding: 1rem 2rem; flex-grow: 1; overflow-y: auto; overscroll-behavior: contain; }
.wpb-navigation__collapse .wpb-collapse__footer { display: grid; grid-template-columns: 1fr; padding: 2rem; row-gap: 2rem; }

.wpb-navigation__collapse.wpb-navigation__collapse--left { transform: translate3d(-100%, 0, 0); left: 0; right: auto; }
.wpb-navigation__collapse.wpb-navigation__collapse--left.active { transform: translate3d(0%, 0, 0); }

.wpb-navigation__search { z-index: 900; position: relative; }
.wpb-navigation__search .wpb-search-results { background-color: #fff; position: absolute; top: 100%; left: 0; z-index: 800; }

.wpb-navigation .menu-item a { display: flex; align-items: center; column-gap: 1.4rem; color: var(--clr-text); width: 100%; font-size: 2.2rem; font-weight: 800; padding: 2.2rem 0; line-height: 1; }
.wpb-navigation .menu-item a img { width: 3.2rem; height: auto; }
/* .wpb-navigation .menu-item + .menu-item { border-top: 1px solid var(--clr-border); } */
.wpb-navigation .menu-item.menu-item--link { margin-top: 1.6rem; }
.wpb-navigation .menu-item.menu-item--link a { justify-content: space-between; color: var(--clr-primary); }
.wpb-navigation .menu-item.menu-item--link a .wpb-icon { --w: 1.4rem; --h: 1.4rem; --clr: var(--clr-primary);  }

/* Submenu */
.wpb-navigation .menu-item-has-children { position: relative; }
.wpb-navigation .menu-item-has-children > a { padding-right: 3.2rem; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; }
.wpb-navigation .menu-item-has-children .wpb-sub-menu { display: flex; flex-direction: column; height: 100%; overflow: hidden; list-style: none; position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: #fff; z-index: 1; overflow-y: auto; transform: translate3d(100%, 0, 0); transition: transform var(--ts-35) ease; }
.wpb-navigation .menu-item-has-children .wpb-sub-menu.active { transform: translate3d(0, 0, 0); }
.wpb-navigation .menu-item-has-children .wpb-sub-menu .wpb-submenu__header { background-color: #fff; padding: 2rem; position: sticky; top: 0; order: -1; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } 
.wpb-navigation .menu-item-has-children .wpb-sub-menu .wpb-submenu__header .btn--submenu-toggle { position: relative; transform: none; top: 0; }
.wpb-navigation .menu-item-has-children .wpb-sub-menu .wpb-submenu__header span { font-size: 2rem; font-weight: bold; margin: auto; }
.wpb-navigation .menu-item-has-children .wpb-sub-menu ul { padding: 2rem; list-style: none; }


.wpb-navigation .menu-item-has-children .btn--submenu-toggle { position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
.wpb-navigation .menu-item-has-children .btn--submenu-toggle::after { --w: 2rem; --h: 2rem; }

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

@media (min-width: 992px) {
    .wpb-navigation { overflow-x: clip; }
    .wpb-navigation .container { padding-top: 0; padding-bottom: 0; column-gap: 5rem; }
    .wpb-navigation .btn.btn--nav-toggle { display: none; }
    .wpb-navigation .wpb-menu { display: flex; align-items: center; column-gap: 2.8rem; }
    .wpb-navigation .wpb-menu > li > a > img { display: none; }
    .wpb-navigation .menu-item a img { width: 2.8rem; }
    .wpb-navigation .menu-item a { font-size: 1.6rem; padding: 2.9rem 0; font-weight: 700; position: relative; }
    .wpb-navigation__collapse { --p-left: 0; --p-right: 0; padding-top: 0; padding-bottom: 0; max-width: inherit; margin-top: 0; display: flex!important; flex-grow: 1; flex-direction: row; position: relative; opacity: 1; z-index: inherit; transform: none; width: auto; overflow: inherit; background-color: transparent!important; }
    .wpb-navigation__collapse .wpb-collapse__header, .wpb-navigation .menu-item-has-children .wpb-sub-menu .wpb-submenu__header { display: none; }
    .wpb-navigation__collapse .wpb-collapse__body { overflow: inherit; padding: 0; }
    .wpb-navigation__collapse .wpb-collapse__footer { padding: 0; }
    .wpb-navigation__collapse .wpb-collapse__footer hr { display: none; }
    .wpb-navigation__collapse .wpb-collapse__footer .wpb-icon--chevron-right { display: none; }

    /* Submenu */
    .wpb-navigation .menu-item-has-children a { position: relative; padding-right: 2rem; transition: box-shadow var(--ts-15) ease-in-out; }
    .wpb-navigation .menu-item-has-children:hover > a { box-shadow: inset 0 -.4rem 0 0 var(--clr-primary); }
    .wpb-navigation .menu-item-has-children > a::after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 0px; height: 0px; transition: bottom var(--ts-15) ease-in-out; }
    .wpb-navigation .menu-item-has-children:hover > a::after { border-style: solid; border-width: 0 5px 5px 5px; border-color: transparent transparent var(--clr-primary) transparent; bottom: .4rem; }
    .wpb-navigation .wpb-menu > .menu-item-has-children > a .btn--submenu-toggle { min-height: 0; padding: 0; transform: translateY(-50%) rotate(90deg); }

    .wpb-navigation .menu-item-has-children::after { display: none; }
    .wpb-navigation .menu-item-has-children:hover > .wpb-sub-menu { pointer-events: all; opacity: 1; }
    .wpb-navigation .menu-item-has-children .btn--submenu-toggle { border: none; --hover-border: none!important; --hover-bg-clr: transparent!important; --hover-clr: var(--clr)!important; width: 1.5rem; height: 1.5rem; }
    .wpb-navigation .menu-item-has-children .btn--submenu-toggle::after { --w: 1.5rem; --h: 1.5rem; transform: rotate(0deg)!important; }
    
    .wpb-navigation .menu-item-has-children .wpb-sub-menu { position: absolute; top: 100%; right: auto; bottom: auto; left: 0; transform: none; width: 100%; padding: 0; min-width: 30rem; padding-top: 3.2rem; padding-bottom: 3.2rem; height: auto!important; background-color: #fff; opacity: 0; overflow: visible; pointer-events: none; z-index: -1; transition: opacity var(--ts-25) ease; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu::after { z-index: -1; content: ''; width: 9999rem; height: calc(100% + 13rem); position: absolute; top: -12rem; left: 50%; transform: translateX(-50%); border-bottom: 1px solid var(--clr-border); background: #fff; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu::before { content: ''; position: absolute; width: 999rem; top: 0; left: 50%; transform: translateX(-50%); border-top: 1px solid var(--clr-border); }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .wpb-sub-menu { transform: none!important; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .menu-item a { font-size: 2.2rem; padding: 2rem 0; transition: color var(--ts-15) ease-in-out; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .menu-item a:hover { color: var(--clr-primary); }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .menu-item-has-children a { padding-right: 2rem; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .menu-item-has-children a .btn--submenu-toggle { right: 1rem; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .wpb-sub-menu { left: 100%; top: 0; transform: none; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu ul { padding: 0; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu .menu-item.menu-item--link { display: none; }
}

@media (min-width: 1200px) {
    .wpb-navigation .menu-item a { font-size: 1.8rem; }
    .wpb-navigation .menu-item-has-children .wpb-sub-menu { min-width: 53rem; }
}

/*** ---------- 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 .wpb-icon.wpb-icon--chevron-right { --w: .6rem; --h: 1rem; min-width: var(--w); }

/*** ---------- Social media ---------- ***/
.wpb-social-media {
    --br: 50%;
    --clr: var(--clr-primary);
    --bg-clr: var(--clr-primary-20);
    --border: none;
    --box-shadow: none;
    --hover-clr: var(--clr-primary-20);
    --hover-bg-clr: var(--clr-primary);
    --hover-border: var(--border);
    --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: 1rem; row-gap: 1rem; }
.wpb-social-media a { background-color: var(--bg-clr); border-radius: var(--br); text-decoration: none; width: 3.5rem; height: 3.5rem; display: inline-grid; place-items: center; transition: background-color var(--ts-15) ease-in-out; }
.wpb-social-media a .wpb-icon { --clr: inherit;; --w: 1.6rem; --h: 1.6rem; }
.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 .wpb-icon { --clr: 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 .wpb-icon { --clr: 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 .wpb-icon { --clr: var(--active-clr); }

/*** ---------- Footer ---------- ***/
.wpb-footer { margin-top: auto; } 
.wpb-footer .wpb-footer__main { --p: 4.8rem; --gc: 1; padding: var(--p) 0 0 0; }
.wpb-footer .wpb-footer__main .container { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); column-gap: 2rem; row-gap: 4.8rem; }

.wpb-footer .logo img { width: 100px; height: auto; }

.wpb-footer .wpb-footer__menu ul { list-style: none; }
.wpb-footer .footer-menu__title { display: block; padding: 0 0 1rem 0; font-size: clamp(2rem, 4vw, 2.4rem); color: inherit; text-decoration: none; text-decoration: none; font-weight: 800; }
.wpb-footer .footer-menu__title * { font-size: clamp(2rem, 4vw, 2.4rem); }
.wpb-footer .menu-item { font-weight: 500; display: flex; align-items: center; justify-content: space-between; text-decoration: none; color: inherit; border-bottom: 1px solid var(--clr-border); padding: 1.2rem 0; transition: color var(--ts-15) ease-in-out; }
.wpb-footer .menu-item::after { --w: 1.2rem; --h: 1.2rem; --clr: var(--clr-primary); }
.wpb-footer .menu-item:hover { color: var(--clr-primary); }

.wpb-footer .wpb-footer__bottom { --p: 4.8rem; padding: var(--p) 0; position: relative; z-index: 1; }
.wpb-footer .wpb-footer__bottom::after { content: ''; width: 100%; height: 0; border-top: 1px solid var(--clr-border); position: absolute; top: 50%; left: 0; z-index: -1; }  
.wpb-footer .wpb-footer__bottom .container { display: flex; flex-direction: column; justify-content: space-between; align-items: center; column-gap: 2rem; row-gap: 2rem; }
.wpb-footer .wpb-footer__bottom .sub-links { --fs: 1.4rem; text-align: center; display: flex; align-items: center; }
.wpb-footer .wpb-footer__bottom .sub-links figure { background-color: #fff; padding: 0 1.2rem; margin-right: 2rem; }
.wpb-footer .wpb-footer__bottom .sub-links figure img { width: 2.5rem; }
.wpb-footer .wpb-footer__bottom .sub-links ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; row-gap: 1rem; }
.wpb-footer .wpb-footer__bottom .sub-links ul li a { display: inline-flex; align-items: center; font-weight: 500; min-height: 4.4rem; display: flex; column-gap: 2rem; text-decoration: none; background-color: #fff; padding-inline: 1.2rem; line-height: 1; transition: color var(--ts-15) ease-in-out; }
.wpb-footer .wpb-footer__bottom .sub-links ul li a:hover { color: var(--clr-primary); }
.wpb-footer .wpb-footer__info { padding-bottom: 3.2rem; }

@media (min-width: 576px) {
    .wpb-footer .wpb-footer__main { --gc: 2; }
}

@media (min-width: 768px) {
    .wpb-footer .wpb-footer__bottom .container { flex-direction: row; }
}

@media (min-width: 992px) {
    .wpb-footer .wpb-footer__main { --gc: 4; --p: 8rem; }
    .wpb-footer .menu-item { font-size: 1.8rem; }
    .wpb-footer .wpb-footer__bottom { --p: 6.4rem; }
}

@media (min-width: 1200px) {
    .wpb-footer .wpb-footer__main .container { column-gap: 4.3rem; }
}



/*** ---------- Modal ---------- ***/
.modal { --modal-br: 1.6rem; --modal-p: 2rem; --modal-backdrop: rgba(0,0,0,.45); position: fixed; top: 0; right: 0; bottom: 0; left: 0; opacity: 0; pointer-events: none; padding: 2rem; background-color: var(--modal-backdrop); 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-15) 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; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; border-radius: var(--modal-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; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: var(--modal-p); background-color: #fff; font-family: inherit; }
.modal .modal-dialog .modal-dialog__header .modal-title { font-size: 2rem; margin: 0; }
.modal .modal-dialog .modal-dialog__header .btn-close { cursor: pointer; background-color: transparent; width: 3.2rem; height: 3.2rem; border-radius: 50%; border: 1px solid var(--clr-border); display: inline-grid; place-items: center; transition: background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out; }
.modal .modal-dialog .modal-dialog__header .btn-close i { --w: 1.4rem; --h: 1.4rem; }
.modal .modal-dialog .modal-dialog__header .btn-close:hover { border-color: var(--clr-primary); background-color: var(--clr-primary); }
.modal .modal-dialog .modal-dialog__header .btn-close:hover i { --clr: rgb(255,255,255); } 
.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(--modal-p); overflow-y: auto; overflow-x: hidden; }
.modal .modal-dialog .modal-dialog__footer { display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; border-top: 1px solid #E4E9EA; background-color: #fff; padding: var(--modal-p); z-index: 2; margin-top: auto; }

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

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

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

/*** ---------- Tooltips ---------- ***/
.wpb-tooltip { --bg: #fff; 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: .35rem; 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; }

/*** ---------- Forms ---------- ***/

label { display: inline-block; }

.form-group { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; } 
.form-group.form-group--flush { gap: 0rem; } 
.form-group .form-control { width: auto; display: inline-block; flex-grow: 1; }

.form-check, .woocommerce-form__label { display: block; min-height: 1.5rem; padding-left: 1.5em; margin-bottom: 0.125rem; }
.form-check { display: flex; align-items: center; column-gap: .6rem; }
.form-check label { font-size: 1.6rem; font-weight: 500; }

.form-check-inline { display: inline-block; margin-right: 1rem; }

.btn-check { position: absolute; pointer-events: none; opacity: 0; left: -9999rem; }
.btn-check + .btn { --active-color: #fff; --active-bg-clr: #1f1f1f; --active-border: 1px solid #000; }

.btn-check:checked + .btn { background-color: var(--active-bg-clr); color: var(--active-color); border: var(--active-border); }

/*** ---------- 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-15) 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 button .wpb-icon { 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 button .wpb-icon { order: 9999; transform: rotate(-90deg); }
.wpb-dropdown button[aria-expanded="true"] + .wpb-dropdown__menu { opacity: 1; pointer-events: all; z-index: 850; }  

/*** ---------- Tables ---------- ***/
/* .wpb-table { overflow-x: auto; }
table { --color: var(--clr-text); --bg-clr: transparent; --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%; margin-bottom: 1rem; color: var(--table-clr); vertical-align: top; border-color: var(--border-clr); }
table > thead { vertical-align: bottom; }
tbody, td, tfoot, th, thead, tr { border-color: inherit; border-style: solid; border-width: 0; }
table > * > * > * { padding: 0.5rem 0.5rem; background-color: var(--bg-clr); border-bottom-width: var(--border-width); } 
table > tbody { vertical-align: inherit; } */

/*** ---------- Filters ---------- ***/
.wpb-toolbar .container { display: grid; }

@media (width > 576px) {
    .wpb-toolbar .container { grid-template-columns: 1fr 20rem; }
}

/*** ---------- Pagination ---------- ***/
.wpb-pagination { --p: 0; --clr: var(--clr-text); --bg-clr: rgb(255,255,255); --border: 1px solid transparent; --br: 4rem; --hover-clr: rgb(255,255,255); --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); position: relative; }
.wpb-pagination .has-prev-next { padding-left: 3.8rem; padding-right: 3.8rem; } 
.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 span { width: 3.8rem; height: 3.8rem; display: inline-grid; place-items: center; font-weight: 600; font-size: 1.6rem; line-height: 1.6; color: #000; color: inherit; padding: var(--p); color: var(--clr); background-color: var(--bg-clr); border-radius: var(--br); border: var(--border); text-align: center; text-decoration: none; vertical-align: middle; cursor: pointer; user-select: none; transition: color var(--ts-15) ease-in-out, background-color var(--ts-15) ease-in-out, border-color var(--ts-15) ease-in-out; }
.wpb-pagination li span .wpb-icon { --w: 1.5rem; --h: 1.5rem; pointer-events: none; }
.wpb-pagination li span:hover .wpb-icon { --clr: var(--hover-clr) }
.wpb-pagination li :is(span:hover, span:focus, span:active) { color: var(--hover-clr); background-color: var(--hover-bg-clr); border: var(--hover-border); }
.wpb-pagination li span.current { color: var(--active-color); background-color: var(--active-bg-clr); border: var(--active-border); }
.wpb-pagination li .page-number__prev { position: absolute; left: 0; }
.wpb-pagination li .page-number__next { position: absolute; right: 0; }


/*** ---------- Owl carousel ---------- ***/
.owl-carousel .owl-nav { display: flex; justify-content: end; column-gap: 1rem; margin-top: 2rem; }
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev { width: 3.5rem; height: 3.5rem; border-radius: 50%; background: var(--clr-primary)!important; }
.owl-carousel .owl-nav button.owl-next i, .owl-carousel .owl-nav button.owl-prev i { --clr: #fff; } 

/*** ---------- Finckers offcanvas ---------- ***/
.wpb-offcanvas { width: 100%; position: fixed; top: 0; right: 0; bottom: 0; left: auto; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; 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); }

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

/*** ---------- Page: 404 ---------- ***/
body.error404 .wpb-header .wpb-text { text-align: center; }
.wpb-text--404 .wpb-text { text-align: center; }
.wpb-text--404 .wpb-text p { margin-bottom: 1.6rem; }
.wpb-text--404 form { position: relative; margin-bottom: 1.6rem; }
.wpb-text--404 form [type="submit"] { display: inline-flex; cursor: pointer; user-select: none; padding: .25rem 1rem; border: none; background: none; position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
.wpb-text--404 form [type="submit"] img { width: 1.5rem; }

/*** ---------- Page: Contact ---------- ***/
.wpb-contact { --gc: 1; --gap: 2.2rem; }
.wpb-contact .inner { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); gap: var(--gap); -webkit-box-align: start; -ms-flex-align: start; align-items: start; }

/* Contact links */
.contact-link { margin-top: 1rem; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; text-decoration: none; }
.contact-link strong { display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 1rem; width: 100%; }

@media (min-width: 768px) {
    .wpb-contact { --gc: 2; --gap: 3.2rem; }
}

@media (min-width: 992px) {
    .wpb-contact .inner { grid-template-columns: minmax(0, 1fr) minmax(0, 40rem); --gap: 4.8rem; }
}

/*** ---------- Archive ---------- ***/
.wpb-archive { --gc: 1; --gap: 2.2rem; }
.wpb-archive .container.container--results { display: grid; grid-template-columns: repeat(var(--gc), minmax(0, 1fr)); gap: var(--gap); }

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

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

/*** ---------- Single ---------- ***/
.wpb-related--posts { --gc: 1; --gap: 3.2rem; }
.wpb-related--posts .wpb-text { margin-bottom: 3.2rem; }
.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: 3.2rem; }

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

    .wpb-content .container { grid-template-columns: minmax(0, 1fr) minmax(0, 43.9rem); column-gap: 7.5rem; }
}

@media (min-width: 1200px) {
    .wpb-content .container { grid-template-columns: minmax(0, 1fr) minmax(0, 43.9rem); column-gap: 9.1rem; }
}

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

/*** ---------- 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-15) 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; }

/*** ---------- 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 > * { 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 .wpb-icon-wrapper { width: 2.8rem; height: 2.8rem; }
.wpb-alert.wpb-alert-icon .wpb-icon-wrapper::after{ --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); }

/*** ---------- Finckers 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('/wp-content/themes/actuelerentestanden/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: finckers_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; }

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

@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 .wpb-icon, .saved-success .wpb-icon { --clr: rgb(255,255,255); }
.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 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; }
}
@keyframes hearth-beat {
    0% { transform: scale(1); }
    50% { transform: scale(1.1); }
    100% { transform: scale(1); }
}

.wpb-results .wpb-offcanvas--filters .wpb-offcanvas__body { overflow: auto !important; }