/*-------------------------------------------------------------------------------------
                        GRID SECTION
-------------------------------------------------------------------------------------*/
.dp-section-default {
    padding-block: var(--space-section-block);
}
.dp-section-grid {
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(1rem, var(--viewport)) 
        minmax(var(--space-section-inline), 1fr);
    gap: 2.5em 0;
}
.dp-section-grid > * {
    grid-column: 2 / span 1;
}
.dp-heading-accent {
    margin-bottom: 0;
}
.dp-heading-main {
    margin-top: 0;
}
.dp-sub-heading {
    margin-top: var(--space-xs);
}
.dp-bg-gradient--blue {
    background-image: linear-gradient(to right, #12182f, #094060);
}
/*-------------------------------------------------------------------------------------
                        VERTICAL DIVIDERS
-------------------------------------------------------------------------------------*/
.dp-vertical-divider-top, 
.dp-vertical-divider-bottom {
    --_vertical-margin: 4rem;
    --_line-height: clamp(20rem, calc(20rem + ((1vw - 0.48rem) * 11.2867)), 30rem);
    position: relative;
}
.dp-vertical-divider-top {
    margin-top: calc( var(--_line-height) + 2*var(--_vertical-margin));
}
.dp-vertical-divider-bottom {
    margin-bottom: calc( var(--_line-height) + 2*var(--_vertical-margin));
}
.dp-vertical-divider-top::before, 
.dp-vertical-divider-bottom::before {
    content: "";
    position: absolute;
    left: 50%;
    width: 2px;
    height: var(--_line-height);
    background-color: var(--clr-black);
}
.dp-vertical-divider-top::before {
    top: calc(-1*var(--_vertical-margin));
    transform: translateY(-100%);
}
.dp-vertical-divider-bottom::before {
    bottom: calc(-1*var(--_vertical-margin));
    transform: translateY(100%);
}
/*-------------------------------------------------------------------------------------
                        HOME HERO
-------------------------------------------------------------------------------------*/
.dp-hero-grid-home {
    display: grid;
    grid-template-columns: 
        [full-width-start bg-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start hero-intro-start hero-tease-start hero-main-start] 
        minmax(1rem, var(--viewport)) 
        [viewport-end hero-intro-end hero-tease-end hero-main-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end bg-end];
    grid-template-rows: 
        [full-width-start hero-intro-start] 
        auto 
        [hero-intro-end hero-tease-start bg-start] 
        auto 
        [hero-tease-end hero-main-start bg-start] 
        auto 
        [full-width-end hero-main-end bg-end];
    background-color: var(--clr-dark);
    position: relative;
    isolation: isolate;
}
.dp-home-hero-intro {
    grid-area: hero-intro;
    display: flex;
    align-items: flex-end;
    padding-block: var(--section-space-m);
    min-height: 50vh;
    min-height: 50svh;
}
.dp-home-hero-main {
    grid-area: hero-tease;
    padding-block: var(--section-space-m);
    min-height: 50vh;
}
.dp-home-hero-main::before {
    content: "";
    position: absolute;
    inset: 0;
    grid-area: bg;
    background-image: var(--clr-gradient-blue);
    z-index: -1;
}
:is(.dp-home-hero-main__accent, .dp-home-hero-intro p) {
    font-size: calc(1.1*var(--text-xl));
}
.dp-hero-home-main__content {
    grid-area: hero-main;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: calc(100vh - var(--menu-height));
    min-height: calc(100svh - var(--menu-height));
}
.dp-home-hero-main__intro {
    margin-top: var(--space-m);
    max-width: 70ch;
}
/*-------------------------------------------------------------------------------------
                        SINGLE SERVICES
-------------------------------------------------------------------------------------*/
.dp-hero-grid {
    align-items: center;
    padding-block: var(--space-section-block);
    height: 60vh;
    height: 60svh;
}
.dp-header--overlay + main > .dp-hero-grid {
    padding-top: calc(var(--space-section-block) + var(--menu-height));
    padding-bottom: var(--space-section-block);
}
.dp-header--overlay + main > .dp-hero-grid-home {
    /* padding-top: calc(var(--space-section-block) + var(--menu-height)); */
    padding-bottom: 0;
}
/*------------------------------------------------------------------------------------
                    SINGLE CASE STUDY HERO
-------------------------------------------------------------------------------------*/
.dp-hero-case {
    display: grid;
    grid-template-columns: 
        [full-width-start media-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start content-start] 
        minmax(1rem, var(--viewport)) 
        [viewport-end content-end]
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end media-end];
    grid-template-rows: 
        [full-width-start media-start content-start] 
        1fr 
        [full-width-end media-end content-end];
    position: relative;
    isolation: isolate;
    place-items: center;
    height: 55vh;
    height: 55svh;
}
.dp-hero-case__content {
    grid-area: content;
}
.dp-hero-case__media {
    grid-area: media;
}
.dp-hero-case__media-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.dp-hero-case__heading {
    font-size: var(--h2);
}
.dp-hero-case__subheading {
    font-size: var(--h4);
    font-weight: var(--fw-regular);
    line-height: var(--lh-body);
    /* width: min(100%, 45ch); */
}
/*------------------------------------------------------------------------------------
                    SINGLE POST HERO
-------------------------------------------------------------------------------------*/
.dp-post-hero {
    --_media-height: 40vh;
    --_cover-percentage: .75;
    --_content-entry: calc( var(--_media-height) * var(--_cover-percentage) );
    display: grid;
    grid-template-columns: 
        [hero-start media-start] 
        minmax(var(--space-section-inline), 1fr) 
        [content-start] 
        minmax(0, var(--viewport)) 
        [content-end] 
        minmax(var(--space-section-inline), 1fr)
        [hero-end media-end];
    grid-template-rows: 
        [hero-start media-start] 
        var(--_content-entry) 
        [content-start] 
        calc( var(--_media-height) - var(--_content-entry) ) 
        [media-end] 
        auto 
        [hero-end content-end];
}
.dp-post-hero-info {
    grid-area: content;
    align-self: center;
    background-color: #faf9f6;
    padding: var(--space-l) var(--space-m);
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
}
.dp-post-hero-info-details {
    display: flex;
    align-items: center;
    gap: var(--space-s);
}
.dp-post-hero-info-details__author-img {
    width: 100%;
    max-width: 6rem;
    flex-shrink: 0;
    overflow: hidden;
    border-radius: 100vmax;
    aspect-ratio: 1 / 1;
}
.dp-post-hero-info-details__author-img > img {
    height: 100%;
}
.dp-post-hero-info-details__categories {
    display: flex;
    font-size: 1.6rem;
}
.dp-post-hero-info-details__categories > * + * {
    margin-left: 1rem;
    margin-top: 0;
}
:is(.dp-post-hero-img, .dp-post-hero-accent) {
    grid-area: media;
}
dp-post-hero-img {
    overflow: hidden;
}
.dp-post-hero-img > img {
    height: 100%;
}
.dp-post-hero-accent {
    background-image: var(--clr-gradient-blue);
    display: flex;
    align-items: center;
    justify-content: center;
}
.dp-post-hero__heading-accent > span {
    display: block;
    text-align: center;
    font-size: calc(1.1*var(--h3));
    line-height: var(--lh-heading);
    color: var(--clr-white);
    letter-spacing: 1.2px;
}
@media only screen and (max-width: 767px) {
    .dp-post-hero-info-details {
        flex-direction: column;
        align-items: flex-start;
    }
}
/*------------------------------------------------------------------------------------
                    SINGLE POST BODY
-------------------------------------------------------------------------------------*/
.dp-post-body {
    --_division: 4;
    --_anchor-width: 1;
    --_main-width: calc( var(--_division) - var(--_anchor-width) );
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(0, calc(var(--_anchor-width)*var(--viewport) / var(--_division)) )
        minmax(0, calc(var(--_main-width)*var(--viewport) / var(--_division)) )
        minmax(var(--space-section-inline), 1fr);
    grid-template-areas: 
        "... anchors post-main ..." 
        "... faqs faqs ..." 
        "... related related ...";
    padding-block: var(--space-section-block);
}
.dp-post-body-anchors {
    grid-area: anchors;
    /* background-color: darksalmon; */
    min-height: 140px;
}
.dp-anchor-links-wrapper {
    position: sticky;
    position: -webkit-sticky;
    top: calc( 2rem + var(--menu-height) );
    padding-inline: var(--space-m);
    padding-block: var(--space-m);
    border: 1px solid var(--clr-base);
}
.dp-anchor-links-title {
    font-weight: var(--fw-bold);
    text-align: center;
    padding-bottom: var(--space-s);
    border-bottom: 1px solid var(--clr-base);
}
.dp-anchor-links-list > * + * {
    margin-top: .75em;
}
.dp-anchor-links-item {
    line-height: 1.4;
}
.dp-anchor-links-item .dp-anchor-links-item__link {
    font-weight: var(--fw-regular);
    color: var(--clr-base);
    transition: color 250ms ease-in-out;
    font-size: calc(.9*var(--text-m));
}
.dp-anchor-links-item__link:hover {
    color: var(--clr-accent);
}
.dp-post-body-main {
    grid-area: post-main;
    padding-left: var(--space-l);
}
.dp-faqs, 
.dp-post-body-faqs {
    grid-area: faqs;
    gap: 0 var(--space-l);
}
.dp-post-body-faqs {
    /* margin-top: calc(1.2*var(--margin-heading-wide)); */
    margin-top: calc(1.2*var(--space-xl));
}
.dp-title-gap--l .dp-faqs-title {
    margin-bottom: 1.5em;
}
.dp-related-posts {
    grid-area: related;
    margin-top: calc(1.2*var(--space-xl));
}
@media only screen and (max-width: 991px) {
    .dp-post-body {
        grid-template-columns: 
            minmax(var(--space-section-inline), 1fr) 
            minmax(0, var(--viewport) )
            minmax(var(--space-section-inline), 1fr);
        grid-template-areas: 
            "... anchors ..." 
            "... post-main ..." 
            "... faqs ..." 
            "... related ...";
        padding-top: var(--space-section-block);
    }
    .dp-post-body-faqs {
        gap: var(--space-l) 0;
    }
    .dp-post-body-anchors {
        padding-right: revert;
        margin-bottom: var(--space-m);
    }
    .dp-post-body-main {
        padding-left: revert;
    }
}
/*------------------------------------------------------------------------------------
                    SINGLE RELATED POSTS
-------------------------------------------------------------------------------------*/
.dp-related-posts-title {
    margin-bottom: var(--section-space-xs);
}
.dp-related-posts-item {
    display: flex;
    flex-direction: column;
    position: relative;
}
.dp-related-posts-item__title {
    font-size: var(--h5);
    padding-top: .5em;
    line-height: 1.4;
    text-wrap: unset;
}
.dp-related-posts-item__img {
    order: -2;
}
.dp-related-posts-item__link {
    color: var(--clr-base);
    font-weight: var(--fw-regular);
    transition: color 250ms ease-in-out;
}
.dp-related-posts-item:hover .dp-related-posts-item__link {
    color: var(--clr-accent);
}
/*------------------------------------------------------------------------------
                    ARCHIVE BLOG
-------------------------------------------------------------------------------*/
.dp-post-item-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .6em;
    width: 100%;
    font-size: 15px;
    padding-block: .5em;
    order: -1;
}
.dp-blog-archive-item__img {
    order: -2;
}
/*------------------------------------------------------------------------------
                    CONTACT PAGE TEMPLATE
-------------------------------------------------------------------------------*/
.dp-contact-block {
    display: flex;
    flex-direction: column;
    gap: 1em;
}
.dp-split-media-text-breakout-text.dp-contact-block-wrapper {
    grid-row: 1 / -1;
    align-self: center;
}
.dp-contact-block-info-wrapper {
    --_icon-size: 30px;
    display: flex;
    gap: .6em;
}
.dp-contact-block-info-icon-wrapper {
    width: var(--_icon-size);
    height: var(--_icon-size);
    display: flex;
    align-items: center;
    padding: 8px;
    border: 1px solid var(--clr-base);
    border-radius: 50%;
    overflow: hidden;
}
.dp-contact-block-info-icon-wrapper > svg {
    --_size: 14px;
    width: var(--_size);
    height: var(--_size);
}
.dp-split-media-text-breakout-media > iframe {
    border: 0;
}
@media only screen and (max-width: 767px) {
    .dp-split-media-text-breakout-text.dp-contact-block-wrapper {
        grid-row: revert;
        /* align-self: center; */
    }
}
/*------------------------------------------------------------------------------
                    BLOG PAGINATION
-------------------------------------------------------------------------------*/
nav.pagination {
    --_fs-current: 3rem;
    --_fs-hover: calc( var(--_fs-current) - .5rem );
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding: var(--space-l) 0;
}
.nav-links ul {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    gap: 1rem;
}
.nav-links ul li {
    --_page-size: 4.8rem;
    overflow: hidden;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: var(--_page-size);
    height: var(--_page-size);
}
.nav-links ul li span.current {
    font-size: var(--_fs-current);
    font-weight: var(--fw-bold);
    color: var(--clr-primary);
}
.nav-links ul li span {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    transition: all 300ms ease-in-out;
}
.nav-links ul li span.dots {
    color: var(--clr-primary);
    font-size: 2.2rem;
}
.nav-links ul li a {
    font-weight: var(--fw-regular);
    color: var(--clr-base);
    transition: all 300ms ease-in-out;
}
.nav-links ul li a:hover {
    text-decoration: none;
    color: var(--clr-accent);
    font-size: var(--_fs-hover);
}
.dp-blog-pagination__icon > svg {
    fill: var(--clr-primary);
    width: 4rem;
    transition: fill 300ms ease-in-out;
}
.nav-links :where(.prev:hover, .next:hover) .dp-blog-pagination__icon {
    fill: var(--clr-white);
}
/*------------------------------------------------------------------------------
                    CAROUSEL ARROWS
-------------------------------------------------------------------------------*/
.dp-splide-arrows--main, 
.dp-section--carousel {
    --_button-size: 4rem;
}
.dp-simple-carousel {
    margin-top: calc(var(--space-l) + var(--_button-size));
}
.dp-splide-arrows--main .splide__arrow {
    --_svg-size: 2rem;
    width: var(--_button-size);
    height: var(--_button-size);
    background: var(--clr-transparent);
    opacity: 1;
}
.dp-splide-arrows--main .splide__arrow:disabled {
    opacity: .3;
}
.dp-splide-arrows--main .splide__arrow svg {
    fill: var(--clr-base);
    width: 100%;
    transition: fill 300ms ease-in-out;
}
.dp-splide-arrows--main .splide__arrow:hover svg {
    fill: var(--clr-accent);
    /* width: 100%; */
}
.dp-splide-arrows--top .splide__arrow {
    top: 0;
    transform: translateY(-100%);
}
.dp-splide-arrows--top .splide__arrow--next {
    right: 0;
}
.dp-splide-arrows--top .splide__arrow--prev {
    left: calc(100% - 2.5*var(--_button-size) );
}
/*----------------------------------------------------------------
                    HEADER
------------------------------------------------------------------*/
.dp-header--main {
    --_transition-duration: 250ms;
    --_logo-width: 100px;
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(1rem, var(--_logo-width)) 
        minmax(1rem, calc(var(--viewport) - var(--_logo-width))) 
        minmax(var(--space-section-inline), 1fr);
    grid-template-areas: "... logo nav ...";
    align-items: center;
    height: var(--menu-height);
    z-index: var(--z-index-sticky-menu);
    transition: all var(--_transition-duration) ease-in-out;
}
.dp-menu-logo {
    grid-area: logo;
    width: 100%;
    display: flex;
    transition: opacity var(--_transition-duration) ease-in-out;
}
.dp-menu-nav {
    grid-area: nav;
    display: flex;
    justify-content: flex-end;
    width: 100%;
}
.dp-menu-toggle-container {
    grid-area: nav;
    display: none;
}
.dp-menu-list {
    display: flex;
    gap: 1em;
}
.dp-menu-list a {
    letter-spacing: .25em;
    font-size: 1.7rem;
    color: var(--clr-base);
}
.dp-header--sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    background-color: var(--clr-white);
}
.dp-header--overlay {
    position: fixed;
    width: 100%;
    background-color: var(--clr-transparent);
    transition: background-color var(--_transition-duration) ease-in-out;
}
.dp-header--overlay.dp-overlay-opened {
    background-color: var(--clr-white);
}
.dp-header--overlay svg {
    fill: var(--clr-white);
    transition: fill var(--_transition-duration) ease-in-out;
}
.dp-header--overlay a {
    color: var(--clr-white);
}
.dp-header--overlay.dp-overlay-opened a {
    color: var(--clr-base);
}
.dp-scrolling {
    background-color: var(--clr-white);
    box-shadow: 0px 5px 20px -10px rgba(0,0,0,.3);
    transition: all var(--_transition-duration) ease-in-out;
}
.dp-header--overlay.dp-scrolling.dp-overlay-opened {
    background-color: var(--clr-white);
}
.dp-scrolling svg {
    fill: var(--clr-black);
}
.dp-scrolling a {
    color: var(--clr-base);
}
/*----------------------------------------------------------------
                    MAIN MENU TOP TOGGLER
------------------------------------------------------------------*/
.dp-menu-toggle {
    position: relative;
    display: flex;
    align-items: center;
    gap: .5rem;
    background: var(--clr-transparent);
    border: none;
    cursor: pointer;
}
.dp-menu-toggle[aria-expanded="true"] {
    z-index: calc(var(--z-index-menu) + 1);
}
.dp-menu-toggle[aria-expanded="true"] .dp-hamburger-container {
    --_btn-size: 3rem;
    display: flex;
    justify-content: center;
    width: var(--_btn-size);
    height: var(--_btn-size);
    padding: 2rem;
    border-radius: 100vw;
}
.dp-hamburger-container {
    position: absolute;
    left: -33px;
    height: 2rem;
    display: flex;
    align-items: center;
    cursor: pointer;
}
.dp-hamburger,
.dp-hamburger::before,
.dp-hamburger::after {
    --_height: 2px;
    content: "";
    display: block;
    height: var(--_height);
    border-radius: 3px;
    transition: all var(--_transition-duration) ease-in-out;
    background-color: var(--clr-black);
}
.dp-header--overlay .dp-hamburger, 
.dp-header--overlay .dp-hamburger::before, 
.dp-header--overlay .dp-hamburger::after {
    background-color: var(--clr-white);
}
.dp-scrolling .dp-hamburger, 
.dp-scrolling .dp-hamburger::before, 
.dp-scrolling .dp-hamburger::after {
    background-color: var(--clr-black);
}
.dp-hamburger {
    width: 1.75em;
}
.dp-hamburger::before {
    transform: translateY(calc(-3*var(--_height)));
    width: 1.35em;
    margin-left: auto;
}
.dp-hamburger::after {
    transform: translateY(calc( 2*var(--_height) ));
    width: 1em;
    margin-left: auto;
}
[aria-expanded="true"] .dp-hamburger, 
[aria-expanded="true"] .dp-hamburger::before, 
[aria-expanded="true"] .dp-hamburger::after {
    width: 1.75em;
    background-color: var(--clr-black);
}
[aria-expanded="true"] .dp-hamburger {
    transform: rotate(45deg);
}
[aria-expanded="true"] .dp-hamburger::before {
    opacity: 0;
}
[aria-expanded="true"] .dp-hamburger::after {
    transform: translateY(calc(-1*var(--_height))) rotate(-90deg);
}
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@media only screen and (max-width: 767px) {
    .dp-header--main {
        --_logo-width: 80px;
        grid-template-rows: var(--menu-height) auto;
        grid-template-areas: 
            "... logo toggle ..." 
            "nav nav nav nav"; 
        height: auto;
    }
    .dp-menu-nav, 
    .dp-menu-nav[data-state="opened"] {
        display: grid;
        justify-content: center;
        grid-template-rows: calc( 100vh - var(--menu-height) );
        animation: fadeIn var(--_transition-duration) ease-in-out forwards;
        position: absolute;
        top: 0;
        width: 100vw;
        background-color: var(--clr-white);
    }
    .dp-menu-nav[data-state="closing"] {
        animation: fadeOut var(--_transition-duration) ease-in-out forwards;
    }
    .dp-menu-nav[data-state="closed"] {
        display: none;
        opacity: 0;
    }
    .dp-menu-list {
        flex-direction: column;
        text-align: center;
        gap: 1em;
        padding-inline: var(--space-section-inline);
    }
    .dp-menu-toggle-container {
        grid-area: toggle;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    .dp-visibility-hidden {
        visibility: hidden;
        opacity: 0;
    }
}
/*----------------------------------------------------------------
                    FOOTER
------------------------------------------------------------------*/
.dp-footer-cta {
    --_cta_height: 10em;    
}
.dp-footer-cta-none {
    --_cta_height: .1em;    
}
.dp-footer--main {
    --_bg-color: var(--clr-dark);
    --_items-gap: .7em;
    --_cta_width: calc(.5*var(--viewport));
    --_side_width: calc((var(--viewport) - var(--_cta_width)) / 2);
    display: grid;
    grid-template-columns: 
        [full-width-start bg-start] 
        minmax( var(--space-section-inline), 1fr) 
        [copy-start logo-start cta-start] 
        minmax(0, var(--_side_width)) 
        [copy-end logo-end social-start] 
        minmax(0, var(--_cta_width)) 
        [social-end contact-start] 
        minmax(0, var(--_side_width)) 
        [cta-end contact-end] 
        minmax( var(--space-section-inline), 1fr) 
        [full-width-end bg-end];
    grid-template-rows: 
        [full-width-start] 
        minmax(1rem, var(--space-section-block)) 
        [cta-start] 
        minmax(auto, var(--_cta_height)) 
        [bg-start] 
        minmax(auto, calc(1.5*var(--_cta_height))) 
        [cta-end logo-start] 
        auto 
        [logo-end copy-start social-start contact-start] 
        auto 
        [copy-end social-end contact-end] 
        minmax(1.4em, var(--space-m)) 
        [full-width-end bg-end];
    position: relative;
    isolation: isolate;
    font-size: 1.5rem;
}
.dp-footer-main-cta-wrapper {
    grid-area: cta;
    display: flex;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.dp-footer-main-cta {
    display: grid;
    place-items: center;
    isolation: isolate;
    width: 100%;
    max-width: 900px;
}
.dp-footer-main-cta__content, 
.dp-footer-main-cta__media {
    grid-row: 1 / -1;
    grid-column: 1 / -1;
}
.dp-footer-main-cta__media {
    position: relative;
    z-index: -1;
    width: 100%;
    height: 100%;
}
.dp-footer-main-cta__media img {
    position: absolute;
    object-fit: cover;
    height: 100%;
}
.dp-footer-logo {
    grid-area: logo;
    padding-top: 6em;
    padding-bottom: var(--space-s);
    justify-self: start;
}
.dp-footer-logo svg {
    fill: var(--clr-white);
    height: 4rem;
}
.dp-footer-copy {
    grid-area: copy;
    gap: var(--_items-gap);
}
.dp-footer-copy > :is(*, p) {
    margin-bottom: 0;
}
.dp-footer-copy::before {
    content: "";
    position: absolute;
    inset: 0;
    grid-area: bg;
    background-color: var(--_bg-color);
    z-index: -1;
}
.dp-footer-social {
    grid-area: social;
}
.dp-footer-contact {
    grid-area: contact;
    display: flex;
    flex-direction: column;
    gap: var(--_items-gap);
    justify-self: end;
    align-items: flex-end;
}
:is(.dp-footer-logo, .dp-footer-copy, .dp-footer-social, .dp-footer-contact) {
    background-color: var(--_bg-color);
}
.dp-footer--main p:not([class]) {
    font-size: 1.5rem;
}
@media only screen and (max-width: 991px) {
    .dp-footer--main {
        --_cta_width: calc(.7*var(--viewport));
    }
}
@media only screen and (max-width: 767px) {
    .dp-footer--main {
        --_cta_width: var(--viewport);
        --_col-width: var(--viewport);
        grid-template-columns: 
            [full-width-start bg-start] 
            minmax( var(--space-section-inline), 1fr ) 
            [cta-start logo-start copy-start social-start contact-start]  
            repeat(1, minmax(0, var(--_col-width) ) ) 
            [cta-end logo-end copy-end social-end contact-end] 
            minmax( var(--space-section-inline), 1fr ) 
            [full-width-end bg-end];
        grid-template-rows: 
            [full-width-start] 
            minmax(1rem, var(--space-section-block)) 
            [cta-start] 
            minmax(auto, var(--_cta_height)) 
            [bg-start] 
            minmax(auto, var(--_cta_height)) 
            [cta-end logo-start] 
            auto 
            [logo-end copy-start] 
            auto 
            [copy-end social-start] 
            auto 
            [social-end contact-start] 
            auto 
            [contact-end] 
            minmax(1.4em, var(--space-m)) 
            [full-width-end bg-end];
        place-items: center;
    }
    .dp-footer-main-cta {
        width: 100%;
    }
    .dp-footer-contact {
        justify-self: revert;
        align-items: revert;
    }
    .dp-footer-logo {
        justify-self: center;
        padding-block: var(--space-l);
    }
    .dp-footer-copy, 
    .dp-footer-contact {
        text-align: center;
    }
    .dp-footer-social {
        margin-block: var(--space-l);
    }
}
/*----------------------------------------------------------------------------
                    FOOTER STICKY
-----------------------------------------------------------------------------*/
.dp-bottom-bar {
    position: sticky;
    bottom: 0;
    z-index: 99;    
}
.dp-bottom-bar-actions {
    --_margin-bottom: 7.6rem;
    --_el-height: 2.6em;
    display: flex;
    justify-content: flex-end;
    z-index: -9;
    height: 0;
}
/*-----------------------------------------------------------------------------
        BACK TO TOP
-----------------------------------------------------------------------------*/
.dp-btn-btt {
    position: relative;
    right: 3rem;
    bottom: -20rem;
    height: var(--_el-height);
    z-index: 99999;
    line-height: 1;
    padding: 1rem;
    border: 1px solid var(--clr-base);
    background-color: var(--clr-white);
    /* mix-blend-mode: difference; */
    box-shadow: 0 10px 20px -5px rgba(0,0,0,.3);
    transition: bottom 250ms ease, transform 300ms ease-in-out, background-color 300ms ease-in-out;
    cursor: pointer;
}
.dp-btn-btt > svg {
    fill: var(--clr-primary);
    transition: fill 300ms ease-in-out;
}
.dp-btn-btt.dp-visible {
    bottom: var(--_margin-bottom);
}
.dp-btn-btt:hover, 
.dp-btn-btt:focus {
    background-color: var(--clr-accent);
}
:is(.dp-btn-btt:hover, .dp-btn-btt:focus) > svg {
    fill: var(--clr-white);
}
@media only screen and (max-width: 767px) {
    .dp-btn-btt {
        display: none;
    }
}
/*------------------------------------------------------------------------------
                   MODULE ACCORDIONS
-------------------------------------------------------------------------------*/
.dp-split-content-accordions-wrapper h2 {
    margin-bottom: 1.2em;
}
.dp-split-content-accordions__accordions {
    display: flex;
    flex-direction: column;
}
.dp-accordion-title {
    position: relative;
    width: 100%;
    text-wrap: unset;
}
.dp-faqs-title, .dp-post-body-faqs-title {
    grid-column: 1 / -1;
}
.dp-faqs-title-default .dp-faqs-title {
    margin-bottom: var(--section-space-s);
}
.dp-faqs-title-post .dp-faqs-title {
    margin-bottom: var(--section-space-xs);
}
.dp-accordion-trigger {
    background: hsla(0, 0%, 100%, 0);
    border: none;
    width: 100%;
}
.dp-accordion-text {
    position: relative;
    display: flex;
    width: 100%;
    text-align: left;
    line-height: 1.4;
    padding-right: calc( 1em + 1.2rem );
    font-weight: var(--fw-bold);
    font-size: var(--text-m);
    /* color: var(--clr-base); */
}
.dp-accordion-text::before, 
.dp-accordion-text::after {
    content: "";
    position: absolute;
    background-color: var(--clr-base);
    width: 1em;
    height: 1px;
    right: 1rem;
    top: .75em;
    transition: 350ms ease-in-out all;
    border-radius: 0.03em;
}
.dp-accordion-text--white::before, 
.dp-accordion-text--white::after {
    background-color: var(--clr-white);
}
.dp-accordion-text::before {
    transform: rotate(-90deg);
}
.dp-accordion-text::after {
    transform: rotate(-180deg);
}
.dp-accordion-trigger[aria-expanded="true"] .dp-accordion-text::before {
	transform: rotate(0deg);
}
.dp-accordion-trigger[aria-expanded="true"] .dp-accordion-text::after {
	transform: rotate(-90deg) scale(0);
}
.dp-accordion-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 350ms;
  padding: .5em 0;
}
.dp-accordion-content[aria-hidden="false"] {
  grid-template-rows: 1fr;
}
.dp-accordion-content > :where(div, ul) {
  overflow: hidden;
  transition: padding 350ms;
}
.dp-accordion-content[aria-hidden="false"] > :where(div, ul) {
  padding-block: 1em;
}
/*-------------------------------------------------------------------------------------
                        MODULE RESULTS SUMMARY
-------------------------------------------------------------------------------------*/
.dp-results-summary-section {
    display: grid;
    grid-template-columns: 
        [module-start bg-start] 
        minmax(var(--space-section-inline), 1fr) 
        [heading-start arrow-start content-start] 
        minmax(1rem, var(--viewport)) 
        [heading-end arrow-end content-end] 
        minmax(var(--space-section-inline), 1fr) 
        [module-end bg-end];
    grid-template-rows: 
        [module-start heading-start] 
        auto 
        [heading-end arrow-start] 
        auto 
        [arrow-end content-start bg-start] 
        auto 
        [module-end content-end bg-end];
    padding-top: var(--space-section-block);
    position: relative;
    isolation: isolate;
}
.dp-results-summary-headline {
    grid-area: heading;
    text-align: center;
    justify-self: center;
}
.dp-vertical-arrow {
    --_cta-margin: var(--space-xl);
    display: flex;
    align-items: flex-end;
    width: fit-content;
    justify-self: center;
    margin-block: var(--_cta-margin);
    background-color: hsla(0, 0%, 100%, 0);
    border-color: hsla(0, 0%, 100%, 0);
    padding-bottom: 2px;
    cursor: pointer;
}
.dp-vertical-arrow--home {
    --_fill-color: var(--clr-white);
}
.dp-vertical-arrow--summary {
    --_fill-color: var(--clr-black);
    grid-area: arrow;
}
.dp-vertical-arrow__icon {
    /* height: 16rem; */
    height: 9rem;
    pointer-events: none;
}
.dp-vertical-arrow__icon :is(path, rect) {
    fill: var(--_fill-color);
}
.dp-vertical-arrow__icon :is(circle) {
    stroke: var(--_fill-color);
    stroke-width: 1;
    opacity: .5;
}
.dp-vertical-arrow__icon :is(rect) {
    transition: transform .5s cubic-bezier(0.075, 0.82, 0.165, 1), 
    -webkit-transform .5s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.dp-vertical-arrow:hover rect {
    -webkit-transform: scaleY(0.7) translateY(24px);
    transform: scaleY(0.7) translateY(24px);
}
.dp-results-summary-group {
    --_padding: var(--space-xl);
    grid-area: content;
    padding-block: var(--_padding);
}
.dp-results-summary-group.dp-decorative-below {
    padding-top: var(--_padding);
    padding-bottom: calc(var(--_padding) + var(--margin-decorative));
}
.dp-results-summary-group-heading {
    --_extra-space: 3rem;
    width: fit-content;
    position: relative;
    font-size: var(--h4);
}
.dp-results-summary-group-heading::before {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    width: calc(100% + var(--_extra-space));
    height: 2px;
    background-color: currentColor;
}
.dp-results-summary-group-details-list {
    list-style: none;
    margin-left: 0;
}
.dp-results-summary-group-details-item {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.dp-results-summary-cta-wrapper {
    display: flex;
    justify-content: center;
    margin-top: var(--section-space-m);
}
.dp-results-summary-cta {
    width: fit-content;
    max-width: 545px;
}
.dp-results-summary-cta svg {
    width: 80px;
    flex-shrink: 0;
}
.dp-results-summary-cta-wrapper .dp-results-summary-cta > span {
    flex-shrink: 1;
}
@media only screen and (max-width: 767px) {
    .dp-results-summary-group-item {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .dp-results-summary-group-heading::before {
        left: calc(-.5*var(--_extra-space));
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE DECORATIVE IMAGE CONTENT
-------------------------------------------------------------------------------------*/
.dp-decorative-img-content-section {
    --_partition: 4;
    --_img-partition: 1;
    --_content-partition: calc( var(--_partition) - var(--_img-partition));
    --_img-width: calc( var(--_img-partition) * var(--viewport) / var(--_partition));
    --_left-width: calc( var(--_content-partition) * var(--viewport) / var(--_partition));
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(1rem, var(--_img-width)) 
        minmax(1rem, var(--_left-width)) 
        minmax(var(--space-section-inline), 1fr);
    grid-template-areas: "... img content ...";
    padding-block: var(--space-section-block);
}
.dp-decorative-img-content-text {
    grid-area: content;
    padding-left: var(--space-l);
}
.dp-decorative-img-content-media {
    --_img_max: 70%;
    grid-area: img;
    margin-top: calc(-1*var(--space-section-block) - var(--margin-decorative));
    z-index: 2;
}
.dp-decorative-img-content-media > img {
    max-width: var(--_img_max);
}
@media only screen and (max-width: 991px) {
    .dp-decorative-img-content-section {
        grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax( 1rem, var(--viewport)) 
        minmax(var(--space-section-inline), 1fr);
    grid-template-areas: 
        "... img ..." 
        "... content ...";
    gap: var(--space-l) 0;
    }
    .dp-decorative-img-content-text {
        padding-left: revert;
    }
    .dp-decorative-img-content-media {
        --_img_max: 33%;
    }
}
@media only screen and (max-width: 660px) {
    .dp-decorative-img-content-media {
        --_img_max: 20rem;
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE SPLIT MEDIA TEXT BREAKOUT
-------------------------------------------------------------------------------------*/
.dp-grid-breakout, 
.dp-grid-breakout:where(.dp-grid-content--center) {
    --_media-gap-vertical: 2em;
    --_media-gap-horizontal: var(--space-xl);
    --_partition: 2;
    --_left_part: 1;
    --_right_part: calc( var(--_partition) - var(--_left_part) );
    --_left-width: calc( var(--_left_part) * var(--viewport) / var(--_partition));
    --_right-width: calc( var(--_right_part) * var(--viewport) / var(--_partition));
    display: grid;
    padding-block: var(--space-section-block);
}
.dp-grid-breakout {
    grid-template-rows: 
        [full-width-start heading-start media-start]
        1fr 
        [heading-end gap-start] 
        var(--_media-gap-vertical) 
        [gap-end content-start] 
        6fr  
        [full-width-end content-end media-end] 
        auto;
    padding-block: var(--space-section-block);
}
.dp-grid-breakout:where(.dp-grid-content--center) {
    grid-template-rows: 
        [full-width-start heading-start media-start]
        auto  
        [heading-end gap-start] 
        var(--_media-gap-vertical) 
        [gap-end content-start] 
        auto 
        [full-width-end content-end media-end] 
        auto;
    padding-block: var(--space-section-block);    
}
.dp-grid-breakout--right {
    grid-template-columns: 
        [full-width-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start heading-start content-start] 
        minmax(1rem, calc(var(--_left-width) - var(--_media-gap-horizontal))) 
        [heading-end content-end] 
        minmax(1rem, var(--_media-gap-horizontal)) 
        [media-start]
        minmax(1rem, calc(var(--_right-width) - var(--_media-gap-horizontal))) 
        [viewport-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end media-end];
}
.dp-grid-breakout--left {
    grid-template-columns: 
        [full-width-start media-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start] 
        minmax(1rem, calc(var(--_right-width) - var(--_media-gap-horizontal))) 
        [media-end] 
        minmax(1rem, var(--_media-gap-horizontal)) 
        [heading-start content-start] 
        minmax(1rem, calc(var(--_left-width) - var(--_media-gap-horizontal))) 
        [viewport-end heading-end content-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end];
}
.dp-split-media-text-breakout-heading {
    grid-area: heading;
}
.dp-split-media-text-breakout-text {
    grid-area: content;
    align-self: start;
}
.dp-split-media-text-breakout-media {
    grid-area: media;
}
.dp-grid-content--center .dp-split-media-text-breakout-heading {
    align-self: end;
}
.dp-split-media-text-breakout-media > *, 
.dp-split-media-text-breakout-media :is(img, video, iframe) {
    width: 100%;
    height: inherit;
    object-fit: cover;
    min-height: 100%;
    max-height: 40vh;
}
@media only screen and (max-width: 991px) {
    .dp-grid-breakout--l-1, 
    .dp-grid-breakout-split--l-1 {
        grid-template-columns: 
            [full-width-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start heading-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end heading-end content-end media-end]
            minmax(var(--space-section-inline), 1fr);
        gap: var(--space-m) 0;
    }
    .dp-grid-breakout--l-1 {
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end content-start] 
            auto 
            [content-end media-start]
            auto 
            [full-width-end viewport-end media-end];
    }
    .dp-grid-breakout-split--l-1 {
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end media-start] 
            auto 
            [media-end content-start]
            auto 
            [full-width-end viewport-end content-end];
    }
    :is(.dp-grid-breakout--l-1, .dp-grid-breakout-split--l-1) .dp-split-media-text-breakout-media > * {
        max-height: revert;
    }
}
@media only screen and (max-width: 767px) {
    .dp-grid-breakout--m-1, 
    .dp-grid-breakout-split--m-1 {
        grid-template-columns: 
            [full-width-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start heading-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end heading-end content-end media-end]
            minmax(var(--space-section-inline), 1fr);
        gap: var(--space-m) 0;
    }
    .dp-grid-breakout--m-1 {
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end content-start] 
            auto 
            [content-end media-start]
            auto 
            [full-width-end viewport-end media-end];
    }
    .dp-grid-breakout-split--m-1 {
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end media-start] 
            auto 
            [media-end content-start]
            auto 
            [full-width-end viewport-end content-end];
    }
    :is(.dp-grid-breakout--m-1, .dp-grid-breakout-split--m-1) .dp-split-media-text-breakout-media > * {
        max-height: revert;
    }
}
@media only screen and (max-width: 479px) {
    .dp-grid-breakout--s-1, 
    .dp-grid-breakout-split--s-1 {
        grid-template-columns: 
            [full-width-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start heading-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end heading-end content-end media-end]
            minmax(var(--space-section-inline), 1fr);
        gap: var(--space-m) 0;
    }
    .dp-grid-breakout--s-1 {
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end content-start] 
            auto 
            [content-end media-start]
            auto 
            [full-width-end viewport-end media-end];
    }
    .dp-grid-breakout-split--s-1 {
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end media-start] 
            auto 
            [media-end content-start]
            auto 
            [full-width-end viewport-end content-end];
    }
    :is(.dp-grid-breakout--s-1, .dp-grid-breakout-split--s-1) .dp-split-media-text-breakout-media > * {
        max-height: revert;
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE headline MEDIA TEXT BREAKOUT
-------------------------------------------------------------------------------------*/
.dp-grid-breakout-headline, 
.dp-grid-breakout-headline:where(.dp-grid-content--center) {
    --_media-gap-vertical: 2em;
    --_media-gap-horizontal: var(--space-xl);
    --_partition: 2;
    --_left_part: 1;
    --_right_part: calc( var(--_partition) - var(--_left_part) );
    --_left-width: calc( var(--_left_part) * var(--viewport) / var(--_partition));
    --_right-width: calc( var(--_right_part) * var(--viewport) / var(--_partition));
    display: grid;
    padding-block: var(--space-section-block);
}
.dp-grid-breakout-headline, 
.dp-grid-breakout-headline:where(.dp-grid-content--center) {
    grid-template-rows: 
        [full-width-start heading-start]
        auto 
        [heading-end gap-start] 
        var(--_media-gap-vertical) 
        [gap-end media-start content-start] 
        auto 
        [full-width-end content-end media-end];
    padding-block: var(--space-section-block);
}
.dp-grid-breakout-headline--right {
    grid-template-columns: 
        [full-width-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start heading-start content-start] 
        minmax(1rem, calc(var(--_left-width) - var(--_media-gap-horizontal))) 
        [content-end] 
        minmax(1rem, var(--_media-gap-horizontal)) 
        [media-start]
        minmax(1rem, calc(var(--_right-width) - var(--_media-gap-horizontal))) 
        [viewport-end heading-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end media-end];
}
.dp-grid-breakout-headline--left {
    grid-template-columns: 
        [full-width-start media-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start heading-start] 
        minmax(1rem, calc(var(--_right-width) - var(--_media-gap-horizontal))) 
        [media-end] 
        minmax(1rem, var(--_media-gap-horizontal)) 
        [content-start] 
        minmax(1rem, calc(var(--_left-width) - var(--_media-gap-horizontal))) 
        [viewport-end heading-end content-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end];
}
.dp-headline-media-text-breakout-heading {
    grid-area: heading;
    justify-self: center;
}
.dp-headline-media-text-breakout-text {
    grid-area: content;
    align-self: start;
}
.dp-headline-media-text-breakout-media {
    grid-area: media;
}
/* .dp-grid-content--center .dp-headline-media-text-breakout-heading {
    align-self: end;
} */
.dp-headline-media-text-breakout-media > *, 
.dp-headline-media-text-breakout-media :is(img, video) {
    width: 100%;
    height: inherit;
    object-fit: cover;
    min-height: 100%;
    max-height: 40vh;
}
@media only screen and (max-width: 991px) {
    .dp-grid-breakout-headline--l-1 {
        grid-template-columns: 
            [full-width-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start heading-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end heading-end content-end media-end] 
            minmax(var(--space-section-inline), 1fr);
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end media-start] 
            auto 
            [media-end content-start] 
            auto 
            [full-width-end viewport-end content-end];
        gap: var(--space-m) 0;
    }
    .dp-grid-breakout-headline--l-1 .dp-headline-media-text-breakout-media > * {
        max-height: revert;
    }
    .dp-grid-breakout-headline--l-1 .dp-headline-media-text-breakout-heading {
        justify-self: revert;
    }
}
@media only screen and (max-width: 767px) {
    .dp-grid-breakout-headline--m-1  {
        grid-template-columns: 
            [full-width-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start heading-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end heading-end content-end media-end] 
            minmax(var(--space-section-inline), 1fr);
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end media-start] 
            auto 
            [media-end content-start] 
            auto 
            [full-width-end viewport-end content-end];
        gap: var(--space-m) 0;
    }
    .dp-grid-breakout-headline--m-1 .dp-headline-media-text-breakout-media > * {
        max-height: revert;
    }
    .dp-grid-breakout-headline--m-1 .dp-headline-media-text-breakout-heading {
        justify-self: revert;
    }
}
@media only screen and (max-width: 479px) {
    .dp-grid-breakout-headline--s-1 {
        grid-template-columns: 
            [full-width-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start heading-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end heading-end content-end media-end] 
            minmax(var(--space-section-inline), 1fr);
        grid-template-rows: 
            [full-width-start viewport-start heading-start] 
            auto 
            [heading-end media-start] 
            auto 
            [media-end content-start] 
            auto 
            [full-width-end viewport-end content-end];
        gap: var(--space-m) 0;
    }
    .dp-grid-breakout-headline--s-1 .dp-headline-media-text-breakout-media > * {
        max-height: revert;
    }
    .dp-grid-breakout-headline--s-1 .dp-headline-media-text-breakout-heading {
        justify-self: revert;
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE DOUBLE ACCORDIONS
-------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------
                    MODULE SPLIT CONTENT LIST
-------------------------------------------------------------------------------------*/
.dp-section-split-content-list {
    --_padding: var(--space-m);
}
.dp-split-content-list-content {
    padding-right: var(--_padding);
    border-right: 2px solid var(--clr-black);
}
.dp-split-content-list-content > p {
    font-size: var(--text-l);
}
.dp-split-content-list-list {
    padding-left: var(--_padding);
    gap: var(--space-m);
}
@media only screen and (max-width: 991px) {
    .dp-grid--l-1 .dp-split-content-list-content {
        padding-right: revert;
        border-right: revert;
        padding-bottom: var(--_padding);
    }
    .dp-grid--l-1 .dp-split-content-list-list {
        padding-left: 0;
        padding-top: var(--_padding);
    }
}
@media only screen and (max-width: 767px) {
    .dp-grid--m-1 .dp-split-content-list-content {
        padding-right: revert;
        border-right: revert;
        padding-bottom: var(--_padding);
    }
    .dp-grid--m-1 .dp-split-content-list-list {
        padding-left: 0;
        padding-top: var(--_padding);
    }
}
@media only screen and (max-width: 479px) {
    .dp-grid--s-1 .dp-split-content-list-content {
        padding-right: revert;
        border-right: revert;
        padding-bottom: var(--_padding);
    }
    .dp-grid--s-1 .dp-split-content-list-list {
        padding-left: 0;
        padding-top: var(--_padding);
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE NUMBERED CARDS/GRID
-------------------------------------------------------------------------------------*/
.dp-section-numbered-cards {
    --_padding: 6em;
    --_gap: calc(var(--section-space-s) - .5*var(--space-l));
    display: grid;
    grid-template-columns: 
        [full-width-start bg-start] 
        minmax(var(--space-section-inline), 1fr) 
        [heading-start cards-start] 
        minmax(1rem, var(--viewport)) 
        [heading-end cards-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end bg-end];
    grid-template-rows: 
        [full-width-start heading-start] 
        auto 
        [heading-end cards-start bg-start] 
        auto 
        [full-width-end cards-end bg-end];
    /* padding-block: var(--space-section-block); */
    position: relative;
    isolation: isolate;
    gap: var(--_gap) 0;
}
.dp-numbered-cards-headline {
    grid-area: heading;
}
.dp-numbered-cards-list {
    grid-area: cards;
    list-style: none;
    margin-left: 0;
    padding-block: var(--_padding);
    gap: var(--_padding);
}
.dp-numbered-card-item {
    display: grid;
    grid-template-columns: 4.2em 1fr;
    width: 100%;
    gap: .65em;
}
.dp-numbered-card-item__number, 
.dp-numbered-grid-item__number {
    margin: 0;
    font-weight: var(--fw-bold);
}
.dp-numbered-card-item__number {
    font-size: 7em;
    line-height: .75;
}
.dp-numbered-grid-item__number {
    color: var(--clr-blush);
    font-size: 25em;
    line-height: .75;
    font-weight: var(--fw-regular);
}
.dp-numbered-grid-item:nth-child(even) {
    justify-self: end;
    background-color: aquamarine;
}
.dp-numbered-grid-item {
    max-width: 50%;
}
/*-------------------------------------------------------------------------------------
                        MODULE NUMBERED CAROUSEL
-------------------------------------------------------------------------------------*/
.dp-section-numbered-carousel {
    padding-block: var(--space-section-block);
    min-height: calc(100vh - var(--menu-height));
    min-height: calc(100svh - var(--menu-height));
}
.dp-umbered-carousel-headline {
    align-self: end;
}
.dp-numbered-carousel {
    height: fit-content;
}
.dp-numbered-carousel {
    --_logo-width: 300px;
    --_animation: cubic-bezier(0.45, 0, 0.55, 1);
    --_animation-duration: 400ms;
    --_slide-gap: 4.2rem;
}
.dp-numbered-carousel__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% / 1));
    transition: transform var(--_animation-duration) var(--_animation);
}
.dp-numbered-carousel__slide {
    display: flex;
    gap: var(--_slide-gap);
}
.dp-numbered-carousel__slide-content {
    width: calc( 100% - var(--_logo-width));
}
.dp-numbered-carousel__slide-img {
    order: -1;
    /* background-color: var(--clr-gray-light); */
    flex-shrink: 0;
    width: 100%;
    max-width: var(--_logo-width);
    height: fit-content;
}
.dp-numbered-carousel__slide-img img {
    height: 100%;
}
.dp-numbered-carousel__slide-content-text > p {
    line-height: 1.74;
    font-size: 2.4rem;
    letter-spacing: .5px;
}
.dp-numbered-carousel__navigation-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: calc(100% - var(--_logo-width) - var(--_slide-gap));
}
.dp-numbered-carousel__navigation {
    grid-area: navigation;
    align-self: start;
}
.dp-numbered-carousel__navigation {
    display: flex;
    gap: .6rem;
}
.dp-numbered-carousel-button {
    --_btn-size: 4.2rem;
    display: flex;
    align-items: center;
    width: var(--_btn-size);
    height: var(--_btn-size);
    border: 1px solid var(--clr-transparent);
    background-color: var(--clr-transparent);
    border-radius: 100vmax;
    padding: .25rem;
    cursor: pointer;
}
.dp-numbered-carousel-button:disabled {
    cursor: revert;
}
.dp-numbered-carousel-button:disabled svg, 
.dp-numbered-carousel-button:disabled:hover svg {
    fill: rgb(153, 153, 153);
    opacity: .6;
}
.dp-numbered-carousel-button svg {
    fill: var(--clr-black);
    width: 100%;
    height: 100%;
    transition: fill 300ms ease-in-out;
}
.dp-numbered-carousel-button--prev svg {
    transform: scaleX(-1);
}
.dp-numbered-carousel-button:hover svg {
    fill: var(--clr-primary);
}
.dp-numbered-carousel__pagination {
    display: flex;
    align-items: center;
    /* margin-bottom: var(--space-m); */
}
.dp-numbered-carousel__pagination > span {
    line-height: .7;
}
.dp-numbered-carousel__pagination-current {
    color: var(--clr-primary);
    font-size: var(--text-xl);
    width: .8em;
}
:where(.dp-numbered-carousel__pagination-divider, .dp-numbered-carousel__pagination-total) {
    color: var(--clr-gray-dark);
    font-size: var(--text-l);
    margin-top: .2em;
}
.dp-numbered-carousel__pagination-total {
    margin-left: .4rem;
}
.dp-numbered-carousel__item[data-state="hidden"] {
    display: none;
}
.dp-numbered-carousel__item[data-state="visible"] {
    display: block;
    animation: slideIn var(--_animation-duration) var(--_animation) forwards;
}
@keyframes slideIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes slideOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@media only screen and (max-width: 991px) {
    .dp-numbered-carousel__slide {
        flex-direction: column;
    }
    .dp-numbered-carousel__slide-content {
        width: 100%
    }
    .dp-numbered-carousel__navigation-info {
        width: 100%;
    }
}
/*------------------------------------------------------------------------------------
                    MODULE FANCY LIST
-------------------------------------------------------------------------------------*/
.dp-fancy-list {
    --_gap: calc(1.5*var(--space-m));
    gap: var(--_gap);
}
.dp-fancy-list-content__text {
    margin-top: .5em;
}
.dp-fancy-list-item:not(:last-child) p {
    margin-bottom: var(--_gap);
}
/*-------------------------------------------------------------------------------------
                        MODULE TEAM MEMBERS
-------------------------------------------------------------------------------------*/
.dp-section-team-cards {
    --_negative-margin: -40px;
}
.dp-members-cards-headline {
    margin-bottom: var(--space-xl);
}
.dp-members-cards-list {
    --_col-num: 6;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(var(--_col-num), minmax(1rem, 1fr));
    margin-left: 0;
    gap: var(--space-xl);
    margin-top: calc(-1*var(--_negative-margin));
}
.dp-members-cards-item {
    grid-column: auto / span 2;
}
.dp-members-cards-item:last-child {
    grid-column: 3 / span 2;
}
.dp-members-cards-item:nth-child(3n+2) {
    margin-top: var(--_negative-margin);
}
@media only screen and (max-width: 991px) {
    .dp-members-cards-list {
        --_col-num: 4;
    }
    .dp-members-cards-item:nth-child(3n+2) {
        margin-top: revert;
    }
    .dp-members-cards-item:nth-child(even) {
        margin-top: var(--_negative-margin);
    }
    .dp-members-cards-item:last-child {
        grid-column: 2 / span 2;
    }
}
@media only screen and (max-width: 700px) {
    .dp-members-cards-list {
        --_col-num: 2;
        margin-top: revert;
    }
    .dp-members-cards-item:nth-child(even) {
        margin-top: revert;
    }
    .dp-members-cards-item:last-child {
        grid-column: auto / span 2;
    }
}
/*------------------------------------------------------------------------------------
                    MODULE FANCY NUMBERED LIST
-------------------------------------------------------------------------------------*/
.dp-section-approach {
    background-color: #ffdb8c;
    color: #4397a4;
}
.dp-section-approach :where(h2, h3, h4) {
    color: #4397a4;
}
.dp-section-approach .dp-fancy-numbered-list-item::before {
    color: #fcebc3;
}
.dp-fancy-numbered-list {
    --_gap: 1.2em;
    display: flex;
    flex-direction: column;
    gap: var(--_gap);
    width: 100%;
    list-style: none;
    margin-left: 0;
}
.dp-fancy-numbered-list-item {
    max-width: 50%;
    position: relative;
}
.dp-fancy-numbered-list-item::before {
    content: counter(list-item);
    font-size: 300px;
    line-height: 1;
}
.dp-fancy-numbered-list-item:nth-child(2n) {
    align-self: flex-end;
}
.dp-fancy-numbered-list-item:not(:first-child) {
    margin-top: -220px;
}
.dp-fancy-numbered-list-item__content {
    display: flex;
    flex-direction: column;
    gap: 1em;
}
@media only screen and (max-width: 767px) {
    .dp-fancy-numbered-list-item {
        max-width: revert;
    }
    .dp-fancy-numbered-list-item:nth-child(2n) {
        align-self: revert;
    }
    .dp-fancy-numbered-list-item:not(:first-child) {
        margin-top: revert;
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE MEDIA CONTENT BREAKOUT
-------------------------------------------------------------------------------------*/
.dp-media-content-breakout {
    --_gap: var(--space-xl);
    /* --_partition: 5;
    --_content_part: 4; */
    --_partition: 7;
    --_content_part: 5;
    --_media_part: calc( var(--_partition) - var(--_content_part) );
    --_content-width: calc( var(--_content_part) * var(--viewport) / var(--_partition));
    --_media-width: calc( var(--_media_part) * var(--viewport) / var(--_partition));
    display: grid;
    grid-template-rows: 
        [full-width-start media-start]
        var(--margin-media-block) 
        [content-start] 
        auto 
        [content-end] 
        var(--margin-media-block) 
        [full-width-end media-end];
    margin-block: calc( -1*var(--margin-media-block));
    position: relative;
}
.dp-media-content-breakout--left {
    grid-template-columns: 
        [full-width-star media-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start] 
        minmax(1rem, var(--_media-width)) 
        [media-end gap-start] 
        minmax(1rem, var(--_gap)) 
        [gap-end content-start] 
        minmax(1rem, calc(var(--_content-width) - var(--_gap))) 
        [viewport-end content-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end];
}
.dp-media-content-breakout--right {
    grid-template-columns: 
        [full-width-start] 
        minmax(var(--space-section-inline), 1fr) 
        [viewport-start content-start] 
        minmax(1rem, calc(var(--_content-width) - var(--_gap))) 
        [content-end gap-start] 
        minmax(1rem, var(--_gap)) 
        [gap-end media-start] 
        minmax(1rem, var(--_media-width)) 
        [viewport-end] 
        minmax(var(--space-section-inline), 1fr) 
        [full-width-end media-end];
}
.dp-media-content-breakout-content {
    grid-area: content;
    padding-block: calc(var(--space-section-block) - var(--margin-media-block));
    align-self: center;
}
.dp-media-content-breakout-media {
    grid-area: media;
    z-index: 6;
}
.dp-media-content-breakout-media img {
    width: 100%;
    height: 100%;
}
@supports selector(:has(+ *)) {
    :is(.dp-section, .dp-section-grid, section):has(+ .dp-media-content-breakout) {
        padding-bottom: calc( var(--space-section-block) + var(--margin-media-block) );
    }
}
.dp-media-content-breakout + :is(.dp-section, .dp-section-grid, section) {
    padding-top: calc( var(--space-section-block) + var(--margin-media-block) );
}
@media only screen and (max-width: 767px) {
    .dp-media-content-breakout {
        grid-template-rows: 
            [full-width-start media-start] 
            auto 
            [bg-start] 
            auto 
            [media-end content-start] 
            auto 
            [full-width-end bg-end content-end];
        margin-block: revert;
        padding-block: var(--space-section-block);
    }
    .dp-media-content-breakout--left, 
    .dp-media-content-breakout--right {
        grid-template-columns: 
            [full-width-start bg-start] 
            minmax(var(--space-section-inline), 1fr) 
            [viewport-start content-start media-start] 
            minmax(1rem, var(--viewport)) 
            [viewport-end content-end media-end] 
            minmax(var(--space-section-inline), 1fr) 
            [full-width-end bg-end];
    }
    .dp-media-content-breakout-content {
        padding-top: var(--space-m);
        padding-bottom: var(--space-l);
    }
    .dp-media-content-breakout-content::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: var(--clr-bb-powder);
        grid-area: bg;
        z-index: -1;
    }
    .dp-media-content-breakout + .dp-section {
        padding-top: var(--space-section-block);
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE SIMPLE CARDS
-------------------------------------------------------------------------------------*/
.dp-grid-2--center {
    display: grid;
    grid-template-columns: repeat(4, minmax(1rem, 1fr));
}
.dp-grid-2--center .dp-simple-cards-item {
    grid-column: auto / span 2;
}
.dp-grid-2--center .dp-simple-cards-item:last-child {
    grid-column: 2 / span 2;
}
.dp-grid-items-outline .dp-simple-cards-item {
    padding: var(--space-m);
    border: 1px solid currentColor;
}
@media only screen and (max-width: 767px) {
    .dp-grid-2--center :is(.dp-simple-cards-item, .dp-simple-cards-item:last-child) {
        grid-column: auto / span 4;
    }
}
/*------------------------------------------------------------------------------------
                    MODULE FANCY TWO COLUMNS CONTENT
-------------------------------------------------------------------------------------*/
.dp-fancy-two-col-content-main__heading {
    position: relative;
    padding-bottom: 1.0rem;
}
.dp-fancy-two-col-content-main__heading::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--clr-gray-dark);
}
.dp-fancy-two-col-content-card, 
.dp-fancy-two-col-content-card--swap {
    --_space-v: 14rem;
    --_space-h: 14rem;
    --_gutter-v: 11rem;
    display: grid;
    grid-template-rows: 
        [card-start icon-start] 
        var(--_space-v) 
        [icon-end gutter-top-start] 
        var(--_gutter-v) 
        [gutter-top-end content-start]
        auto 
        [content-end gutter-bottom-start] 
        var(--_gutter-v) 
        [gutter-bottom-end] 
        var(--_space-v) 
        [card-end];
}
.dp-fancy-two-col-content-card {
    grid-template-columns: 
        [card-start content-start] 
        1fr 
        [icon-start] 
        var(--_space-h) 
        [card-end content-end icon-end];
}
.dp-fancy-two-col-content-card--swap {
    grid-template-columns: 
        [card-start content-start icon-start] 
        var(--_space-h) 
        [icon-end] 
        1fr 
        [card-end content-end];
}
.dp-fancy-two-col-content-card-content {
    grid-area: content;
    align-self: center;
    padding-inline: var(--space-m);
    padding-top: var(--space-m);
}
.dp-fancy-two-col-content-card-content__text {
    max-width: 30ch;
}
.dp-fancy-two-col-content-card__icon {
    grid-area: icon;
    align-self: start;
    overflow: hidden;
    height: 100%;
}
.dp-fancy-two-col-content-card__icon > img {
    height: 100%;
}
@media only screen and (max-width: 767px) {
    .dp-fancy-two-col-content-card, 
    .dp-fancy-two-col-content-card--swap {
        --_gutter-v: 0;
    }
}
/*-------------------------------------------------------------------------------------
                        MODULE LINK IMAGE SWAP
-------------------------------------------------------------------------------------*/
.dp-section-link-img-swap {
    --_trans-duration: 500ms;
    position: relative;
    isolation: isolate;
    background-color: var(--section-bg, var(--clr-gray));
    overflow: hidden;
    transition: background-color var(--_trans-duration) ease-in-out;
    padding-block: var(--space-section-block);
    min-height: calc(100vh - var(--menu-height));
    min-height: calc(100svh - var(--menu-height));
}
.dp-link-img-swap-headline {
    align-self: end;
}
.dp-link-img-swap-headline__heading {
    font-size: calc(.9*var(--h4));
}
.dp-link-img-swap-list > * + * {
    margin-top: var(--space-s);
}
.dp-link-img-swap-list :last-child {
    margin-top: 0;
}
.dp-link-img-swap__img, 
.dp-link-img-swap__img--default {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translateZ(0) scale(1.01);
    transition: opacity .2s ease-in-out, transform .4s ease, -webkit-transform .4s ease;
}
.dp-link-img-swap__img--default {
    z-index: -3;
    opacity: 1;
    transition: opacity var(--_trans-duration) ease-in-out;
}
.dp-link-img-swap__img {
    z-index: -3;
    opacity: 0;
    object-fit: cover;
    object-position: 90% 90%;
    transform: scale(.98);
    transform-origin: bottom right;
    transition: all var(--_trans-duration) ease-in-out;
}
.dp-link-img-swap-item__link {
    --_arrow-width: 42px;
    --_arrow-gap: 24px;
    --_arrow-bg_clr: #1f1f1f;
    position: relative;
    z-index: 1;
    font-size: var(--text-l);
    -webkit-transition: opacity var(--_trans-duration) ease, transform var(--_trans-duration) ease;
    transition: opacity var(--_trans-duration) ease, transform var(--_trans-duration) ease;
}
.dp-link-img-swap-item__link::before, 
.dp-link-img-swap-item__link::after {
     content: "";
     position: absolute;
     opacity: 0;
    -webkit-transition: opacity var(--_trans-duration) ease, transform var(--_trans-duration) ease;
    transition: opacity var(--_trans-duration) ease, transform var(--_trans-duration) ease;
}
.dp-link-img-swap-item__link::before {
    background: var(--_arrow-bg_clr);
    height: 2px;
    top: 50%;
    left: calc( 100% + var(--_arrow-gap) );
    width: var(--_arrow-width);
}
.dp-link-img-swap-item__link::after {
    border-color: transparent transparent transparent var(--_arrow-bg_clr);
    border-style: solid;
    border-width: 5px 0 5px 5px;
    height: 0;
    margin-top: 1px;
    top: 50%;
    left: calc( 100% + var(--_arrow-width) + var(--_arrow-gap) );
    transform: translateY(-50%);
    width: 0;
}
.dp-link-img-swap-item__link:hover, 
.dp-link-img-swap-item__link-wrapper:hover a {
    transform: translateX(40px);
}
.dp-link-img-swap-item__link:hover::before, 
.dp-link-img-swap-item__link:hover::after {
    opacity: 1;
}
.dp-link-img-swap-item__link:hover + .dp-link-img-swap__img {
    z-index: -1;
    opacity: 1;
    transform: translateZ(0) scale(1);
}
.dp-section-link-img-swap.dp-has-link-hover .dp-link-img-swap__img--default {
    opacity: 0;
}
.dp-section-link-img-swap.dp-has-link-hover .dp-link-img-swap-item__link:not(:hover) {
    opacity: .65;
}
/*-------------------------------------------------------------------------------------
                        MODULE MEDIA CARDS
-------------------------------------------------------------------------------------*/
.dp-card-heading {
    font-size: var(--h5);
    line-height: var(--lh-body);
    text-wrap: unset;    
}
.dp-media-card-item__heading {
    line-height: var(--lh-body);
    text-wrap: unset;
}
.dp-media-card-item__heading a {
    font-weight: var(--fw-regular);
}
.dp-card-item-hover {
    position: relative;
}
.dp-card-item-hover:hover :is(.dp-cta-arrow-circle, .dp-cta-arrow-simple) {
    text-decoration: none;
}
.dp-card-item-hover:hover :is(.dp-cta-arrow-circle, .dp-cta-arrow-simple) svg rect {
    transform: translateX(50%) scaleX(35%);
}
.dp-card-item-hover:hover :is(.dp-cta-arrow-circle, .dp-cta-arrow-simple) svg path {
    transform: translateX(10px);
}
.dp-push-down {
    --_top-margin: 60px;
}
.dp-push-down--even li:nth-child(2n) {
    margin-top: var(--_top-margin);
}
@media only screen and (max-width: 767px) {
    .dp-push-down {
        --_top-margin: 0;
    }    
}
/*-------------------------------------------------------------------------------------
                        ERROR 404
-------------------------------------------------------------------------------------*/
.dp-error-404 {
    min-height: 90vh;
    min-height: 90svh;
}
/*----------------------------------------------------------------------------------------
                    WS FORM
----------------------------------------------------------------------------------------*/
.dp-wsf--main :is(input[type=text], input[type=email], input[type=tel], select, textarea).wsf-field {
    border: unset;
    /* border-bottom: 1px solid var(--clr-accent); */
    border-bottom: 1px solid var(--clr-black);
    border-radius: 0;
}
.dp-wsf--main :is(input[type=text], input[type=email], input[type=tel], select, textarea).wsf-field:focus {
    /* border-color: var(--clr-accent); */
    border: 1px solid var(--clr-accent);
    box-shadow: 0 0 0 4px hsla(var(--clr-accent-h), .25);
}
.dp-wsf--main :is(input[type=radio], input[type=checkbox]).wsf-field + label.wsf-label:before {
    border: 1px solid var(--clr-accent);
}
.dp-wsf--main input[type=checkbox].wsf-field + label.wsf-label:before {
    border-radius: 0;
}
.dp-wsf--main :is(input[type=radio], input[type=checkbox]).wsf-field:checked + label.wsf-label:before {
    background-color: var(--clr-accent);
    border-color: var(--clr-accent);
}
.dp-wsf--main :is(input[type=radio], input[type=checkbox]).wsf-field:focus + label.wsf-label:before {
    box-shadow: 0 0 0 4px  hsla(var(--clr-accent-h), .25);
}
.dp-wsf--main .dp-wsf-grid--2 > div:first-of-type {
    display: grid;
    grid-template-columns: repeat(2, minmax(1rem, 1fr));
    gap: var(--space-s);
}
.dp-wsf--main .dp-wsf-label--l > label, 
.dp-wsf--main .dp-wsf-section > legend {
    font-size: var(--text-l);
    margin-bottom: .85em;
}
.wsf-field-wrapper.dp-margin-bottom--l {
    margin-bottom: var(--space-l);
}
.dp-wsf--main button.wsf-button {
    font-size: 2rem;
    color: var(--clr-accent);
    border: 1px solid var(--clr-accent);
    border-radius: 0;
}
.dp-wsf--main button.wsf-button.wsf-button-primary {
    padding: .7em 1.2em;
    margin-top: var(--space-m);
    background-color: var(--clr-transparent);
    border-color: var(--clr-black);
    color: var(--clr-black);
    transition: color 300ms ease-in-out, border-color 300ms ease-in-out;
}
.dp-wsf--main button.wsf-button.wsf-button-primary:hover {
    color: var(--clr-accent);
    border-color: var(--clr-accent);
    /* color: var(--clr-white); */
}
.dp-wsf--main .dp-wsf-contact-selection-wrapper, 
.dp-wsf--main .dp-wsf-contact-selection-wrapper div[role="radiogroup"] {
    display: flex;
    justify-content: center;
}
.dp-wsf--main .dp-wsf-contact-selection-wrapper {
    margin-bottom: 4em;
}
.dp-wsf--main .dp-wsf-contact-selection-wrapper div[role="radiogroup"] {
    gap: 2em;
}
.dp-wsf-contact-selection-wrapper input[type=radio].wsf-field + label.wsf-label {
    display: flex;
    align-items: center;
    font-size: 2.4rem;
}
.dp-wsf-contact-selection-wrapper input[type=radio].wsf-field + label.wsf-label:after {
    top: unset;
}
.dp-wsf-contact-selection-wrapper :is(input[type=checkbox].wsf-field.wsf-button + label.wsf-label, input[type=radio].wsf-field.wsf-button + label.wsf-label) {
    font-size: 2.4rem;
    color: var(--clr-accent);
    border: 1px solid var(--clr-accent);
    border-radius: 0;
    background-color: var(--clr-transparent);
    padding: 8.5px 22px;
}
.dp-wsf-contact-selection-wrapper :is(input[type=checkbox].wsf-field.wsf-button:checked + label.wsf-label, input[type=radio].wsf-field.wsf-button:checked + label.wsf-label) {
    background-color: var(--clr-accent);
    border-color: var(--clr-accent);
}
.dp-wsf-contact-selection-wrapper :is(input[type=checkbox].wsf-field.wsf-button:checked:focus + label.wsf-label, input[type=radio].wsf-field.wsf-button:checked:focus + label.wsf-label) {
    border: 1px solid var(--clr-accent);
    box-shadow: 0 0 0 4px hsla(var(--clr-accent-h), .25);
}
.dp-wsf-label-like {
    font-size: var(--text-l);
    line-height: 1.4;
    margin-bottom: .85em;
    user-select: none;
}
@media only screen and (max-width: 530px) {
    .dp-wsf--main .dp-wsf-contact-selection-wrapper {
        justify-content: revert;
    }
    .dp-wsf--main .dp-wsf-contact-selection-wrapper div[role="radiogroup"] {
        flex-direction: column;
        gap: 1em;
        width: 100%;
    }
    .dp-wsf-contact-selection-wrapper :is(input[type=checkbox].wsf-field.wsf-button + label.wsf-label, input[type=radio].wsf-field.wsf-button + label.wsf-label) {
        width: 100%;
    }
    .dp-wsf--main button.wsf-button.wsf-button-primary {
        width: 100%;
    }
}
/*--------------- SELECT FIELD DROPDOWN ICON ----------------------------------*/
.dp-wsf--main select.wsf-field:not([multiple]):not([size]) {
    background-image: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23de8512' d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E" ) !important;
    background-size: 18px 13px;
}
.dp-wsf--contact-page {
    --_min-height: 575px;
    min-height: var(--_min-height);
}
@media only screen and (max-width: 1137px) {
    .dp-wsf--contact-page {
        --_min-height: 591px;
    }
}
@media only screen and (max-width: 1088px) {
    .dp-wsf--contact-page {
        --_min-height: 611px;
    }
}
@media only screen and (max-width: 991px) {
    .dp-wsf--contact-page {
        --_min-height: 730px;
    }
}
@media only screen and (max-width: 767px) {
    .dp-wsf--contact-page {
        --_min-height: 812px;
    }
}
@media only screen and (max-width: 569px) {
    .dp-wsf--contact-page {
        --_min-height: 832px;
    }
}
@media only screen and (max-width: 422px) {
    .dp-wsf--contact-page {
        --_min-height: 852px;
    }
}
@media only screen and (max-width: 337px) {
    .dp-wsf--contact-page {
        --_min-height: 872px;
    }
}