.m5dp2-page {
    --navy:#072f3d;
    --green:#08715c;
    --muted:#687f87;
    --line:#d7e4e0;
    --soft:#f6faf8;

    background:#fff;
}


.m5dp2-shell {
    width:min(
        1180px,
        calc(100% - 48px)
    );

    margin:0 auto;
}


.m5dp2-page h1,
.m5dp2-page h2,
.m5dp2-page h3 {
    color:var(--navy);
}


.m5dp2-eyebrow,
.m5dp2-index {
    margin:0 0 16px;

    color:#627b83;

    font-size:10px;

    font-weight:850;

    letter-spacing:.15em;
}


/* HERO */

.m5dp2-hero {
    padding:
        88px 0 78px;

    background:
        linear-gradient(
            135deg,
            #fbfdfc,
            #edf6f2
        );
}


.m5dp2-hero h1 {
    max-width:900px;

    margin:0;

    font-size:
        clamp(
            50px,
            5.3vw,
            72px
        );

    line-height:1;

    letter-spacing:-.045em;
}


/* GENERAL */

.m5dp2-section {
    padding:
        70px 0;
}


.m5dp2-soft {
    background:var(--soft);
}


.m5dp2-section h2,
.m5dp2-about h2 {
    margin:0;

    font-size:
        clamp(
            36px,
            3.9vw,
            53px
        );

    line-height:1.06;

    letter-spacing:-.04em;
}


.m5dp2-two {
    display:grid;

    grid-template-columns:
        .78fr
        1.22fr;

    gap:90px;
}


.m5dp2-copy p {
    margin:
        0 0 18px;

    color:var(--muted);

    font-size:14px;

    line-height:1.75;
}


/* LISTS */

.m5dp2-list,
.m5dp2-copy {
    margin-top:37px;
}


.m5dp2-list ul,
.m5dp2-copy ul {
    margin:0;

    padding:0;

    list-style:none;

    border-top:
        1px solid
        #9ebfb7;
}


.m5dp2-list li,
.m5dp2-copy li {
    position:relative;

    padding:
        15px 0 15px 26px;

    border-bottom:
        1px solid
        var(--line);

    color:#526f77;

    font-size:13px;

    line-height:1.6;
}


.m5dp2-list li::before,
.m5dp2-copy li::before {
    content:"";

    position:absolute;

    left:2px;
    top:22px;

    width:7px;
    height:7px;

    border-radius:50%;

    background:var(--green);
}


/* CORE AREAS */

.m5dp2-about {
    padding:
        72px 0 78px;

    background:var(--navy);
}


.m5dp2-about
.m5dp2-eyebrow {
    color:#79aa9e;
}


.m5dp2-about h2 {
    color:#fff;
}


.m5dp2-about-lead {
    max-width:850px;

    margin:
        22px 0 0;

    color:#b9cbce;

    font-size:14px;

    line-height:1.75;
}


.m5dp2-areas {
    display:grid;

    grid-template-columns:
        repeat(2,1fr);

    margin-top:43px;

    border-top:
        1px solid
        rgba(255,255,255,.18);
}


.m5dp2-areas article {
    min-height:235px;

    padding:
        29px 31px;

    border-right:
        1px solid
        rgba(255,255,255,.14);

    border-bottom:
        1px solid
        rgba(255,255,255,.14);
}


.m5dp2-areas article:nth-child(even) {
    border-right:0;
}


.m5dp2-areas span {
    display:block;

    margin-bottom:24px;

    color:#79aa9e;

    font-size:10px;
}


.m5dp2-areas h3 {
    margin:
        0 0 13px;

    color:#fff;

    font-size:21px;

    line-height:1.3;
}


.m5dp2-areas p {
    margin:0;

    color:#b9cbce;

    font-size:12px;

    line-height:1.7;
}


/* RESPONSIVE */

@media (max-width:820px) {

    .m5dp2-two {
        grid-template-columns:1fr;

        gap:28px;
    }


    .m5dp2-copy {
        margin-top:0;
    }


    .m5dp2-areas {
        grid-template-columns:1fr;
    }


    .m5dp2-areas article {
        min-height:0;

        border-right:0;
    }

}


@media (max-width:620px) {

    .m5dp2-shell {
        width:min(
            100% - 32px,
            1180px
        );
    }


    .m5dp2-hero {
        padding:
            58px 0 53px;
    }


    .m5dp2-hero h1 {
        font-size:43px;
    }


    .m5dp2-section,
    .m5dp2-about {
        padding:
            52px 0;
    }

}
