.pg-index {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    gap: 2rem;
}

.pg-index * {
    box-sizing: inherit;
    float: none;
}

.pg-index p:first-child {
    margin-top: 0;
}

.pg-index section {
    padding: 2rem;
    max-width: 600px;
    margin: 0 auto;
}

.pg-index section :is(ul,ol) {
    text-align: left;
}

.pg-index__section-header {
    color: var(--ecipp-color-burgundy);
    font-size: 1.5em;
    font-weight: 700;
    text-wrap: balance;
}

.pg-index__section-subheader {
    color: var(--ecipp-color-burgundy);
    font-size: 1.3em;
    font-weight: 600;
    text-wrap: balance;
}

.section-bg-wrapper {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background-color: #F8F8F8;
    border-top-left-radius: 50% 10%;
    border-top-right-radius: 50% 10%;
}

section.pg-index__hero {
    max-width: unset;
    margin: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    background-image: url(../images/landing-hero.png);
    background-size: cover;
    background-position: center bottom;
    min-height: 600px;
    padding: 2rem;
}

.pg-index__hero p {
    font-size: 1.3em;
    font-weight: 500;
    color: #fff;
    text-align: center;
}

.pg-index__hero-title {
    font-size: 1.6em;
    font-weight: 700;
}

.pg-index__hero .btn-outline {
    font-size: .8em;
}

section.pg-index__value-prop {
    max-width: unset;
    margin: -50px 100px 0 100px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;  
    justify-content: center;
    align-items: center;
    background-color: #fff;
    padding: 1rem;
}

.pg-index__value-prop > div {
    width: calc(100% / 3);
    min-width: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
}

@media (max-width: 525px) {
    section.pg-index__value-prop {
        flex-direction: column;
        gap: 2rem;
        margin: -25px 50px 0 50px;
    }

        section.pg-index__value-prop > div {
            flex-direction: column;
            text-align: center;
            min-width: unset;
            width: unset;
            gap: 0;
        }
}

.pg-index__value-prop img {
    width: 80px;
}

section.pg-index__save-time {
    text-align: center;
}

section.pg-index__testimonials {
    text-align: center;
}

section.pg-index__safe-workplace {
    max-width: 850px;
    text-align: center;
}

.pg-index__safe-workplace-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    grid-template-areas:
        "num1 num2 num3"
        "title1 title2 title3"
        "desc1 desc2 desc3";
    gap: 1em;
}

@media (max-width: 525px) {
    .pg-index__safe-workplace-grid {
        grid-template-columns: 1fr;
        grid-template-areas:
            "num1"
            "title1"
            "desc1"
            "num2"
            "title2"
            "desc2"
            "num3"
            "title3"
            "desc3";
    }
}

#swp-num1 { grid-area: num1 }
#swp-num2 { grid-area: num2 }
#swp-num3 { grid-area: num3 }
#swp-title1 { grid-area: title1 }
#swp-title2 { grid-area: title2 }
#swp-title3 { grid-area: title3 }
#swp-desc1 { grid-area: desc1 }
#swp-desc2 { grid-area: desc2 }
#swp-desc3 { grid-area: desc3 }

.pg-index__safe-workplace-grid p {
    margin: 0;
}

.pg-index__safe-workplace-grid__num {
    font-size: 3em;
    color: var(--ecipp-color-burgundy);
}

.pg-index__safe-workplace-grid__title {
    font-size: 1.3em;
    font-weight: 600;
}

.pg-index__safe-workplace-grid__desc {
    font-size: 1em;
}

section.pg-index__meet-your-coach {
    text-align: center;
}

.pg-index__meet-your-coach .pg-index__section-header {
    margin-bottom: 0;
}

.pg-index__meet-your-coach__header {
    font-size: 1.5em;
    font-weight: 700;
}

.pg-index__meet-your-coach__creds {
    font-size: .875em;
    margin-top: 0;
}

.pg-index__meet-your-coach__contact {
    text-align: center;
    font-style: italic;
    margin-top: 2rem;
}


section.pg-index__get-an-ecipp {
    text-align: center;
    max-width: 650px;
}

.pg-index__get-an-ecipp ul {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0;
    max-width: 65%;
    margin: 0 auto;
}


section.pg-faq {
    max-width: 850px;
}

section.pg-faq .pg-index__section-header {
    text-align: center;
}

section.pg-index__training {
    text-align: center;
}

.pg-index__training ul {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0;
    max-width: 75%;
    margin: 0 auto;
}

.pg-index__training .util-corral {
    background-color: #fff;
}