@font-face {
    font-family: "DM-Sans-Regular";
    src: url("../fonts/DMSans-VariableFont.woff2") format("woff2 supports variations"),
         url("../fonts/DMSans-VariableFont.woff2") format("woff2-variations");
    font-weight: 100 1000;
}

@font-face {
    font-family: "Source-Serif-4-Italic";
    src: url("../fonts/SourceSerif4-Italic-VariableFont.woff2") format("woff2 supports variations"),
         url("../fonts/SourceSerif4-Italic-VariableFont.woff2") format("woff2-variations");
    font-weight: 100 1000;
}

:root {
    --DM-Sans: "DM-Sans-Regular", Arial, Helvetica, sans-serif;
    --Source-Serif-Italic: "Source-Serif-4-Italic",  Arial, Helvetica, sans-serif;
    --sage-grey: #D0D1C6;
    --forest-green: #3A4742;
    --off-white: #F5F2EE;
    --beige: #F0E0C9;
    --orange: #F37122;
    --light-beige: #F8EBDD;
    --dun: #D6C9B7;
    --brown: #856D5C;
    --rose-gold: #D8BEAA;
    --thin-gutter: clamp(1rem, calc(1rem + (100 - 83) * (100vw - 400px) / (2000 - 400)), 2.5rem);
    --medium-gutter: clamp(2rem, calc(1.8rem + (100 - 40) * (100vw - 400px) / (2000 - 400)), 5.5rem);
    --large-gutter: clamp(4rem, calc(2.5rem + (100 - 10) * (100vw - 400px) / (2000 - 400)), 14rem);
    --rounded-corners: 2rem;
}

::-moz-selection {
    background-color: var(--orange);
    color: #000;
}

::selection {
    background-color: var(--orange);
    color: #000;
}

::-moz-selection:not(h1,h2,h3,h4,h5,h6,p,a,div,span,time) {
    background-color: transparent;
}

::selection:not(h1,h2,h3,h4,h5,h6,p,a,div,span,time) {
    background-color: transparent;
}

iframe {
    outline: none!important;
    border: none!important;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

html,
body {
    width: 100%;
    height: 100%;
    background-color: var(--off-white);
}

body {
    -webkit-animation: bugfix infinite 1s;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    font-family: var(--DM-Sans);
    font-weight: 450;
    height: auto;
    min-width: 300px;
    font-size: clamp(1.6rem, calc(1.1rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
}

@-webkit-keyframes bugfix {
    from {
        padding: 0;
    }

    to {
        padding: 0;
    }

    /* Android checkbox hack */
}

#content-wrap {
    max-width: 2560px;
    margin: 0 auto;
}

.flex {
    display: -webkit-box!important;
    display: -ms-flexbox!important;
    display: flex!important;
}

.grid {
    display: grid!important;
}

p:not(footer p) {
    font-size: clamp(1.6rem, calc(1.1rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
    font-family: var(--DM-Sans);
    font-weight: 450;
    line-height: 1.6!important;
    overflow-wrap: break-word;
}

.spaced {
    margin-bottom: 3rem!important;
}

a:not(#copyright-info a):not(.ab-item),
figcaption {
    font-size: clamp(1.6rem, calc(1.1rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
    font-family: var(--DM-Sans);
}

h1:not(.components-truncate) {
    font-family: var(--DM-Sans);
    font-size: clamp(4.95rem, calc(4.1rem + (100 - 10) * (100vw - 400px) / (2000 - 400)), 14rem);
    font-weight: 520;
    letter-spacing: calc(-0.1vw + (100 - 96) * (16vw - 400px) / (2000 - 400));
    margin-bottom: 3rem;
    -ms-flex-item-align: center;
    align-self: center;
    padding-left: 6%;
    line-height: 1;
}

h1:not(.components-truncate) em,
.modal h2 em {
    font-family: var(--Source-Serif-Italic);
    font-size: clamp(5.02rem, calc(4.25rem + (100 - 5) * (100vw - 400px) / (2000 - 400)), 14.9rem);
    display: block;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
    letter-spacing: clamp(-0.6rem, calc(-0.45vw + (100 - 96) * (100vw - 400px) / (2000 - 400)), -0.15rem);
}

h1.wp-block-post-title {
    font-size: clamp(2.3rem, calc(2rem + (100 - 86) * (100vw - 400px) / (2000 - 400)), 4rem);
    max-width: none;
    padding-left: 4%;
}

h2 {
    font-family: var(--DM-Sans);
    font-size: clamp(3rem, calc(2.8rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 6rem);
    font-weight: 500;
    letter-spacing: calc(-0.05vw + (100 - 96) * (40vw - 400px) / (2000 - 400));
    margin-bottom: 3rem;
    line-height: 1.3;
    color: var(--forest-green);
}

h3,
.author h2 {
    font-family: var(--DM-Sans);
    font-size: clamp(2rem, calc(2rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 4.6rem);
    font-weight: 530;
    letter-spacing: clamp(-0.1rem, -0.08vw, -0.1rem);
    margin-bottom: 2rem;
    line-height: 1.3;
    color: var(--forest-green);
}

h4 {
    font-family: var(--DM-Sans);
    font-size: clamp(1.8rem, calc(1.8rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.8rem);
    font-weight: 530;
    letter-spacing: -0.05rem;
    margin-bottom: 1.5rem;
    line-height: 1.3;
    color: var(--forest-green);
    margin-top: 0;
}

span {
    color: var(--forest-green);
}

.centered {
    margin: 0 auto;
}

/* Full Width Hero Block */
.hero-text-container {
    position: relative;

    /* height: 800px */
    padding: calc(var(--large-gutter) + var(--thin-gutter));
    border-radius: 0px var(--rounded-corners) var(--rounded-corners) 0px;

    /* padding-bottom: var(--large-gutter) */
    -ms-flex-item-align: center;
    align-self: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: calc(var(--thin-gutter) * -1) + 1rem;
    z-index: 1;

    /* backdrop-filter: blur(6px) */
    /* background: rgba(0, 0, 0, 0.1) */
}

.faq-hero .hero-text-container {
    padding: var(--large-gutter) 0 var(--large-gutter) var(--large-gutter);
}

.hero-text-container h1 {
    padding-left: 0;
    -ms-flex-item-align: start;
    align-self: flex-start;

    /* min-width: 330px */
    font-size: clamp(3.1rem, calc(2.8rem + (100 - 40) * (100vw - 400px) / (2000 - 400)), 13.2rem);
    color: var(--light-beige);
}

.home-hero .hero-text-container h1 {
    white-space: nowrap;
}

.hero-text-container h1 em {
    font-size: clamp(3.65rem, calc(3.3rem + (100 - 30) * (100vw - 400px) / (2000 - 400)), 13rem);
}

.hero-text-container p {
    color: #fff;
}

.home-hero .hero-text-container p {
    min-width: 322px;
    width: 35vw;
}

.cta-container {
    gap: var(--thin-gutter);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* Half Hero Block */
.half-hero {
    min-height: 300px;

    /* max-height: 100svh */
    height:  calc(100svh - 260px);
    max-width: 2560px;
    margin: 90px auto 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0 var(--medium-gutter);
    padding-left: var(--large-gutter);
    grid-template-columns: 55% 1fr;
    grid-template-rows: auto 12svh auto;
}

.half-hero h1 {
    font-size: clamp(3.4rem, calc(1rem + (90 - 20) * (100vw - 400px) / (2000 - 400)), 7.5rem);

    /* letter-spacing: calc(-0.1vw + (100 - 96) * (16vw - 400px) / (2000 - 400)); */
    color: var(--forest-green);
    min-width: 450px;

    /* max-width: 850px; */
    line-height: 1.2;
    padding-left: 0;

    /* padding-right: 4% */
    margin: 0;
    overflow-wrap: break-word;
    grid-area: 1 / 1 / 3 / 2;
}

.half-hero h1 em {
    font-family: var(--Source-Serif-Italic);
    font-size: clamp(3.5rem, calc(1rem + (80 - 2) * (100vw - 400px) / (2000 - 400)), 8rem);
    display: inline-block;
    font-weight: 400;
    line-height: 1;
    letter-spacing: calc(-0.2vw + (100 - 96) * (16vw - 400px) / (2000 - 400));
    padding: 0 0.5rem;
    margin-left: -0.5rem;
}

.featured-image-container {
    width: 100%;
    margin-left: auto;
    margin-right: 0!important;
    position: relative;
    grid-area: 1 / 2 / 3 / 3;
}

.featured-image-container figure {
    width: 100%;
    margin: 0!important;

    /* height: 100% */
    padding-bottom: 90%;

    /* overflow: visible */
}

.auto-height {
    height: auto!important;
}

.full-height-hero {
    position: relative;
    z-index: 0;
    height: 100%;

    /* min-height: calc(100svh + var(--thin-gutter)) */
    min-height: 100svh;
    padding: 90px var(--thin-gutter) var(--thin-gutter) var(--thin-gutter);
}

.home .hero-text-container {
    position: absolute;
    top: calc(50% + 45px);
    width: 100%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

figure {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: var(--rounded-corners);
}

figure.aspect-4-3 {
    aspect-ratio: 4/3;
}

figure.auto-image-height {
    padding-bottom: 0!important;
    position: relative;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    -ms-flex-item-align: center;
    align-self: center;
}

figure.auto-image-height img {
    position: relative;
    height: auto;
}

.full-height-hero figure {
    position: absolute;
    left: var(--thin-gutter);
    width: calc(100% - calc(var(--thin-gutter) * 2));
    height: calc(100% - calc(var(--thin-gutter) + 90px));
}

.home .full-height-hero .gradient-container {
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    width: 50%;

    /* background: -o-linear-gradient(left, rgba(0,0,0,0.4) 0%,rgba(0,0,0,0) 100%) */
    /* background: -webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.4)),to(rgba(0,0,0,0))) */
    background: -o-linear-gradient(left, rgba(0, 0, 0, 0.4), rgba(0,0,0,0) 100%);
    background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.4)), to(rgba(0,0,0,0)));
    background: linear-gradient(to right, rgba(0, 0, 0, 0.4), rgba(0,0,0,0) 100%);
    z-index: 1;
}

.gradient-blur > div,
.gradient-blur:before,
.gradient-blur:after {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.gradient-blur:before {
    content: "";
    z-index: 1;
    -webkit-backdrop-filter: blur(64px);
    backdrop-filter: blur(64px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    from(rgba(0, 0, 0, 0)),
    color-stop(12.5%, rgba(0, 0, 0, 1)),
    color-stop(25%, rgba(0, 0, 0, 1)),
    color-stop(37.5%, rgba(0, 0, 0, 0))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 1) 12.5%,
    rgba(0, 0, 0, 1) 25%,
    rgba(0, 0, 0, 0) 37.5%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    from(rgba(0, 0, 0, 0)),
    color-stop(12.5%, rgba(0, 0, 0, 1)),
    color-stop(25%, rgba(0, 0, 0, 1)),
    color-stop(37.5%, rgba(0, 0, 0, 0))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 1) 12.5%,
    rgba(0, 0, 0, 1) 25%,
    rgba(0, 0, 0, 0) 37.5%
  );
}

.gradient-blur > div:nth-of-type(1) {
    z-index: 2;
    -webkit-backdrop-filter: blur(32px);
    backdrop-filter: blur(32px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(12.5%, rgba(0, 0, 0, 0)),
    color-stop(25%, rgba(0, 0, 0, 1)),
    color-stop(37.5%, rgba(0, 0, 0, 1)),
    color-stop(50%, rgba(0, 0, 0, 0))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 12.5%,
    rgba(0, 0, 0, 1) 25%,
    rgba(0, 0, 0, 1) 37.5%,
    rgba(0, 0, 0, 0) 50%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(12.5%, rgba(0, 0, 0, 0)),
    color-stop(25%, rgba(0, 0, 0, 1)),
    color-stop(37.5%, rgba(0, 0, 0, 1)),
    color-stop(50%, rgba(0, 0, 0, 0))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 12.5%,
    rgba(0, 0, 0, 1) 25%,
    rgba(0, 0, 0, 1) 37.5%,
    rgba(0, 0, 0, 0) 50%
  );
}

.gradient-blur > div:nth-of-type(2) {
    z-index: 3;
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(25%, rgba(0, 0, 0, 0)),
    color-stop(37.5%, rgba(0, 0, 0, 1)),
    color-stop(50%, rgba(0, 0, 0, 1)),
    color-stop(62.5%, rgba(0, 0, 0, 0))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 25%,
    rgba(0, 0, 0, 1) 37.5%,
    rgba(0, 0, 0, 1) 50%,
    rgba(0, 0, 0, 0) 62.5%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(25%, rgba(0, 0, 0, 0)),
    color-stop(37.5%, rgba(0, 0, 0, 1)),
    color-stop(50%, rgba(0, 0, 0, 1)),
    color-stop(62.5%, rgba(0, 0, 0, 0))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 25%,
    rgba(0, 0, 0, 1) 37.5%,
    rgba(0, 0, 0, 1) 50%,
    rgba(0, 0, 0, 0) 62.5%
  );
}

.gradient-blur > div:nth-of-type(3) {
    z-index: 4;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(37.5%, rgba(0, 0, 0, 0)),
    color-stop(50%, rgba(0, 0, 0, 1)),
    color-stop(62.5%, rgba(0, 0, 0, 1)),
    color-stop(75%, rgba(0, 0, 0, 0))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 37.5%,
    rgba(0, 0, 0, 1) 50%,
    rgba(0, 0, 0, 1) 62.5%,
    rgba(0, 0, 0, 0) 75%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(37.5%, rgba(0, 0, 0, 0)),
    color-stop(50%, rgba(0, 0, 0, 1)),
    color-stop(62.5%, rgba(0, 0, 0, 1)),
    color-stop(75%, rgba(0, 0, 0, 0))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 37.5%,
    rgba(0, 0, 0, 1) 50%,
    rgba(0, 0, 0, 1) 62.5%,
    rgba(0, 0, 0, 0) 75%
  );
}

.gradient-blur > div:nth-of-type(4) {
    z-index: 5;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(50%, rgba(0, 0, 0, 0)),
    color-stop(62.5%, rgba(0, 0, 0, 1)),
    color-stop(75%, rgba(0, 0, 0, 1)),
    color-stop(87.5%, rgba(0, 0, 0, 0))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 50%,
    rgba(0, 0, 0, 1) 62.5%,
    rgba(0, 0, 0, 1) 75%,
    rgba(0, 0, 0, 0) 87.5%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(50%, rgba(0, 0, 0, 0)),
    color-stop(62.5%, rgba(0, 0, 0, 1)),
    color-stop(75%, rgba(0, 0, 0, 1)),
    color-stop(87.5%, rgba(0, 0, 0, 0))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 50%,
    rgba(0, 0, 0, 1) 62.5%,
    rgba(0, 0, 0, 1) 75%,
    rgba(0, 0, 0, 0) 87.5%
  );
}

.gradient-blur > div:nth-of-type(5) {
    z-index: 6;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(62.5%, rgba(0, 0, 0, 0)),
    color-stop(75%, rgba(0, 0, 0, 1)),
    color-stop(87.5%, rgba(0, 0, 0, 1)),
    to(rgba(0, 0, 0, 0))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 62.5%,
    rgba(0, 0, 0, 1) 75%,
    rgba(0, 0, 0, 1) 87.5%,
    rgba(0, 0, 0, 0) 100%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(62.5%, rgba(0, 0, 0, 0)),
    color-stop(75%, rgba(0, 0, 0, 1)),
    color-stop(87.5%, rgba(0, 0, 0, 1)),
    to(rgba(0, 0, 0, 0))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 62.5%,
    rgba(0, 0, 0, 1) 75%,
    rgba(0, 0, 0, 1) 87.5%,
    rgba(0, 0, 0, 0) 100%
  );
}

.gradient-blur > div:nth-of-type(6) {
    z-index: 7;
    -webkit-backdrop-filter: blur(1px);
    backdrop-filter: blur(1px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(75%, rgba(0, 0, 0, 0)),
    color-stop(87.5%, rgba(0, 0, 0, 1)),
    to(rgba(0, 0, 0, 1))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 75%,
    rgba(0, 0, 0, 1) 87.5%,
    rgba(0, 0, 0, 1) 100%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(75%, rgba(0, 0, 0, 0)),
    color-stop(87.5%, rgba(0, 0, 0, 1)),
    to(rgba(0, 0, 0, 1))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 75%,
    rgba(0, 0, 0, 1) 87.5%,
    rgba(0, 0, 0, 1) 100%
  );
}

.gradient-blur:after {
    content: "";
    z-index: 8;
    -webkit-backdrop-filter: blur(0.5px);
    backdrop-filter: blur(0.5px);
    -webkit-mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(87.5%, rgba(0, 0, 0, 0)),
    to(rgba(0, 0, 0, 1))
  );
    -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 87.5%,
    rgba(0, 0, 0, 1) 100%
  );
    mask-image: -webkit-gradient(
    linear,
    left top, right top,
    color-stop(87.5%, rgba(0, 0, 0, 0)),
    to(rgba(0, 0, 0, 1))
  );
    mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0) 87.5%,
    rgba(0, 0, 0, 1) 100%
  );
}

.home .hero-text-container p {
    width: 30%;
    max-width: 600px;
    margin-bottom: 4.5rem;

    /* text-shadow: 4px 4px 20px #fff */
}

.home-hero img.cover-fit {
    -o-object-position: 50% 30%;
    object-position: 50% 30%;
}

.cta {
    padding-left: clamp(2.2rem, calc(1.6rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 3rem);
    padding-right: clamp(2.2rem, calc(1.6rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 3rem);
    padding-top: clamp(1.2rem, calc(0.4rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 1.6rem);
    padding-bottom: clamp(1.2rem, calc(0.4rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 1.6rem);
    background-color: var(--orange);
    border-radius: 10rem;
    color: #fff;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    display: block;
    white-space: nowrap!important;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: center;
    -webkit-transition: background-color 0.2s ease;
    -o-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease;
}

.cta-green {
    background-color: var(--forest-green);
}

.cta-green:hover {
    background-color: var(--orange);
}

.cta-outline {
    border: 1px solid var(--orange);
    background: none;
    color: #000;
    -webkit-transition: border-color 0.2s ease;
    -o-transition: border-color 0.2s ease;
    transition: border-color 0.2s ease;
}

.cta-border-outline:before {
    content: '';
    position: absolute;
    top: -50%;
    left: -15%;
    width: 130%;
    height: 200%;
    border-radius: 10rem;
    border: 1px solid #fff;
}

/* .cta:after {
    content: '\2197';
    padding-left: 1rem;
} */
/* .cta.down-arrow:after {
    content: '\2198';
} */
.cta:hover {
    background: var(--forest-green);
    color: #fff!important;
}

.cta-outline:hover {
    border: 1px solid var(--forest-green);
    background: none;
    color: var(--forest-green)!important;
}

.cta-telephone {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/* .cta-telephone:after {
    content: none;
} */
.cta-telephone img {
    margin-left: 1rem;

    /* margin-top: -0.1rem */
}

.cta.beige {
    background-color: var(--light-beige);
    color: #000;
}

.cta.beige:hover {
    background: var(--forest-green);
}

.no-wrap {
    white-space: nowrap;
}

img.cover-fit,
.cover-fit img {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

.quote-box {
    border-radius: 2rem;
    min-width: 300px;
    width: 50%;
    max-width: 400px;
    padding: 3rem;
    justify-self: right;
    margin: 0!important;
    margin-right: 4rem!important;
    background: rgba(237, 237, 237, 0.7);
    -webkit-backdrop-filter: blur(24px);
    backdrop-filter: blur(24px);
    grid-area: 2 / 2 / 4 / 3;
}

.quote-box p {
    font-size: 2rem;
    margin: 0;
    font-style: italic;
    font-weight: 350;
}

.expand {
    width: 100%;
}

.single main section:not(.wider),
.block-editor-page main section:not(.wider),
.article section:not(.wider),
main article,
.wider-inner {
    max-width: 1200px;
    width: 80%;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin: 100px auto 100px auto;
    padding: var(--medium-gutter);
}

main.a-z {
    position: relative;
    z-index: 0;
}

main.a-z:before {
    /* content: '' */
    position: absolute;
    top: -25%;
    left: 0;
    width: 100%;
    height: 150%;
    z-index: -1;
    background: -o-radial-gradient(81% 50%, ellipse, rgba(240, 224, 201, 0.5) 0%, rgba(245, 242, 238, 0.5) 70%);
    background: radial-gradient(ellipse at 81% 50%, rgba(240, 224, 201, 0.5) 0%, rgba(245, 242, 238, 0.5) 70%);
}

/* main.a-z section {
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
} */
.bg-image-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
}

.bg-image-container {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: -1;
}

.article-bg-image {
    opacity: 0.15;
    mix-blend-mode: overlay;
}

.sticky-spacer {
    height: 40svh;
}

.article-bg-image:nth-of-type(1) {
    width: 35%;
    left: 0;
    top: 10%;
    padding-bottom: 36%;
    border-radius: 0 var(--rounded-corners) var(--rounded-corners) 0;
}

.article-bg-image:nth-of-type(2) {
    width: 30%;
    margin-left: auto;
    padding-bottom: 32%;
    margin-top: 100px;
    border-radius: var(--rounded-corners) 0 0 var(--rounded-corners);
}

.wider-inner {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

.article p {
    max-width: none;
}

article,
article * {
    max-width: none;
}

.single main img,
.block-editor-page main img {
    max-width: 100%;
}

.editor-styles-wrapper {
    background: var(--off-white);
}

.wp-block-image:not(.half-hero .wp-block-image) {
    margin-bottom: 3rem;
}

.wp-block-image.size-full img {
    max-width: 100%;
    height: auto;
    width: 100%;
}

.wp-block-list {
    list-style: disc;
    line-height: 2;
    padding-left: 2rem;
    padding-bottom: 3rem;
    font-family: var(--DM-Sans);
}

.wp-block-gallery {
    gap: var(--thin-gutter)!important;
    margin-bottom: 3rem;
}

.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
    width: calc(33.33% - var(--thin-gutter))!important;
}

.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) {
    width: calc(25% - var(--thin-gutter))!important;
}

.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) {
    width: calc(33.33% - var(--thin-gutter))!important;
}

.wp-block-gallery.has-nested-images.columns-2 figure.wp-block-image:not(#individual-image) {
    width: calc(50% - var(--thin-gutter))!important;
}

.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image) {
    width: 100%!important;
}

.single main a,
.article main a,
.wp-block a {
    text-decoration: none!important;
    cursor: pointer;
    min-width: 0!important;
}

.single main a:not(.cta),
.article main a:not(.cta),
.wp-block a:not(.cta) {
    color: var(--orange)!important;
}

.single main a:active,
.single main a:hover,
.article main a:active,
.article main a:hover,
.wp-block a:active,
.wp-block a:hover {
    color: #000;
}

/* Editor Style Overrides */
/* Focal Point Adjust circle picker */
.wp-block-image:not(.half-hero .wp-block-image) img {
    border-radius: var(--rounded-corners)!important;
}

.components-focal-point-picker__icon_container {
    background: rgba(243, 113, 34, 0.7)!important;
}

/* left-info and right-info blocks */
.left-info,
.right-info {
    padding: var(--large-gutter) var(--medium-gutter);
    gap: var(--medium-gutter);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 2220px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
}

.right-info figure {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.right-info.small figure {
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
    min-width: 200px;
}

#pete-comparison figure {
    position: relative;
    padding-bottom: 110%;
    overflow: visible;
    width: 25vw;
    min-width: 129px;
    max-width: 300px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

#pete-comparison .flex {
    gap: 3rem;
}

#pete-comparison figure img {
    border-radius: var(--rounded-corners);
    position: absolute;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
}

#pete-comparison figure img:nth-of-type(1) {
    -o-object-position: 50% 8%;
    object-position: 50% 8%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#pete-comparison .caption span {
    text-align: center;
    width: 100%;
    padding: 2rem;
}

.right-info p.summary {
    font-size: clamp(2.2rem, calc(1.6rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 3.4rem);
    font-weight: 500;
    margin-bottom: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.right-info figure img {
    position: relative;
    height: 100%;
    -o-object-position: 0% 50%;
    object-position: 0% 50%;
}

.info-container {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.card-grid {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 2rem;
    max-width: 700px;
}

.card-grid figure {
    /* height: 182px; */
    padding: 3rem 3rem 0 3rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    background: #FCF9F4;
    -webkit-box-shadow: 0px 3px 16px -11px rgba(0,0,0,0.2);
    box-shadow: 0px 3px 16px -11px rgba(0,0,0,0.2);
}

.card-grid figure img {
    width: calc(4rem + (100 - 50) * (100vw - 400px) / (2000 - 400));
    max-width: 75px;
    min-width: 50px;
    height: auto;
}

.card-grid figcaption {
    padding: 2rem 1rem;
}

/* centered-info block */
.centered-info {
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: var(--large-gutter) var(--thin-gutter);
}

.centered-info p {
    margin: 0 auto;
}

.review-score {
    line-height: 1;
    margin: 0 auto;
}

.review-score h3 {
    margin: 0;
}

.review-score span {
    margin: 0 var(--thin-gutter);
}

.review-score span img {
    -ms-flex-item-align: center;
    align-self: center;
    width: 20px;
    height: 20px;
    padding: 0.2rem;
}

/* three-image-text-grid block */
.three-image-text-grid {
    grid-template-columns: 35% 10% 10% 25% calc(20% - 2vw);
    margin: 0 var(--thin-gutter);
    padding: var(--large-gutter);
    border-radius: var(--rounded-corners);
    grid-template-rows: auto 10vw 20vw auto;
    background-image: -o-linear-gradient(
    315deg,
    hsl(35deg 57% 86%) 0%,
    hsl(35deg 54% 85%) 8%,
    hsl(35deg 52% 84%) 17%,
    hsl(35deg 50% 82%) 25%,
    hsl(35deg 49% 81%) 33%,
    hsl(35deg 48% 79%) 42%,
    hsl(35deg 47% 78%) 50%,
    hsl(35deg 46% 77%) 58%,
    hsl(35deg 45% 75%) 67%,
    hsl(35deg 44% 74%) 75%,
    hsl(35deg 43% 72%) 83%,
    hsl(35deg 43% 71%) 92%,
    hsl(35deg 42% 70%) 100%
  );
    background-image: linear-gradient(
    135deg,
    hsl(35deg 57% 86%) 0%,
    hsl(35deg 54% 85%) 8%,
    hsl(35deg 52% 84%) 17%,
    hsl(35deg 50% 82%) 25%,
    hsl(35deg 49% 81%) 33%,
    hsl(35deg 48% 79%) 42%,
    hsl(35deg 47% 78%) 50%,
    hsl(35deg 46% 77%) 58%,
    hsl(35deg 45% 75%) 67%,
    hsl(35deg 44% 74%) 75%,
    hsl(35deg 43% 72%) 83%,
    hsl(35deg 43% 71%) 92%,
    hsl(35deg 42% 70%) 100%
  );
}

.three-image-text-grid .title-p {
    grid-area: 1 / 1 / 3 / 3;
}

.three-image-text-grid .title-p p {
    margin-bottom: 0;
}

/* .three-image-text-grid .title-p,
.three-image-text-grid p:not(.title-p p) {
    max-width: 850px;
} */
.three-image-text-grid .p-cta {
    grid-area: 5 / 3 / auto / 6;
    margin: 2vw 0 0 2vw;
    width: 100%;
}

.three-image-text-grid p {
    max-width: none;
}

.three-image-text-grid figure:nth-of-type(1) {
    grid-area: 1 / 3 / 5 / 6;
    margin-left: 2vw;
    padding-bottom: 50%;
}

.three-image-text-grid figure:nth-of-type(2) {
    grid-area: 3 / 1 / 6 / 3;
    margin: 2vw 0 0 0;
}

.three-image-text-grid figure:nth-of-type(3) {
    grid-area: 5 / 3 / 7 / 6;
    margin-left: 2vw;
    margin-top: 2vw;
}

.three-image-text-grid figure:nth-of-type(3) img {
    -o-object-position: 30% 50%;
    object-position: 30% 50%;
}

/* full-width-image block */
.full-width-image {
    margin: 0 var(--thin-gutter);
}

.full-width-image figure {
    padding-bottom: 46%;
}

.full-width-image figure img {
    -o-object-position: 50% 40%;
    object-position: 50% 40%;
}

/* sign-up form block */
.sign-up {
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sign-up:before {
    content: 'Join Us';
    text-transform: uppercase;
    height: 100%;
    width: 100%;
    z-index: 1;
    font-weight: 500;
    color: var(--forest-green);
    line-height: 1;
    opacity: 0.05;
    font-size: clamp(5rem, calc(9rem + (300 - 10) * (100vw - 400px) / (2000 - 400)), 50rem);
}

.sign-up-info {
    position: absolute;
    -ms-flex-item-align: center;
    align-self: center;
    z-index: 1;
    min-height: 200px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* footer styles */
footer {
    margin: 0 var(--thin-gutter);
    position: relative;
    z-index: 10001;
    padding-bottom: var(--thin-gutter);
}

.page-template-studio-microsite-v2 footer {
    background: var(--off-white);
}

#footer-background {
    position: relative;
    z-index: 1;
}

#footer-background,
#footer-info {
    padding: var(--thin-gutter) calc(var(--medium-gutter) - var(--thin-gutter)) 0;

    /* border-radius: var(--rounded-corners) */
}

#footer-info {
    margin: var(--thin-gutter);
    padding: 2rem;
}

#footer-background figure:not(#footer-logo) {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    z-index: 0;
}

#footer-top {
    height: 60px;
    width: 100%;
}

#footer-info {
    position: relative;
    z-index: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: var(--medium-gutter);
    background: rgba(242, 237, 232, 0.8);
    -webkit-backdrop-filter: blur(18px) contrast(1.2);
    backdrop-filter: blur(18px) contrast(1.2);
    border-radius: var(--rounded-corners);
}

#footer-links {
    gap: var(--large-gutter) 2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1400px;
    width: 100%;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}

#footer-links ul {
    min-width: 165px;
    padding: 0;
}

ul li {
    font-size: clamp(1.6rem, calc(1.1rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
}

#footer-links ul li {
    list-style: none;
}

#footer-links h4 {
    padding-left: 1rem;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--dun);
    padding-bottom: 1rem;
}

#footer-links a {
    padding: 1rem;
    display: block;
    line-height: 1;
}

#find-studio {
    position: relative;
    width: 100%;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#find-studio:before {
    content: 'Find a Studio';
    position: relative;

    /* left: 0 */
    text-transform: uppercase;
    height: 100%;
    width: 100%;
    z-index: -1;
    font-weight: 500;
    color: var(--forest-green);
    line-height: 1;
    opacity: 0.15;
    font-size: clamp(2rem, calc(4.4rem + (240 - 10) * (100vw - 400px) / (2000 - 250)), 50rem);
    white-space: nowrap;
}

.page-template-studio-microsite #find-studio:before {
    content: 'Book Now';
}

#find-studio .cta {
    position: absolute;
    -ms-flex-item-align: center;
    align-self: center;
}

#disclaimer {
    font-size: 1rem;
    text-align: center;
    max-width: 858px;
}

#disclaimer {
    margin-bottom: 0;
}

#copyright-info {
    position: relative;
    z-index: 0;
    background: var(--forest-green);
    padding: 0 var(--medium-gutter);
    font-size: 1.4rem;
    font-weight: 250;
    padding-top: var(--rounded-corners);
    padding-bottom: 1rem;
    border-radius: 0 0 var(--rounded-corners) var(--rounded-corners);
    margin-top: calc(var(--rounded-corners)* -1);
}

#copyright-info p,
#copyright-info a {
    display: inline-block;
    line-height: 1;
    padding: 1rem;
    color: #fff;
    margin: 0.9rem 0 0 0;
}

/* Studio Microsite template */
.studio-hero-info {
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: var(--medium-gutter);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: var(--rounded-corners);
    background: rgba(255,255,255,0.8);
    -webkit-backdrop-filter: blur(24px) contrast(1.2);
    backdrop-filter: blur(24px) contrast(1.2);
    gap: 3rem;

    /* top: calc(var(--thin-gutter) * -1) */
    margin-top: 2rem;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    width: calc(40rem + (300 - 40) * (100vw - 400px) / (2000 - 400));
    max-width: 850px;
    min-width: 250px;
    -ms-flex-item-align: center;
    align-self: center;
}

.studio-hero-info h1 {
    color: var(--forest-green);
    text-align: center;
    padding-left: 0;
    margin-bottom: 0;
    font-size: clamp(3.5rem, calc(3rem + (100 - 60) * (100vw - 400px) / (2000 - 400)), 8rem);
    letter-spacing: clamp(-0.3rem, calc(-0.2vw + (100 - 96) * (100vw - 400px) / (2000 - 400)), -0.1rem);
}

.studio-hero-info h1 em {
    font-size: clamp(4.02rem, calc(4.05rem + (100 - 60) * (100vw - 400px) / (2000 - 400)), 9rem);
}

.studio-hero-info ul {
    width: 100%;
    max-width: 345px;
    padding-left: 0;
    margin: 0 auto;
}

.studio-hero-info ul li {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1rem;
    border-bottom: 1px solid #D8BEAA;
}

.studio-hero-info ul li:last-of-type {
    border-bottom: none;
}

/* Video Container Block */
.video-container {
    margin: var(--large-gutter);
}
sup {
    line-height: 0;
}
.citations {
    margin-bottom: 0;
    margin-top: 3rem;
    font-size: clamp(1.4rem, calc(0.8rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 1.8rem);
}
.citations a {
    font-size: clamp(1.4rem, calc(0.8rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 1.8rem)!important;
}
/* Map + Info Block */
.map-info {
    margin: 0 var(--thin-gutter);
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: var(--thin-gutter);
}

.map {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    border-radius: var(--rounded-corners);
    background: var(--beige);
    background-image: -o-linear-gradient(45deg, #D6C9B7 0%, #e6ded2 100%);
    background-image: linear-gradient(45deg, #D6C9B7 0%, #e6ded2 100%);
    height: auto;
}

/* map block styles */
/* .map iframe {
    border: 0 !important;
    border-radius: var(--rounded-corners)!important;
    position: relative;
    padding: 0!important;
    margin: 0!important;
} */
.page-template-studio-microsite .mapp-layout {
    aspect-ratio: auto!important;
}

.essential-info {
    text-align: center;

    /* -ms-flex-preferred-size: 35% */
    /* flex-basis: 50% */
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3rem;
    width: 100%;

    /* height: 700px */
    /* padding: 4rem */
    border-radius: var(--rounded-corners);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    /* background-image: -o-linear-gradient(315deg, #E5E5DC 0%, #D0D1C6 100%) */
    /* background-image: linear-gradient(135deg, #E5E5DC 0%, #D0D1C6 100%) */
}

.essential-info figure {
    border-radius: 0;
    margin-bottom: 1rem;
    height: auto;
    width: auto;
    position: relative;
    margin: 0 auto;
    left: auto;
}

.essential-info h3 {
    margin-bottom: 2rem;
    font-size: clamp(2.2rem, calc(1.6rem + (100 - 86) * (100vw - 400px) / (2000 - 400)), 3rem);
    font-weight: 530;
    letter-spacing: clamp(-0.1rem, -0.08vw, -0.1rem);
}

.info-wrap {
    /* max-width: 90% */
}

.social-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 4rem;
    width: 4rem;
}

.social-link.linked-in img {
    padding-bottom: 1px;
}

.essential-info p {
    margin: 0 auto;

    /* width: 100% */
    overflow-wrap: break-word;
}

/* Image Side & Below + Text Block */
.image-side-below-text {
    grid-template-columns: auto 40% 40% auto;
    grid-template-rows: 1fr 25vw;
    padding: var(--large-gutter);
    margin: 0 auto;
    gap: 0 var(--large-gutter);
    max-width: 2560px;
    grid-area: 1 / 1 / 3 / 2;
}

.image-side-below-text figure:nth-of-type(1) {
    grid-area: 1 / 2 / auto / 3;
    padding-bottom: 100%;
}

.image-side-below-text-info {
    padding-top: var(--large-gutter);
    grid-area: 1 / 3 / 2 / 4;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.image-side-below-text-info p {
    margin-bottom: 0;
    padding-bottom: var(--large-gutter);
}

.image-side-below-text .cta {
    grid-area: 2 / 2 / 3 / 3;
    align-self: center;
    justify-self: center;
}

.image-side-below-text figure:nth-of-type(2) {
    grid-area: 2 / 3 / 3 / 4;
}

/* 2 & 3 card blocks */
.two-card {
    text-align: center;
    position: relative;
    z-index: 0;
}

.two-card h2 {
    margin-bottom: 6rem;
}

.card-container {
    gap: var(--large-gutter);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.three-card-grid .card-container {
    gap: var(--thin-gutter);
    padding: 0 var(--medium-gutter);
    margin-bottom: 10rem;
}

.three-card-grid h2 {
    text-align: center;
    margin-bottom: 5rem;
    line-height: 1;
    margin-top: 10rem;
}

.card {
    background: #EDE7DF;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

    /* padding: 4rem 12rem */
    border-radius: var(--rounded-corners);
    -ms-flex-preferred-size: 30%;
    flex-basis: 30%;
    border-radius: var(--rounded-corners);
    max-width: 500px;
    min-width: 300px;
    padding-bottom: 4rem;
}

.card-large {
    padding-bottom: 0;
    background-color: var(--sage-grey);
    text-align: center;
    -ms-flex-preferred-size: 33.33%;
    flex-basis: 33.33%;
    width: 100%;
    min-width: 0;
}

.card-large figure {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    padding: 22% var(--medium-gutter);
}

.card-large figcaption {
    font-size: 2.2rem;
    font-weight: 570;
    margin: 3rem 0;
}

.card-large figure img {
    margin: 0 auto;
    width: calc(6rem + (100 - 50) * (100vw - 400px) / (2000 - 400));
    max-width: 110px;
    min-width: 50px;
    height: auto;
}

.card-large p {
    /* margin-top: auto */
    margin-bottom: 0;
}

.card .cta {
    -webkit-box-flex: initial;
    -ms-flex: initial;
    flex: initial;
}

.card ul li {
    padding: 1rem 0;
    border-bottom: 1px solid #000;
    font-weight: 550;
    list-style: none;
    line-height: 1.6;
    font-size: clamp(1.8rem, calc(1.3rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
}

.card ul li:last-of-type {
    border: none;
}

.card ul li img {
    margin-right: 0.6rem;
}

.card-header {
    color: #fff;
    border-radius: var(--rounded-corners) var(--rounded-corners) 0 0;
    position: relative;
}

.card-header p:not(.card-label p) {
    padding: 2rem;
}

.card:nth-of-type(1) .card-header {
    background: var(--forest-green);
}

.card:not(.four-card .card):nth-of-type(2) .card-header {
    background: var(--orange);
}

.card-label {
    text-transform: uppercase;
    font-size: 1.6rem;
    position: absolute;
    right: 0;
}

.card-label:before {
    content: '';
    text-transform: uppercase;
    position: absolute;
    top: -40px;
    right: -40px;
    width: 108px;
    height: 108px;
    border-radius: 100px;
    background: var(--forest-green);
    z-index: -1;
}

.card-label p {
    letter-spacing: 0.3rem;
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    margin-top: -2rem;
    overflow-wrap: normal;
}

.card-label p span {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    margin-right: -60px;
    margin-left: 0.3rem;
    margin-top: 1.3rem;
    position: relative;
    color: #fff;
}

.card-label p span:before {
    content: '';
    position: absolute;
    top: 1px;
    left: -17px;
    height: 16px;
    width: 16px;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    background-image: url('../graphics/gift-white.svg');
    background-repeat: no-repeat;
    z-index: 1;
}

.card-header p {
    margin-bottom: 0;
}

.card h3 {
    padding: 4rem 10% 0 10%;
    color: #fff;
    font-size: clamp(2rem, calc(2.4rem + (100 - 86) * (100vw - 400px) / (2000 - 400)), 4rem);
    letter-spacing: clamp(-0.05rem, -0.06vw, -0.1rem);
}

.card .price {
    font-size: clamp(3rem, calc(2.4rem + (100 - 86) * (100vw - 400px) / (2000 - 400)), 4.5rem);
    font-weight: 600;
    color: var(--forest-green);
}

.card-main {
    padding: 0 var(--medium-gutter);
}

.card .cta {
    -ms-flex-item-align: center;
    align-self: center;
    margin-top: auto;
}

.t-and-c {
    font-size: 1.2rem;
}

.three-card-grid .centered {
    margin: 2rem auto 4rem auto;
}

.three-card-grid p.centered {
    display: block;
    text-align: center;
}

/* Join Us Form */
.join-us {
    width: 40%;
    max-width: 1200px;
    margin: 0 auto;
}

.inline-fields .wpforms-field-layout-rows,
.join-us .wpforms-field-layout {
    width: 100%!important;
}

.wpforms-container.inline-fields {
    padding: 0 1.5rem!important;
}

/* Global Overrides */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px white inset !important;
    background-color: #fff!important;
}

div.wpforms-container .wpforms-form label.wpforms-error,
div.wpforms-container .wpforms-form em.wpforms-error {
    position: absolute!important;
}

div.wpforms-container input[type=date]:focus,
div.wpforms-container input[type=datetime]:focus,
div.wpforms-container input[type=datetime-local]:focus,
div.wpforms-container input[type=email]:focus,
div.wpforms-container input[type=month]:focus,
div.wpforms-container input[type=number]:focus,
div.wpforms-container input[type=password]:focus,
div.wpforms-container input[type=range]:focus,
div.wpforms-container input[type=search]:focus,
div.wpforms-container input[type=tel]:focus,
div.wpforms-container input[type=text]:focus,
div.wpforms-container input[type=time]:focus,
div.wpforms-container input[type=url]:focus,
div.wpforms-container input[type=week]:focus,
div.wpforms-container select:focus,
div.wpforms-container textarea:focus,
.wp-core-ui div.wpforms-container input[type=date]:focus,
.wp-core-ui div.wpforms-container input[type=datetime]:focus,
.wp-core-ui div.wpforms-container input[type=datetime-local]:focus,
.wp-core-ui div.wpforms-container input[type=email]:focus,
.wp-core-ui div.wpforms-container input[type=month]:focus,
.wp-core-ui div.wpforms-container input[type=number]:focus,
.wp-core-ui div.wpforms-container input[type=password]:focus,
.wp-core-ui div.wpforms-container input[type=range]:focus,
.wp-core-ui div.wpforms-container input[type=search]:focus,
.wp-core-ui div.wpforms-container input[type=tel]:focus,
.wp-core-ui div.wpforms-container input[type=text]:focus,
.wp-core-ui div.wpforms-container input[type=time]:focus,
.wp-core-ui div.wpforms-container input[type=url]:focus,
.wp-core-ui div.wpforms-container input[type=week]:focus,
.wp-core-ui div.wpforms-container select:focus,
.wp-core-ui div.wpforms-container textarea:focus {
    border-color: var(--forest-green)!important;
    -webkit-box-shadow: 0 0 0 1px var(--forest-green),0px 1px 2px rgba(0,0,0,0.15)!important;
    box-shadow: 0 0 0 1px var(--forest-green),0px 1px 2px rgba(0,0,0,0.15)!important;
}

div.wpforms-container input[type=submit]:not(:hover):not(:active),
div.wpforms-container button[type=submit]:not(:hover):not(:active),
div.wpforms-container .wpforms-page-button:not(:hover):not(:active),
.wp-core-ui div.wpforms-container input[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container button[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container .wpforms-page-button:not(:hover):not(:active) {
    background-color: var(--orange)!important;
}

div.wpforms-container input[type=submit]:focus:after,
div.wpforms-container button[type=submit]:focus:after,
div.wpforms-container .wpforms-page-button:focus:after,
.wp-core-ui div.wpforms-container input[type=submit]:focus:after,
.wp-core-ui div.wpforms-container button[type=submit]:focus:after,
.wp-core-ui div.wpforms-container .wpforms-page-button:focus:after {
    content: none!important;
}

div.wpforms-container input[type=submit]:hover,
div.wpforms-container input[type=submit]:active,
div.wpforms-container button[type=submit]:hover,
div.wpforms-container button[type=submit]:active,
div.wpforms-container .wpforms-page-button:hover,
div.wpforms-container .wpforms-page-button:active,
.wp-core-ui div.wpforms-container input[type=submit]:hover,
.wp-core-ui div.wpforms-container input[type=submit]:active,
.wp-core-ui div.wpforms-container button[type=submit]:hover,
.wp-core-ui div.wpforms-container button[type=submit]:active,
.wp-core-ui div.wpforms-container .wpforms-page-button:hover,
.wp-core-ui div.wpforms-container .wpforms-page-button:active {
    background: var(--forest-green)!important;
}

div.wpforms-container .wpforms-form .wpforms-field input.wpforms-error,
div.wpforms-container .wpforms-form .wpforms-field input.user-invalid,
div.wpforms-container .wpforms-form .wpforms-field textarea.wpforms-error,
div.wpforms-container .wpforms-form .wpforms-field textarea.user-invalid,
div.wpforms-container .wpforms-form .wpforms-field select.wpforms-error,
div.wpforms-container .wpforms-form .wpforms-field select.user-invalid {
    border-color: var(--orange)!important;
    -webkit-box-shadow: 0 0 1px var(--orange)!important;
    box-shadow: 0 0 1px var(--orange)!important;
}

div.wpforms-container .wpforms-form label.wpforms-error,
div.wpforms-container .wpforms-form em.wpforms-error {
    color: var(--orange)!important;
}

div.wpforms-container .wpforms-form label.wpforms-error:before,
div.wpforms-container .wpforms-form em.wpforms-error:before {
    background-color: var(--orange)!important;
}

div.wpforms-container .wpforms-confirmation-container-full,
div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: var(--light-beige)!important;
    border: 1px solid var(--orange)!important;
    border-radius: var(--rounded-corners)!important;
    padding: 4rem 2rem!important;
}

/* End Global Overrides */
.inline-fields.wpforms-container-full .wpforms-form .wpforms-submit-container {
    margin-top: 15px!important;
    -ms-flex-item-align: start!important;
    align-self: flex-start!important;
}

.inline-fields.wpforms-container.inline-fields .wpforms-submit-container {
    width: 150px!important;
}

.inline-fields.wpforms-container.inline-fields .wpforms-field-container {
    width: 100%!important;
}

.inline-fields.wpforms-container.inline-fields .wpforms-field-container .wpforms-field {
    padding-left: 0!important;
}

.wpforms-container.inline-fields .wpforms-form {
    gap: 1.5rem!important;
}

.inline-fields .wpforms-form .wpforms-field-layout .wpforms-layout-row,
.inline-fields .wpforms-form .wpforms-field-repeater .wpforms-layout-row {
    margin: 0!important;
    gap: 1.5rem!important;
}

.inline-fields .wpforms-form .wpforms-field-layout .wpforms-layout-column,
.inline-fields .wpforms-form .wpforms-field-repeater .wpforms-layout-column {
    padding: 0!important;
}

.join-us .wpforms-form input {
    width: 300px!important;
}

.join-us .wpforms-form input,
.wpforms-submit {
    border-radius: 10rem!important;
    height: 45px!important;
    font-size: inherit!important;
}

/* affiliate logos block */
.affiliate-logos {
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    max-width: 1200px;
    width: 80%;
    margin: 0 auto;
    gap: 0 4rem;
    padding: 0 var(--medium-gutter);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.affiliate-logos figure {
    position: relative;
    border-radius: 0;
    max-width: 200px;
}

.affiliate-logos figure img {
    position: relative;
    width: 100%;
    height: auto;
}

/* Borderless Image Half Hero Block */
.borderless-image {
    padding-left: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.hero-map {
    height: 70svh;
}

.borderless-image h1,
.borderless-image-right h1,
.borderless-image-gallery-right h1 {
    font-size: clamp(4rem, calc(3.6rem + (90 - 60) * (100vw - 400px) / (2000 - 400)), 7.5rem);
    margin-bottom: 3rem;
    line-height: 1;
}

.borderless-image h1 em,
.borderless-image-right h1 em,
.borderless-image-gallery-right h1 em {
    font-size: clamp(4.1rem, calc(3.8rem + (90 - 60) * (100vw - 400px) / (2000 - 400)), 8.2rem);
    display: inline;
}

.borderless-image figure,
.hero-map .map-container {
    /* padding-bottom: 30% */
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    border-radius: 0 var(--rounded-corners) var(--rounded-corners) 0;

    /* left: calc(var(--rounded-corners) * -1 - 3%) */
}

.borderless-image figure {
    padding-bottom: 30%;
}

.borderless-image figure img,
.borderless-image-right figure img {
    -o-object-position: 50% 100%;
    object-position: 50% 100%;
}

.borderless-image .hero-text-container {
    padding: 3rem var(--medium-gutter);
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.borderless-image p {
    color: var(--forest-green);
    margin-bottom: 0;
}

/* Author Block */
.author {
    padding: 0 var(--large-gutter);
}

.author .inner-hero-wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: var(--large-gutter);
}

.author .hero-text-container {
    -ms-flex-item-align: start;
    align-self: flex-start;
    padding: var(--medium-gutter) 0;
}

.author .wp-block-list {
    max-width: 850px;
}

.author figure {
    position: -webkit-sticky;
    position: sticky;
    top: 10svh;
    -ms-flex-preferred-size: 40%;
    flex-basis: 40%;
    -ms-flex-item-align: start;
    align-self: flex-start;
    height: 80svh;

    /* padding-bottom: 40% */
}

.author.half-hero h1 {
    margin-bottom: 3rem;
}

.author.borderless-image figure {
    padding-bottom: 42% !important;
}

.author.borderless-image figure img {
    height: 100%;
    position: absolute;
    -o-object-position: 20% 70%;
    object-position: 20% 70%;
}

.author.borderless-image .inner-hero-wrap {
    height: auto;
}

.author p {
    margin-bottom: 3rem;
    color: #000;
}

.author p:last-of-type() {
    margin-bottom: 0;
}

/* Borderless Image Right Half Hero Block */
.borderless-image-right {
    height: calc(100svh - 180px);
    padding: var(--medium-gutter) 0;

    /* min-height: 80% */
    /* padding: var(--medium-gutter) 0 var(--medium-gutter) 0 */
    padding: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.borderless-image-right .hero-text-container {
    /* padding: var(--medium-gutter) */
}

.borderless-image-right p {
    color: var(--forest-green);
}

.borderless-image-right figure {
    /* padding-bottom: 36% */
    border-radius: var(--rounded-corners) 0px 0px var(--rounded-corners);
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
}

/* Borderless Image Gallery Right Block */
.borderless-image-gallery-right {
    grid-template-columns: 1fr 20% 40%;
    grid-template-rows: 1fr 1fr;
    gap: var(--thin-gutter);
    min-height: calc(100svh - var(--medium-gutter) *2 - 90px);
    padding: var(--medium-gutter) 0 var(--medium-gutter) var(--large-gutter);
    position: relative;
    z-index: 1;
}

.borderless-image-gallery-right .hero-text-container {
    grid-area: 1 / 1 / 3 / 2;
    padding: 0;
    align-self: center;
    width: 100%;
    padding-right: 2rem;
}

.borderless-image-gallery-right .hero-text-container h1,
.borderless-image-gallery-right .hero-text-container ul:not(.wp-block-list) {
    margin: 0 0 3rem 0;
    white-space: pre-line;
    min-width: 0;
}

h2.smaller {
    font-size: clamp(2.3rem, calc(2rem + (100 - 86) * (100vw - 400px) / (2000 - 400)), 4rem);
    letter-spacing: clamp(-0.1rem, -0.08vw, -0.1rem);
}

.borderless-image-gallery-right .hero-text-container p {
    color: #000;
}

.borderless-image-gallery-right figure {
    min-height: 200px;
}

.borderless-image-gallery-right figure:nth-of-type(1) {
    grid-area: 1 / 2 / 2 / 3;
}

.borderless-image-gallery-right figure:nth-of-type(2) {
    grid-area: 2 / 2 / 3 / 3;
}

.borderless-image-gallery-right figure:nth-of-type(3) {
    grid-area: 1 / 3 / 3 / 4;
    border-radius: var(--rounded-corners) 0px 0px var(--rounded-corners);
}

/* Infographic Block */
.infographic {
    padding: var(--large-gutter);
    margin: 0 var(--thin-gutter);
    grid-template-columns: 36% 6% 1fr 6% 16% 20%;
    grid-template-rows: 1fr 1fr;
    background-color: #f0e0c9;
    background-image: -o-linear-gradient(45deg, #f0e0c9 0%, #f1e7dc 100%);
    background-image: linear-gradient(45deg, #f0e0c9 0%, #f1e7dc 100%);
    border-radius: var(--rounded-corners);
    position: relative;
}

.infographic p {
    max-width: none;
}

.infographic.our-story {
    margin-top: 90px;
    background: rgb(231, 232, 222);
    background: -o-linear-gradient(225deg, rgb(231, 232, 222) 0%, rgb(209, 210, 198) 100%);
    background: linear-gradient(225deg, rgb(231, 232, 222) 0%, rgb(209, 210, 198) 100%);
}

.info-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    grid-area: 1 / 1 / 3 / 2;
}

.infographic .info-container {
    width: 100%;
}

.infographic.our-story {
    grid-template-rows: auto auto 1fr;
}

.infographic.our-story .info-container {
    grid-area: 1 / 1 / 4 / 4;
}

.infographic figure {
    position: relative;
}

.infographic:not(.our-story) figure:nth-of-type(1) {
    grid-area: 1 / 3 / 2 / 4;
    align-self: flex-start;
    max-width: 220px;
    margin: 0 auto;
}

.infographic.our-story h1 {
    color: var(--forest-green);
    padding-left: 0;
    -ms-flex-item-align: start;
    align-self: flex-start;
    display: inline-block;
    font-size: clamp(4rem, calc(3.6rem + (90 - 60) * (100vw - 400px) / (2000 - 400)), 7.5rem);
}

.infographic.our-story h1 em {
    display: inline-block;
    font-size: clamp(4.1rem, calc(3.8rem + (90 - 60) * (100vw - 400px) / (2000 - 400)), 8.2rem);
}

.infographic.our-story figure:nth-of-type(1) {
    grid-area: 2 / 5 / 3 / 7;
    margin-bottom: 3rem;
}

.infographic.our-story figure:nth-of-type(2) {
    grid-area: 2 / 5 / 3 / 7;
}

.infographic figure:nth-of-type(1),
.infographic figure:nth-of-type(2) {
    min-width: 150px;
}

.infographic:not(.our-story) figure:nth-of-type(1) img {
    position: relative;
    max-height: 80%;
}

.infographic figure:nth-of-type(2) img {
    position: relative;
}

.infographic figure:nth-of-type(2) {
    grid-area: 2 / 3 / 3 / 4;
    align-self: flex-end;
    width: 100%;
    margin: 0 auto;
}

.infographic figure:nth-of-type(3) {
    grid-area: 2 / 5 / 3 / 7;
    position: absolute;
    width: 65%;
    top: 0;
    right: 10%;
    min-width: 200px;
    max-width: 450px;
}

.infographic.our-story figure {
    position: relative;
    width: 100%;
    grid-area: 2 / 5 / 3 / 7;
    top: 0;
    min-width: 200px;

    /* padding-bottom: 60% */
}

.infographic.our-story figure img {
    position: relative;
}

.infographic figure:nth-of-type(3) img {
    position: relative;
}

.infographic .summary {
    grid-area: 1 / 5 / 2 / 7;
    align-self: flex-start;
    font-size: 2.2rem;
    font-weight: 550;
    overflow-wrap: break-word;
}

.infographic .sticky-info {
    grid-area: 1 / 5 / 2 / 7;
    position: -webkit-sticky;
    position: sticky;
    top: 3rem;
}

.infographic.our-story .summary {
    font-size: clamp(2.2rem, calc(1.6rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 3.4rem);
    margin-bottom: 3rem;
    grid-area: auto;
}

.three-image-grid {
    gap: var(--thin-gutter);
    padding: 0 var(--medium-gutter);
    margin: 0 auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 1667px;
}

.three-image-grid figure {
    padding-bottom: 33.33%;
    height: auto;
}

section.wider {
    max-width: calc(2560px - (var(--large-gutter) *2));
    width: 88%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: var(--dun);
    background-image: -o-linear-gradient(65deg, #dedace 0%, #ece8dd 100%);
    background-image: linear-gradient(25deg, #dedace 0%, #ece8dd 100%);
    border-radius: var(--rounded-corners);
    margin: 100px auto;
    padding: 6%;
}

/* Three Card Block */
.three-card {
    padding: 0 var(--medium-gutter);
    margin: 0 auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    /* max-width: 1667px */
}

.three-card .card-container {
    gap: var(--medium-gutter);
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.three-card .card-inner {
    -ms-flex-preferred-size: 33.33%;
    flex-basis: 33.33%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-radius: var(--rounded-corners);
    -webkit-box-shadow: 0px 3px 10px -9px rgba(0,0,0,0.8);
    box-shadow: 0px 3px 10px -9px rgba(0,0,0,0.8);
}

/* .three-card .card-inner:not(:last-of-type) {
    margin-right: var(--thin-gutter);
} */
.three-card .card-inner p {
    /* margin-top: 3rem */
    /* margin-bottom: 0.8rem */
    text-align: center;
}

.three-card .card-inner .cta-container {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto auto 0 auto;
}

.three-card .card-inner figure {
    /* padding-bottom: 90% */
    height: 30vw;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: var(--rounded-corners) var(--rounded-corners) 0 0 ;
}

.three-card .card-inner figure figcaption {
    position: absolute;
    z-index: 2;
    color: #fff;

    /* font-size: clamp(1.8rem, calc(1.8rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 3.6rem); */
    font-size: clamp(2.8rem, calc(1.8rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 4rem);
    padding: 3rem var(--medium-gutter);
    bottom: 0;
}

.three-card .card-inner figure:after {
    content: '';
    position: absolute;
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5) 0%, rgb(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgb(255, 255, 255, 0)));
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgb(255, 255, 255, 0) 100%);
    height: 100px;
    width: 100%;
    z-index: 1;
    bottom: 0;
}

.three-card .card-inner .card-info {
    background: #e7e7e0;
    padding: var(--medium-gutter);
    border-radius: 0 0 var(--rounded-corners)var(--rounded-corners);
    height: auto;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-top: calc(var(--rounded-corners) * -1);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.three-card .card-inner:nth-of-type(1) figure img {
    -o-object-position: 20% 50%;
    object-position: 20% 50%;
}

.three-card .card-inner:nth-of-type(3) figure img {
    -o-object-position: 50% 60%;
    object-position: 50% 60%;
}

/* Four Card Block */
.four-card {
    padding: var(--medium-gutter);
    margin: 0 auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.four-card .card-container {
    gap: var(--medium-gutter);
    -webkit-box-align: stretch;
    width: calc(100% + var(--medium-gutter));
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.four-card .card-inner {
    position: relative;
    -ms-flex-preferred-size: calc(25% - var(--medium-gutter));
    flex-basis: calc(25% - var(--medium-gutter));
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    border-radius: var(--rounded-corners);
    -webkit-box-shadow: 0px 3px 10px -9px rgba(0,0,0,0.8);
    box-shadow: 0px 3px 10px -9px rgba(0,0,0,0.8);
    min-width: 260px;
}

.card-inner .telephone-info {
    margin-top: auto;
}

.price-cards a.card {
    position: relative;
}

.price-cards h3,
.price-cards .cta {
    position: relative;
    z-index: 1;
}

.four-card a.card-inner:after,
.price-cards a.card:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(58, 71, 66, 0.5);
    opacity: 0;
    z-index: 0;
    border-radius: var(--rounded-corners);
    -webkit-transition: opacity 0.3s ease, color 0.3s ease;
    -o-transition: opacity 0.3s ease, color 0.3s ease;
    transition: opacity 0.3s ease, color 0.3s ease;
}

.price-cards a.card:after {
    background-color: rgba(58, 71, 66, 0.7);
}

.four-card a.card-inner:hover:after,
.price-cards a.card:hover:after {
    opacity: 1;
}

.price-cards a.card:hover h3.price {
    color: #fff;
}

.link-wrap {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 9999;
    display: block;
    border-radius: var(--rounded-corners);
    background: rgba(0,0,0,0.5);
}

.link-wrap:after:hover {
    opacity: 1;
}

.four-card .card-inner p {
    margin: 0;
}

.four-card a:hover {
    /* color: var(--orange) */
}

.four-card .card-inner .cta-container {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto auto 0 auto;
    padding-top: 3rem;
    position: relative;
    z-index: 1;
}

.four-card .card-inner figure {
    padding-bottom: 70%;
    border-radius: var(--rounded-corners) var(--rounded-corners) 0 0 ;
}

.four-card .card-inner figure figcaption {
    position: absolute;
    text-align: center;
    z-index: 2;
    color: #fff;
    font-size: clamp(2.8rem, calc(1.8rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 4rem);
    padding: 6% 9%;
    width: 100%;
    bottom: 0;
}

.four-card .card-inner figure:after {
    content: '';
    position: absolute;
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.7) 0%, rgb(255, 255, 255, 0) 100%);
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.7)), to(rgb(255, 255, 255, 0)));
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgb(255, 255, 255, 0) 100%);
    height: 160px;
    width: 100%;
    z-index: 1;
    bottom: 0;
}

.four-card .card-inner .card-info {
    background: #e7e7e0;
    padding: 6% 9%;
    border-radius: 0 0 var(--rounded-corners)var(--rounded-corners);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3rem 0;
    height: 100%;
    text-align: center;
}

.four-card .card-info img {
    /* margin-right: 1.2rem */
    margin: 0 auto 1.5rem;
    display: block;
    -ms-flex-item-align: start;
    align-self: flex-start;

    /* margin-left: -2.3rem; */
}

/* 4 card pricing block */
.four-card-pricing {
    text-align: center;
    position: relative;
}

.four-card-pricing .card-container {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.four-card-pricing .card {
    -ms-flex-preferred-size: calc(25% - var(--medium-gutter));
    flex-basis: calc(25% - var(--medium-gutter));
    max-width: none;
}

/* .four-card-pricing .card-main {
    padding: 0 var(--thin-gutter);
} */
.four-card-pricing p {
    margin: 0 auto 3rem auto;
}

.four-card-pricing .card-header {
    background-color: var(--forest-green);
}

.four-card-pricing h3 {
    /* font-size: clamp(2rem, calc(2.4rem + (100 - 90) * (100vw - 400px) / (2000 - 400)), 4rem); */
    padding: 2rem 2rem 0 2rem;
}

.four-card-pricing .card-header p {
    font-size: clamp(1.8rem, calc(1rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
}

/* Large Intro Block */
.large-intro {
    padding: var(--large-gutter);
    padding-bottom: var(--thin-gutter);
    position: relative;
    z-index: 0;
    margin-top: 90px;
    text-align: center;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: auto auto 1fr;
}

.large-intro figure {
    position: relative;
    min-width: 150px;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    z-index: -1;
}

.large-intro figure:nth-of-type(1) {
    grid-area: 1 / 1 / 2 / 3;
    margin-top: -10%;
    width: 95%;
}

.large-intro:not(.pemf-session) figure:nth-of-type(2) {
    grid-area: 2 / 5 / 3 / 7;
    width: 85%;
    margin-left: 15%;
    margin-top: -10%;
}

.large-intro figure img.cover-fit {
    position: relative;
    height: auto;
}

.large-intro h1 {
    font-size: clamp(5rem, calc(4.1rem + (100 - 10) * (100vw - 400px) / (2000 - 400)), 14rem);
    letter-spacing: calc(-0.1vw + (100 - 96) * (16vw - 400px) / (2000 - 400));
    padding-left: 0;
    color: var(--forest-green);
    grid-area: 1 / 1 / auto / 7;
}

.large-intro h1 em {
    font-size: clamp(5.3rem, calc(4.25rem + (100 - 5) * (100vw - 400px) / (2000 - 400)), 14.9rem);
    letter-spacing: clamp(-0.6rem, calc(-0.45vw + (100 - 96) * (100vw - 400px) / (2000 - 400)), -0.15rem);
}

.large-intro p {
    margin: 0 auto;
    max-width: 650px;
    overflow-wrap: break-word;
    grid-area: 2 / 3 / auto / 5;
}

body.page-template-testimonials .large-intro:before,
body.page-template-wellness-A-Z .half-hero:before,
body.page-template-wellness-A-Z-v2 .half-hero:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 180%;
    width: 100%;
    z-index: -1;
    background: rgba(245, 242, 238, 1.0);
    background: -o-linear-gradient(top, rgba(245, 242, 238, 1.0), rgba(214, 201, 183, 1.0));
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(245, 242, 238, 1.0)), to(rgba(214, 201, 183, 1.0)));
    background: linear-gradient(180deg, rgba(245, 242, 238, 1.0), rgba(214, 201, 183, 1.0));
}

/* body.page-template-testimonials,
body.page-template-wellness-A-Z,
body.page-template-wellness-A-Z-v2 {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(245, 242, 238, 1.0)), to(transparent));
    background: -o-linear-gradient(top, rgba(245, 242, 238, 1.0), transparent);
    background: linear-gradient(180deg, rgba(245, 242, 238, 1.0), transparent);
    background: -o-linear-gradient(150deg, rgba(214, 196, 172, 0.8), transparent);
    background: linear-gradient(300deg, rgba(214, 196, 172, 0.8), transparent);
    background: -o-linear-gradient(350deg, rgba(216, 190, 170, 0.5), transparent);
    background: linear-gradient(100deg, rgba(216, 190, 170, 0.5), transparent);
    background: -o-linear-gradient(330deg, rgba(208, 209, 198, 0.6) 20%, transparent);
    background: linear-gradient(120deg, rgba(208, 209, 198, 0.6) 20%, transparent);
} */
.large-intro.pemf-session {
    grid-template-columns: repeat(24, 1fr);
    grid-template-rows: repeat(5, auto);
}

.large-intro.pemf-session h1 {
    grid-area: 1 / 1 / 2 / 25;

    /* mix-blend-mode: multiply */
}

.large-intro.pemf-session figure:nth-of-type(1) {
    grid-area: 1 / 1 / 1 / 1;
}

.large-intro.pemf-session figure:nth-of-type(2) {
    grid-area: 2 / 19 / 4 / 25;
}

.large-intro.pemf-session p {
    grid-area: 2 / 8 / auto / 18;
}

/* .large-intro.pemf-session figure:nth-of-type(1) {
    padding-bottom: 140%;
}

.large-intro.pemf-session figure:nth-of-type(2) {
    padding-bottom: 60%;
}

.large-intro.pemf-session figure img {
    position: absolute;
    height: 100%;
} */
.large-intro.pemf-session figure:nth-of-type(1) {
    grid-area: 1 / 1 / 3 / 6;
    margin-bottom: 3rem;
}

/* Wellness A-Z styles */
body.page-template-wellness-A-Z,
body.page-template-wellness-A-Z-v2 {
    background-color: #E4DCCF;
}

body.page-template-wellness-A-Z .half-hero:before,
body.page-template-wellness-A-Z-v2 .half-hero:before {
    background: -o-linear-gradient(top, rgba(245, 242, 238, 1.0), rgba(228, 220, 207, 1.0));
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(245, 242, 238, 1.0)), to(rgba(228, 220, 207, 1.0)));
    background: linear-gradient(180deg, rgba(245, 242, 238, 1.0), rgba(228, 220, 207, 1.0));
}

.borderless-image {
    position: relative;
    z-index: 0;
    padding: 0;
}

body.page-template-wellness-A-Z main,
body.page-template-wellness-A-Z-v2 main {
    position: relative;
    z-index: 0;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
}

body.page-template-wellness-A-Z .article-bg-image:nth-of-type(1),
body.page-template-wellness-A-Z-v2 .article-bg-image:nth-of-type(1) {
    /* left: auto */
    margin-left: auto;

    /* right: 2% */
    position: -webkit-sticky;
    position: sticky;
    border-radius: var(--rounded-corners) 0px 0px var(--rounded-corners);

    /* margin-top: 10vh */
    top: 0;
    width: 100%;

    /* height: 100svh */
    padding-bottom: 56%;
    opacity: 0.18;
}

.wp-block-pemfit-article-container {
    max-width: 1200px;
    margin: 200px auto;
}

body.page-template-wellness-A-Z .article-bg-image img,
body.page-template-wellness-A-Z-v2 .article-bg-image img {
    mix-blend-mode: darken!important;
}

body.page-template-wellness-A-Z .article-bg-image:nth-of-type(2),
body.page-template-wellness-A-Z-v2 .article-bg-image:nth-of-type(2) {
    border-radius: 0px var(--rounded-corners) var(--rounded-corners) 0px;
    top: 0;
    margin-top: 40svh;
    width: 74%;
    padding-bottom: 70%;
    opacity: 0.2;
}

body.page-template-wellness-A-Z-v2 .sticky-wrap {
    position: absolute;
    width: calc(100% - (var(--thin-gutter) * 2));
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
    border: 1px solid var(--rose-gold);
    border-radius: var(--rounded-corners);
    pointer-events: none;
    margin: 0 var(--thin-gutter);
}

body.page-template-wellness-A-Z-v2 .article-bg-image:nth-of-type(1) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    border-radius: var(--rounded-corners);
    height: 100%;
    padding-bottom: 0;
    margin: 0;
    z-index: -1;
}

body.page-template-wellness-A-Z-v2 .article-bg-image:nth-of-type(1) img {
    -o-object-position: 50% 100%;
    object-position: 50% 100%;
}

.a-z-letters {
    gap: 1.4rem;
    margin: 0 auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: var(--medium-gutter);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.a-z-letters a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    background-color: rgba(242, 237, 232, 1);
    border: 1px solid var(--rose-gold);
    border-radius: 1rem;
    -webkit-transition: background-color 0.3s ease;
    -o-transition: background-color 0.3s ease;
    transition: background-color 0.3s ease;
}

.a-z-letters a:hover,
.a-z-letters a.highlighted {
    background-color: var(--forest-green);
    color: #fff;
}

.conditions {
    position: relative;
    grid-template-columns: repeat(auto-fit, minmax(calc(342px + var(--medium-gutter)), 1fr));

    /* grid-auto-flow: column dense; */
    gap: var(--medium-gutter);
    padding: var(--medium-gutter) var(--large-gutter);
    border-radius: var(--rounded-corners);

    /* margin-bottom: 100px */
    z-index: 1;
}

.condition-wrap {
    padding: var(--medium-gutter);
    background-color: rgba(242, 237, 232, 0.8);
    border-radius: var(--rounded-corners);
    -webkit-backdrop-filter: blur(2px) contrast(1.2);
    backdrop-filter: blur(2px) contrast(1.2);
    -webkit-transition: background-color 0.3s ease;
    -o-transition: background-color 0.3s ease;
    transition: background-color 0.3s ease;
    position: relative;
    z-index: 1;
}

.condition-wrap:hover {
    background-color: rgba(242, 237, 232, 1);
}

.condition-wrap:hover p {
    color: var(--forest-green);
    font-family: var(--Source-Serif-Italic);
}

.condition-wrap.highlighted {
    background-color: rgba(58, 71, 66, 1);
}

.condition-wrap.highlighted p {
    color: var(--dun);
    font-family: var(--Source-Serif-Italic);
}

.condition-wrap.highlighted ul li a {
    color: #fff;
}

.condition-wrap p {
    font-size: clamp(5rem, calc(4.1rem + (100 - 10) * (100vw - 400px) / (2000 - 400)), 14rem);
    color: rgba(58, 71, 66, 0.4);
    font-weight: 400;
    text-indent: -1vw;
    line-height: 0.8!important;

    /* margin-bottom: 0 */
}

.condition-wrap ul {
    padding-left: 2rem;
    width: 100%;
}

.condition-wrap ul li {
    list-style: none;
    width: 100%;
    border-bottom: 1px solid var(--rose-gold);
}

.condition-wrap ul li a {
    padding: 1rem 2rem;
    display: block;
    margin-left: -2rem;
    -webkit-transition: font-weight 0.2s ease;
    -o-transition: font-weight 0.2s ease;
    transition: font-weight 0.2s ease;
    position: relative;
    z-index: 1;
}

.condition-wrap ul li:last-of-type {
    border: none;
}

/* contact form container block */
.contact-form-container {
    max-width: calc(1200px + (var(--medium-gutter) * 2));
    margin: var(--large-gutter) auto;
    padding: 0 var(--medium-gutter);
}

.contact-form-container .inner {
    background-color: var(--dun);
    background-image: -o-linear-gradient(65deg, #dedace 0%, #ece8dd 100%);
    background-image: linear-gradient(25deg, #dedace 0%, #ece8dd 100%);
    border-radius: var(--rounded-corners);
    padding: var(--medium-gutter);
}

.essential-info .cta {
    -webkit-box-flex: 0;
    -ms-flex: 0;
    flex: 0;
}

/* search form styles */
.search-container {
    margin-top: 5rem;
    width: 100%;
}

.custom-search-form {
    background: rgba(255,255,255,0.4);
    border-radius: 10rem;
    padding-right: 0.7rem;
    overflow: hidden;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 60px;
    border: 1px solid var(--rose-gold);
    width: 100%;
    max-width: 500px;
}

input.search {
    background: none;
    border: 0;
    outline: none;
    padding: 2rem;
    height: 60px;
    width: 100%;
}

.search-submit {
    padding: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 48px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 48px;
    border: 1px solid var(--rose-gold);
    border-radius: 10rem;
}

.search-results {
    height: 0;
    background-color: rgba(242, 237, 232, 0.8);
    position: relative;
    margin: var(--thin-gutter);
    margin-bottom: -0;
    border-radius: var(--rounded-corners);
    overflow: hidden;
    display: none;
}

.inner-search-results {
    padding: var(--medium-gutter);
}

/* Post Info Block */
.post-info {
    width: 100%;
    padding-bottom: 3rem;
}

.post-info p {
    display: inline-block;
    margin-bottom: 0;
    font-style: italic;
    font-size: 1.6rem;
    color: var(--forest-green)!important;
    margin-right: 2rem;
}

.post-info p a {
    padding: 0.5rem 0.8rem;
    color: var(--orange);
    font-size: 1.6rem!important;
}

.inner-hero-wrap {
    height: 90%;
    gap: 0 var(--medium-gutter);
}

.borderless-image .inner-hero-wrap {
    height: 100%;
}

.borderless-image-right .inner-hero-wrap {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

body.page-template-our-story .borderless-image-right figure img {
    -o-object-position: 50% 20%;
    object-position: 50% 20%;
}

/* Microsite table styles */
.table {
    padding: 3rem var(--medium-gutter) 0 var(--medium-gutter);
}

.table h2 {
    text-align: center;
}

.table h2,
.table p {
    margin-left: auto;
    margin-right: auto;
}

.table p {
    max-width: 1200px;
    text-align: center;
}

table.pemfit-prices {
    width: 100%;
    text-align: center;
    max-width: 1200px;
    border-radius: var(--rounded-corners);
    border-collapse: collapse;
    border: none;
    overflow: hidden;
    margin: 0 auto;
}

table.pemfit-prices:last-of-type {
    margin-bottom: 3rem;
}

table.pemfit-prices td:not(:nth-of-type(1)),
table.pemfit-prices th:not(:nth-of-type(1)) {
    border-left: 2px solid var(--off-white);
}

table.pemfit-prices thead {
    background: var(--forest-green);
}

table.pemfit-prices thead th {
    font-weight: 500;
    color: #FFFFFF;
    text-align: center;
    width: 50%;
    padding: 2rem 4%;
}

table.pemfit-prices thead th:nth-of-type(1) {
    font-size: clamp(1.6rem, calc(2rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.6rem);
}

table.pemfit-prices td {
    font-weight: 450;
    background: #EDE7DF;
    padding: 2rem;
    border-bottom: 2px solid var(--off-white);
}

/* Book Now section */
.book-now {
    padding: 0 var(--medium-gutter);
    max-width: calc(1200px + (var(--medium-gutter) * 2));
    margin: 0 auto;
    text-align: center;
}

.book-now .inner {
    border: 2px solid var(--orange);
    border-radius: var(--rounded-corners);
    padding: var(--medium-gutter);
}

.book-now a {
    color: var(--orange);
    display: inline-block;
    padding: 2rem;
}

.book-now h2,
.book-now-phone {
    margin-bottom: 2rem;
}

.book-now p {
    max-width: none;
    font-weight: 550;
    margin-bottom: 0;
}

.book-now-phone {
    width: 3rem;
}

/* Before the Session/ During the Session blocks */
.before-the-session ol {
    list-style: decimal;
    font-size: clamp(1.6rem, calc(1.1rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.1rem);
    padding-left: 2rem;
    line-height: 1.5;
}

.before-the-session ol li::marker,
.before-the-session ol li span {
    font-weight: 750;
}

.before-the-session ol li {
    padding-bottom: 2rem;
}

.text-image-right,
.during-the-session {
    padding: var(--large-gutter);
}

.before-the-session {
    padding-top: 0;
}

.before-the-session h2 {
    width: 200%;
}

.before-intro {
    font-weight: 550;
}

.text-image-right .flex {
    gap: var(--large-gutter);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.text-image-right figure {
    padding-bottom: 50%;
}

.before-the-session-info {
    -ms-flex-preferred-size: 95%;
    flex-basis: 95%;
}

.during-the-session {
    padding: 0 var(--large-gutter);
    padding-bottom: var(--large-gutter);
}

.during-the-session .flex {
    gap: var(--large-gutter);
}

.during-the-session figure {
    -ms-flex-item-align: start;
    align-self: flex-start;
    padding-bottom: 40%;
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    position: -webkit-sticky;
    position: sticky;
    top: 90px;
}

.during-the-session .sticky-list {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.during-the-session .sticky-list p {
    padding: 3rem 4rem;
    background: #FFFCF8;
    border-radius: var(--rounded-corners);
    -webkit-box-shadow: 0px 3px 16px -11px rgba(0,0,0,0.2);
    box-shadow: 0px 3px 16px -11px rgba(0,0,0,0.2);
}

.during-the-session .sticky-list p:last-of-type {
    margin-bottom: 0;
}

.during-the-session .sticky-list p span {
    font-weight: 750;
}

.sticky-list h4 {
    margin-bottom: 3rem;
}

.sticky-list h4:not(:nth-of-type(1)) {
    margin-top: 5rem;
}
/* Image/Text Cascade Block */
.image-text-cascade {
    border-radius: var(--rounded-corners);
    padding: var(--large-gutter);
    background: -o-linear-gradient(left, #EDE5DA 0%,#F1ECE6 100%);
    background: -webkit-gradient(linear, left top, right top, from(#EDE5DA),to(#F1ECE6));
    background: linear-gradient(to right, #EDE5DA 0%,#F1ECE6 100%);
}

.cascade-one {
    border-radius: var(--rounded-corners) var(--rounded-corners) 0 0;
    padding-bottom: calc(var(--large-gutter) + var(--rounded-corners));
}

.page-template-studio-microsite-v2 .image-text-cascade {
    margin: var(--thin-gutter);
    border-radius: var(--rounded-corners);
}

.page-template-studio-microsite-v2 .image-text-cascade figure.full-width-team-photo img {
    position: relative;
}

figure.full-width-team-photo {
    margin: var(--thin-gutter) 0 var(--large-gutter) 0;
}

.page-template-studio-microsite-v2 .image-text-cascade #our-story p {
    max-width: none;
}

.cascade-two {
    background: -o-linear-gradient(left, #E9DFD5 0%,#E9D2C1 100%);
    background: -webkit-gradient(linear, left top, right top, from(#E9DFD5),to(#E9D2C1));
    background: linear-gradient(to right, #E9DFD5 0%,#E9D2C1 100%);
    margin-top: calc(var(--rounded-corners) * -1);
}

.cascade-inner {
    max-width: 1200px;
    margin: 0 auto;
}

.narrow-text-left-image-right .cascade-inner {
    max-width: 1200px;
}

.image-text-cascade:not(.page-template-studio-microsite-v2 .image-text-cascade):not(.pemfit-vision):not(.narrow-text-left-image-right) .cascade-inner h2 {
    margin-bottom: var(--large-gutter);
}

.pemfit-vision {
    margin-top: 90px;
    border-radius: var(--rounded-corners);
}

.pemfit-vision h1 {
    font-size: clamp(3.8rem, calc(3.1rem + (90 - 60) * (100vw - 400px) / (2000 - 400)), 5.7rem);
    color: var(--forest-green);
    padding-left: 0;
}

.pemfit-vision .cascade-inner h2,
.narrow-text-left-image-right .cascade-inner h2 {
    font-size: clamp(3rem, calc(2rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 4.5rem);
    margin-bottom: 3rem;
}

.narrow-text-left-image-right .cascade-inner .flex {
    margin-bottom: var(--large-gutter);
}

.image-text-cascade.narrow-text-left-image-right {
    background: none;
}

.cascade-inner .flex {
    gap: var(--large-gutter);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.narrow-text-left-image-right .cascade-inner .flex {
    gap: var(--medium-gutter);
}

.narrow-text-left-image-right p:not(.cascade-inner p) {
    text-align: center;
    margin: 0 auto;
}

.narrow-text-left-image-right a {
    color: var(--orange);
}

.cascade-inner .flex:not(:first-of-type) {
    margin-top: var(--large-gutter);
}

.cascade-inner .flex figure {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
    padding-bottom: 28%;
}

.cascade-text-container {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.narrow-text-left-image-right .cascade-inner .flex figure {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.pemfit-vision .cascade-inner .flex figure,
.narrow-text-left-image-right .cascade-inner .flex figure {
    padding-bottom: 0;
}

.pemfit-vision .cascade-inner .flex figure img,
.narrow-text-left-image-right .cascade-inner .flex figure img {
    position: relative;
}

.cascade-inner .flex p {
    margin-bottom: 0;
}

.complete figure {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.complete figure img {
    -o-object-position: 60% 50%;
    object-position: 60% 50%;
}

/* Gallery Grid Block */
.gallery-grid {
    grid-template-columns: 37.5% 20% 42.5%;
    grid-template-rows: auto 12.5vw 12.5vw 10vw 18vw;
    gap: var(--thin-gutter);
    padding: 0 var(--medium-gutter);
    width: calc(100% - (var(--thin-gutter) * 2));
    margin-top: var(--large-gutter);
}

.gallery-info {
    grid-area: 1 / 1 / 2 / 4;
    margin-bottom: var(--thin-gutter);
    text-align: center;
}

.gallery-info p {
    margin: 3rem auto;
}

.gallery-info .cta {
    margin: 0 auto;
}

.gallery-grid figure:nth-of-type(1) {
    grid-area: 2 / 1 / 5 / 3;
}

.gallery-grid figure:nth-of-type(2) {
    grid-area: 2 / 3 / 4 / 4;
}

.gallery-grid figure:nth-of-type(3) {
    grid-area: 5 / 1 / 6 / 2;
}

.gallery-grid figure:nth-of-type(3) img {
    -o-object-position: 50% 90%;
    object-position: 50% 90%;
}

.gallery-grid figure:nth-of-type(4) {
    grid-area: 5 / 2 / 6 / 3;
}

.gallery-grid figure:nth-of-type(5) {
    grid-area: 4 / 3 / 6 / 4;
}

.gallery-grid figure:nth-of-type(5) img {
    -o-object-position: 70% 80%;
    object-position: 70% 80%;
}

/* Map Hero Block */
.hero-map .hero-text-container p {
    margin-bottom: 3rem;
}

.hero-map .hero-text-container h1 {
    white-space: normal;
}

.mapp-layout * {
    font-family: var(--DM-Sans)!important;
    font-size: 16px!important;
}

mappress-map.mapp-layout {
    border-radius: 0 var(--rounded-corners) var(--rounded-corners) 0!important;
    overflow: hidden!important;
    height: 100%!important;
    aspect-ratio: 50 / 100!important;
}

.page-template-studio-microsite-v2 mappress-map.mapp-layout {
    aspect-ratio: auto!important;
}

/* FAQ / Studio Accordion Block */
.faq-hero {
    height: auto;
}

.faq-hero .hero-text-container {
    -ms-flex-item-align: start;
    align-self: flex-start;
    position: -webkit-sticky;
    position: sticky;
    top: 3rem;
}

.faq-accordion,
.studio-details-accordion {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
    height: auto;
    padding: var(--large-gutter) var(--medium-gutter);
}

.studio-details-accordion {
    padding: 0;
    max-width: 450px;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    width: 100%;
}

.faq-inner {
    -ms-flex-item-align: center;
    align-self: center;
}

.faq-container:not(:last-of-type),
.studio-details:not(:last-of-type) {
    border-bottom: 1px solid var(--rose-gold);
}

.question p,
.detail-item p {
    font-size: clamp(2rem, calc(1.6rem + (70 - 60) * (100vw - 400px) / (2000 - 400)), 2.6rem);
    font-weight: 600;
    padding: 20px 80px 20px 20px;
    position: relative;
    display: -ms-flexbox;
    overflow-wrap: break-word;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    margin-bottom: 0;
    max-width: none;
}

.detail-item p {
    font-size: clamp(1.6rem, calc(1.6rem + (70 - 61) * (100vw - 400px) / (2000 - 400)), 2.3rem);
    font-weight: 550;
    padding: 20px 50px 20px 25px;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}

.detail-item {
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
}

.detail-item figure {
    position: relative;
    width: auto;
    padding-right: 2rem;
    border-radius: none;
    overflow: visible;
}

.question p:after,
.detail-item p:after {
    content: "\002B";
    font-size: 3.2rem;
    position: absolute;
    right: 20px;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}

.question.active p:after,
.detail-item.active p:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.answercont,
.detail-content {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.answer {
    padding: 0 3rem 3rem;
}

.detail {
    text-align: center;
    padding: 0 1rem 3rem;
}

.detail p {
    margin: 2rem 0;
}

.detail-item img {
    width: 16px;
    height: auto;
}

/* .detail {
    text-align: center;
} */
.answer a {
    color: var(--orange);
}

.detail .cta {
    width: 100%;
}

.detail a:hover {
    color: var(--orange);
}

/* Disclaimer Block */
.disclaimer {
    position: relative;
}

.disclaimer p {
    margin: 0 auto;
    max-width: 1100px;
    padding: var(--medium-gutter);
    overflow-wrap: break-word;
    text-align: center;
    font-size: clamp(1.6rem, calc(1rem + (70 - 64) * (100vw - 400px) / (2000 - 400)), 1.8rem);
}

/* CSS Only Modal Window */
.modal-window {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10003;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.modal-window:target {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.modal-window .modal-backdrop {
    position: fixed;
    background-color: rgba(58, 71, 66, 0.8);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
}

.modal-window .modal {
    padding: var(--medium-gutter);
    background: var(--off-white);
    position: relative;
    -webkit-box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.25);
    border-radius: var(--rounded-corners);
    text-align: center;
}

.modal h2 {
    margin-bottom: 5rem;
}

.modal h2 em {
    font-size: clamp(3rem, calc(3.4rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 6rem);
    display: inline-block;
    letter-spacing: clamp(-0.6rem, calc(-0.36vw + (100 - 96) * (100vw - 400px) / (2000 - 400)), -0.1rem);
}

.modal-window .modal a {
    -webkit-transition: color 0.3s ease;
    -o-transition: color 0.3s ease;
    transition: color 0.3s ease;
}

.modal-window .modal a img {
    margin-right: 1rem;
}

.modal-window .modal a:hover {
    color: var(--orange);
}

.modal-window .modal-close {
    color: #aaa;
    font-size: 80%;
    position: absolute;
    right: 0;
    top: 0;
    text-align: center;
    text-decoration: none;
    margin: 0;
    padding: 1rem;
}

.btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: inline-block;
    font-size: inherit;
    color: inherit;
    background: #F5F5F5;
    text-decoration: none;
    border: solid 1px #F5F5F5;
    border-radius: 0.5rem;
    padding: 0.5rem 1rem;
    margin: 0 auto;
    min-width: 5rem;
    max-width: 10rem;
    cursor: pointer;
}

.btn:hover,
.btn:focus {
    background: rgba(255, 255, 255, 0.5);
}

/* Studio Microsite bottom navbar */
#bottom-menu-container {
    height: 90px;
    padding: 0 var(--thin-gutter);
    grid-template-columns: 1fr;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-items: center;
    position: fixed;
    bottom: -90px;
    width: 100%;
    z-index: 10000;
    pointer-events: none;
    -webkit-transition: bottom 0.3s ease;
    -o-transition: bottom 0.3s ease;
    transition: bottom 0.3s ease;
}

#bottom-menu-container.nav-up {
    bottom: 0;
    pointer-events: all;
}

#bottom-menu-container:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(242, 237, 231, 0.5);
    -webkit-backdrop-filter: blur(24px) brightness(1.2) contrast(1.2);
    backdrop-filter: blur(24px) brightness(1.2) contrast(1.2);
    z-index: -1;
}

#bottom-menu-container:before {
    -webkit-box-shadow: 0px 1px 10px -8px rgba(0,0,0,1);
    box-shadow: 0px 1px 10px -8px rgba(0,0,0,1);
}

@media screen and (min-width: 1519px) {
    .wider-inner {
        margin: 0 auto;
    }
}

@media screen and (min-width: 1920px) {
    .inner-hero-wrap {
        gap: 0 var(--medium-gutter);
    }

    .half-hero:not(.author) {
        padding: 0 var(--large-gutter) 0 0 !important;
    }

    .half-hero.borderless-image,
    .half-hero.borderless-image-gallery-right {
        padding: 0 var(--large-gutter)!important;
    }

    .half-hero.borderless-image.hero-map {
        padding: 0 var(--medium-gutter)!important;
    }

    .borderless-image figure,
    .hero-map .map-container {
        -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    }

    .half-hero.borderless-image .hero-text-container {
        padding: 3rem 0 0 var(--medium-gutter);
    }

    .half-hero figure,
    mappress-map.mapp-layout {
        border-radius: var(--rounded-corners)!important;
    }
}

/* @media screen and (max-width: 1920px) {
    p:not(footer p) {
        font-size: 1.8rem;
    }

    a:not(footer a),
    figcaption {
        font-size: 1.8rem;
    }

    .cta {
        padding: 1.2rem 2.2rem !important;
    }
} */
/* @media screen and (max-width: 1800px) {
    section.wider {
        width: 92%;
    }
} */
/* Privacy/Cookie policy styles */
.privacy-policy h1,
.cookie-policy h1 {
    font-size: clamp(3rem, calc(2.8rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 6rem);
    padding-left: 0;
}

.privacy-policy h2,
.cookie-policy h2 {
    font-size: clamp(2rem, calc(1.8rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 4.6rem);
}

.privacy-policy h3,
.cookie-policy h3 {
    font-size: clamp(2rem, calc(1.4rem + (100 - 80) * (100vw - 400px) / (2000 - 400)), 4.6rem);
}

/* padding override styles */
.padding-medium {
    padding: var(--medium-gutter)!important;
}
.padding-zero-tb {
    padding-top: 0!important;
    padding-bottom: 0!important;
}

.padding-zero-lr {
    padding-left: 0!important;
    padding-right: 0!important;
}

.padding-zero {
    padding: 0!important;
}

/* marign override styles */
.margin-zero-tb {
    margin-top: 0!important;
    margin-bottom: 0!important;
}

.margin-zero-lr {
    margin-left: 0!important;
    margin-right: 0!important;
}

.margin-zero {
    margin: 0!important;
}

/* testimonials drop down select menus */
.select-menu {
    /* max-width: 330px; */
    margin: 50px auto;
    line-height: 1;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.select-menu .select-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
    width: 220px;
    background: #fff;
    padding: 8px 16px;
    position: relative;
    font-size: 15px;
    height: 36px;
    font-weight: 400;
    border-radius: 100px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.select-menu .options {
    position: absolute;
    width: auto;
    overflow-y: auto;
    max-height: 295px;
    padding: 10px;
    margin-top: 10px;
    border-radius: 8px;
    background: #fff;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    animation-name: fadeInDown;
    -webkit-animation-name: fadeInDown;
    animation-duration: 0.35s;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.35s;
    -webkit-animation-fill-mode: both;
}

.select-menu .options li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    cursor: pointer;
    padding: 6px 0;
    border-radius: 8px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
}

.select-menu .options li a {
    background: none!important;
    border: none!important;
    color: #000!important;
}

.select-menu .options .option:hover {
    background: #f2f2f2;
}

.select-menu .options .option .option-text {
    font-size: 18px;
    color: #333;
}

.select-btn:after {
    content: '\203A';
    display: inline-block;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    font-size: 25px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}

.select-menu.active .select-btn:after {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.select-menu.active .options {
    display: block;
    opacity: 0;
    z-index: 10;
    animation-name: fadeInUp;
    -webkit-animation-name: fadeInUp;
    animation-duration: 0.4s;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.4s;
    -webkit-animation-fill-mode: both;
}

@media screen and (max-width: 2000px) {
    .author.half-hero h1 {
        min-width: 0;
    }

    .author figure {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }

    .author .hero-text-container {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }
}

@media screen and (max-width: 1500px) {
    .author figure {
        -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    }

    .author .hero-text-container {
        -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    }

    .four-card-pricing {
        padding: var(--medium-gutter) var(--large-gutter);
    }

    .four-card-pricing .card-container {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: var(--large-gutter);
        width: calc(100% + var(--large-gutter));
    }

    .four-card-pricing .card {
        -ms-flex-preferred-size: calc(50% - var(--large-gutter));
        flex-basis: calc(50% - var(--large-gutter));
    }
}

@media screen and (max-width: 1400px) {
    .four-card:not(.four-card-pricing) {
        padding: var(--thin-gutter);
    }

    .four-card:not(.four-card-pricing) .card-info .cta-container {
        width: 100%;
    }

    .borderless-image-right .inner-hero-wrap {
        height: 80%;
    }

    .infographic:not(.our-story) figure:nth-of-type(1),
    .infographic:not(.our-story) figure:nth-of-type(2) {
        -ms-flex-item-align: center;
        align-self: center;
    }
}

@media screen and (max-width: 1200px) {
    #pete-comparison .flex {
        gap: 2rem;
    }

    .author {
        padding: 0 var(--medium-gutter);
    }

    .author .inner-hero-wrap {
        gap: var(--medium-gutter);
    }

    .four-card .card-inner {
        -ms-flex-preferred-size: calc(33.33% - var(--medium-gutter));
        flex-basis: calc(33.33% - var(--medium-gutter));
    }

    .three-card-grid figure {
        padding: 3rem;
    }

    .infographic:not(.our-story) figure:nth-of-type(1) {
        -ms-flex-item-align: end;
        align-self: flex-end;
        margin-bottom: 2rem;
    }

    .infographic figure:nth-of-type(2) {
        -ms-flex-item-align: start;
        align-self: flex-start;
        margin-top: 2rem;
    }

    #footer-info {
        padding: 3rem;
    }

    #find-studio {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    #find-studio .cta {
        position: relative;
        margin-top: 2rem;
    }

    #find-studio .cta-border-outline:before {
        content: none;
    }

    .three-image-text-grid {
        grid-template-columns: 35% 5% 5% 35% 20%;
        grid-template-rows: 5vw auto 5vw auto;
    }

    .three-image-text-grid figure:nth-of-type(1) {
        grid-area: 1 / 4 / 3 / 6;
        margin: 0;
    }

    .three-image-text-grid figure:nth-of-type(2) {
        grid-area: 3 / 1 / 6 / 3;
        margin: 5vw 0 0 0;
    }

    .three-image-text-grid figure:nth-of-type(2) img {
        -o-object-position: 50% 35%;
        object-position: 50% 35%;
    }

    .three-image-text-grid figure:nth-of-type(3) {
        grid-area: 4 / 4 / 7 / 6;
        margin: 0;
    }

    .three-image-text-grid .p-cta {
        grid-area: 4 / 4 / auto / 6;
        margin: 0;
    }

    .three-image-text-grid .title-p {
        grid-area: 1 / 1 / 3 / 3;
    }

    .infographic.our-story .info-container {
        grid-area: 1 / 1 / 3 / 3;
    }

    .infographic.our-story .summary {
        grid-area: 1 / 4 / 2 / 7;
    }

    .infographic.our-story figure {
        grid-area: 2 / 4 / 3 / 7;
    }

    .infographic.our-story figure img {
        -o-object-position: 30% 50%;
        object-position: 30% 50%;
    }

    .home-hero {
        /* min-height: 80svh */
    }

    .home .hero-text-container {
        /* top: calc(40% + 45px) */
    }
}

@media screen and (max-width: 1024px) {
    .home-hero {
        min-height: 80svh;
    }

    .home .full-height-hero .gradient-container {
        position: absolute;
        height: 70%;
        bottom: 0;
        top: auto;
        left: 0;
        width: 100%;

        /* background: -o-linear-gradient(left, rgba(0,0,0,0.4) 0%,rgba(0,0,0,0) 100%) */
        /* background: -webkit-gradient(linear, left top, right top, from(rgba(0,0,0,0.4)),to(rgba(0,0,0,0))) */
        background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.8), rgba(0,0,0,0) 100%);
        background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.8)), to(rgba(0,0,0,0)));
        background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0,0,0,0) 100%);
        z-index: 1;
    }

    .gradient-blur > div,
    .gradient-blur:before,
    .gradient-blur:after {
        position: absolute;
        left: 0;
        bottom: 0;
        top: auto;
        height: 50%;
        width: 100%;
    }

    .gradient-blur:before {
        content: "";
        z-index: 1;
        -webkit-backdrop-filter: blur(64px);
        backdrop-filter: blur(64px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        from(rgba(0, 0, 0, 0)),
        color-stop(12.5%, rgba(0, 0, 0, 1)),
        color-stop(25%, rgba(0, 0, 0, 1)),
        color-stop(37.5%, rgba(0, 0, 0, 0))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 1) 12.5%,
        rgba(0, 0, 0, 1) 25%,
        rgba(0, 0, 0, 0) 37.5%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        from(rgba(0, 0, 0, 0)),
        color-stop(12.5%, rgba(0, 0, 0, 1)),
        color-stop(25%, rgba(0, 0, 0, 1)),
        color-stop(37.5%, rgba(0, 0, 0, 0))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 1) 12.5%,
        rgba(0, 0, 0, 1) 25%,
        rgba(0, 0, 0, 0) 37.5%
      );
    }

    .gradient-blur > div:nth-of-type(1) {
        z-index: 2;
        -webkit-backdrop-filter: blur(32px);
        backdrop-filter: blur(32px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(12.5%, rgba(0, 0, 0, 0)),
        color-stop(25%, rgba(0, 0, 0, 1)),
        color-stop(37.5%, rgba(0, 0, 0, 1)),
        color-stop(50%, rgba(0, 0, 0, 0))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 12.5%,
        rgba(0, 0, 0, 1) 25%,
        rgba(0, 0, 0, 1) 37.5%,
        rgba(0, 0, 0, 0) 50%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(12.5%, rgba(0, 0, 0, 0)),
        color-stop(25%, rgba(0, 0, 0, 1)),
        color-stop(37.5%, rgba(0, 0, 0, 1)),
        color-stop(50%, rgba(0, 0, 0, 0))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 12.5%,
        rgba(0, 0, 0, 1) 25%,
        rgba(0, 0, 0, 1) 37.5%,
        rgba(0, 0, 0, 0) 50%
      );
    }

    .gradient-blur > div:nth-of-type(2) {
        z-index: 3;
        -webkit-backdrop-filter: blur(16px);
        backdrop-filter: blur(16px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(25%, rgba(0, 0, 0, 0)),
        color-stop(37.5%, rgba(0, 0, 0, 1)),
        color-stop(50%, rgba(0, 0, 0, 1)),
        color-stop(62.5%, rgba(0, 0, 0, 0))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 25%,
        rgba(0, 0, 0, 1) 37.5%,
        rgba(0, 0, 0, 1) 50%,
        rgba(0, 0, 0, 0) 62.5%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(25%, rgba(0, 0, 0, 0)),
        color-stop(37.5%, rgba(0, 0, 0, 1)),
        color-stop(50%, rgba(0, 0, 0, 1)),
        color-stop(62.5%, rgba(0, 0, 0, 0))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 25%,
        rgba(0, 0, 0, 1) 37.5%,
        rgba(0, 0, 0, 1) 50%,
        rgba(0, 0, 0, 0) 62.5%
      );
    }

    .gradient-blur > div:nth-of-type(3) {
        z-index: 4;
        -webkit-backdrop-filter: blur(8px);
        backdrop-filter: blur(8px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(37.5%, rgba(0, 0, 0, 0)),
        color-stop(50%, rgba(0, 0, 0, 1)),
        color-stop(62.5%, rgba(0, 0, 0, 1)),
        color-stop(75%, rgba(0, 0, 0, 0))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 37.5%,
        rgba(0, 0, 0, 1) 50%,
        rgba(0, 0, 0, 1) 62.5%,
        rgba(0, 0, 0, 0) 75%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(37.5%, rgba(0, 0, 0, 0)),
        color-stop(50%, rgba(0, 0, 0, 1)),
        color-stop(62.5%, rgba(0, 0, 0, 1)),
        color-stop(75%, rgba(0, 0, 0, 0))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 37.5%,
        rgba(0, 0, 0, 1) 50%,
        rgba(0, 0, 0, 1) 62.5%,
        rgba(0, 0, 0, 0) 75%
      );
    }

    .gradient-blur > div:nth-of-type(4) {
        z-index: 5;
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(50%, rgba(0, 0, 0, 0)),
        color-stop(62.5%, rgba(0, 0, 0, 1)),
        color-stop(75%, rgba(0, 0, 0, 1)),
        color-stop(87.5%, rgba(0, 0, 0, 0))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 50%,
        rgba(0, 0, 0, 1) 62.5%,
        rgba(0, 0, 0, 1) 75%,
        rgba(0, 0, 0, 0) 87.5%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(50%, rgba(0, 0, 0, 0)),
        color-stop(62.5%, rgba(0, 0, 0, 1)),
        color-stop(75%, rgba(0, 0, 0, 1)),
        color-stop(87.5%, rgba(0, 0, 0, 0))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 50%,
        rgba(0, 0, 0, 1) 62.5%,
        rgba(0, 0, 0, 1) 75%,
        rgba(0, 0, 0, 0) 87.5%
      );
    }

    .gradient-blur > div:nth-of-type(5) {
        z-index: 6;
        -webkit-backdrop-filter: blur(2px);
        backdrop-filter: blur(2px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(62.5%, rgba(0, 0, 0, 0)),
        color-stop(75%, rgba(0, 0, 0, 1)),
        color-stop(87.5%, rgba(0, 0, 0, 1)),
        to(rgba(0, 0, 0, 0))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 62.5%,
        rgba(0, 0, 0, 1) 75%,
        rgba(0, 0, 0, 1) 87.5%,
        rgba(0, 0, 0, 0) 100%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(62.5%, rgba(0, 0, 0, 0)),
        color-stop(75%, rgba(0, 0, 0, 1)),
        color-stop(87.5%, rgba(0, 0, 0, 1)),
        to(rgba(0, 0, 0, 0))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 62.5%,
        rgba(0, 0, 0, 1) 75%,
        rgba(0, 0, 0, 1) 87.5%,
        rgba(0, 0, 0, 0) 100%
      );
    }

    .gradient-blur > div:nth-of-type(6) {
        z-index: 7;
        -webkit-backdrop-filter: blur(1px);
        backdrop-filter: blur(1px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(75%, rgba(0, 0, 0, 0)),
        color-stop(87.5%, rgba(0, 0, 0, 1)),
        to(rgba(0, 0, 0, 1))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 75%,
        rgba(0, 0, 0, 1) 87.5%,
        rgba(0, 0, 0, 1) 100%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(75%, rgba(0, 0, 0, 0)),
        color-stop(87.5%, rgba(0, 0, 0, 1)),
        to(rgba(0, 0, 0, 1))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 75%,
        rgba(0, 0, 0, 1) 87.5%,
        rgba(0, 0, 0, 1) 100%
      );
    }

    .gradient-blur:after {
        content: "";
        z-index: 8;
        -webkit-backdrop-filter: blur(0.5px);
        backdrop-filter: blur(0.5px);
        -webkit-mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(87.5%, rgba(0, 0, 0, 0)),
        to(rgba(0, 0, 0, 1))
      );
        -webkit-mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 87.5%,
        rgba(0, 0, 0, 1) 100%
      );
        mask-image: -webkit-gradient(
        linear,
        left bottom, left top,
        color-stop(87.5%, rgba(0, 0, 0, 0)),
        to(rgba(0, 0, 0, 1))
      );
        mask-image: linear-gradient(
        to top,
        rgba(0, 0, 0, 0) 87.5%,
        rgba(0, 0, 0, 1) 100%
      );
    }

    .home .hero-text-container p {
        width: 100%;
    }

    .home .hero-text-container {
        top: calc(50% + 45px);
    }

    p:not(footer p),
    a:not(footer a),
    figcaption,
    label {
        /* font-size: 1.6rem */
    }

    h4 {
        /* font-size: 1.8rem */
    }

    .complete figure {
        -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    }

    .complete figure img {
        -o-object-position: 65% 50%;
        object-position: 65% 50%;
    }
}

@media screen and (max-width: 991px) {
    .video-container {
        margin: var(--thin-gutter);
    }

    .three-card .card-inner .card-info {
        margin-top: 0;
    }

    .borderless-image-right .inner-hero-wrap {
        height: 60%;
    }

    .during-the-session .flex {
        gap: var(--medium-gutter);
    }

    .inner-hero-wrap {
        height: calc(100% - 70px);
    }

    .author .hero-text-container {
        padding-right: var(--medium-gutter);
    }

    .author figure {
        top: 70px;
        border-radius: 0 var(--rounded-corners) var(--rounded-corners) 0;
    }

    .infographic {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: auto auto 1fr;
        gap: 0 var(--medium-gutter);
    }

    .infographic.our-story {
        grid-template-columns: repeat(3, auto);
    }

    .infographic .info-container {
        grid-area: 1 / 1 / 3 / 4;
    }

    .infographic.our-story .info-container {
        grid-area: 1 / 1 / 3 / 4;
    }

    .infographic .summary {
        grid-area: 3 / 1 / auto / 3;
        margin: 5rem 0 0 0;
    }

    .infographic.our-story .summary {
        margin: 0 0 var(--medium-gutter) 0;
    }

    .infographic figure:nth-of-type(1) {
        grid-area: 1 / 3 / 2 / 4;
        align-self: flex-start;
    }

    .infographic figure:nth-of-type(2) {
        grid-area: 2 / 3 / auto / 4;
        margin-top: 0;

        /* align-self: flex-end */
    }

    .infographic figure:nth-of-type(3) {
        grid-area: 3 / 3 / auto / 4;
        position: relative;
        right: 0;
    }

    .infographic.our-story figure {
        grid-area: 2 / 4 / auto / 7;
    }

    .large-intro:not(.pemf-session) p {
        text-align: left;
        margin: 0;
        grid-area: 2 / 1 / auto / 5;
    }

    .search-container {
        /* justify-content: center */
    }

    .borderless-image {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;

        /* padding: 0 var(--thin-gutter)!important */
    }

    .half-hero.borderless-image {
        margin-bottom: 0;
    }

    .borderless-image .hero-text-container {
        max-width: none;
        min-width: 0;
        padding: 3rem 1rem 0 1rem;
    }

    .borderless-image-gallery-right {
        grid-template-columns: 1fr 0.6fr;
        grid-template-rows: 1fr 1fr 1fr;

        /* height: calc(100svh - var(--medium-gutter) *2) */
    }

    .borderless-image-gallery-right figure {
        border-radius: var(--rounded-corners) 0px 0px var(--rounded-corners);
    }

    .borderless-image-gallery-right .hero-text-container {
        grid-area: 1 / 1 / 4 / 2;
        padding-left: var(--medium-gutter);
    }

    .borderless-image-gallery-right figure:nth-of-type(1) {
        grid-area: 3 / 2 / 4 / 3;
    }

    .borderless-image-gallery-right figure:nth-of-type(2) {
        grid-area: 2 / 2 / 3 / 3;
    }

    .borderless-image-gallery-right figure:nth-of-type(3) {
        grid-area: 1 / 2 / 2 / 3;
    }

    .image-side-below-text {
        grid-template-columns: 40% 40% calc(20% - var(--medium-gutter) *2);
        gap: var(--medium-gutter);
    }

    .image-side-below-text-info {
        margin-left: 0;
        grid-area: 1 / 2 / 1 / 4;
    }

    .image-side-below-text-info p {
        padding-bottom: 0;
    }

    .image-side-below-text figure:nth-of-type(1) {
        align-self: flex-start;
        height: 55%;
        grid-area: 1 / 1 / 2 / 2;
    }

    .image-side-below-text figure:nth-of-type(2) {
        margin-left: 0;
        grid-area: 2 / 2 / 3 / 4;
    }

    .half-hero {
        margin: 70px auto 0 auto;
        padding: 0;

        /* grid-template-columns: 1fr 50% */
    }

    .pemfit-vision,
    .infographic.our-story {
        margin-top: 70px;
    }

    .half-hero h1 {
        grid-area: 1 / 1 / 4 / 2;
        min-width: 0;
    }

    .full-height-hero {
        padding: 70px var(--thin-gutter) 0 var(--thin-gutter);
    }

    .home-hero figure {
        height: calc(100% - 70px);
    }

    .large-intro {
        margin-top: 70px;
    }

    .quote-box {
        grid-area: 3 / 2 / 4 / 3;
        margin: -3rem 0!important;
        width: 100%;
        min-width: 0;
        max-width: none;
        border-radius: 0 0 var(--rounded-corners) var(--rounded-corners);
    }

    .featured-image-container,
    .quote-box {
        min-width: 250px;
    }

    .quote-box p {
        font-size: 1.8rem;
    }

    .card-grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .three-image-grid,
    .three-card-grid .card-container {
        padding: 0 var(--thin-gutter);
    }

    .map-info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .map {
        height: 450px;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .essential-info {
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .affiliate-logos {
        width: 90%;
    }

    #footer-links ul {
        margin-right: auto;
    }

    .right-info {
        padding: var(--large-gutter);
    }

    .home-hero {
        /* height: 60svh */
    }

    .home-hero .hero-text-container {
        position: relative;
    }

    .full-height-hero figure {
        height: calc(100% - calc(var(--thin-gutter) + 70px));
    }
}

@media screen and (max-width: 767px) {
    .author .hero-text-container {
        padding: var(--medium-gutter);
    }

    .author figure {
        position: relative;
        padding: 35%;
        border-radius: var(--rounded-corners);
        top: 0;
    }

    .image-text-cascade {
        padding: var(--medium-gutter);
    }

    .cascade-inner .flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .cascade-inner .flex figure {
        padding-bottom: 0;
    }

    .cascade-inner .flex figure img {
        position: relative;
    }

    .page-template-studio-microsite-v2 .cascade-inner .flex div {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .page-template-studio-microsite-v2 .cascade-inner .flex figure {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .four-card .card-inner {
        -ms-flex-preferred-size: calc(50% - var(--medium-gutter));
        flex-basis: calc(50% - var(--medium-gutter));
    }

    .hero-map .hero-text-container {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .hero-map .map-container {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    mappress-map.mapp-layout {
        aspect-ratio: 100 / 90!important;
    }

    .gallery-grid.grid {
        display: -webkit-box!important;
        display: -ms-flexbox!important;
        display: flex!important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 100%;
    }

    .gallery-grid figure {
        padding-bottom: 70%;
    }

    .gallery-grid figure:nth-of-type(4) {
        padding-bottom: 100%;
    }

    .three-card {
        padding-top: var(--large-gutter);
    }

    .three-card .card-container {
        gap: var(--large-gutter);
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }

    .three-card .card-inner p {
        margin-bottom: 3rem;
    }

    #pete-comparison {
        margin-top: 0;
        padding: var(--large-gutter);
    }

    .right-info.small figure {
        max-width: 300px;
        margin: 0 auto;
    }

    .right-info p.summary {
        text-align: center;
    }

    .large-intro.pemf-session p {
        grid-area: 2 / 7 / 3 / 25;
        text-align: left;

        /* margin-top: 3rem */
    }

    .large-intro.pemf-session h1 {
        grid-area: 1 / 7 / 2 / 25;
        text-align: left;
    }

    .large-intro.pemf-session figure:nth-of-type(1) {
        margin-right: 3rem;
    }

    .large-intro.pemf-session figure:nth-of-type(2) {
        grid-area: 4 / 19 / 8 / 25;
        margin-top: 3rem;
    }

    body.page-template-wellness-A-Z .half-hero,
    body.page-template-wellness-A-Z-v2 .half-hero,
    .half-hero.borderless-image-right {
        padding: var(--thin-gutter);
    }

    .borderless-image-right {
        height: auto;
    }

    .borderless-image figure,
    .half-hero.borderless-image-right figure {
        border-radius: var(--rounded-corners);
        padding-bottom: 55%;
    }

    .author.borderless-image figure {
        padding-bottom: 80%!important;
    }

    mappress-map.mapp-layout {
        border-radius: var(--rounded-corners)!important;
    }

    .hero-map .map-container {
        padding-bottom: 0;
    }

    body.page-template-wellness-A-Z .half-hero,
    body.page-template-wellness-A-Z-v2 .half-hero {
        height: auto;
    }

    .borderless-image .hero-text-container {
        width: 100%;
    }

    .complete .flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .complete figure {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .complete div {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .page-template-what-is-a-pemf-session section {
        padding: var(--large-gutter) var(--medium-gutter);
    }

    .right-info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: var(--thin-gutter);
    }

    .right-info .info-container {
        padding: 0 var(--thin-gutter);
    }

    .inner-hero-wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0;
    }

    .borderless-image-right .hero-text-container {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: auto;
        padding: var(--large-gutter) var(--medium-gutter);
        min-width: 0;
    }

    .faq-hero .hero-text-container {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        position: relative;
        top: 0;
    }

    .faq-hero .faq-accordion {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .borderless-image-right figure {
        padding-bottom: 60%;
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        border-radius: 0;
    }

    .large-intro:not(.pemf-session) h1 {
        margin-top: 5%;
    }

    .large-intro:not(.pemf-session) figure:nth-of-type(1) {
        margin-top: -30%;
    }

    .borderless-image-gallery-right .hero-text-container h1,
    .borderless-image-gallery-right .hero-text-container ul:not(.wp-block-list),
    .borderless-image-gallery-right .hero-text-container .post-info {
        width: 58%;
    }

    :root {
        --rounded-corners: 1.5rem;
    }

    section.wider {
        width: auto;
        margin: var(--medium-gutter);
        padding: 6rem 8%;
    }

    .home-hero figure:after {
        width: 100%;
    }

    .three-card {
        max-width: 500px;
    }

    .three-card .card-inner figure {
        height: auto;
        padding-bottom: 80%;
    }

    .three-image-text-grid {
        display: -webkit-box!important;
        display: -ms-flexbox!important;
        display: flex!important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 2rem;
        padding: 50px var(--large-gutter);
    }

    .three-image-text-grid figure {
        padding-bottom: 60%;
        margin: 0 !important;
    }

    .three-image-text-grid figure:nth-of-type(2) {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .three-image-text-grid figure:nth-of-type(3) {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }

    .three-image-text-grid p:not(.title-p p) {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .left-info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: calc(var(--medium-gutter) + var(--thin-gutter));
    }

    .info-container,
    .card-grid {
        width: 100%;
    }

    .card-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .card-container:not(.four-card .card-container) {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: var(--large-gutter);
    }

    .card {
        min-width: 220px;
        margin: 0 var(--medium-gutter);
    }

    .four-card-pricing .card-container {
        width: 100%;
    }

    .four-card-pricing .card {
        margin: 0;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }

    .card-large {
        min-height: 310px;
    }

    .half-hero {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        padding: var(--thin-gutter);
        height: auto;
    }

    .half-hero h1 {
        grid-area: 1 / 1 / auto / 2;

        /* font-size: clamp(2.6rem, calc(2.7rem + (90 - 20) * (100vw - 400px) / (2000 - 400)), 7.5rem); */
        /* font-size: clamp(3.6rem, calc(2.7rem + (90 - 20) * (100vw - 400px) / (2000 - 400)), 7.5rem) */
        white-space: pre-line;
    }

    .half-hero h1 em {
        /* font-size: clamp(2.7rem, calc(2.7rem + (80 - 2) * (100vw - 400px) / (2000 - 400)), 8rem); */
        /* font-size: clamp(3.9rem, calc(2.7rem + (80 - 2) * (100vw - 400px) / (2000 - 400)), 8rem) */
    }

    .featured-image-container {
        grid-area: 2 / 1 / 3 / 2;
    }

    .quote-box {
        grid-area: 3 / 1 / auto / 2;
    }

    .affiliate-logos {
        width: 100%;
    }

    .home-hero img.cover-fit {
        -o-object-position: 70% 50%;
        object-position: 70% 50%;
    }

    .borderless-image-gallery-right {
        grid-template-columns: 1fr 40%;
        grid-template-rows: repeat(4, auto);
        padding-left: 0;
    }

    .borderless-image-gallery-right .hero-text-container {
        grid-area: 1 / 1 / 4 / 3;
        min-width: 0;
        padding: var(--medium-gutter);
    }

    .borderless-image-gallery-right .hero-text-container h1 {
        margin: 3rem 0;
    }

    .borderless-image-gallery-right figure:nth-of-type(1) {
        grid-area: 4 / 2 / 5 / 3;
    }

    .borderless-image-gallery-right figure:nth-of-type(2) {
        grid-area: 4 / 1 / 5 / 2;
        margin: 0;
        border-radius: 0 var(--rounded-corners) var(--rounded-corners) 0;
    }

    .borderless-image-gallery-right figure:nth-of-type(3) {
        grid-area: 1 / 2 / 2 / 3;
        margin: 0;
    }

    .infographic {
        padding: var(--large-gutter) var(--medium-gutter);
    }

    .infographic.our-story.grid {
        display: -webkit-box!important;
        display: -ms-flexbox!important;
        display: flex!important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: var(--medium-gutter);
        padding: var(--large-gutter);
    }

    .infographic .info-container p:nth-of-type(1) {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .infographic .info-container h2 {
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }

    .infographic .info-container p {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
    }

    .infographic .info-container figure:nth-of-type(1) {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .infographic.our-story .summary {
        text-align: center;
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
        margin-bottom: 3rem;
    }

    .infographic.our-story figure {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .three-card .card-inner .card-info {
        padding: var(--medium-gutter);
        margin-top: 0;
    }
}

@media screen and (max-width: 600px) {
    .three-card {
        padding: var(--large-gutter);
    }

    .four-card .card-container {
        width: 100%;
        gap: var(--medium-gutter) 0;
    }

    .four-card .card-info .cta-container {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }

    .four-card .card-inner {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }

    .before-the-session h2 {
        width: auto;
    }

    .large-intro.pemf-session p {
        grid-area: 4 / 1 / 6 / 25;
    }

    .large-intro.pemf-session h1 {
        font-size: 4rem;
        grid-area: 1 / 8 / 2 / 25;
        font-size: (5rem, calc(4.1rem + (100 - 10) * (100vw - 400px) / (2000 - 400)), 14rem);
    }

    .large-intro.pemf-session h1 em {
        font-size: 4.3rem;
    }

    .large-intro.pemf-session figure:nth-of-type(1) {
        grid-area: 1 / 1 / 4 / 7;
    }

    .large-intro.pemf-session figure:nth-of-type(2) {
        grid-area: 2 / 8 / 3 / 21;
        margin: 0 0 3rem 0;
    }

    .page-template-what-is-a-pemf-session .flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .during-the-session figure {
        position: relative;
        top: 0;
    }

    .page-template-what-is-a-pemf-session .flex figure {
        padding-bottom: 60%;
    }

    .cascade-one .flex:nth-of-type(1) figure,
    .cascade-one .flex:nth-of-type(3) figure,
    .cascade-two .flex:nth-of-type(2) figure {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }

    .cascade-one .flex:nth-of-type(1) div,
    .cascade-one .flex:nth-of-type(3) div,
    .cascade-two .flex:nth-of-type(2) div {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }

    .right-info {
        margin-top: 190px;
        padding: 0 var(--thin-gutter);
    }

    .infographic.grid {
        display: -webkit-box!important;
        display: -ms-flexbox!important;
        display: flex!important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 5rem;
        padding-bottom: 320px;
    }

    .infographic.our-story.grid {
        padding-bottom: var(--large-gutter);
    }

    .infographic .summary {
        text-align: center;
        margin: 0;
    }

    .infographic figure:nth-of-type(1) {
        margin: 0 auto;
    }

    .infographic figure:nth-of-type(2),
    .infographic figure:nth-of-type(3) {
        max-width: 220px;
    }

    .infographic figure:nth-of-type(3) {
        position: absolute;
        z-index: 10;
        height: 400px;
        width: 220px;
        right: auto;
        -ms-flex-item-align: center;
        align-self: center;
        bottom: -130px;
        top: auto;
    }

    .conditions {
        padding: var(--thin-gutter);
        grid-template-columns: 1fr;
    }

    .borderless-image-gallery-right .hero-text-container h1,
    .borderless-image-gallery-right .hero-text-container ul:not(.wp-block-list),
    .borderless-image-gallery-right .hero-text-container .post-info {
        width: 100%;
    }

    .secondary-info {
        width: 100%;
        left: auto;
    }

    .borderless-image-gallery-right .hero-text-container {
        grid-area: 2 / 1 / 4 / 3;
    }

    .borderless-image-gallery-right figure:nth-of-type(3) {
        grid-area: 1 / 1 / 2 / 3;
        border-radius: 0;
        height: 250px;
    }

    .image-side-below-text {
        display: -webkit-box!important;
        display: -ms-flexbox!important;
        display: flex!important;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        grid-template-columns: 40% 40% calc(20% - var(--medium-gutter) *2);
        gap: var(--medium-gutter);
        padding: 0 var(--thin-gutter);
    }

    .image-side-below-text figure {
        margin: 0!important;
        padding-bottom: 80%!important;
    }

    .image-side-below-text div,
    .image-side-below-text p {
        margin: 0;
    }

    .image-side-below-text-info {
        padding: 0 var(--medium-gutter);
    }

    .half-hero {
        margin: 60px auto;

        /* padding: 0 */
    }

    .home-hero {
        padding: 60px var(--thin-gutter) 0 var(--thin-gutter);
        min-height: 50svh;
    }

    .home-hero figure {
        height: calc(100% - 60px);
    }

    .hero-text-container h1 {
        margin: 0 auto 6rem auto;
    }

    .home .hero-text-container {
        position: relative;
        padding: var(--medium-gutter);
        top: 0;
        margin-top: -120px;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;

        /* text-align: center */
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .home .hero-text-container p {
        color: #000;
    }

    .pemfit-vision,
    .infographic.our-story {
        margin-top: 60px;
    }

    .home-hero figure:after {
        content: none;
    }

    .home-hero img.cover-fit {
        -o-object-position: 50% 50%;
        object-position: 50% 50%;
    }

    .home-hero .hero-text-container p {
        min-width: 0;
        width: auto;
    }

    .home-hero img.cover-fit {
        -o-object-position: 70% 50%;
        object-position: 70% 50%;
    }

    .large-intro {
        margin-top: 60px;
    }

    .home-hero .hero-text-container {
        width: calc(85% + var(--large-gutter));
        min-width: 280px;
        margin-left: auto;
        margin-right: auto;
        border-radius: var(--rounded-corners);
        text-align: center;
        padding: var(--large-gutter);
        -webkit-backdrop-filter: blur(2px) brightness(0.7);
        backdrop-filter: blur(2px) brightness(0.7);
    }

    .home-hero .hero-text-container h1 {
        margin: 0 auto 3rem auto;
    }

    .home-hero .cta-container {
        width: 100%;
    }

    .centered-info {
        padding-left: 3rem;
        padding-right: 3rem;
    }

    .review-score {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 1rem;
    }

    .studio-hero-info {
        width: 88%;
    }

    .affiliate-logos {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 4rem;
        padding: 6rem;
    }

    .affiliate-logos figure {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 130px;
    }
}

@media screen and (max-width: 525px) {
    .large-intro:not(.pemf-session) h1 {
        margin-top: 7%;
    }

    .large-intro:not(.pemf-session) figure:nth-of-type(2) {
        margin-top: -50%;
    }

    .large-intro:not(.pemf-session) p {
        grid-area: 3 / 1 / auto / 7;
        margin-top: 3rem;
    }
}

@media screen and (max-width: 480px) {
    .three-card,
    .infographic.our-story.grid {
        padding: var(--medium-gutter);
    }

    .four-card-pricing {
        padding: var(--thin-gutter);
    }

    .large-intro.pemf-session h1 {
        grid-area: 1 / 1 / 2 / 25;
    }

    .large-intro.pemf-session figure {
        min-width: 0;
    }

    .large-intro.pemf-session figure:nth-of-type(1) {
        grid-area: 2 / 1 / 4 / 13;
    }

    .large-intro.pemf-session figure:nth-of-type(2) {
        grid-area: 2 / 13 / 4 / 25;
    }

    .large-intro.pemf-session figure {
        padding-bottom: 130%;
        margin: 0!important;
    }

    .large-intro.pemf-session p {
        margin-top: 3rem;
    }

    .large-intro.pemf-session figure img {
        position: absolute;
        height: 100%;
    }

    #find-studio:before {
        font-size: 5rem;
        white-space: normal;
    }

    .large-intro {
        padding: 60px var(--medium-gutter) 0 var(--medium-gutter);
    }

    .large-intro:not(.pemf-session) figure:nth-of-type(2) {
        margin-left: 0;
        margin-top: -30%;
    }

    .cta-container {
        width: 100%;
    }

    .full-height-hero .hero-text-container {
        width: calc(85% + 2rem);
        padding: 2rem;
    }

    .full-height-hero .hero-text-container h1 {
        font-size: clamp(5.1rem, calc(6.15rem + (250 - 10) * (100vw - 400px) / (2000 - 400)), 14rem);
    }

    .full-height-hero .hero-text-container h1 em {
        font-size: clamp(5.15rem, calc(6.3rem + (260 - 5) * (100vw - 400px) / (2000 - 400)), 14.9rem);
    }

    .info-container .cta {
        width: 100%;
    }

    .card-grid {
        grid-template-columns: 1fr;
    }

    .affiliate-logos {
        padding: 2rem;
    }

    .affiliate-logos figure {
        min-width: 100px;
    }

    .cta-container {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .three-image-text-grid {
        padding: var(--large-gutter) var(--medium-gutter);
    }
}

@media screen and (max-width: 400px) {
    .cta-container {
        width: 100%!important;
    }
}

@media screen and (max-width: 320px) {
    :root {
        --rounded-corners: 1rem;
    }
}