@import url("https://fonts.googleapis.com/css?family=Raleway:300,400,500,600,700&display=swap");
@keyframes heroOverFade {
    0% {
        opacity: 0
    }

    12.5% {
        opacity: 1
    }

    25% {
        opacity: 1
    }

    37.5% {
        opacity: 0
    }

    62.5% {
        opacity: 0
    }

    75% {
        opacity: 1
    }

    87.5% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

body {
    font-family: "Raleway";
    font-size: 20px;
    color: #58595b;
    overflow-x: hidden
}

.dblue {
    color: #016bad
}

.red {
    color: #eb2228
}

section {
    padding: 4em 1em;
    position: relative
}

section .inner {
    position: relative
}

.centered {
    text-align: center
}

h1,h2 {
    color: #2cabe2;
    font-weight:bold!important;
    font-family:'Raleway'!important;
}

img.section-icon {
    max-width: 40px;
    width: 100%;
    margin: 0 auto
}

img.th-icon {
    max-width: 70px;
    width: 100%;
    margin: 0 auto;
    display: block
}

.section-image {
    position: absolute;
    z-index: -2
}

.section-image img {
    width: 100%
}

.section-image.left-centered {
    width: 45vw;
    max-width: 700px;
    left: -17%;
    top: 16%
}

@media only screen and (max-width: 768px) {
    .section-image.left-centered {
        position:relative;
        left: inherit;
        top: inherit;
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
        grid-row: 3/4
    }
}

.section-image.top-right {
    width: 45vw;
    max-width: 700px;
    right: -17%;
    top: -50%
}

@media only screen and (max-width: 768px) {
    .section-image.top-right {
        position:relative;
        right: inherit;
        top: inherit;
        width: 100%;
        max-width: 400px;
        margin: 0 auto
    }
}

body {
    margin: 0
}

.parallax {
    position: absolute;
    overflow: hidden
}

@media only screen and (max-width: 768px) {
    .parallax {
        transform:none!important
    }
}

.parallax img {
    will-change: transform
}

.parallax-neg {
    position: absolute;
    overflow: hidden
}

@media only screen and (max-width: 768px) {
    .parallax-neg {
        transform:none!important
    }
}

.parallax-neg img {
    will-change: transform
}

#hero.desktop {
    position: relative;
    padding: 0;
    align-items: center;
    background: #000;
    display: grid;
    z-index: 0
}

@media only screen and (max-width: 768px) {
    #hero.desktop {
        display:none
    }
}

#hero.desktop .bgUnder {
    background-image: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/heroUnder.jpg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 1400px;
    height: 100%;
    display: grid;
    position: absolute;
    left: 50%;
    margin-left: -700px;
    pointer-events: none
}

#hero.desktop .bgOver {
    background-image: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/heroOver.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 1237px;
    height: 100%;
    display: grid;
    position: absolute;
    background-position: right;
    opacity: 0;
    animation: heroOverFade 8s ease-in-out infinite;
    pointer-events: none
}

#hero.desktop .inner {
    position: relative;
    z-index: 3;
    max-width: 1080px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    width: 100%;
    margin: 2em auto 0
}

#hero.desktop .inner.plans {
    max-width: 720px;
    grid-gap: 1em;
    margin: 2em auto;
    z-index: 3
}

#hero.desktop .inner h1 {
    color: #fff;
    font-size: 36px;
    margin-bottom: 1em;
    grid-column: 1;
    font-family: 'Raleway';
    font-weight: bold;
}

#hero.desktop .inner p {
    color: #fff;
    font-size: 1.2em;
    line-height: 1.6;
    margin-bottom: 2em;
    grid-column: 1;
    max-width: 500px
}

#hero.desktop .inner .button.hero-cta {
    grid-column: 1;
    justify-self: start
}

#hero.desktop .plan {
    background: #fff;
    border: 4px solid #2cabe2;
    padding: 1em;
    border-radius: 2em;
    display: grid;
    justify-items: center;
    grid-template-rows: repeat(5,auto) 1fr
}

#hero.desktop .plan p {
    color: #231f20
}

#hero.desktop .plan h3.plan-name {
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Raleway'!important;
}

#hero.desktop .plan.plan-basic {
    color: #2cabe2
}

#hero.desktop .plan.plan-advanced {
    border-color: #016bad;
    color: #016bad
}

#hero.desktop .plan.plan-advanced ul.plan-features {
    display: grid;
    grid-template-columns: 1fr 1fr
}

#hero.desktop .plan.plan-advanced h3 {
    color: #016bad
}

#hero.desktop .plan p.plan-subtitle {
    text-transform: uppercase;
    margin: 0 auto;
    color: #231f20;
    font-weight: 500;
    text-align: center;
    border-bottom: 1px solid #2cabe2;
    padding-bottom: .4em;
    margin-bottom: .4em;
    font-size: 1.1em
}

#hero.desktop .plan .plan-price {
    text-align: center;
    line-height: 1.5em;
    margin-top: 1em
}

#hero.desktop .plan .plan-price .price-amount {
    font-size: 2.8em
}

#hero.desktop .plan .plan-price .price-term {
    font-size: .7em
}

#hero.desktop .plan p.price-note {
    font-size: .7em;
    margin: .5em 0 1em;
    color: #2cabe2
}

#hero.mobile {
    position: relative;
    padding: 0;
    align-items: center;
    background: #074063;
    display: none
}

@media only screen and (max-width: 768px) {
    #hero.mobile {
        display:grid
    }
}

#hero.mobile .bgUnder {
    background-image: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/heroUnder.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 240px;
    display: grid;
    position: relative;
    pointer-events: none
}

#hero.mobile .bgOver {
    background-image: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/heroOver.jpg);
    background-size: 51.5%;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    display: grid;
    position: absolute;
    background-position: right;
    opacity: 0;
    animation: heroOverFade 8s ease-in-out infinite;
    pointer-events: none
}

@media only screen and (max-width: 420px) {
    #hero.mobile .bgOver {
        background-size:contain;
        left: 59px
    }
}

#hero.mobile .inner {
    position: relative;
    z-index: 2;
    max-width: 1080px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    width: 100%;
    padding: 0 1em;
    box-sizing: border-box
}

#hero.mobile .inner.plans {
    max-width: 720px;
    grid-gap: 1em;
    margin: 2em auto;
    font-size: .7em;
    grid-template-columns: 1fr 1fr
}

#hero.mobile .inner h1 {
    color: #fff;
    font-size: 36px;
    margin-bottom: 1em;
    grid-column: 1
}

#hero.mobile .inner p {
    color: #fff;
    font-size: 1.2em;
    line-height: 1.6;
    margin: 1em 0;
    grid-column: 1;
    max-width: 500px
}

#hero.mobile .inner .button.hero-cta {
    grid-column: 1;
    justify-self: start
}

#hero.mobile .plan {
    background: #fff;
    border: 4px solid #2cabe2;
    padding: 1em;
    border-radius: 2em;
    display: grid;
    justify-items: center;
    grid-template-rows: repeat(5,auto) 1fr
}

#hero.mobile .plan p {
    color: #231f20
}

#hero.mobile .plan h3.plan-name {
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase
}

#hero.mobile .plan.plan-basic {
    color: #2cabe2
}

#hero.mobile .plan.plan-advanced {
    border-color: #016bad;
    color: #016bad
}

#hero.mobile .plan.plan-advanced ul.plan-features {
    display: grid;
    grid-template-columns: 1fr 1fr
}

#hero.mobile .plan.plan-advanced h3 {
    color: #016bad
}

#hero.mobile .plan p.plan-subtitle {
    text-transform: uppercase;
    margin: 0 auto;
    color: #231f20;
    font-weight: 500;
    text-align: center;
    border-bottom: 1px solid #2cabe2;
    padding-bottom: .4em;
    margin-bottom: .4em;
    font-size: 1.1em
}

#hero.mobile .plan .plan-price {
    text-align: center;
    line-height: 1.5em;
    margin-top: 1em
}

#hero.mobile .plan .plan-price .price-amount {
    font-size: 2.8em
}

#hero.mobile .plan .plan-price .price-term {
    font-size: .7em
}

#hero.mobile .plan p.price-note {
    font-size: .7em;
    margin: .5em 0 1em;
    color: #2cabe2
}

#intro .inner {
    grid-gap: 1em
}

#intro .inner p {
    max-width: 390px;
    margin: .5em auto
}

.inner {
    max-width: 1400px;
    margin: 0 auto;
    display: grid
}

#why-tests-matter {
    padding-top: 50px
}

#why-tests-matter .inner {
    max-width: 650px
}

#why-tests-matter .inner img.section-icon {
    margin: 0 auto
}

#why-tests-matter .inner .row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    grid-gap: 1em;
    font-size: 1em
}

@media only screen and (max-width: 768px) {
    #why-tests-matter .inner .row {
        font-size:.8em;
        grid-template-columns: 2fr 3fr
    }
}

@media only screen and (max-width: 460px) {
    #why-tests-matter .inner .row {
        grid-template-columns:1fr;
        text-align: center
    }

    #why-tests-matter .inner .row img {
        max-width: 220px
    }
}

#why-tests-matter .inner .row p {
    margin: 0
}

#how-it-works .inner .content-block {
    max-width: 500px;
    width: 100%;
    margin: 0 auto
}

#how-it-works .inner ol {
    margin: 0 auto;
    max-width: 650px;
    width: 100%;
    list-style: none;
    counter-reset: number;
    padding-left: 0
}

#how-it-works .inner ol li {
    counter-increment: number;
    display: flex;
    align-items: flex-start;
    gap: 1em;
    margin-bottom: 1em;
    font-size: 24px;
    position: relative;
    align-items: center;
    font-weight: 500
}

#how-it-works .inner ol li:before {
    content: counter(number);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
    font-weight: 400;
    width: 1.5em;
    height: 1.5em;
    min-width: 1.5em;
    min-height: 1.5em;
    border: 6px solid #016bad;
    border-radius: 100%;
    color: #2cabe2;
    margin-right: .4em;
    background: #fff;
    vertical-align: middle;
    text-align: center;
    box-sizing: border-box;
    line-height: 1em
}

#measurable-health .inner img.placeholder {
    max-width: 500px;
    margin: 0 auto;
    width: 100%
}

#plans.plans {
    position: relative
}

#plans.plans h2 {
    margin-bottom: 75px;
    font-size: 32px
}

#plans.plans .inner {
    display: grid;
    grid-gap: 1em;
    grid-template-columns: 2fr 3fr 2fr;
    z-index: 2;
    position: relative;
    align-items: center
}

@media only screen and (max-width: 768px) {
    #plans.plans .inner {
        grid-template-columns:1fr
    }
}

#plans.plans .inner .plan {
    background: #fff;
    border: 4px solid #2cabe2;
    padding: 1em;
    border-radius: 2em;
    display: grid;
    justify-items: center;
    grid-template-rows: repeat(5,auto) 1fr;
    box-shadow: 0 3px 5px rgb(0 0 0 / .3764705882);
    position: relative;
    transition: all 0.15s linear;
    top: 0;
    left: 0;
    right: 0
}

#plans.plans .inner .plan:hover {
    top: 3px;
    box-shadow: 0 0 1px rgb(0 0 0 / .3764705882);
    transition: all 0.5s linear
}

#plans.plans .inner .plan:nth-of-type(1) {
    box-shadow: 3px 3px 5px rgb(0 0 0 / .3764705882);
    transition: all 0.15s linear
}

#plans.plans .inner .plan:nth-of-type(1):hover {
    top: 3px;
    left: 3px;
    box-shadow: 0 0 1px rgb(0 0 0 / .3764705882);
    transition: all 0.5s linear
}

#plans.plans .inner .plan:nth-of-type(3) {
    box-shadow: -3px 3px 5px rgb(0 0 0 / .3764705882);
    transition: all 0.15s linear
}

#plans.plans .inner .plan:nth-of-type(3):hover {
    top: 3px;
    right: 3px;
    box-shadow: 0 0 1px rgb(0 0 0 / .3764705882);
    transition: all 0.5s linear
}

#plans.plans .inner .plan h3.plan-name {
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase
}

#plans.plans .inner .plan.plan-basic {
    color: #2cabe2
}

#plans.plans .inner .plan.plan-advanced {
    border-color: #016bad;
    color: #016bad
}

#plans.plans .inner .plan.plan-advanced ul.plan-features {
    display: grid;
    grid-template-columns: 1fr 1fr
}

#plans.plans .inner .plan.plan-advanced h3 {
    color: #016bad
}

#plans.plans .inner .plan.plan-followup {
    border-color: #074063;
    color: #074063
}

#plans.plans .inner .plan p.plan-subtitle {
    text-transform: uppercase;
    margin: 0 auto;
    color: #231f20;
    font-weight: 500;
    text-align: center;
    border-bottom: 1px solid #2cabe2;
    padding-bottom: 1em;
    margin-bottom: 1em;
    font-size: 1.1em
}

#plans.plans .inner .plan .plan-price {
    text-align: center;
    line-height: 1.5em;
    margin-top: 1em
}

#plans.plans .inner .plan .plan-price .price-amount {
    font-size: 2.8em
}

#plans.plans .inner .plan .plan-price .price-term {
    font-size: .7em
}

#plans.plans .inner .plan p.price-note {
    font-size: .9em
}

#plans.plans .inner .plan ul.plan-features {
    color: #231f20;
    font-size: .7em;
    list-style: none;
    padding: 0;
    text-align: center
}

#plans.plans .inner .plan ul.plan-features li {
    padding-bottom: .15em;
    margin-bottom: .15em;
    border-bottom: 1px solid lightgray
}

a {
    text-decoration: none;
    display: inline-block
}

a:has(.button) {
    text-decoration: none
}

.button {
    background: #eb2228;
    border: 0;
    color: #fff;
    font-weight: 700;
    border-radius: 2em;
    font-size: 18px;
    padding: .6em 1em;
    box-shadow: 0 2px 5px rgb(0 0 0 / .3137254902);
    top: -2px;
    position: relative;
    transition: 0.2s all linear;
    cursor: pointer
}

.button:hover {
    background-color: #074063;
    box-shadow: 0 0 2px rgb(0 0 0 / .3137254902);
    top: 0;
    transition: 0.2s all linear
}

.masked-1 {
    position: relative;
    width: 100%;
    text-align: center;
    margin: 2em 0;
    max-width: 475px;
    margin-left: auto;
    margin-right: auto
}

.masked-1::before {
    content: "";
    position: absolute;
    top: -10px;
    left: -10px;
    width: 100%;
    height: 100%;
    background-image: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/redSteth.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
    opacity: .6;
    pointer-events: none
}

.masked-1::after {
    content: "";
    position: absolute;
    bottom: -10px;
    right: -10px;
    width: 100%;
    height: 100%;
    background-image: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/blueSteth.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
    opacity: .6;
    pointer-events: none
}

.masked-1 img {
    position: relative;
    z-index: 2;
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
    height: auto;
    -webkit-mask: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/mask.svg) no-repeat center/contain;
    mask: url(https://toward.health/wp-content/plugins/ScreeningPlugin/assets/css/../img/mask.svg) no-repeat center/contain
}

.bubble-background {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 120%;
    max-width: 1800px;
    height: 120%;
    z-index: -1;
    display: flex;
    align-items: center;
    justify-content: center
}

@media only screen and (max-width: 768px) {
    .bubble-background {
        display:none
    }
}

.bubble-background img {
    width: 100%;
    object-fit: cover;
    object-position: center
}

.dotted-line {
    position: absolute;
    z-index: 1;
    width: 1140px;
    margin: 0 auto;
    left: 50%;
    margin-left: -572px;
    height: 0;
    top: 0;
    overflow: hidden;
    transition: height 0.6s ease-out;
    pointer-events: none
}

.dotted-line img.dotted-icon {
    width: 100%;
    height: auto;
    display: block;
    pointer-events: none
}

/*# sourceMappingURL=theme.css.map */
