/*------------------------------------------------------------------------------
                    MAIN GRID
-------------------------------------------------------------------------------*/
.dp-grid-main {
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(1px, var(--viewport)) 
        minmax(var(--space-section-inline), 1fr);
    padding-block: var(--space-section-block);
}
.dp-grid-main > * {
    grid-column: 2 / span 1;
}
.dp-post-constrained .dp-grid-main {
    grid-template-columns: minmax(1px, 1fr);
}
/*------------------------------------------------------------------------------
                         MODULE SHORTS 
-------------------------------------------------------------------------------*/
.dp-short-grid {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 0 2em;
}
.dp-short-grid-post--left, .dp-short-grid-post--right {
    --_fraction: 2fr;
}
.dp-short-grid--left, .dp-short-grid--right {
    --_fraction: 3fr;
}
.dp-short-grid-post--left, 
.dp-short-grid--left {
    grid-template-columns: minmax(1px, 1fr) minmax(1px, var(--_fraction));
    grid-template-areas: 
        "short headline" 
        "short content";
}
.dp-short-grid-post--right, 
.dp-short-grid--right {
    grid-template-columns: minmax(1px, var(--_fraction)) minmax(1px, 1fr);
    grid-template-areas: 
        "headline short" 
        "content short";
}
.dp-short-block-headline {
    grid-area: headline;
}
.dp-short-block-iframe {
    grid-area: short;
}
.dp-short-block-main {
    grid-area: content;
    display: flex;
    flex-direction: column;
    padding-block-start: 1.3em;
}
.dp-short-block-iframe img, 
.dp-short-block-iframe .perfmatters-lazy-youtube img {
    height: 100%;
    object-fit: cover;
}
.dp-shorts-grid-list {
    margin-block-start: var(--space-l);
}
.dp-shorts-grid-item {
    gap: 1.2em;
}
.dp-shorts-grid-item-iframe {
    width: min(100%, 360px);
    margin-inline: auto;
    margin-block-start: auto;
}
@media only screen and (max-width: 1000px) {
    .dp-short-grid {
        grid-template-rows: auto;
        gap: 2em 0;
    }
    :is(.dp-short-grid--left, .dp-short-grid--right, .dp-short-grid-post--left, .dp-short-grid-post--right) {
        grid-template-columns: minmax(1px, 1fr);
        grid-template-areas: 
            "headline" 
            "short" 
            "content";
    }
    .dp-short-grid .dp-short-block-iframe-inner {
        width: min(100%, 500px);
        margin-inline: auto;
    }
    .dp-short-grid .dp-short-block-main {
        padding-block-start: 0;
    }
}
/*------------------------------------------------------------------------------
                    MODULE DOCTOR'S VIDEO
-------------------------------------------------------------------------------*/
.dp-section-doctor-video {
    background: var(--clr-beige);
}
.dp-doctor-video-caption {
    margin: 0;
    font-family: var(--ff-heading);
    color: var(--clr-brown);
    font-size: var(--text-l);
}
.dp-doctor-video-title {
    margin-top: 0;
    text-align: center;
}
.dp-doctor-video-iframe {
    position: relative;
    width: 100%;
    max-width: 90rem;
    aspect-ratio: 16 / 9;
    margin-top: var(--space-m);
}
.dp-doctor-video-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
/*------------------------------------------------------------------------------
                    MODULE SPLIT HEADLINE CONTENT
-------------------------------------------------------------------------------*/
.dp-headline--parts {
    display: flex;
    align-items: center;
    width: 100%;
}
.dp-headline--parts h2 {
    width: 100%;
}
.dp-headline--parts h2 > span {
    display: block;
} 
.dp-headline--parts h2 > :first-child {
    color: var(--clr-brown);
}
.dp-headline--parts h2.dp-text--white > :first-child {
    color: var(--clr-white);
}
/*------------------------------------------------------------------------------
                    HERO
-------------------------------------------------------------------------------*/
.dp-hero, 
.dp-hero--service {
    position: relative;
    color: var(--clr-white);
    overflow: hidden;
}
.dp-hero {
    min-height: 66vh;
}
.dp-hero--service {
    min-height: 40vh;
}
.dp-hero-main-lockup {
    width: 100%;
    height: 100%;
    z-index: 2;
}
.dp-home-title {
    display: flex;
    flex-direction: column;
}
.dp-press-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1.6rem;
    margin-top: 10rem;
    /* margin-top: calc( 1.5*var(--space-xxl) ); */
}
.dp-press-wrapper > p {
    text-align: center;
    font-weight: var(--fw-bold);
}
.dp-service-title {
    /* font-size: calc( 1.5*var(--text-xxl) ); */
    font-weight: var(--fw-regular);
    text-align: center;
    color: var(--clr-white);
    font-size: clamp(2.2648rem, calc(1.5*(1.2063175554vw + 2.3787783823rem)), 6.03991224435rem);
    /* clamp(2.2648rem, calc(1.5*(1.2063175554vw + 2.3787783823rem)), 6.03991224435rem); */
}
.dp-hero-press {
    --size: 7rem;
    gap: 2.2rem;
    margin-top: 1.6rem !important;
}
.dp-hero-press > li {
    display: flex;
    align-items: center;
}
.dp-hero-press svg {
    fill: var(--clr-white);
    width: var(--size);
}
@media only screen and (max-width: 767px) {
    .dp-hero-press {
        --size: 5rem;
    }
}
@media only screen and (max-width: 479px) {
    .dp-hero-press {
        --size: 4rem;
    }
}
.dp-hero-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
@media only screen and (max-width: 767px) {
    .dp-hero {
        min-height: 56vh;
    }
    /* .dp-hero > .dp-inner-wrap {
        justify-content: flex-end;
    } */
    .dp-hero button {
        top: 6em;
    }
    .dp-hero--service {
        min-height: 33vh;
    }
}
/*------------------------------------------------------------------------------
                    MODULE BUTTONS GROUP
-------------------------------------------------------------------------------*/
.dp-buttons-group-list__item {
    padding: 0;
    text-align: center;
}

/* .dp-buttons-group-list__item > a {
    padding: 1rem 2rem;
    border: 1px solid black;
} */
/*------------------------------------------------------------------------------
                    DOCTORS
-------------------------------------------------------------------------------*/
.dp-grid-3-2--l {
    display: grid;
    grid-template-columns: 3fr 2fr;
    width: 100%;
    /* gap: var(--space-m); */
}
.dp-doctors-intro {
    position: relative;
    isolation: isolate;
    padding: var(--space-l) var(--space-s) var(--space-l) 0;
    background: var(--clr-beige);
}
.dp-doctors-intro::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 50vw;
    height: 100%;
    transform: translateX(-100%);
    background: var(--clr-beige);
    z-index: -1;
}
.dp-doctors-title > span {
    display: block;
}
.dp-doctors-title > span:first-child {
    font-size: var(--text-l);
}
.dp-doctors-title > span:last-child {
    color: var(--clr-brown);
    margin: .2em 0 .6em;
}
.dp-doctors-img-wrapper {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: var(--space-l) 0 var(--space-l) var(--space-s);
}
.dp-doctors-img-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: -.1rem;
    width: 50%;
    height: 100%;
    background: var(--clr-beige);
    z-index: -1;
}
.dp-doctors-img {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: hidden;
}
.dp-doctors-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media only screen and (max-width: 991px) {
    .dp-grid-3-2--l {
        display: flex;
        flex-direction: column;
    }
    .dp-doctors-intro {
        padding: var(--space-l) 0 0;
    }
    .dp-doctors-intro::before {
        width: 100vw;
        transform: translateX(-50%);
    }
    .dp-doctors-img-wrapper {
        padding: var(--space-l) 0;
    }
    .dp-doctors-img-wrapper::before {
        top: -.1rem;
        left: 50%;
        width: 100vw;
        height: 50%;
        transform: translateX(-50%);
    }
    .dp-doctors-img {
        max-width: 60rem;
    }
}
@media only screen and (max-width: 700px) {
    .dp-doctors-img {
        max-width: 46rem;
    }
}
/*------------------------------------------------------------------------------
                    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%;
}
.dp-accordion-trigger {
    background: hsla(0, 0%, 100%, 0);
    border: none;
    width: 100%;
}
.dp-accordion-text {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    text-align: left;
    line-height: 1.6;
    padding-right: calc( 1em + 1.2rem );
}
.dp-accordion-text::before, 
.dp-accordion-text::after {
    content: "";
    background-color: var(--clr-base);
    position: absolute;
    width: 1em;
    height: 1px;
    right: 0;
    top: .75em;
    transition: 350ms ease-in-out all;
    border-radius: 0.03em;
}
.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 500ms;
  padding: 1em 0;
}
.dp-accordion-content[aria-hidden="false"] {
  grid-template-rows: 1fr;
}
.dp-accordion-content > div, 
.dp-accordion-content > ul {
  overflow: hidden;
  padding-right: calc( 1em + 4px );
}
/*------------------------------------------------------------------------------
                    MODULE HEADLINE-CONTENT-ACCORDIONS
-------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------------
                    MODULE IMAGE CAROUSEL
-------------------------------------------------------------------------------*/
.dp-img-carousel-above-heading {
    font-size: var(--text-l);
    font-family: var(--ff-heading);
}
.dp-img-carousel-heading {
    font-size: var(--text-xxl);
    letter-spacing: .245rem;
}
.dp-splide-img-carousel-track {
    width: calc( 100% - 14rem );
    margin: 0 auto ;
}
.dp-splide-arrows--xl {
    --arrow-btn-size: 6rem;
    --arrow-svg-size: 2em;
}
.dp-splide-arrows--xl > .splide__arrow {
    width: var(--arrow-btn-size);
    height: var(--arrow-btn-size);
    background: var(--clr-transparent);
    border: .1rem solid var(--clr-secondary);
    transition: all 400ms ease;
}
.dp-splide-arrows--xl > .splide__arrow--prev {
    left: 0;
}
.dp-splide-arrows--xl > .splide__arrow--next {
    right: 0;
}
.dp-splide-arrows--xl .splide__arrow svg {
    fill: var(--clr-secondary);
    width: var(--arrow-svg-size);
    height: var(--arrow-svg-size);
}
.dp-splide-arrows--xl > .splide__arrow:hover {
    background: var(--clr-secondary);
}
.dp-splide-arrows--xl .splide__arrow:hover svg {
    fill: var(--clr-white);
}
@media only screen and (max-width: 600px) {
    .dp-splide-img-carousel-track {
        width: calc( 100% - 6rem );
    }
}
/*------------------------------------------------------------------------------
                    MODULE TRANSFORMATIONS CAROUSEL
-------------------------------------------------------------------------------*/
/* .dp-splide-transformations-carousel .splide__pagination {
    bottom: -1.95em;
}
.dp-splide-transformations-carousel .splide__pagination > * + * {
    margin-left: 0.7em;
}
.dp-splide-transformations-carousel .splide__pagination__page {
    --btn-size: 1em;
    width: var(--btn-size);
    height: var(--btn-size);
    background: hsl(18, 52%, 86%);
}
.dp-splide-transformations-carousel .splide__pagination__page.is-active {
    background: var(--clr-brown);
    transform: scale(1.2);
} */
.dp-splide-pagination--acc .splide__pagination {
    bottom: -1.95em;
}
.dp-splide-pagination--acc .splide__pagination > * + * {
    margin-left: 0.7em;
}
.dp-splide-pagination--acc .splide__pagination__page {
    --btn-size: 1em;
    width: var(--btn-size);
    height: var(--btn-size);
    background: hsl(18, 52%, 86%);
}
.dp-splide-pagination--acc .splide__pagination__page.is-active {
    background: var(--clr-brown);
    transform: scale(1.2);
}
/*------------------------------------------------------------------------------
                    MODULE DOCTOR'S CAROUSEL
-------------------------------------------------------------------------------*/
.dp-splide-doctors {
    margin-top: var(--space-l);
    width: 100%;
    height: 50rem;
}
.dp-doctor-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    color: var(--clr-brown);
}
.dp-doctor-item > * + * {
    margin-top: 1em;
}
.dp-doctor-item-img__wrapper {
    position: relative;
    width: 100%;
    padding: var(--space-l);
}
.dp-doctor-item-img__wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: var(--clr-beige);
}
.dp-doctor-item__name {
    /* position: relative; */
    font-weight: var(--fw-regular);
}
.dp-doctor-item__name > a {
    color: var(--clr-brown);
    text-decoration: none;
}
.dp-doctor-item__specialty, 
.dp-doctor-item__title {
    font-size: 1.5rem;
    /* margin: .7em 0 0; */
    color: var(--clr-base);
}
.dp-doctor-item__specialty {
    margin: .6em 0 0;
}
.dp-doctor-item__title {
    margin: .4em 0 0;
}
:is(.dp-doctor-item__cost, .dp-doctor-item__cost-catalog) {
    font-size: 1.4rem;
    font-weight: var(--fw-bold);
    color: var(--clr-base);
}
.dp-splide-doctors .splide__pagination {
    --size-btn: 1.2rem;
    bottom: -3em;
}
.dp-splide-doctors .splide__pagination > * + * {
    margin-left: .6em;
}
.dp-splide-doctors .splide__pagination__page {
    background: var(--clr-beige);
    width: var(--size-btn);
    height: var(--size-btn);
    opacity: 1;
}
.dp-splide-doctors .splide__pagination__page.is-active {
    background: var(--clr-brown);
    transform: scale(1.2);
}
.dp-splide-arrows--doctors .splide__arrow {
    --size: 3.6em;
    background: transparent;
    width: var(--size);
    opacity: 1;
}
.dp-splide-arrows--doctors .splide__arrow:disabled {
    opacity: .6;
}
.dp-splide-arrows--doctors .splide__arrow > svg {
    fill: var(--clr-base);
    width: var(--size);
    height: var(--size);
    font-weight: var(--fw-bold);
}
.dp-splide-arrows--doctors .splide__arrow {
    top: calc( 0% - 1.5*var(--space-l) );
}
.dp-splide-arrows--doctors .splide__arrow--prev {
    left: calc(100% - 14rem );
}
@media only screen and (max-width: 991px) {
    .dp-splide-arrows--doctors .splide__arrow {
        top: calc( 100% + 1.75*var(--space-l) );
    }
    .dp-splide-arrows--doctors .splide__arrow--next {
        right: calc( 50%  - 5em );
    }
    .dp-splide-arrows--doctors .splide__arrow--prev {
        left: calc( 50%  - 5em );
    }
    .dp-splide-doctors .splide__pagination {
        bottom: -1em;
    }
}
@media only screen and (max-width: 600px) {
    .dp-splide-doctors {
        height: 54rem;
    }
    /* .dp-splide-arrows--doctors .splide__arrow--next {
        right: calc( 100%  - 10em );
    } */
    /* .dp-splide-arrows--doctors .splide__arrow--prev {
        left: 0;
    } */
}
@media only screen and (max-width: 500px) {
    .dp-splide-doctors {
        height: 48rem;
    }
}
@media only screen and (max-width: 479px) {
    .dp-splide-doctors {
        height: 40rem;
    }
}
/*------------------------------------------------------------------------------
                    MODULE CLINICS CAROUSEL [POST TYPE VIDEO CAROUSEL]
-------------------------------------------------------------------------------*/
.dp-grid-breakout {
    --col-number: 20;
    --col-carousel: 13;
    --col-width: calc( (1366px / var(--col-number)) );
    display: grid;
    grid-template-columns: 
        minmax(var(--space-m), 1fr) 
        repeat(var(--col-number), minmax(0, var(--col-width))) 
        minmax(var(--space-m), 1fr);
    grid-template-rows: 
        minmax(1rem, 6rem) 
        auto 
        minmax(1rem, 6rem);
    padding-block: var(--space-l);
    /* background-color: antiquewhite; */
    min-height: 50vh;
    position: relative;
    isolation: isolate;
}
.dp-grid-breakout__media {
    grid-column: 2 / var(--col-carousel);
    grid-row: 2 / -1;
    background-color: firebrick;
}
.dp-grid-breakout__media::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100;
    /* background-color: aquamarine; */
    background-color: var(--clr-brown);
    grid-column: 1 / calc( var(--col-carousel) - 1 );
    grid-row: 1 / 3;
}
.dp-grid-breakout__content {
    grid-column: var(--col-carousel) / -2;
    grid-row: 2 / -1;
    /* background-color: fuchsia; */
    padding-left: var(--space-s);
}
.dp-splide-clinics-arrows--xl, 
.dp-splide-video-carousel-arrows {
    --arrow-btn-size: 5rem;
    --arrow-svg-size: 3em;
}
.dp-splide-clinics-arrows--xl > .splide__arrow, 
.dp-splide-video-carousel-arrows > .splide__arrow {
    width: var(--arrow-btn-size);
    height: var(--arrow-btn-size);
    background: var(--clr-transparent);
    /* border: .1rem solid var(--clr-secondary); */
    transition: all 400ms ease;
    position: absolute;
}
.dp-splide-clinics-arrows--xl > .splide__arrow--prev {
    top: 0;
    left: 100%;
    transform: translate(calc(-300% - 2.5em), -100%);
}
.dp-splide-video-carousel-arrows > .splide__arrow--prev {
    top: 0;
    left: 100%;
    transform: translate(calc(-200% - 1.5em), -100%);
}
.dp-splide-clinics-arrows--xl > .splide__arrow--next {
    top: 0;
    right: 0;
    transform: translate(calc(-100% - 1.5em), -100%);
}
.dp-splide-video-carousel-arrows > .splide__arrow--next {
    top: 0;
    right: 0;
    transform: translate(0%, -100%);
}
.dp-splide-clinics-arrows--xl .splide__arrow svg, 
.dp-splide-video-carousel-arrows .splide__arrow svg {
    fill: var(--clr-white);
    stroke: var(--clr-white);
    stroke-width: 1.8;
    width: var(--arrow-svg-size);
    height: var(--arrow-svg-size);
    transition: all 400ms ease;
}
.dp-splide-clinics-arrows--xl .splide__arrow:hover svg {
    fill: var(--clr-base);
    stroke: var(--clr-base);
}
.dp-splide-video-carousel-arrows .splide__arrow:hover svg {
    fill: var(--clr-brown);
    stroke: var(--clr-brown);
}
.dp-splide-video-carousel .splide__pagination {
    bottom: -2.5em;
}
.dp-splide-video-carousel .splide__pagination > * + * {
    margin-left: 1em;
}
.dp-splide-video-carousel .splide__pagination__page {
    --_nav-btn-size: 1.2rem;
    width: var(--_nav-btn-size);
    height: var(--_nav-btn-size);
    margin: 0;
    background: var(--clr-beige);
}
.dp-splide-video-carousel .splide__pagination__page.is-active {
    background: var(--clr-brown);
}
@media only screen and (max-width: 991px) {
    .dp-grid-breakout {
        --col-number: 6;
        grid-template-rows: 
            minmax(1rem, 3rem) 
            auto 
            minmax(1rem, 3rem) 
            auto;
    }
    .dp-grid-breakout__media {
        grid-column: 3 / -1;
        grid-row: 2 / -2;
    }
    .dp-grid-breakout__media::before {
        grid-column: 1 / -2;
        grid-row: 1 / 3;
    }
    .dp-grid-breakout__content {
        grid-column: 2 / -2;
        grid-row: -2 / -1;
        /* min-height: 20vh; */
        padding-left: revert;
        padding-top: var(--space-l);
    }
    .dp-splide-clinics-arrows--xl > .splide__arrow--prev {
        top: 50%;
        left: 0;
        transform: translate(-100%, -50%);
    }
    .dp-splide-clinics-arrows--xl > .splide__arrow--next {
        top: 50%;
        right: 100%;
        transform: translate(100%, -50%);
    }
}
/*------------------------------------------------------------------------------
                    MODULE OFFERS CAROUSEL
-------------------------------------------------------------------------------*/
.dp-offers-carousel__item {
    display: grid;
    grid-template-columns: repeat(20, minmax(1rem, 1fr));
    /* grid-template-rows: minmax(auto, 80%) minmax(1rem, 4rem); */
    grid-template-rows: auto minmax(1rem, 4rem);
    width: 100%;
}
.dp-offers-carousel__media {
    grid-column: 1 / 5;
    grid-row: 1 / 3;
    position: relative;
}
.dp-offers-carousel__media > img {
    position: absolute;
    width: 100%;
    height: 100%;
}
.dp-offers-carousel__details {
    grid-column: 5 / -1;
    /* grid-row: 1 / span 1; */
}
.dp-offers-carousel__title {
    font-size: 2rem;
}
.dp-offers-carousel__title a > span {
    display: block;
}
.dp-offers-carousel__title a > :last-child {
    margin-top: .4rem;
}
.dp-offers-carousel__cta {
    grid-column: 5 / -1;
    transition: all .4s ease;
    /* grid-row: auto / 4; */
    padding-block: .6rem;
}
.dp-offers-carousel__item:hover .dp-offers-carousel__cta {
    background-color: var(--clr-brown);
    color: var(--clr-white);
}
.dp-splide-offers-arrows--xl {
    --arrow-btn-size: 5rem;
    --arrow-svg-size: 3em;
}
.dp-splide-offers-arrows--xl > .splide__arrow {
    width: var(--arrow-btn-size);
    height: var(--arrow-btn-size);
    background: var(--clr-transparent);
    /* border: .1rem solid var(--clr-secondary); */
    transition: all 400ms ease;
    position: absolute;
}
.dp-splide-offers-arrows--xl > .splide__arrow--prev {
    top: 0;
    left: 100%;
    transform: translate(calc(-200% - 1em), -100%);
}
.dp-splide-offers-arrows--xl > .splide__arrow--next {
    top: 0;
    right: 0;
    transform: translate(0%, -100%);
}
.dp-splide-offers-arrows--xl .splide__arrow svg {
    fill: var(--clr-base);
    stroke: var(--clr-base);
    stroke-width: 1.2;
    width: var(--arrow-svg-size);
    height: var(--arrow-svg-size);
    transition: all 400ms ease;
}
@media only screen and (max-width: 767px) {
    .dp-offers-carousel__media {
        /* grid-row: 1 / span 2; */
        grid-row: 1 / span 1;
    }
    .dp-offers-carousel__cta {
        grid-column: 1 / -1;
    }
    .dp-splide-offers-arrows--xl > .splide__arrow--prev {
        top: 100%;
        left: 50%;
        transform: translate(calc(-100% - 1em), 0%);
    }
    .dp-splide-offers-arrows--xl > .splide__arrow--next {
        top: 100%;
        right: 50%;
        transform: translate(calc(100% + 1em), 0%);
    }
}
@media only screen and (max-width: 479px) {
    .dp-offers-carousel__media {
        grid-column: 1 / 7;
    }
    .dp-offers-carousel__details {
        grid-column: 7 / -1;
    }
}
/*------------------------------------------------------------------------------
                    MODULE FORM
-------------------------------------------------------------------------------*/
.dp-inner-wrap.dp-section-form-container {
    width: 100%;
    max-width: 767px;
    align-items: center;
}
.dp-contact-form__wrapper {
    width: 100%;
    max-width: 767px;
}
.dp-form-hidden-text {
    padding: 2em;
    border: 1px solid var(--clr-primary);
    text-align: center;
    font-weight: var(--fw-bold);
}
/*------------------------------------------------------------------------------
                    SECTION FORM
-------------------------------------------------------------------------------*/
.dp-section-contact-form {
    --_bg-clr: var(--clr-beige);
    position: relative;
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(1px, var(--viewport)) 
        minmax(var(--space-section-inline), 1fr);
    grid-template-areas: 
        "... heading ..." 
        "... intro ..." 
        "... form ...";
    padding-top: var(--space-section-block);
    isolation: isolate;
}
.dp-section-contact-form__heading {
    grid-area: heading;
    font-family: var(--ff-heading);
}
.dp-section-contact-form__intro {
    grid-area: intro;
    text-align: center;
    padding: var(--space-l) 0 var(--space-m);
}
.dp-section-contact-form > :nth-child(2)::before {
    content: "";
    position: absolute;
    inset: 0;
    grid-area: 2 / 1 / -1 / -1;
    background-color: var(--_bg-clr);
    z-index: -1;
}:is(.dp-section-contact-form__intro, .dp-section-contact-form__form) {
    justify-self: center;
}
.dp-section-contact-form__form {
    grid-area: form;
    padding-bottom: var(--space-section-block);
}
.dp-wsf-margin-cost.wsf-field-wrapper[data-type='html'] {
    margin: -10px 0 20px;
}
@media only screen and (max-width: 767px) {
    .dp-section-contact-form__intro {
        text-align: revert;
    }
}
/*------------------------------------------------------------------------------
                    MODULE TREATMENT OVERVIEW
-------------------------------------------------------------------------------*/
.dp-treatment-overview-list {
    --svg-size: 5.4rem;
    --gap: 1.6rem;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    padding: 2.6rem 1rem;
    color: var(--clr-white);
    background: var(--clr-brown);
    gap: var(--gap) 0;
}
.dp-treatment-overview-list > li {
    padding: var(--gap) 1rem;
}
.dp-treatment-overview-list-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .6rem;
    text-align: center;
    font-size: 1.5rem;
}
.dp-treatment-overview-list > li:not(:nth-child(3n+1)) {
    border-left: .1rem solid var(--clr-brown-light);

}
.dp-treatment-overview-list > li:nth-child(n+4) .dp-treatment-overview-list-container {
    border-top: .1rem solid var(--clr-brown-light);
    margin-top: calc( -1.5*var(--gap) );
    padding-top: calc( 1.5*var(--gap) );
}
.dp-treatment-overview-list svg {
    fill: none;
    stroke: var(--clr-white);
    stroke-width: .1rem;
    width: var(--svg-size);
    height: var(--svg-size);
}
.dp-treatment-overview-list p {
    margin: 0;
}
@media only screen and (max-width: 991px) {
    .dp-treatment-overview {
        display: flex;
        flex-direction: column;
        gap: var(--grid-gap);
    }
    .dp-treatment-overview-list {
        order: -1;
    }
}
@media only screen and (max-width: 767px) {
    .dp-treatment-overview-list {
        grid-template-columns: repeat(2, 1fr);
    }
    .dp-treatment-overview-list > li:not(:nth-child(3n+1)) {
        border-left: none;    
    }
    .dp-treatment-overview-list > li:nth-child(2n+2) {
        border-left: .1rem solid var(--clr-brown-light);
    }
    .dp-treatment-overview-list > li:nth-child(n+3) .dp-treatment-overview-list-container {
        border-top: .1rem solid var(--clr-brown-light);
        margin-top: calc( -1.5*var(--gap) );
        padding-top: calc( 1.5*var(--gap) );
    }
    .dp-treatment-overview-list.dp-last-span-2 > li:last-child {
        grid-column: 1 / -1;
    }
}
/*------------------------------------------------------------------------------
                    MODULE IMAGE CONTENT FULL
-------------------------------------------------------------------------------*/
.dp-section-full {
    position: relative;
    padding-bottom: var(--space-m);
}
.dp-section-inner--full {
    --padding: var(--space-xl);
    padding-top: var(--padding);
    padding-bottom: var(--padding);
}
.dp-section-subheading {
    font-size: var(--text-xl);
    font-weight: var(--fw-regular);
}
.dp-section-subheading > span {
    display: block;
}
.dp-section-subheading > span:first-child{
    color: var(--clr-brown);
    margin-bottom: .6rem;
}
:is(.dp-section-subheading, .dp-section-text) {
    padding-left: calc( .8*var(--space-xl) );
}
.dp-section-image-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    width: 25vw;
    height: 100%;
}
.dp-section-image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.dp-section-text {
    max-width: 75ch;
}
.dp-grid--section-full {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: var(--space-m);
    width: 100%;
}
.dp-section-image-wrapper {
    grid-column: 2;
    grid-row: 1 / 4;
}
.dp-section-text {
    grid-column: 1;
}
@media only screen and (max-width: 991px) {
    :is(.dp-grid--3-2-l, .dp-grid--section-full) {
        grid-template-columns: repeat(1, 1fr);
    }
    :is(.dp-grid--3-2-l, .dp-grid--section-full) > * {
        grid-column: 1;
    }
    .dp-grid--section-full {
        display: flex;
        flex-direction: column;
        gap: var(--space-m);
    }
    .dp-section-image-wrapper {
        position: relative;
        width: 100%;
        aspect-ratio: 5 / 7;
    }
    .dp-section-full {
        padding-bottom: 0;
    }
    :is(.dp-section-subheading, .dp-section-text) {
        padding-left: revert;
    }
}
/*------------------------------------------------------------------------------
                    MODULE GRID TO ACCORDIONS
-------------------------------------------------------------------------------*/
:is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) {
    display: grid;
    width: 100%;
}
:is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) .dp-grid-accordion__headline {
    position: relative;
    font-size: var(--text-xl);
}
:is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) .dp-grid-accordion__img {
    grid-row: 1 / 4;
}
:is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) .dp-grid-accordion__text {
    grid-row: 2 / 3;
}
.dp-grid-accordion--2-3 {
    grid-template-columns: 2fr 3fr;
}
.dp-grid-accordion--2-3 .dp-grid-accordion__headline {
    grid-column: 2;
    grid-row: 1;
    padding-left: var(--space-s);
}
.dp-grid-accordion--2-3 .dp-grid-accordion__img {
    grid-column: 1;
    padding-right: var(--space-s);
    border-right: .1rem solid var(--clr-brown);
}
.dp-grid-accordion--2-3 .dp-grid-accordion__text {
    grid-column: 2;
    padding-left: var(--space-s);
}
.dp-grid-accordion--3-2 {
    grid-template-columns: 3fr 2fr;
}
.dp-grid-accordion--3-2 .dp-grid-accordion__headline {
    padding-right: var(--space-s);
}
.dp-grid-accordion--3-2 .dp-grid-accordion__img {
    grid-column: 2;
    padding-left: var(--space-s);
    border-left: .1rem solid var(--clr-brown);
}
.dp-grid-accordion--3-2 .dp-grid-accordion__text {
    grid-column: 1;
    padding-right: var(--space-s);
}
.dp-grid-accordion__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.dp-grid-accordion__icon {
    display: none;
}
/* .dp-grid-accordion__img > figure {
    height: 100%;
} */
@media only screen and (max-width: 767px) {
    :is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) .dp-grid-accordion__headline {
        padding: 0;
    }
    :is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) .dp-grid-accordion__img {
        padding: 0;
        border: none;
    }
    :is(.dp-grid-accordion--2-3, .dp-grid-accordion--3-2) .dp-grid-accordion__text {
        padding: 0;
    }
    .dp-grid-accordion-container {
        --gap: 1.6rem;
        display: flex;
        flex-direction: column;
        gap: var(--gap);
    }
    .dp-grid-accordion__content-wrapper {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 500ms;
        font-size: 1.6rem;
    }
    .dp-grid-accordion__content-wrapper.dp-accordion-open {
        grid-template-rows: 1fr;
    }
    .dp-grid-accordion__content-wrapper > div {
        overflow: hidden;
    }
    .dp-grid-accordion__content-wrapper > div > * + * {
        margin-top: var(--gap);
    }
    :is(.dp-grid-accordion__img, .dp-grid-accordion__text) {
        display: none;
    }
    .dp-accordion-open :is(.dp-grid-accordion__img, .dp-grid-accordion__text), 
    .dp-has-opened :is(.dp-grid-accordion__img, .dp-grid-accordion__text), 
    [data-state="first-opened"] :is(.dp-grid-accordion__img, .dp-grid-accordion__text) {
        display: block;
    }
    .dp-grid-accordion__icon {
        position: relative;
        top: -.2rem;
        display: flex;
        align-items: center;
        --size: 2rem;
        width: var(--size);
        height: var(--size);
        fill: none;
        stroke: var(--clr-brown);
        stroke-width: .1rem;
        transition: transform 500ms ease;
    }
    [data-state="first-opened"] .dp-grid-accordion__icon, 
    [aria-expanded="true"] .dp-grid-accordion__icon {
        transform: rotate(180deg);
    }
    [data-state="first-opened"] [aria-expanded="false"] .dp-grid-accordion__icon {
        transform: rotate(0deg);
    }
    .dp-grid-accordion__trigger::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        cursor: pointer;
        display: flex;
    }
}
/*------------------------------------------------------------------------------
                    MODULE YOUTUBE THUMBS TEXT
-------------------------------------------------------------------------------*/
.dp-youtube-thumbs-text {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    width: 100%;
    gap: var(--space-m);
}
.dp-youtube-thumbs-text__video-wrapper {
    grid-column: 1 / 6;
    display: flex;
    flex-direction: column;
    gap: 2em;
}
.dp-youtube-thumbs-text__video {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.dp-current-video {
    width: 100%;
    height: 100%;
}
.dp-youtube-thumbs-text__thumbs {
    list-style: none;
    padding-left: 0;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    gap: 1.2em;
    overflow-x: auto;
    white-space: nowrap;
}
.dp-video-swap {
    position: relative;
    background: transparent;
    border: .1rem solid transparent;
    min-width: 24rem;
    aspect-ratio: 16 / 9;
    cursor: pointer;
}
.dp-video-swap:disabled {
    border-color: var(--clr-brown);
}
.dp-video-swap > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.dp-video-swap > .dp-video-swap__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--clr-brown);
    border-radius: 50%;
    z-index: 2;
}
.dp-video-swap svg {
    --size: 1.6rem;
    fill: var(--clr-white);
    width: var(--size);
    height: var(--size);
    position: relative;
    transform: translateX(16%);
}
.dp-video-swap:disabled > img {
    filter: grayscale(100%) brightness(70%);
}
.dp-video-swap:disabled > span {
    background-color: var(--clr-white);
}
.dp-video-swap:disabled svg {
    fill: var(--clr-brown);
}
.dp-youtube-thumbs-text__text {
    grid-column: 6 / -1;
}
@media only screen and (max-width: 767px) {
    .dp-youtube-thumbs-text {
        display: flex;
        flex-direction: column;
    }
}
/*------------------------------------------------------------------------------
                    MODULE TRANSFORMATIONS DYNAMIC
-------------------------------------------------------------------------------*/
.dp-transformation-item {
   position: relative;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    width: 100%;
    /* flex: 1; */
}
.dp-transformation-therapy-title {
    text-align: center;
    margin-block: 0;
}
.dp-transformation-wrapper {
    position: relative;
    /* padding: .8rem 0; */
    isolation: isolate;
}
.dp-img {
    position: relative;
    width: 100%;
    aspect-ratio: 10 / 7;
}
:is(.dp-img--before, .dp-img--after) {
    user-select: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.dp-img--after {
    clip-path: inset(0% 0% 0% 50%);
}
.dp-img-slider-line {
    position: absolute;
    height: 100%;
    width: .3rem;
    border-radius: 2rem;
    background: var(--clr-brown);
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
.dp-img-slider-icon {
    --size: 3rem;
    position: absolute;
    width: var(--size);
    height: var(--size);
    top: 50%;
    left: 50%;
    background: var(--clr-brown);
    border-radius: 50%;
    padding: .4rem;
    transform: translate(-50%, -50%);
    cursor: pointer;
    user-select: none;
}
.dp-img-slider-icon__icon {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: var(--clr-white);
    stroke-width: .8;
    stroke-linecap: round; 
    stroke-linejoin: round;
}
.dp-img-slider {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
/*------------------------------------------------------------------------------
                    MODULE MEDIA TEXT GRID
-------------------------------------------------------------------------------*/
.dp-media-text-grid-media figure {
    position: relative;
    width: 100%;
    height: 100%;
}
.dp-media-text-grid-media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.dp-media-text-grid-media, 
.dp-media-text-grid-content {
     --bg-clr: var(--clr-beige);
    /* background: pink; */
}
.dp-media-text-grid-content {
    background: var(--bg-clr);
    height: 100%;
    padding: var(--space-l);
}
.dp-media-text-grid-content__heading {
    color: var(--clr-brown);
    font-size: var(--text-xl);
}
.dp-media-text-grid-content__subheading {
    font-family: var(--ff-heading);
    font-size: calc( .8*var(--text-xl) );
    margin-top: .6rem;
}
@media only screen and (max-width: 991px) {
    .dp-media-text-grid-content, 
    .dp-media-text-grid-media {
        position: relative;
        isolation: isolate;
    }
    .dp-media-text-grid-content {
        padding: var(--space-m) 0;
    }
    .dp-media-text-grid-content::before, 
    .dp-media-text-grid-media::before {
        content: "";
        position: absolute;
        left: 50%;
        width: 100vw;
        height: 100%;
        transform: translateX(-50%);
        background: var(--bg-clr);
        z-index: -1;
    }
    .dp-media-text-grid-content::before {
        top: 0;
    }
    .dp-media-text-grid-media::before {
        top: 50%;      
    }
    .dp-media-text-grid-media figure {
        aspect-ratio: 4 / 3;
    }
}
/*------------------------------------------------------------------------------
                    MODULE REVIEWS GRID
-------------------------------------------------------------------------------*/
.dp-reviews-star-container {
    --svg-size: 2rem;
    display: flex;
    align-items: center;
    gap: .5rem;
}
.dp-reviews-star-container > svg {
    fill: var(--clr-brown);
    width: var(--svg-size);
    height: var(--svg-size);
}
.dp-reviews-star-container.dp-clr--base > svg {
    fill: var(--clr-base);
}
.dp-reviews-info {
    --top : 4.4rem;
    margin-top: var(--space-xs);
}
.dp-reviews-text::before {
    content: "”";
    position: absolute;
    top: calc( -1*var(--top) );
    left: 0;
    font-size: 5.2rem;
    font-weight: var(--fw-bold);
    /* width: 2rem;
    height: 2rem;
    background: red; */
}
.dp-reviews-avatar {
    width: 4.6rem;
    /* aspect-ratio: 1 / 1; */
    /* overflow: hidden; */
    /* border-radius: 50%; */
}
/*------------------------------------------------------------------------------
                    MODULE MEDIA TABLE
-------------------------------------------------------------------------------*/
.dp-table-list {
    padding: var(--space-l);
}
.dp-table-list__table {
    width: 100%;
    border-collapse: collapse;
}
.dp-table-list__table td {
    padding-bottom: 1em;
}
.dp-table-list__table td:not(.dp-first-column) {
    padding-left: 1.5em;
}
.dp-table-list__table tr:last-child td {
    padding-bottom: 0;
}
.dp-first-column {
    padding-right: .5em;
    border-right: .1rem solid var(--clr-brown);
}
.dp-special-offer-container {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .6rem 1.6rem;
}
.dp-table-special-offer--img {
    width: 100%;
    max-width: 60px;
}
.dp-clr-attention {
    color: var(--clr-attention);
    font-weight: var(--fw-bold);
}
td.dp-clr-attention {
    display: flex;
    flex-wrap: wrap;
}
.dp-media-table-note {
    margin-top: 1.3em;
    font-weight: var(--fw-bold);
    font-size: 1.5rem;
    font-style: italic;
}
.dp-media-table-note a {
    color: var(--clr-beige-link);
    text-decoration: underline;
    text-underline-offset: .25em;
}
@media only screen and (max-width: 991px) {
    .dp-table-list {
        padding: var(--space-l) 0;
        margin-top: var(--space-s);
    }
    .dp-table-list.dp-table-list-padding {
        padding: var(--space-l) var(--space-s);
    }
    .dp-first-column {
        border: none;
    }
    .dp-table-list__table td {
        padding-bottom: .3em;
    }
    .dp-table-list__table td:not(.dp-first-column) {
        padding-left: 0;
    }
    .dp-table-list__table tr {
        display: flex;
        flex-direction: column;
    }
    .dp-table-list__table td:nth-child(even) {
        padding: 0 0 1.6rem 0;
    }
}
/*------------------------------------------------------------------------------
                    MODULE MEDIA CARDS
-------------------------------------------------------------------------------*/
.dp-youtube-shorts {
    width: min(380px, 100%);
}
.dp-youtube-shorts .perfmatters-lazy-youtube img {
    height: 100%;
    object-fit: cover;
}
/*------------------------------------------------------------------------------
                    MODULE BENEFITS
-------------------------------------------------------------------------------*/
.dp-benefits-card {
    background: var(--clr-brown);
    padding: var(--space-m) var(--space-s);
}
.dp-benefits-card__headline {
    display: flex;
    flex-direction: column;
    justify-content: center;   
}
.dp-benefits-card__headline > h2 {
    color: var(--clr-white);
    margin: 0 auto;
    max-width: 40ch;
}
.dp-benefits-card__headline span {
    display: flex;
}
.dp-treatment-overview-text {
    font-size: 1.6rem;
}
.dp-benefits-card__list {
    --svg-size: 5.4rem;
    --gap: 1.6rem;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    color: var(--clr-white);
    background: var(--clr-brown);
    gap: var(--gap) 0;
    padding: 2.6rem 1rem;
}
.dp-benefits-card__list > li {
    padding: var(--gap) 1rem;
}
.dp-benefits-card__list-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .6rem;
    text-align: center;
    font-size: 1.5rem;
}
.dp-benefits-card__list > li:not(:nth-child(3n+1)) {
    border-left: .1rem solid var(--clr-brown-light);
}
.dp-benefits-card__list > li:nth-child(n+4) .dp-benefits-card__list-item {
    border-top: .1rem solid var(--clr-brown-light);
    margin-top: calc( -1.5*var(--gap) );
    padding-top: calc( 1.5*var(--gap) );
}
.dp-benefits-card__list svg {
    fill: none;
    stroke: var(--clr-white);
    stroke-width: .1rem;
    width: var(--svg-size);
    height: var(--svg-size);
}
.dp-benefits-card__list p {
    margin: 0;
}
/* @media only screen and (max-width: 991px) {
    .dp-benefits-card {
        display: flex;
        flex-direction: column;
        gap: var(--grid-gap);
    }
} */
@media only screen and (max-width: 767px) {
    .dp-benefits-card__list {
        grid-template-columns: repeat(2, 1fr);
    }
    .dp-benefits-card__list > li:not(:nth-child(3n+1)) {
        border-left: none;    
    }
    .dp-benefits-card__list > li:nth-child(2n+2) {
        border-left: .1rem solid var(--clr-brown-light);
    }
    .dp-benefits-card__list > li:nth-child(n+3) .dp-benefits-card__list-item {
        border-top: .1rem solid var(--clr-brown-light);
        margin-top: calc( -1.5*var(--gap) );
        padding-top: calc( 1.5*var(--gap) );
    }
    .dp-benefits-card__list.dp-last-span-2 > li:last-child {
        grid-column: 1 / 3;
    }
}
/*------------------------------------------------------------------------------
                    MODULE DOCTOR'S QUOTE
-------------------------------------------------------------------------------*/
.dp-doctor-info > span {
    display: block;
}
.dp-doctor-info > span:not(:last-child) {
    color: var(--clr-brown);
    font-weight: var(--fw-bold);
}
.dp-doctor-info > * + * {
    margin-top: .2em;
}
.dp-doctor-content-below + * {
    margin-block-start: calc(-.5 * var(--space-l));
}
/*------------------------------------------------------------------------------
                    MODULE CALENDAR EVENTS
-------------------------------------------------------------------------------*/
.dp-splide-calendar {
    padding-left: 5em;
    margin-top: var(--space-m);
    width: 100%;
    /* height: 48rem; */
}
.dp-calendar-events-item {
    display: flex;
    flex-direction: column;
    height: max-content;
}
.dp-calendar-events-item {
    border-top: .1rem solid hsl(0, 0%, 83%) /*#d3d3d3*/;
    padding-top: .4em;
}
.dp-calendar-events-item > * + * {
    margin-top: .7em;
}
.dp-calendar-events-item__date {
    display: flex;
    flex-direction: column;
}
.dp-calendar-events-item__date > span:last-child {
    order: -1;
}
.dp-calendar-events-item__img {
    position: relative;
    width: 100%;
    /* aspect-ratio: 3 / 2; */
    aspect-ratio: 16 / 9;
    background: var(--clr-beige);
}
.dp-calendar-events-item__img > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
}
.dp-calendar-events-item__title > a {
    font-family: var(--ff-body);
    font-weight: var(--fw-bold);
    color: var(--clr-base);
    font-size: var(--text-m);
    line-height: 1.5;
    text-decoration: none;
}
.dp-splide-arrows--calendar .splide__arrow {
    --size: 4em;
    background: transparent;
    width: var(--size);
    height: var(--size);
    opacity: 1;
    border: .1rem solid var(--clr-base);
    padding: 1em;
    transition: all 400ms ease-in-out;
}
.dp-splide-arrows--calendar .splide__arrow:hover {
    background: var(--clr-base);
}
.dp-splide-arrows--calendar .splide__arrow:hover > svg {
   fill: var(--clr-white);
}
.dp-splide-arrows--calendar .splide__arrow:disabled {
    opacity: .6;
}
.dp-splide-arrows--calendar .splide__arrow > svg {
    fill: var(--clr-base);
    width: var(--size);
    height: var(--size);
    font-weight: var(--fw-bold);
}
.dp-splide-arrows--calendar .splide__arrow--next {
    top: calc( .5*var(--size) );
    right: calc( 100% - var(--size) );
}
.dp-splide-arrows--calendar .splide__arrow--prev {
    top: calc( 1.5*var(--size) + 1em );
    left: 0;
}
@media only screen and (max-width: 680px) {
    .dp-splide-calendar {
        padding-left: 0;
        min-height: 41rem;
        max-height: 42rem;
    }
    .dp-splide-arrows--calendar .splide__arrow {
        --size: 3.2em;
        padding: .75em;
    }
    .dp-splide-arrows--calendar .splide__arrow--next {
        top: calc( -.5*var(--size) - .5*var(--space-m) );
        right: 0;
    }
    .dp-splide-arrows--calendar .splide__arrow--prev {
        top: calc( -.5*var(--size) - .5*var(--space-m) );
        left: calc( 100% - 2*var(--size) - 1em );
    }
}
/*------------------------------------------------------------------------------
                    MODULE YOUTUBE GRID
-------------------------------------------------------------------------------*/
.dp-youtube-grid__video-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 10rem;
    height: 100%;
    background: var(--clr-brown);
    z-index: -1;
    transform: translate(.5rem, 0);
}
.dp-youtube-grid__thumbs {
    list-style: none;
    padding: 0 .5em 0 0;
    margin-left: 0;
    gap: 2em 1em;
    height: 36rem;
    overflow-y: scroll;
    min-height: 0;
}
.dp-youtube-grid__thumbs::-webkit-scrollbar {
    width: .6rem;
}
.dp-youtube-grid__thumbs::-webkit-scrollbar-track {
    /* background: red; */
    background: hsla(13, 28%, 95%, .15);
    border-radius: 6rem;
}
.dp-youtube-grid__thumbs::-webkit-scrollbar-thumb {
    /* background: rgb(0, 255, 94); */
    background: var(--clr-beige);
    border-radius: 6rem;
}
.dp-video-swap-grid {
    /* --img-width: 40%; */
    --gap: 1rem;
    gap: var(--gap);
    background: transparent;
    border: .1rem solid transparent;
    cursor: pointer;
}
.dp-video-swap-grid:disabled {
    border-color: var(--clr-brown);
}
.dp-video-swap-grid__btn-text {
    /* width: calc( 100% - var(--img-width) - var(--gap) ); */
    text-align: left;
    color: var(--clr-white);
}
.dp-video-swap-grid__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--clr-brown);
    border-radius: 50%;
    z-index: 2;
}
.dp-video-swap-grid__img svg {
    --size: 1.3rem;
    fill: var(--clr-white);
    width: var(--size);
    height: var(--size);
    position: relative;
    transform: translateX(16%);
}
.dp-video-swap-grid:disabled img {
    filter: grayscale(100%) brightness(70%);
}
.dp-video-swap-grid:disabled .dp-video-swap-grid__icon {
    background-color: var(--clr-white);
}
.dp-video-swap-grid:disabled svg {
    fill: var(--clr-brown);
}
@media only screen and (max-width: 991px) {
    .dp-youtube-grid__video-wrapper::after {
        top: revert;
        right: revert;
        left: 50%;
        bottom: 0;
        width: 100vw;
        height: 50%;
        transform: translate(-50%, 1rem);
        z-index: -1;
    }
    .dp-youtube-grid__thumbs-wrapper::after {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        width: 100vw;
        height: 100%;
        z-index: -1;
        transform: translate(-50%, 0);
        background: var(--clr-brown);
    }
}
/*------------------------------------------------------------------------------
                    MODULE SOCIAL (TIKTOK, INSTAGRAM)
-------------------------------------------------------------------------------*/
.dp-tiktok-embed {
    min-height: 795px;
}
.dp-instagram-embed {
    min-height: 1040px;
}
.dp-tiktok-headline__intro {
    margin-top: var(--space-m);
}
.dp-social-quote {
    --_top: -.75em;
    font-size: clamp(2.1rem, calc(2.1rem + ((1vw - 0.48rem) * 0.7901)), 2.8rem);
    position: relative;
    margin-top: calc( var(--space-xl) - var(--_top) );    
}
.dp-social-quote::before {
    content: "“";
    position: absolute;
    top: var(--_top);
    left: 0;
    font-size: 3.4em;
    font-family: var(--ff-heading);
    font-weight: var(--fw-bold);
    color: var(--clr-brown);
}
@media only screen and (max-width: 991px) {
    .dp-grid--2 .dp-tiktok-headline {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}
/*------------------------------------------------------------------------------
                    MODULE COMBO PRICING TABLE
-------------------------------------------------------------------------------*/
.dp-combo--primary {
    --_bg-color: var(--clr-brown);
    color: var(--clr-white);
}
.dp-combo--primary h2 {
    color: var(--clr-white);
}
.dp-combo--secondary {
    --_bg-color: var(--clr-beige);
}
.dp-combo-table {
    --_partition: 5;
    --_headline-width: 2;
    --_table-width: calc( var(--_partition) - var(--_headline-width));
    display: grid;
    grid-template-columns: 
        minmax(var(--space-m), 1fr) 
        [bg-start headline-start] 
        repeat(var(--_headline-width), minmax(0px, calc( var(--viewport) / var(--_partition) ) ) ) 
        [headline-end table-start] 
        repeat(var(--_table-width), minmax(0px, calc( var(--viewport) / var(--_partition) ) ) ) 
        [bg-end table-end] 
        minmax(var(--space-m), 1fr);
    position: relative;
    align-items: center;
    padding-block: var(--space-l);
}
:where(.dp-combo-table-headline, .dp-combo-table-price) {
    padding: var(--space-m);
}
.dp-combo-table-headline {
    grid-area: headline;
}
.dp-combo-table-price {
    grid-area: table;
} 
.dp-combo-table-price table {
    width: 100%;
    border-collapse: collapse;
    border-style: hidden;
}
.dp-combo-table-price td {
    padding: 1em .9rem 0 0;
    vertical-align: top;
}
.dp-combo-table-price tr:first-child td {
    padding-top: 0;
}
.dp-combo-table-price td:nth-of-type(even) {
    min-width: 15ch;
    text-align: right;
}
.dp-combo-table-price::before {
    content: "";
    position: absolute;
    inset: 0;
    grid-area: bg;
    background-color: var(--_bg-color);
    z-index: -1;
}
@media only screen and (max-width: 991px) {
    .dp-combo-table {
        grid-template-columns: 
            minmax(var(--space-m), 1fr) 
            [bg-start headline-start table-start] 
            minmax( 0px, var(--viewport) )
            [bg-end headline-end table-end] 
            minmax(var(--space-m), 1fr);
        grid-template-rows: 
            [bg-start headline-start] 
            auto
            [table-start headline-end] 
            auto 
            [bg-end table-end]
    }
}
@media only screen and (max-width: 540px) {
    .dp-combo-table-price tr {
        display: flex;
        flex-direction: column;
    }
    .dp-combo-table-price tbody > * + * {
        margin-top: 2.2rem;
    }
    .dp-combo-table-price td:nth-of-type(even) {
        min-width: revert;
        text-align: left;
        margin-top: .5rem;
    }
    .dp-combo-table-price td {
        padding: 0;
    }
}
/*------------------------------------------------------------------------------
                    MODULE VIDEO CARDS
-------------------------------------------------------------------------------*/
.dp-video-card-media-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    isolation: isolate;
}
.dp-video-card-media-wrapper :is(img, video) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.dp-video-card-media {
    z-index: 1;
    opacity: 1;
    height: 100%;
    transition: all 300ms ease-in-out;
}
.dp-video-card-media[data-state="hidden"] {
    z-index: -1;
    opacity: 0;
}
.dp-video-card-media-video {
    opacity: 0;
    height: 100%;
    transition: all 300ms ease-in-out;
}
.dp-video-card-media-video:is([data-state="active"], [data-state="activated"]) {
    opacity: 1;
}
/*------------------------------------------------------------------------------
                    POST TYPE VIDEO CAROUSEL [MODULE VIDEO CARDS]
-------------------------------------------------------------------------------*/
.dp-gallery-carousel__pagination-current {
    font-size: var(--text-xl);
    color: var(--clr-beige);
}
.dp-gallery-carousel__pagination-divider, 
.dp-gallery-carousel__pagination-total {
    font-size: var(--text-l);
    color: var(--clr-white);
}
.dp-gallery-carousel__pagination-divider {
    margin-inline: .25em;
}
.dp-section-gallery-carousel {
    height: 100%;
    min-height: 100vh;
    min-height: 100svh;
}
.dp-video-carousel-item, 
.dp-video-carousel-item-media-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.dp-video-carousel-item {
    gap: .6em;
}
.dp-video-carousel-item-media-wrapper {
    position: relative;
    isolation: isolate;
    max-width: 520px;
}
.dp-video-carousel-item-media-wrapper :is(img, video) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.dp-video-carousel-item-media__img {
    z-index: 1;
    opacity: 1;
    transition: all 300ms ease-in-out;
}
.dp-video-carousel-item-media__img[data-state="hidden"] {
    z-index: -1;
    opacity: 0;
}
.dp-play-video-btn {
    --_icon-size: 10rem;
}
.dp-video-card-media__btn {
    --_icon-size: 6rem;
}
.dp-play-video-btn, 
.dp-video-card-media__btn {
    --_icon-padding: calc(var(--_icon-size) / 4);
    display: flex;
    justify-content: center;
    align-items: center;
    width: var(--_icon-size);
    height: var(--_icon-size);
    background-color: var(--clr-white);
    padding: var(--_icon-padding);
    border: 1px solid var(--clr-brown);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: background-color 300ms ease-in-out;
}
.dp-play-video-btn-shadow {
    box-shadow: 0 5px 20px 0 rgba(0,0,0,.3);
}
.dp-play-video-btn__icon {
    position: relative;
    left: 15%;
    fill: var(--clr-brown);
    width: 100%;
    height: 100%;
    transition: fill 300ms ease-in-out;
    pointer-events: none;
}
:is(.dp-play-video-btn, .dp-video-card-media__btn):hover {
    background-color: var(--clr-brown);
}
:is(.dp-play-video-btn, .dp-video-card-media__btn):hover .dp-play-video-btn__icon {
    fill: var(--clr-white);
}
.dp-media-switch {
    cursor: pointer;
}
.dp-video-carousel-item-media__video {
    opacity: 0;
    transition: all 300ms ease-in-out;
}
.dp-video-carousel-item-media__video[data-state="active"], 
.dp-video-carousel-item-media__video[data-state="activated"] {
    opacity: 1;
}
@media only screen and (max-width: 991px) {
    .dp-play-video-btn {
        --_icon-size: 11rem;
    }
    .dp-video-card-media__btn {
        --_icon-size: 8rem;
    }
}
@media only screen and (max-width: 767px) {
    .dp-play-video-btn {
        --_icon-size: 10rem;
    }
    .dp-video-card-media__btn {
        --_icon-size: 8rem;
    }
}
@media only screen and (max-width: 479px) {
    .dp-play-video-btn {
        --_icon-size: 8rem;
    }
    .dp-video-card-media__btn {
        --_icon-size: 6rem;
    }
}
/*------------------------------------------------------------------------------
                    POST TYPE VIDEO GALLERY
-------------------------------------------------------------------------------*/
.dp-iframe-video-carousel-wrapper {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100vh;
    min-height: 100svh;
    background-color: hsla(0, 0% ,0%, .8);
    z-index: calc( var(--z-index-all) + 10);
    color: var(--clr-white);
    isolation: isolate;
}
.dp-iframe-video-carousel-wrapper[data-state="visible"] {
    display: grid;
    place-items: center;
}
.dp-iframe-video-carousel {
    height: 100%;
    z-index: 2;
}
.dp-iframe-close {
    --_btn-close-size: 3rem;
    position: absolute;
    top: 4rem;
    right: 1rem;
    width: var(--_btn-close-size);
    height: var(--_btn-close-size);
    border: 1px solid var(--clr-base);
    background-color: var(--clr-white);
    padding: .2rem;
    z-index: 3;
    cursor: pointer;
    transition: background-color 300ms ease-in-out;
}
.dp-iframe-close-icon {
    width: 100%;
    height: 100%;
    fill: var(--clr-base);
    transition: fill 300ms ease-in-out;
}
/* ---------------------  Spinner ----------------------------------------*/
.dp-grid-video-wrapper, .dp-video-wrapper {
    position: relative;
    background-color: var(--clr-beige-dark);
    isolation: isolate;
}
.dp-spinner {
    width: 200px;
    height: 200px;
}
:is(.dp-grid-video-wrapper, .dp-iframe-video-carousel-wrapper, .dp-video-wrapper) .dp-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
:is(.dp-grid-video-wrapper, .dp-video-wrapper) .dp-spinner {
    z-index: -1;
}
.dp-spinner[data-hidden] {
    display: none;
}
.dp-spinner > svg {
    width: 100%;
    height: 100%;
    fill: var(--clr-white);
}
.dp-spinner-main {
    animation: spinner_rotate 1.2s infinite
}
.dp-spinner-1 {
    animation-delay: .1s
}
.dp-spinner-3 {
    animation-delay: .2s
}
.dp-spinner-5 {
    animation-delay: .3s
}
.dp-spinner-7 {
    animation-delay: .4s
}
.dp-spinner-9 {
    animation-delay: .5s
}
.dp-spinner-11 {
    animation-delay: .6s
}
.dp-spinner-10 {
    animation-delay: .7s
}
.dp-spinner-8 {
    animation-delay: .8s
}
.dp-spinner-6 {
    animation-delay: .9s
}
.dp-spinner-4 {
    animation-delay: 1s
}
.dp-spinner-2 {
    animation-delay: 1.1s
}
@keyframes spinner_rotate {
    0%,
    50% {
        animation-timing-function: cubic-bezier(0.27, .42, .37, .99);
        r: 0
    }
    25% {
        animation-timing-function: cubic-bezier(0.53, 0, .61, .73);
        r: 2px
    }
}
/*------------------------------------------------------------------------------
                    SECTION INNER ANCHORS
-------------------------------------------------------------------------------*/
.dp-nav-menu__list {
    list-style-type: none;
    display: flex;
    padding: 0 1rem;
    overflow-x: auto;
    white-space: nowrap;
    z-index: 1;
    margin: 0;
}
.dp-nav-menu__list > * + * {
    border-left: .1rem solid var(--clr-white);
}
.dp-nav-menu__list > li {
    padding-block: var(--space-s);
}
.dp-nav-menu__link {
    padding: .5rem 2.6rem;
}
.dp-nav-menu__link:hover {
    text-decoration: none;
}
.dp-nav-menu__list::-webkit-scrollbar {
    height: .8rem;
}
.dp-nav-menu__list::-webkit-scrollbar-track {
    background: hsla(13, 28%, 95%, .15);
    border-radius: 6rem;
}
.dp-nav-menu__list::-webkit-scrollbar-thumb {
    background: var(--clr-beige);
    border-radius: 6rem;
}
/*------------------------------------------------------------------------------
                    MODULE MOTO
-------------------------------------------------------------------------------*/
.dp-moto-container {
    width: 100%;
    padding: var(--space-m) var(--space-s);
    font-size: var(--text-xl);
    font-family: var(--ff-heading-alt);
    letter-spacing: .1rem;
}
:is(.dp-moto-outline, .dp-moto-bg-fill) {
    background: var(--clr-brown);
}
.dp-moto-outline .dp-moto-container {
    color: var(--clr-white);
    border: .2rem solid var(--clr-beige);
}
.dp-moto-bg-fill .dp-moto-container {
    color: var(--clr-base);
    border: .2rem solid var(--clr-beige);
    background: var(--clr-beige);
    box-shadow: 0 .3rem 2rem -.8rem rgba(0,0,0,.4);
}
:is(.dp-moto-bg-fill-reverse, .dp-moto-outline-reverse, .dp-moto-bg-fill-black) {
    background: var(--clr-beige);
}
.dp-moto-outline-reverse .dp-moto-container {
    color: var(--clr-base);
    border: .2rem solid var(--clr-base);
}
.dp-moto-bg-fill-reverse .dp-moto-container {
    color: var(--clr-white);
    border: .2rem solid var(--clr-brown);
    background: var(--clr-brown);
    box-shadow: 0 .3rem 2rem -.8rem rgba(0,0,0,.4);
}
.dp-moto-bg-fill-black .dp-moto-container {
    color: var(--clr-white);
    /* border: .2rem solid var(--clr-brown); */
    background: var(--clr-base);
    /* box-shadow: 0 .3rem 2rem -.8rem rgba(0,0,0,.4); */
}
/*------------------------------------------------------------------------------
                    MODULE OFFERS WHY THIS TREATMENT
-------------------------------------------------------------------------------*/
.dp-why-treatment-card__headline {
    margin: 0 auto;
    max-width: 27ch;
}
.dp-treatment-overview-text {
    font-size: 1.6rem;
}
.dp-why-treatment-card__list {
    --svg-size: 5.4rem;
    --gap: 1.6rem;
    /* list-style: none; */
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    color: var(--clr-white);
    /* background: var(--clr-brown); */
    gap: var(--gap) 0;
}
.dp-why-treatment-card__list > li {
    padding: var(--gap) 1rem;
}
.dp-why-treatment-card__list-item {
    gap: .6rem;
    font-size: 1.5rem;
}
.dp-why-treatment-card__list > li:nth-child(n+2) {
    border-left: .1rem solid var(--clr-brown-light);
}
.dp-why-treatment-card__list svg {
    fill: none;
    stroke: var(--clr-white);
    stroke-width: .1rem;
    width: var(--svg-size);
    height: var(--svg-size);
}
.dp-why-treatment-card__list p {
    margin: 0;
}
@media only screen and (max-width: 767px) {
    .dp-why-treatment-card__list {
        grid-template-columns: repeat(2, 1fr);
    }
    .dp-why-treatment-card__list > li:nth-child(2) {
        border-left: .1rem solid var(--clr-brown-light);
    }
    .dp-why-treatment-card__list > li:not(:last-child) {
        position: relative;
    }
    .dp-why-treatment-card__list > li:not(:last-child)::before {
        --left-position: 5%;
        content: "";
        position: absolute;
        left: var(--left-position);
        bottom: -1rem;
        width: calc( 100% - 2*var(--left-position) );
        height: .1rem;
        background: var(--clr-brown-light);
    }
    .dp-why-treatment-card__list > li:last-child {
        border: none;
        grid-column: 1 / 3;
    }
}
@media only screen and (max-width: 479px) {
    .dp-why-treatment-card__list {
        display: flex;
        flex-direction: column;
    }
    .dp-why-treatment-card__list > li:nth-child(2) {
        border-left: revert;
    }
}
/*------------------------------------------------------------------------------
                    MODULE ICON CARDS
-------------------------------------------------------------------------------*/
.dp-icon-cards__icon-wrapper {
    width: 100%;
    max-width: 8rem;
    aspect-ratio: 1 / 1;
}
.dp-icon-cards__icon {
    fill: var(--clr-white);
    width: 100%;
    height: 100%;
    padding: 2rem;
}
/*------------------------------------------------------------------------------
                    MODULE TEXT CARDS
-------------------------------------------------------------------------------*/
.dp-text-cards__list ul {
    list-style-type: disc;
}
/*------------------------------------------------------------------------------
                    MODULE STEPS
-------------------------------------------------------------------------------*/
.dp-steps-container__text :last-child {
    margin-bottom: 0;
}
/*------------------------------------------------------------------------------
                    MODULE SWITCHER
-------------------------------------------------------------------------------*/
.dp-switcher-wrapper {
    --width-switcher: 8rem;
    --padding: .35em;
    --size-circle: 3rem;
    display: flex;
    align-items: center;
    gap: 1em;
}
.dp-switcher-text {
    margin: 0;
}
[data-module="switcher"] {
    cursor: pointer;
}
.dp-switcher {
    display: flex;
    align-items: center;
    padding: var(--padding);
    border-radius: 5em;
    width: var(--width-switcher);
    background: var(--clr-brown);
    cursor: pointer;
}
.dp-handle {
    width: var(--size-circle);
    height: var(--size-circle);
    background: var(--clr-beige);
    border-radius: 50%;
    transition: all 400ms ease;
}
.dp-move-handler-right {
    transform: translateX(calc( var(--width-switcher) - var(--size-circle) - 2*var(--padding) ));
}
.dp-switcher-panels {
    width: 100%;
    margin-top: 1em;
}
.dp-switcher-panel {
    width: 100%;
    display: none;
    animation: dp-switcher-fade-in 0.95s;
}
.dp-switcher-panel.dp-current {
    display: block;
}
@keyframes dp-switcher-fade-in {
    0% {
        opacity: 0;
        transform: translateY(5px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);        
    }
}
/*------------------------------------------------------------------------------
                    SINGLE CLINICS
-------------------------------------------------------------------------------*/
.dp-clinics-subtitle {
    color: var(--clr-primary);
    font-size: calc(1.15 * var(--text-xxl));
    font-weight: var(--fw-regular);
    font-family: var(--ff-heading);
    margin-block-start: .25em;
}
/*------------------------------------------------------------------------------
                    SINGLE OFFERS
-------------------------------------------------------------------------------*/
.dp-offers-card__headline {
    padding-bottom: 2rem;
    border-bottom: .1rem solid var(--clr-beige);
}
.dp-offers-card__teaser span {
    display: block;
    font-size: 1.4rem;
    font-style: italic;
}
.dp-offers-card__teaser span + * {
    margin-top: .5rem;
}
.dp-offers-main section:last-child {
    margin-top: var(--space-l);
}
.dp-section.dp-section-offer-hero-single-media > .dp-inner-wrap {
    align-items: center;
    gap: var(--space-m);
}
.dp-section-offer-hero-single-media__headline {
    text-align: center;
}
.dp-section-offer-hero-single-media__img {
    aspect-ratio: 16 / 9;
    width: 100%;
}
.dp-section-offer-hero-single-media__img > :is(img, video, iframe) {
    aspect-ratio: inherit;
    width: 100%;
    object-fit: cover;
}
.dp-section-offer-hero-single-media__intro {
    text-align: center;
}
@media only screen and (max-width: 767px) {
    .dp-section-offer-hero-single-media__img {
        aspect-ratio: 4 / 3;
    }
}
/*------------------------------------------------------------------------------
                    ARCHIVE OFFERS
-------------------------------------------------------------------------------*/
.dp-btn-all-treatments-prices {
    margin-top: 4.2em;
    padding: .6em 2em;
    color: var(--clr-white);
    background-color: var(--clr-primary);
    border-radius: var(--radius-l);
    font-size: calc(.9*var(--text-l));
    width: fit-content;
    justify-self: center;
    text-align: center;
}
.dp-btn-all-treatments-prices:hover {
    text-decoration: none;
}
.dp-grid-main .dp-btn-all-treatments-prices {
    margin-top: 1.2em;
}
.dp-offers-list--special {
    margin-top: 1.2em;
    font-weight: var(--fw-bold);    
}
.dp-offers-list--special ul {
    list-style: none;
    margin-left: 0;    
}
.dp-offers-list--special ul > * + * {
    margin-top: 1rem;
}
.dp-offers-list-item__price {
    margin-block-end: .2em;
}
/*------------------------------------------------------------------------------
                    BLOG PAGINATION
-------------------------------------------------------------------------------*/
nav.pagination {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding: var(--space-l) 0;
    clip-path: inset(0 -100vmax);
	z-index: 0;
	background-color: var(--grey-light);
	box-shadow: 0 0 0 100vmax var(--grey-light);
}
.nav-links {
    position: relative;
}
.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;
    /* min-width: 4rem; */
    width: var(--page-size);
    height: var(--page-size);
}
.nav-links ul li span.current {
    padding: 1rem;
    width: 100%;
    height: 100%;
    background: var(--clr-brown);
    line-height: 1;
    border-radius: 50%;
    color: var(--clr-white);
}
.nav-links ul li span {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
}
.nav-links ul li span.dots {
    color: var(--clr-brown);
    font-size: 2.2rem;
}
.nav-links ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 1;
    padding: 1rem;
    color: var(--clr-brown);
    border-radius: 50%;
    border: .1rem solid var(--clr-brown);
    transition: all .4s ease-in-out;
}
.nav-links ul li a:hover {
    text-decoration: none;
    background: var(--clr-beige);
    color: var(--clr-white);
    border-radius: 50%;
    border: .1rem solid var(--clr-beige);
}
.dp-blog-pagination__icon {
    --svg-size: 2.1rem;
    fill: var(--clr-brown);
    width: var(--svg-size);
    height: var(--svg-size);
    transition: fill .4s ease-in-out;
}
.nav-links :where(.prev:hover, .next:hover) .dp-blog-pagination__icon {
    fill: var(--clr-white);
}
.dp-blog-list-item__heading {
    font-size: clamp(1.6rem, calc(1.376rem + 0.45vw), 2rem);
    line-height: 1.3;
    margin-top: .6rem;
}
/*------------------------------------------------------------------------------
                    MODULE TREATMENT GRID
-------------------------------------------------------------------------------*/
.dp-treatment-grid-container__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.dp-treatment-grid-price {
    margin: 0;
    padding: .75rem 2.5rem;
    border: .1rem solid var(--clr-base);
    border-radius: 5em;
    flex-shrink: 0;
}
@media only screen and (max-width: 600px) {
    .dp-treatment-grid-container__heading {
        flex-direction: column;
        align-items: flex-start;
        justify-content: revert;
        gap: var(--space-xs);
    }
}
/*------------------------------------------------------------------------------
                   MODULE GOOGLE MAP
-------------------------------------------------------------------------------*/
.dp-map {
    max-height: 50rem;
}
/*------------------------------------------------------------------------------
                   MODULE IMAGE CONTENT FULL GROUP
-------------------------------------------------------------------------------*/
.dp-grid-section {
    --col-number: 10;
    --col-width: calc( (1366px / var(--col-number)) );
    display: grid;
    grid-template-columns: 
        minmax(var(--space-m), 1fr) 
        repeat(var(--col-number), minmax(0, var(--col-width))) 
        minmax(var(--space-m), 1fr);
    grid-template-rows: 
        minmax(1rem, 4rem) 
        repeat(10 , auto) 
        minmax(1rem, 4rem);
    /* background-color: antiquewhite; */
    position: relative;
    isolation: isolate;
}
.dp-grid-section__media {
    grid-row: 1 / span 12;
}
.dp-grid-media--left .dp-grid-section__media {
    grid-column: 1 / span 3;
}
.dp-grid-media--right .dp-grid-section__media {
    grid-column: -4 / span 3;
}
.dp-grid-section__heading {
    grid-row-start: 1;
    /* background-color: coral; */
    display: flex;
    align-items: flex-end;
}
.dp-grid-media--left .dp-grid-section__heading {
    grid-column: 4 / -2;
    padding-left: var(--space-m);
}
.dp-grid-media--right .dp-grid-section__heading {
    grid-column: 2 / -4;
}
.dp-grid-section__subheading {
    grid-row: 2 / span 1;
    /* background-color: goldenrod; */
    background-color: var(--clr-beige);
    padding: var(--space-l) var(--space-s) var(--space-m) var(--space-xl);
}
.dp-grid-section__subheading::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100;
    /* background-color: aquamarine; */
    background-color: var(--clr-beige);
    z-index: -1;
    grid-row: 2 / -2;
}
.dp-grid-media--left .dp-grid-section__subheading {
    grid-column: 4 / -2;
}
.dp-grid-media--right .dp-grid-section__subheading {
    grid-column: 2 / -4;
}
.dp-grid-media--left .dp-grid-section__subheading::before {
    grid-column: 4 / -1;
}
.dp-grid-media--right .dp-grid-section__subheading::before {
    grid-column: 1 / -4;
}
.dp-grid-section__heading-text {
    /* background-color: blueviolet; */
    line-height: .8;
    mix-blend-mode: multiply;
}
.dp-grid-section__subheading-text > span {
    display: block;
}
.dp-grid-section__body {
    grid-row: 3 / span 9;
    padding: var(--space-s) var(--space-s) var(--space-m) var(--space-xl);
    /* background-color: yellowgreen; */
    background-color: var(--clr-beige);
}
.dp-grid-media--left .dp-grid-section__body {
    grid-column: 4 / -2;
}
.dp-grid-media--right .dp-grid-section__body {
    grid-column: 2 / -4;
}
@media only screen and (max-width: 991px) {
    .dp-grid-section {
        grid-template-columns: minmax(var(--space-m), 1fr) auto minmax(var(--space-m), 1fr);
        grid-template-rows: repeat(4, auto);
    }
    :is(.dp-grid-section__heading, .dp-grid-section__subheading, .dp-grid-section__media, .dp-grid-section__body), 
    :is(.dp-grid-media--left, .dp-grid-media--right) :is(.dp-grid-section__media, .dp-grid-section__heading, .dp-grid-section__subheading, .dp-grid-section__body) {
        grid-column: 2 / span 1;
    }
    .dp-grid-section__body, .dp-grid-section__media, .dp-grid-section__subheading {
        grid-row: revert;
    }
    .dp-grid-section__subheading::before {
        grid-row: 2 / -1;
    }
    :is(.dp-grid-media--left, .dp-grid-media--right) .dp-grid-section__subheading::before {
        grid-column: 1 / -1;
    }
    .dp-grid-media--left .dp-grid-section__heading, 
    .dp-grid-section__subheading {
        padding: 0;
    }
    .dp-grid-section__subheading {
        padding: var(--space-m) 0;
    }
    .dp-grid-section__body {
        padding: var(--space-m) 0;
    }
}
/*------------------------------------------------------------------------------
                   MODULE REVIEWS CAROUSEL
-------------------------------------------------------------------------------*/
.dp-reviews-carousel-star-container {
    --svg-size: 2rem;
    gap: .5rem;
}
.dp-reviews-carousel-star-container > svg {
    fill: hsl(45, 97%, 50%);
    width: var(--svg-size);
    height: var(--svg-size);
}
.dp-reviews-carousel-all {
    gap: .5em;
    padding-bottom: .25em;
    border-bottom: .1rem solid var(--clr-white);
}
.dp-reviews-carousel-all > svg {
    --icon-size: 2.6rem;
    width: var(--icon-size);
    height: var(--icon-size);
}
.dp-splide-arrows--thick {
    --arrow-btn-size: 5rem;
    --arrow-svg-size: 3em;
}
.dp-splide-arrows--thick > .splide__arrow {
    width: var(--arrow-btn-size);
    height: var(--arrow-btn-size);
    background: var(--clr-transparent);
    /* border: .1rem solid var(--clr-secondary); */
    transition: all 400ms ease;
}
.dp-splide-arrows--thick .splide__arrow svg {
    fill: var(--clr-white);
    stroke: var(--clr-white);
    stroke-width: 1.8;
    width: var(--arrow-svg-size);
    height: var(--arrow-svg-size);
    transition: all 400ms ease;
}
.dp-splide-arrows--thick .splide__arrow:hover svg {
    fill: var(--clr-base);
    stroke: var(--clr-base);
}
@media only screen and (max-width: 991px) {
    .dp-splide-arrows--reviews .splide__arrow {
        position: absolute;
        top: calc(100% + calc( 2*var(--space-l) ));
    }
    .dp-splide-arrows--reviews .splide__arrow--next {
        right: calc(50% - 1.25*var(--arrow-btn-size));
    }
    .dp-splide-arrows--reviews .splide__arrow--prev {
        left: calc(50% - 1.25*var(--arrow-btn-size));
    }
}
/*------------------------------------------------------------------------------
                   MODULE PRODUCTS CAROUSEL
-------------------------------------------------------------------------------*/
.dp-reviews-carousel-item__name {
    font-size: 2rem;
    text-align: center;
}
.dp-products-carousel-item__text {
    font-size: 1.45rem;
}
.dp-splide-arrows--thick {
    --arrow-btn-size: 5rem;
    --arrow-svg-size: 3em;
}
.dp-splide-arrows--thick > .splide__arrow {
    width: var(--arrow-btn-size);
    height: var(--arrow-btn-size);
    background: var(--clr-transparent);
    /* border: .1rem solid var(--clr-secondary); */
    transition: all 400ms ease;
}
.dp-splide-arrows--thick.dp-splide-arrows--products .splide__arrow svg {
    fill: var(--clr-base);
    stroke: var(--clr-base);
    /* stroke-width: 1.8;
    width: var(--arrow-svg-size);
    height: var(--arrow-svg-size);
    transition: all 400ms ease; */
}
.dp-splide-arrows--thick .splide__arrow:hover svg {
    fill: var(--clr-base);
    stroke: var(--clr-base);
}
.dp-splide-arrows--products .splide__arrow {
    position: absolute;
    top: calc(0% - 1.25*var(--space-l) );
}
.dp-splide-arrows--products .splide__arrow--prev {
    left: calc(100% - 2.5*var(--arrow-btn-size) );
}
@media only screen and (max-width: 767px) {
    .dp-splide-arrows--products .splide__arrow {
        position: absolute;
        /* top: calc(100% + calc( 2*var(--space-l) )); */
        /* top: 100%; */
        top: calc(100% + var(--space-m));
    }
    .dp-splide-arrows--products .splide__arrow--next {
        right: calc(50% - 1.25*var(--arrow-btn-size));
    }
    .dp-splide-arrows--products .splide__arrow--prev {
        left: calc(50% - 1.25*var(--arrow-btn-size));
    }
}
/*------------------------------------------------------------------------------
                   MODULE AWARDS
-------------------------------------------------------------------------------*/
.dp-awards-list.dp-scrollable--y {
    height: 40rem;
    padding-right: .5em;
    overflow-y: scroll;
    scrollbar-color: var(--clr-beige) var(--clr-gray);
}
.dp-scrollable--y::-webkit-scrollbar {
    width: .6rem;
}
.dp-scrollable--y::-webkit-scrollbar-track {
    /* background: red; */
    background: hsla(13, 28%, 95%, .15);
    border-radius: 6rem;
}
.dp-scrollable--y::-webkit-scrollbar-thumb {
    /* background: rgb(0, 255, 94); */
    background: var(--clr-beige);
    border-radius: 6rem;
}
/*------------------------------------------------------------------------------
                   OFFER BRIDES
-------------------------------------------------------------------------------*/
.dp-offer-bride-price-img-container {
    margin-bottom: calc( -1*var(--space-l));
}
.dp-offer-bride-info__price {
    background: var(--clr-brown);
    box-shadow: 0 0 2rem -1.2rem rgba(0,0,0,.1);
    width: 100%;
    max-width: 220px;
    z-index: 2;
}
.dp-offer-bride-info__price > p {
    font-weight: var(--fw-bold);
    color: var(--clr-white);
}
.dp-offer-bride-info__price > p:first-child {
    font-size: 2.2rem;
    margin-bottom: .1rem;
}
.dp-offer-bride-info__price > p:last-child {
    font-family: var(--ff-heading);
    font-size: 3.8rem;
    margin-bottom: 0;
}
.dp-offer-bride-info__details {
    --margin-top: 1rem;
    padding: var(--space-s);
    background: var(--clr-white);
    border: .1rem solid var(--clr-brown);
    box-shadow: 0 0 2rem -1rem rgba(0,0,0,.3);
    margin-top: calc( -1*var(--margin-top) );
    width: 100%;
    flex: 1;
}
.dp-offer-bride-info__details li::first-letter {
    font-weight: var(--fw-bold);
    color: var(--clr-brown);
}
.dp-offer-bride-info__intro {
    font-weight: var(--fw-bold);
    margin-top: var(--margin-top);
}
/*------------------------------------------------------------------------------
                    QR CODE SPECIAL OFFER
-------------------------------------------------------------------------------*/
:is(.dp-aspect-cdm, .dp-aspect-ahc, .dp-aspect-adc) {
  width: 100%;
}
.dp-aspect-cdm {
  aspect-ratio: 100 / 18;
  max-width: 14rem;
}
.dp-aspect-ahc {
  aspect-ratio: 100 / 43;
  max-width: 10rem;
}
.dp-aspect-adc {
  aspect-ratio: 100 / 18;
  max-width: 16rem;
}
/*------------------------------------------------------------------------------
                    MODULE LOGOS GALLERY
-------------------------------------------------------------------------------*/
.dp-logos-gallery__heading > span {
    display: block;
}
.dp-logos-gallery__heading > :first-child {
    color: var(--clr-gray-dark);
}
.dp-logos-gallery__heading > :last-child {
    color: var(--clr-base);
    font-family: var(--ff-heading-alt);
    font-size: calc( 1.2*var(--text-xxl) );
}
.dp-logos-gallery__list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    /* max-width: 76.8rem; */
}
.dp-logo-gallery__logo {
    width: 100%;
    max-width: 14rem;
}
.dp-logo-gallery__logo img {
    filter: grayscale(100%);
}
/*------------------------------------------------------------------------------
                    HERO HR
-------------------------------------------------------------------------------*/
.dp-hero--split {
    display: grid;
    grid-template-columns: 
        minmax(var(--space-m), 1fr) 
        repeat(2, minmax(1rem, calc( 1366px / 2) )) 
        minmax(var(--space-m), 1fr);
    grid-template-areas: 
        "... headline image ..." 
        "... intro image ...";
    gap: 1em 0;
    padding-block: var(--space-l);
}
.dp-hero-hr__headline, 
.dp-hero-hr__intro {
    padding-right: var(--space-m);
}
.dp-hero-hr__headline {
    display: flex;
    grid-area: headline;
    align-self: end;
}
.dp-hero-hr__intro {
    grid-area: intro;
    align-self: start;
}
.dp-hero-hr__img {
    grid-area: image;
    align-self: start;
    height: 100%;
}
.dp-hero-hr__img-inner {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}
.dp-hero-hr__img-inner > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media only screen and (max-width: 767px) {
    .dp-hero--split {
        grid-template-areas: 
            "... headline headline..." 
            "... image image ..." 
            "... intro intro ...";
        gap: var(--space-m) 0;
    }
    .dp-hero-hr__headline, 
    .dp-hero-hr__intro {
        padding-right: revert;
    }
}
/*------------------------------------------------------------------------------
                SHORTCODE PATIENTS REVIEWS
-------------------------------------------------------------------------------*/
.dp-simple-review-wrapper {
    display: flex;
    flex-direction: column;
}
.dp-simple-review-list {
    list-style: none;
    margin-inline-start: 0;
}
.dp-simple-review-list > * + * {
    margin-block-start: 2em;
}
.dp-simple-review-reviewer {
    display: flex;
    align-items: center;
    gap: 1em;
}
.dp-simple-review-reviewer > figure {
    width: 4.6rem;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
}
.dp-simple-review-reviewer img {
    width: 100%;
    height: 100%;
    aspect-ratio: inherit;
    border-radius: inherit;
    object-fit: cover;
}
.dp-simple-review-body {
    margin-block-start: .75em;
}
.dp-simple-review-link {
    color: var(--clr-white);
    padding: .7em 1.75em;
    margin-inline: auto;
    margin-block: 2em;
    text-align: center;
    border-radius: var(--radius-l);
    background-color: var(--clr-primary);
    transition: background-color 300ms ease-in-out;
}
.dp-simple-review-link:is(:hover, :focus) {
    text-decoration: none;
    background-color: var(--clr-primary-hover);
}
/*------------------------------------------------------------------------------
                    BLACK FRIDAY BANNER
-------------------------------------------------------------------------------*/
.dp-bf-banner {
    position: relative;
    color: var(--clr-brown);
    overflow: hidden;
}
.dp-bf-banner img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.dp-bf-banner__headline {
    --_font-size: calc( 1.5*var(--text-xxl) );
    display: flex;
    gap: 1.2rem;
    font-size: var(--_font-size);
    margin-bottom: var(--space-s);
}
.dp-bf-banner__headline :first-child {
    color: var(--clr-beige);
    font-family: var(--ff-bf-display);
}
.dp-bf-banner__headline :last-child {
    color: var(--clr-brown);
    font-family: var(--ff-bf-prosper);
    transform: rotate(344deg);
}
.dp-bf-banner__lede > span {
    display: block;
}
.dp-bf-banner__img {
    object-position: 90% 50%;
}
.dp-cw-banner__headline, 
.dp-xmas-banner__headline {
    /* --_font-size: calc( 2.1*var(--text-xxl) ); */
    color: var(--clr-white);
    font-size: var(--_font-size);
}
.dp-cw-banner__headline {
    --_font-size: calc( 2.1*var(--text-xxl) );
    font-family: var(--ff-cw-times);
    margin-bottom: var(--space-s);
}
.dp-banner-xmas > .dp-inner-wrap {
    flex-direction: row;
    justify-content: space-evenly;
}
.dp-xmas-banner__headline {
    --_font-size: calc( 2.8*var(--text-xxl) );
    font-family: var(--ff-xmas);
    line-height: 1;
    -webkit-text-fill-color: var(--clr-white); /* Will override color (regardless of order) */
    -webkit-text-stroke-width: 1.5px;
    -webkit-text-stroke-color: var(--clr-white);
    text-shadow: 4px 2px 7px #000;
    letter-spacing: .2rem;
}
.dp-cw-banner__lede > span {
    --_font-size: var(--text-l);
    display: block;
    color: var(--clr-white);
    font-size: var(--_font-size);
    font-weight: var(--fw-bold);
    letter-spacing: .075rem;
}
.dp-cw-banner__img {
    object-position: 10% 50%;
}
@media only screen and (max-width: 991px) {
    .dp-banner-xmas > .dp-inner-wrap {
        flex-direction: column;
        justify-content: flex-start;
    }
}
@media only screen and (max-width: 600px) {
    .dp-cw-banner__img {
        object-position: 15% 50%;
    }
}
@media only screen and (max-width: 500px) {
    .dp-bf-banner__headline, 
    .dp-cw-banner__headline {
        --_font-size: calc( 1.2*var(--text-xxl) );
    }
    .dp-xmas-banner__headline {
        --_font-size: calc( 2*var(--text-xxl) );
    }
    .dp-cw-banner__lede > span {
        --_font-size: calc( .85*var(--text-l) );
    }
}
/*-------------------  Single Image Banner  -------------------------------------*/
.dp-grid-basic > .dp-banner-image-wrapper {
    grid-column: 1 / -1;
    width: 100%;
}
.dp-grid-basic > :is(.dp-banner-image-wrapper--bf, .dp-banner-image-wrapper--xmas) {
    aspect-ratio: 1920 / 372;
}
.dp-banner-image-wrapper img {
    height: 100%;
    object-fit: cover;
}
@media only screen and (max-width: 667px) {
    .dp-grid-basic > .dp-banner-image-wrapper--xmas {
        aspect-ratio: 420 / 310;
    }    
}
/*------------------------------------------------------------------------------
                    TEASERS
-------------------------------------------------------------------------------*/
.dp-popup {
	/* position: fixed;
    top: 0;
	left: 0;
	width: 100%;
	height: 100%; */
    position: relative;
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(0px, var(--viewport)) 
        minmax(var(--space-section-inline), 1fr);
    grid-template-areas: "... popup ...";
	background-color: rgba(0,0,0,0.2);
	z-index: var(--z-index-all);
	place-items: center;
	opacity: 0;
}
.dp-popup-inner {
    position: relative;
    grid-area: popup;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    background-color: hsl(0, 0%, 89%); /* #e2e2e2 */
    width: min(100%, 580px);
}
.dp-popup-img-wrapper {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    /* background-color: brown; */
    z-index: -1;
}
.dp-popup-img-wrapper > img {
    height: 100%;
    object-fit: cover;
    /* z-index: -1; */
}
.dp-popup-headline {
    font-family: var(--ff-heading);
    font-size: var(--text-xl);
    font-weight: var(--fw-bold);
    margin-bottom: var(--space-xs);
    /* text-shadow: -1px 1px 10px rgb(188 166 166); */
}
.dp-popup-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    min-height: inherit;
    padding: 1.5em 1em;
}
.dp-popup-text {
    font-size: 15px;
}
/* .dp-popup-text p {
    margin: 0 0 0.85em;
} */
.dp-popup-text ul {
    list-style: none;
    margin-inline-start: 0;
}
.dp-popup-text ul > * + * {
    margin-top: .75rem;
}
.dp-popup-text :is(ul, ol) + * {
    margin-block-start: 1.2em;
}
.dp-popup-text-strong {
    font-size: var(--text-l);
    font-weight: var(--fw-bold);
    letter-spacing: .5px;
}
.dp-popup-btn--close {
    position: absolute;
    top: 0;
    right: 0;
}
.dp-popup-cta {
    font-size: 17px;
    width: fit-content;
    font-weight: var(--fw-bold);
    color: var(--clr-white);
    background-color: var(--clr-primary);
    padding: .75rem 2.8rem;
    border-radius: var(--radius-l);
    margin-top: var(--space-m);
}
.dp-teaser[data-state="init"] {
    display: none;
    opacity: 0;
}
.dp-teaser[data-state="hidden"] {
    display: none;
}
.dp-teaser[data-state="opened"], 
.dp-teaser[data-state="closing"] {
    display: grid;
}
.dp-teaser[data-state="opened"] {
    animation: fadeIn 400ms ease-in-out forwards;
    box-shadow: 0px -2px 20px -2px rgba(0, 0, 0, .45);
}
.dp-teaser[data-state="opened"][teaser-type="pop-up"], 
.dp-teaser[data-state="closing"][teaser-type="pop-up"] {
    position: fixed;
    top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.dp-teaser[data-state="closing"] {
    animation: fadeOut 400ms ease-in-out forwards;
}
.dp-teaser[data-state="closed"] {
    position: static;
    display: none;
}
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
.dp-popup-bf-deals__img {
    --_max-width: 220px;
    position: relative;
    width: 100%;
    max-width: var(--_max-width);
    left: 50%;
    transform: translate(-50%, -50%);
}
.dp-popup-inner .dp-btn-bf, 
.dp-popup-inner .dp-btn-xmas {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem 3.2em;
    color: var(--clr-white);
    background: var(--clr-brown);
    border-radius: var(--radius-l);
    text-decoration: none;
    font-weight: var(--fw-regular);
    width: fit-content;
    transition: background 500ms ease-in-out;
    cursor: pointer;
}
.dp-popup-inner :is(.dp-btn-bf:hover, .dp-btn-xmas:hover) {
    background: var(--clr-brown-dark);
}
.dp-popup-inner .dp-btn-xmas {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -10px);
    width: 100%;
    max-width: 19rem;
}
.dp-popup-btn--close {
    --_size: 3.8rem;
    position: absolute;
    top: .2rem;
    right: .2rem;
    padding: .6rem;
    width: var(--_size);
    height: var(--_size);
    border: var(--clr-transparent);
    background: var(--clr-base);
    border-radius: 50%;
    cursor: pointer;
}
:is(#popup-bf, #popup-cw) .dp-popup-btn--close {
    background: var(--clr-white);
}
.dp-popup-xmas .dp-img-wrapper {
    aspect-ratio: 1 / 1;
    max-width: 767px;
    width: 100%;
    overflow: hidden;
}
.dp-img-wrapper > img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
}
.dp-cross-icon {
    width: 100%;
    height: 100%;
    fill: var(--clr-brown);
}
:is(#popup-bf, #popup-cw) .dp-cross-icon {
    fill: var(--clr-base);
}
@media only screen and (max-width: 600px) {
    .dp-popup-xmas .dp-img-wrapper {
        aspect-ratio: 5 / 6;
    }
}
@media only screen and (max-width: 500px) {
    .dp-popup-bf-deals__img {
        --_max-width: 180px;
    }
    .dp-popup-xmas .dp-img-wrapper {
        aspect-ratio: 2 / 3;
    }
}
/*------------------------------------------------------------------------------
                    ERROR 404
-------------------------------------------------------------------------------*/
.dp-gcse-container {
    width: 100%;
    max-width: 80ch;
    min-height: 85px;
}
.dp-gcse-container .gsc-search-button-v2 {
    position: relative;
    transform: translateX(-160%);
    padding: .8rem;
    border-radius: 50%;
    background-color: var(--clr-brown);
    border-color: var(--clr-brown);
    cursor: pointer;
    transition: background-color .4s ease, border-color .4s ease;
}
.dp-gcse-container .gsc-search-button-v2:hover {
    background-color: var(--clr-base);
    border-color: var(--clr-base);
}
.dp-gcse-container .gsc-input-box {
    border-radius: 3em;
}
/*-----------------------------------------------------
            ESPA BANNERS
------------------------------------------------------*/
.dp-home--espa, 
.dp-home--espa-14 {
    --_width-desktop: 14rem;
    --_width-mobile: 12rem;
    aspect-ratio: 2 / 1;
    width: 100%;
    max-width: var(--_width-desktop);
    position: absolute;
    bottom: 0;
}
.dp-home--espa {
    /* right: 0; */
    left: var(--_width-desktop);
}
.dp-home--espa-14 {
    /* right: var(--_width-desktop); */
    left: 0;
}
:where(.dp-home--espa, .dp-home--espa-14) img {
    height: 100%;
}
@media only screen and (max-width: 479px) {
    .dp-home--espa, 
    .dp-home--espa-14 {
        max-width: var(--_width-mobile);
    }
    /* .dp-home--espa-14 {
        right: var(--_width-mobile);
    } */
    .dp-home--espa {
        left: var(--_width-mobile);
    }
}
/*------------------------------------------------------------------------------
                    DISPLAY
-------------------------------------------------------------------------------*/
.dp-display-none {
    display: none !important;
}
/*------------------------------------------------------------------------------
                    RESET QUERIES
-------------------------------------------------------------------------------*/
@media only screen and (max-width: 991px) {
    .dp-padding-zero--l {
        padding: 0 !important;
    }
    .dp-border-none--l {
        border: none !important;
    }
    .dp-display-none--l {
        display: none !important;
    }
    .dp-display-flex--l {
        display: flex !important;
    }
}
@media only screen and (max-width: 767px) {
    .dp-padding-zero--m {
        padding: 0 !important;
    }
    .dp-border-none--m {
        border: none !important;
    }
    .dp-display-none--m {
        display: none !important;
    }
    .dp-display-flex--m {
        display: flex !important;
    }
}
@media only screen and (max-width: 479px) {
    .dp-padding-zero--s {
        padding: 0 !important;
    }
    .dp-border-none--s {
        border: none !important;
    }
    .dp-display-none--s {
        display: none !important;
    }
    .dp-display-flex--s {
        display: flex !important;
    }
}
/*----------------------------------------------------------------------
			STICKY CONTACT SECTION
----------------------------------------------------------------------*/
.dp-sticky-contact {
    display: none;
}
.dp-sticky-contact__cta {
    --_clr-btn: hsl(13, 28%, 81%); /* #DCC7C1 */
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    align-items: center;
    justify-content: center;
    padding: .5em 1em;
    border-radius: 2.5rem;;
    border: 1px solid var(--_clr-btn);
    width: min(100%, 150px);
    font-weight: var(--fw-bold);
    font-size: 15px;
    background-color: var(--_clr-btn);
}
.dp-sticky-contact__cta a {
    color: var(--clr-base);
    text-decoration: none;
}
.dp-contact-icon {
    --_size: 14px;
    width: var(--_size);
    height: var(--_size);
    fill: var(--clr-base);
    flex-shrink: 0;
}
.dp-sticky-contact__phone {
    grid-area: phone;
}
.dp-sticky-contact__email {
    grid-area: email;
    justify-self: end;
}
@media only screen and (max-width: 767px) {
    .dp-sticky-contact {
        --_gap: .8em;
        --_width: calc((var(--viewport) - var(--_gap))/ 2 );
        display: grid;
        grid-template-columns: 
            minmax(var(--space-m), 1fr) 
            minmax(0, var(--_width)) 
            var(--_gap) 
            minmax(0, var(--_width)) 
            minmax(var(--space-m), 1fr);
        grid-template-areas: "... phone ... email ...";
        background-color: var(--clr-white);
        padding-block: .4rem;
        z-index: 999;
    }
}
/*----------------------------------------------------------------------
			COOKIE BOT
----------------------------------------------------------------------*/
#CookiebotWidget:not(.CookiebotWidget-inactive), .dp-cookie-btn {
    --_bottom-offset: 6px;
    --_left-offset: 30px;
}
#CookiebotWidget:not(.CookiebotWidget-inactive) {
    left: var(--_left-offset) !important;
    bottom: var(--_bottom-offset) !important;
}
.dp-cookie-btn {
    --_cookie-size: 48px;
    position: fixed;
    left: var(--_left-offset);
    bottom: var(--_bottom-offset);
    min-height: var(--_cookie-size);
    min-width: var(--_cookie-size);
    border-radius: 50%;
    background-color: aqua;
    z-index: 2147483631;
}
/*----------------------------------------------------------------------
			STICKY BOTTOM BAR
----------------------------------------------------------------------*/
.dp-sticky-bottom {
    position: sticky;
    position: -webkit-sticky;
    bottom: 0;
    display: grid;
    grid-template-columns: 
        minmax(var(--space-m), 1fr) 
        minmax(0, var(--viewport))  
        minmax(var(--space-m), 1fr);
    /* background-color: var(--clr-primary); */
    z-index: 999;
}
.dp-sticky-bottom > * {
    grid-column: 1 / -1;
}
.dp-bottom-bar-actions {
    --_margin-bottom: 6.6rem;
    --_el-height: 4em;
    display: flex;
    justify-content: flex-end;
    z-index: -9;
    height: 0;
}
.dp-bottom-treatments {
    position: relative;
    display: grid;
    grid-template-columns: 
        minmax(var(--space-m), 1fr) 
        minmax(0, var(--viewport))  
        minmax(var(--space-m), 1fr);
    background-color: var(--clr-primary);
    isolation: isolate;
}
.dp-bottom-treatments-inner {
    --_block-width: 100%;
    grid-column: 2 / span 1;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    width: var(--_block-width);
    padding-block: 1rem;
}
.dp-bottom-treatments-element {
    font-weight: var(--fw-bold);
}
.dp-bottom-treatments-element:hover {
    text-decoration: none;
}
.dp-bottom-treatments__text {
    color: var(--clr-white);
    font-size: 1.8rem;
    letter-spacing: .5px;
}
.dp-bottom-treatments__link {
    --_clr-btn: var(--clr-beige); /* (hsl(13, 28%, 81%); #DCC7C1 */
    padding: .35em 1.8em;
    border-radius: 2.5rem;
    border: 1px solid var(--_clr-btn);
    text-align: center;
    color: var(--clr-base);
    font-size: 15px;
    background-color: var(--_clr-btn);
}
.dp-teaser-btn--close {
    --_size: 2.2rem;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    top: .2rem;
    right: .2rem;
    padding: .3rem;
    width: var(--_size);
    height: var(--_size);
    border: var(--clr-transparent);
    background: var(--clr-base);
    border-radius: 50%;
    cursor: pointer;
}
.dp-teaser-btn--close > svg {
    width: 100%;
    height: 100%;
}
@media only screen and (max-width: 767px) {
    #CookiebotWidget:not(.CookiebotWidget-inactive), .dp-cookie-btn {
        --_left-offset: 6px;
        --_bottom-offset: 54px;
    }
    .dp-bottom-treatments {
        justify-items: end;
    }
    .dp-bottom-treatments-inner {
        --_block-width: calc(100% - 48px);
        justify-content: space-between;
        flex-wrap: wrap;
        padding-right: .8rem;
        gap: .6rem;
    }
    .dp-bottom-treatments__text {
        font-size: 1.6rem;
    }
}
/*---------------------------------------------------
        BACK TO TOP
----------------------------------------------------*/
.dp-btn-btt {
    position: relative;
    right: 3rem;
    bottom: -30rem;
    z-index: var(--z-index-btt);
    line-height: 1;
    height: var(--_el-height);
    padding: 1rem;
    border: .1rem solid var(--clr-white);
    background-color: var(--clr-white);
    box-shadow: 0 10px 20px rgba(0,0,0,.3);
    transition: bottom 250ms ease, transform 400ms ease-in-out, background-color 400ms ease-in-out;
    cursor: pointer;
}
.dp-btn-btt.dp-visible {
    bottom: var(--_margin-bottom);
}
.dp-btn-btt > svg {
    fill: var(--clr-primary);
    transition: fill 400ms ease-in-out;
}
@media only screen and (max-width:991px) {
  .dp-btn-btt {
    display: none;
  }
}

.dp-special-offer {
    padding: 3px 6px;
    color: var(--clr-white);
    /* background-color: var(--clr-base); */
    background: linear-gradient(120deg, rgba(0,0,0,1) 50%, rgba(172,134,123,1) 50%);
    font-size: 13px;
    font-weight: var(--fw-bold);
    margin-left: .6em;
    letter-spacing: .3px;
}
.dp-table-banner {
    position: relative;
    width: 100%;
}
div.dp-table-banner--bf {
    font-size: var(--text-xl);
    text-align: center;
    color: var(--clr-white);
    background-color: var(--clr-base);
    padding: var(--space-m) var(--space-s);
}
.dp-table-banner--bf > img {
    height: 100%;
    aspect-ratio: 6 / 1;
    object-fit: cover;
}
.dp-cta-default {
    font-weight: var(--fw-bold);
    color: var(--clr-white);
    background-color: var(--clr-primary);
    padding: 1rem 3.2rem;
    border: 1px solid var(--clr-primary);
    border-radius: var(--radius-l);
    width: fit-content;
}
.dp-cta-default:hover {
    text-decoration: none;
}
.dp-number-custom {
    --_size: 4.6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: calc(1.1*var(--text-l));
    text-align: center;
    width: var(--_size);
    height: var(--_size);
    padding: 1em;
    line-height: 1;
    background-color: var(--clr-beige);
    border-radius: 50%;
    margin-bottom: .3em;
}
/*---------------------------------------------------
        WOMEN'S DAY OFFER
----------------------------------------------------*/
.dp-womens-day {
    --_clr-heading: hsl(353, 46%, 45%); /* #a93f4c */
    --_clr-bg: hsl(351, 65%, 77%); /* #ea9da8 */
    --_clr-bg-accent: hsl(351, 79%, 65%); /* #ec5f73 */
    --_heading-size: calc( 1.65*var(--text-l));
    --_body-size: calc( 1.25*var(--text-m));
}
.dp-womens-day .dp-section-offer-hero-single-media__img {
    border-radius: var(--radius-l);
}
.dp-womens-day .dp-section-offer-hero-single-media__img > :is(img, video, iframe){
    border-radius: inherit;
}
.dp-womens-day .dp-section-offer-hero-single-media__headline {
    width: min(1000px, 100%);
}
.dp-womens-day.dp-section-headline-text > * {
    width: min(992px, 100%);
}
.dp-womens-day.dp-section-headline-text .dp-headline-text__heading {
    font-size: var(--_heading-size); 
}
.dp-womens-day.dp-section-headline-text .dp-headline-text__content {
    font-size: var(--_body-size); 
}
.dp-womens-day.dp-section:is(.dp-moto-bg-fill-reverse, .dp-moto-outline-reverse, .dp-moto-bg-fill-black) {
    background-color: var(--clr-transparent);
}
.dp-womens-day.dp-section .dp-moto-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.25em 1.75em;
    border-radius: var(--radius-l);
    border: 1px solid var(--_clr-bg-accent);
    background-color: var(--_clr-bg-accent);
    color: var(--clr-white);
    font-family: var(--ff-body);
    font-size: var(--_body-size);
}
.dp-womens-day.dp-section .dp-moto-container > * {
    width: min(700px, 100%);
}
.dp-womens-day.dp-section .dp-moto-container > :first-child {
    font-family: var(--ff-heading);
    font-size: var(--_heading-size);
}
.dp-womens-day.dp-section-media-cards .dp-headline-container {
    margin-inline: auto;
}
.dp-womens-day.dp-section-media-cards .dp-headline-container__heading {
    text-align: center;
    color: var(--_clr-heading);
    font-size: var(--_heading-size);
}
.dp-womens-day.dp-section-media-cards ul {
    padding: 1.75em 2em;
    background-color: var(--_clr-bg);
    border-radius: var(--radius-l);
}
.dp-womens-day.dp-section-media-cards .dp-media-cards__img {
    border-radius: var(--radius-l);
}
.dp-womens-day.dp-section-media-cards .dp-media-cards__img > img {
    border-radius: inherit;
}
.dp-womens-day.dp-section-media-cards .dp-media-cards__heading {
    text-align: center;
}
.dp-womens-day.dp-section-media-cards .dp-media-cards__text {
    text-align: center;
    font-size: 17px;
    font-weight: var(--fw-bold);
    color: hsl(351, 65%, 18%);
    margin-top: -5px;
}
.dp-womens-day.dp-section-text-cards .dp-headline-container__heading {
    text-align: center;
    font-size: var(--_heading-size);
    color: var(--_clr-heading);
}
.dp-womens-day.dp-section-text-cards .dp-text-cards__card {
    border-radius: var(--radius-l);
    background-color: var(--_clr-bg);
    border: 1px solid var(--_clr-bg);
}
.dp-womens-day.dp-section-text-cards .dp-text-cards__text {
    text-align: center;
    font-weight: var(--fw-bold);
    font-size: var(--_body-size);
    padding: var(--space-m);
}
.dp-womens-day .dp-popup-cta {
    background-color: var(--_clr-bg-accent);
}
/*---------------------------------------------------
        WS FORM SECTION
----------------------------------------------------*/
:is(.dp-wsf-form-section, .dp-heading-standout-section) {
    display: grid;
    grid-template-columns: 
        minmax(var(--space-section-inline), 1fr) 
        minmax(0, var(--viewport)) 
        minmax(var(--space-section-inline), 1fr);
    padding-top: var(--space-section-block);
}
.dp-heading-standout-section {
    --_bg-color: var(--clr-beige);
    position: relative;
    isolation: isolate;
}
:is(.dp-wsf-form-section, .dp-heading-standout-section) > * {
    grid-column: 2 / span 1;
}
:is(.dp-wsf-form-section-wrapper, .dp-heading-standout-section-wrapper) {
    padding-top: var(--space-section-inline);
    padding-bottom: var(--space-section-block);
}
:is(.dp-heading-standout-section, .dp-wsf-form-section) .dp-wsf-section-inner-wrapper > * {
    margin-inline: auto;
    width: min(100%, 767px);
}
.dp-wsf-form-section .dp-wsf-section-heading {
    font-family: var(--ff-heading-alt);
    font-size: calc(1.25 * var(--text-xl));
    font-weight: var(--fw-regular);
    text-align: center;
    letter-spacing: .275rem;
    margin-top: .1em;
    margin-inline: auto;
    width: min(100%, 767px);
}
.dp-heading-standout-section .dp-wsf-section-heading {
    font-size: calc(1.25* var(--text-xxl));
    font-weight: var(--fw-regular);
    color: var(--_bg-color);
    line-height: 1.2;
    margin-block: -.24em;
    mix-blend-mode: multiply;
}
.dp-heading-standout-section > :not(.dp-wsf-section-heading) {
    background-color: var(--_bg-color);
    padding-bottom: var(--space-section-block);
}
.dp-heading-standout-section .dp-wsf-section-inner-wrapper::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--_bg-color);
    grid-area: 2 / 1 / 2 / -1;
    z-index: -1;
}
.dp-wsf-section-inner-wrapper > :first-child {
    margin-top: var(--space-m);
}
.dp-heading-standout-section .dp-wsf--main {
    --_field-bg-color: hsl(13, 28%, 94%);
}
/*-------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
                    WS FORM CUSTOM CSS
---------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------*/
.dp-wsf--main {
    --_radius: 2rem;
    --_height: 44px;
    --_lang-arrow: 6px;
    --_select-arrow: 8px;
    --_clr-placeholder: hsl(0, 0%, 45%);
    --_field-bg-color: var(--clr-transparent);
    --_clr-checked: var(--clr-transparent);
    --_color: var(--clr-base);
    --_focus-color: var(--_color);
}
.dp-fields-bg {
    --_field-bg-color: hsl(13, 28%, 94%);
}
.dp-wsf-form--dark {
    --_clr-placeholder: hsl(0, 0%, 75%);
    --_color: var(--_clr-placeholder);
    --_focus-color: var(--clr-white);
    --_clr-invalid: #f56c6c;
}
.dp-wsf--main .wsf-form {
    --_clr-main: var(--clr-primary);
    --_clr-main-h: var(--clr-primary-h);
}
.dp-wsf--newsletter .wsf-form {
    --_clr-placeholder: var(--clr-base);
    --_clr-main: var(--clr-white);
    --_clr-main-h: var(--clr-white-h);
    --_color: var(--clr-white);
    --_clr-checked: var(--clr-white);
}
:is(.dp-wsf--main, .dp-wsf-form--dark) .wsf-form ::placeholder {
    color: var(--_clr-placeholder) !important;
}
:is(.dp-wsf--main, .dp-wsf-form--dark) .wsf-form label.wsf-label {
    color: var(--_color);
}
.dp-wsf-section--exclusive {
    --_container-height: 495px;
    min-height: var(--_container-height);
}
.dp-wsf--main .dp-doctor-item__cost {
    margin-bottom: 2em;
}
.dp-wsf--main .wsf-form :is(input[type=checkbox], input[type=radio], input[type=date], input[type=datetime-local], input[type=file], input[type=month], input[type=password], input[type=search], input[type=time], input[type=week], input[type=email], input[type=number], input[type=tel], input[type=text], input[type=url], select, textarea).wsf-field {
    border-radius: var(--_radius);
    border: 1px solid var(--_clr-main);
    background-color: var(--_field-bg-color);
    color: var(--_focus-color);
}
.dp-wsf--main .wsf-form :is(input[type=checkbox], input[type=radio], input[type=date], input[type=datetime-local], input[type=file], input[type=month], input[type=password], input[type=search], input[type=time], input[type=week], input[type=email], input[type=number], input[type=tel], input[type=text], input[type=url], select, textarea).wsf-field:focus {
    border: 1px solid var(--_clr-main);
    box-shadow: 0 0 0 4px hsla(var(--clr-primary-h), 0.25);
    background-color: var(--_field-bg-color);
    color: var(--_focus-color);
}
.dp-wsf--main .wsf-form :is(input[type=date], input[type=datetime-local], input[type=file], input[type=month], input[type=password], input[type=search], input[type=time], input[type=week], input[type=email], input[type=number], input[type=tel], input[type=text], input[type=url], select, textarea).wsf-field:hover:enabled:not(:focus) {
    background-color: var(--_field-bg-color);
    border: 1px solid var(--_clr-main);
}
.dp-wsf--main .wsf-form.wsf-validated :is(input[type=date], input[type=datetime-local], input[type=file], input[type=month], input[type=password], input[type=search], input[type=time], input[type=week], input[type=email], input[type=number], input[type=tel], input[type=text], input[type=url], select, textarea).wsf-field:invalid:focus:not(:hover) {
    box-shadow: 0 0 0 4px hsla(var(--clr-primary-h), 0.75);
}
.dp-wsf--main .wsf-form :is(input[type=text], input[type=tel], input[type=email], select).wsf-field {
    height: var(--_height);
}
.dp-wsf--main .wsf-form:not(.wsf-label-position-inside-hide) .wsf-label-position-inside select.wsf-field ~ label {
    border-radius: var(--_radius);
}
.dp-wsf--main .wsf-form .wsf-label-position-inside :is(input, textarea).wsf-field[placeholder] + label, 
.dp-wsf--main .wsf-form .wsf-label-position-inside :is(select).wsf-field + label {
    border-radius: var(--_radius);
}
.dp-wsf--main .wsf-form .wsf-label-position-inside :is(input, textarea).wsf-field[placeholder] + label {
    inset-inline-start: 28px;
    top: 10.5px;
    z-index: 9;
    /* color: var(--_color); */
}
.dp-wsf--main .wsf-form.wsf-rtl .wsf-label-position-inside input.wsf-field.dp-wsf-phone[placeholder] + label {
    inset-inline-start: 62px;
}
.dp-wsf--main .wsf-form:not(.wsf-label-position-inside-hide) .wsf-label-position-inside input.wsf-field[placeholder]:focus + label {
    background-color: hsl(11, 27%, 15%);
    color: hsl(12, 33%, 94%);
}
.dp-wsf--main .wsf-form select.wsf-field:not([multiple]):not([size]) {
    height: var(--_height);
}
.dp-wsf--main .wsf-form :is(input[type=checkbox], input[type=radio]).wsf-field:hover:enabled:not(:checked):not(:focus) {
    background-color: var(--_field-bg-color);
    border-color: var(--_clr-main);
}
.dp-wsf--main .wsf-form :is(input[type=checkbox], input[type=radio]).wsf-field:checked {
    background-color: var(--_field-bg-color);
    border-color: var(--_clr-main);
}
.dp-wsf--main .wsf-form :is(input[type=checkbox], input[type=radio]).wsf-field:checked::after {
    --_size: 11.5px;
    width: var(--_size);
    height: var(--_size);
    top: 50%;
    inset-inline-start: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: var(--_clr-main);
    border-radius: 50%;
    border-style: none;
    border-width: unset;
}
.dp-wsf--main .wsf-form :is(input[type=checkbox], input[type=radio]).wsf-field.dp-wsf-check--s:checked::after {
    --_size: 9.5px;
}
.dp-wsf--main .wsf-form :is(a:active, a:focus, a:hover, a:link, a:visited) {
    color: var(--clr-primary);
}
.dp-wsf--newsletter .wsf-form :is(a:active, a:focus, a:hover, a:link, a:visited) {
    color: var(--clr-base);
}
/*--------------- SUBMIT BUTTON ----------------------------------*/
.dp-wsf--main .wsf-form button.wsf-button {
    border-radius: var(--_radius);
    padding: 1rem 2em;
}
.dp-wsf--main .wsf-form button:is(.wsf-button:focus, .wsf-button:active) {
    box-shadow: 0 0 0 4px var(--clr-secondary);
}
.dp-wsf--main .wsf-form button.wsf-button.wsf-button-primary {
    background-color: var(--clr-primary);
    border-color: var(--clr-primary);
    width: min(100%, 30rem);
    font-weight: var(--fw-bold);
    transition: all 300ms ease-in-out;
}
.dp-wsf--main .wsf-form button.wsf-button.wsf-button-primary:hover:enabled:not(:checked):not(:focus) {
    background-color: var(--clr-primary-hover);
    border-color: var(--clr-primary-hover);
    color: var(--clr-white);
}
.dp-wsf--main .wsf-form button.wsf-button:is(.wsf-button-primary:focus, .wsf-button-primary:active) {
    background-color: var(--clr-primary);
    border-color: var(--clr-primary);
    color: var(--clr-white);
}
.dp-wsf--main .wsf-form button.wsf-button:hover:enabled:not(:checked):not(:focus) {
    background-color: var(--clr-primary-hover);
    color: var(--clr-white);
}
.dp-wsf--main .wsf-form button:is(.wsf-button:focus, .wsf-button:active) {
    background-color: var(--clr-primary-hover);
    color: var(--clr-white);   
}
/*--------------- SELECT FIELD DROPDOWN ICON ----------------------------------*/
.dp-wsf--main .wsf-form select.wsf-field:not([multiple]):not([size]):not([data-wsf-select2])+span.wsf-select-arrow {
    border-width: 1px 1px 0px 0;
    border-color: var(--clr-primary);
    transform: rotate(135deg);
    width: var(--_select-arrow);
    height: var(--_select-arrow);
    top: -4px;
}
/*--------------- FLAG FIELD DROPDOWN ICON ----------------------------------*/
.dp-wsf--main .wsf-form .iti:has([aria-invalid="true"]) .iti__selected-flag, 
.dp-wsf--main .wsf-form:has(.wsf-validated input[type=tel].wsf-field:invalid) .iti__selected-flag {
    height: 65%;
}
.dp-wsf--main .wsf-form .iti__dropdown-content {
    border-radius: var(--_radius);
    z-index: 99;
}
.dp-wsf--main .wsf-form .iti--inline-dropdown .iti__country-list {
    max-height: 238px;
    overflow: hidden;
    border-radius: var(--_radius);
}
.dp-wsf--main .wsf-form .iti__search-input {
    overflow: hidden;
}
.dp-wsf--main .wsf-form .iti__country.iti__highlight {
    background-color: hsla(var(--clr-primary-h), .25);
}
.dp-wsf--main .wsf-form .iti__arrow {
    position: relative;
    top: -1px;
    margin-inline-start: 6px;
    border: solid;
    border-color: var(--clr-primary);
    border-width: 0.1em 0.1em 0 0;
    transform: rotate(135deg);
    width: var(--_lang-arrow);
    height: var(--_lang-arrow);
}
.dp-wsf--main .wsf-form .iti__arrow--up {
    position: relative;
    top: 0;
    transform: rotate(-45deg);
    border-top: revert;
    border-bottom: revert;
    border: solid;
    border-color: var(--clr-primary);
    border-width: 0.1em 0.1em 0 0;
}
.dp-wsf--main .wsf-form .iti .iti__flag-container {
    height: revert;
}
:is(.dp-wsf--main, .dp-wsf--newsletter) .wsf-form .iti__selected-flag {
    border-start-start-radius: var(--_radius);
    border-end-start-radius: var(--_radius);
    background-color: hsla(var(--_clr-main-h), .3);
    transition: background-color 300ms ease-in-out;
}
:is(.dp-wsf--main, .dp-wsf--newsletter) .wsf-form .iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background-color: hsla(var(--_clr-main-h), .4);
}
/*--------------- LABELS ----------------------------------*/
.wsf-form .dp-wsf-label--bold > label.wsf-label {
    font-weight: var(--fw-bold);
}
.wsf-form .dp-wsf-margin-bottom--s label.wsf-label {
    margin-block-end: .7em;
}
.wsf-form :is(input[type=checkbox], input[type=radio]).wsf-field.dp-wsf-check--s {
    --wsf-field-checkbox-size: calc(14px * 1.4);
}
.wsf-form :is(input[type=checkbox], input[type=radio]).wsf-field.dp-text--s + label.wsf-label {
    font-size: 13.5px;
}
.dp-wsf--main .wsf-form [data-row-checkbox] > :is(input[type=checkbox], input[type=radio]).wsf-field + label.wsf-label {
    position: relative;
    top: -2.5px;
}
.wsf-form .dp-wsf-help-standout .wsf-help {
    /* color: red; */
    color: hsl(315, 17%, 28%);
    font-weight: var(--fw-bold);
    font-style: italic;
}
.wsf-form .dp-wsf-help-standout .wsf-help-pre {
    margin-block-end: 1.5em;
}
/*--------------- RADIO BUTTONS/CHECKBOXES GRID LAYOUT ---------------------*/
.wsf-form .dp-wsf-grid--2 > div:first-of-type {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5em 1.2em;
}
.wsf-form .dp-wsf-margin-bottom--s label.wsf-label {
    margin-block-end: .7em;
}
@media only screen and (max-width: 767px) {
    .wsf-form .dp-wsf-grid--2 > div:first-of-type {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }    
}
/*--------------- MITIGATE LAYOUT SHIFTS ----------------------------------*/
@media only screen and (max-width: 767px) {
    .dp-wsf-section--exclusive {
        --_container-height: 623px;
    }
}
@media only screen and (max-width: 649px) {
    .dp-wsf-section--exclusive {
        --_container-height: 642px;
    }
}
@media only screen and (max-width: 524px) {
    .dp-wsf-section--exclusive {
        --_container-height: 662px;
    }
}
@media only screen and (max-width: 480px) {
    .dp-wsf-section--exclusive {
        --_container-height: 682px;
    }
}
/*---------------------------------------------------------------------------------------
                                    NEWSLETTER FORM 
----------------------------------------------------------------------------------------*/
.dp-wsf--newsletter > * {
    width: min(100%, 768px);
    margin-inline: auto;
}
.dp-wsf--newsletter .wsf-form .dp-wsf-submit-icon button.wsf-button.wsf-button-primary {
    --_icon-size: 2rem;
    --_btn_size: 4rem;
    width: var(--_btn_size);
    height: var(--_btn_size);
    background-image: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23ffffff' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E" );
    background-position: center;
    background-repeat: no-repeat;
    background-size: var(--_icon-size) var(--_icon-size);
    background-color: var(--clr-base);
    border-color: var(--clr-base);
    border-radius: 100vmax;
    color: var(--clr-transparent);
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    transition: all 300ms ease-in-out;
}
.dp-wsf--newsletter .wsf-form .dp-wsf-newsletter-section > .wsf-grid {
    display: grid;
    grid-template-columns: auto 40px;
}
.dp-wsf--newsletter .wsf-form .dp-wsf-newsletter-section > .wsf-grid > .dp-wsf-newsletter-field {
    grid-area: 1 / 1 / -1 / -1;
}
.dp-wsf--newsletter .wsf-form .dp-wsf-newsletter-section > .wsf-grid > .dp-wsf-submit-icon {
    grid-area: 1 / 2 / -1 / -1;
    margin-bottom: 0;
    transform: translate(-55%, -55%);
}
.dp-wsf--newsletter .wsf-form .dp-wsf-newsletter-section:has([aria-invalid="true"]) .dp-wsf-submit-icon {
    transform: translate(-55%, -116%);
}
.dp-wsf--newsletter .wsf-form:has(.wsf-validated input[type=tel].wsf-field:invalid) .dp-wsf-tel + .dp-wsf-submit-icon, 
.dp-wsf--newsletter .wsf-form:has(.wsf-validated input[type=email].wsf-field:invalid) .dp-wsf-email + .dp-wsf-submit-icon {
    transform: translate(-55%, -116%);
}
.dp-wsf--newsletter .wsf-form .wsf-sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dp-wsf--newsletter .wsf-form .wsf-sections .dp-wsf-newsletter-gdpr {
    grid-column: 1 / -1;
}
.dp-wsf--newsletter .wsf-form .dp-wsf-submit-icon button.wsf-button.wsf-button-primary:hover:enabled:not(:checked):not(:focus) {
    color: var(--clr-transparent);
    background-color: var(--clr-base);
    border-color: var(--clr-base);
}
.dp-wsf--main .wsf-alert.wsf-alert-success {
    border-color: var(--clr-white);
    border-inline-start: none;
    padding: 2em;
    text-align: center;
    font-weight: var(--fw-bold);
    background-color: hsl(13, 28%, 94%);
}
@media only screen and (max-width: 767px) {
    .dp-wsf--newsletter .wsf-form .wsf-sections {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}
/*---------------------------------------------------------------------------------------
                                SPECIFIC STYLING 
----------------------------------------------------------------------------------------*/
.dp-wsf-form--dark .wsf-form .wsf-invalid-feedback {
    color: var(--_clr-invalid);
}
.dp-wsf-form--dark .wsf-form.wsf-validated :is(input[type=text], input[type=email], input[type=tel], input[type=radio], input[type=checkbox], select, textarea).wsf-field:invalid {
    border-color: var(--_clr-invalid);
    background-color: var(--clr-transparent);
}
.dp-wsf-form--dark :is(.wsf-form.wsf-validated, .wsf-form .wsf-validated) select.wsf-field:invalid:not([multiple]):not([size]):invalid {
    border-color: var(--_clr-invalid);
}
.dp-wsf-form--dark .wsf-form .wsf-validated :is(input[type=checkbox], input[type=radio]).wsf-field:invalid + label.wsf-label:before {
    border-color: var(--_clr-invalid);
}
.dp-wsf-form--dark .wsf-form .wsf-text-danger {
    color: var(--_clr-invalid);
}
.dp-wsf-intro-seminars {
    font-size: var(--text-l);
    font-weight: var(--fw-bold);
    margin-top: var(--space-s);
    margin-bottom: 1em;
}
/*------------------------------------------------------------------------------
                         WORKSHOP TRAINERS 
-------------------------------------------------------------------------------*/
.dp-section-workshop-trainers {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
    padding-block: var(--space-section-block);
    width: min(1000px, 100%);
}
.dp-workshop-trainers-list {
    display: flex;
    flex-direction: column;
    gap: var(--space-xl);
}
.dp-workshop-trainers-item {
    list-style: none;
    display: grid;
    grid-template-columns: min(300px, 100%) minmax(0, 1fr);
    gap: 1.35em;

    @media only screen and (max-width: 767px) {
        grid-template-columns: minmax(0, 1fr);
    }

    figure {
        aspect-ratio: 40 / 47;
    }

    img {
        height: 100%;
        object-fit: cover;
    }
}
.dp-workshop-trainers-trainer {
    display: flex;
    flex-direction: column;    
}
.dp-workshop-trainers-body {
    margin-block-start: 1em;
}
.dp-workshop-trainers-link {
    margin-block-start: 1.4em;
}