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

    background:#fff;
}


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

    margin:0 auto;
}


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


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

    color:#617b82;

    font-size:10px;

    font-weight:850;

    letter-spacing:.15em;
}


/* HERO */

.m5cm2-hero {
    padding:
        84px 0 74px;

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


.m5cm2-hero h1 {
    max-width:950px;

    margin:0;

    font-size:
        clamp(
            48px,
            5.2vw,
            71px
        );

    line-height:1.01;

    letter-spacing:-.045em;
}


.m5cm2-lead {
    max-width:870px;

    margin:
        22px 0 0;

    color:var(--muted);

    font-size:15px;

    line-height:1.75;
}


/* GENERAL */

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


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


.m5cm2-two {
    display:grid;

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

    gap:90px;
}


.m5cm2-section h2,
.m5cm2-process h2,
.m5cm2-regulatory h2 {
    margin:0;

    font-size:
        clamp(
            35px,
            3.8vw,
            52px
        );

    line-height:1.06;

    letter-spacing:-.04em;
}


.m5cm2-copy p,
.m5cm2-facilities p {
    margin:0;

    color:var(--muted);

    font-size:15px;

    line-height:1.75;
}


/* DOSAGE / LIST */

.m5cm2-list-grid {
    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:55px;

    margin-top:37px;

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


.m5cm2-list-grid ul,
.m5cm2-facilities ul,
.m5cm2-regulatory ul {
    margin:0;

    padding:20px 0 0;

    list-style:none;
}


.m5cm2-list-grid li,
.m5cm2-facilities li,
.m5cm2-regulatory li {
    position:relative;

    padding:
        11px 0 11px 23px;

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

    color:#536f77;

    font-size:13px;
}


.m5cm2-list-grid li::before,
.m5cm2-facilities li::before,
.m5cm2-regulatory li::before {
    content:"";

    position:absolute;

    left:2px;
    top:18px;

    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--green);
}


/* FACILITIES */

.m5cm2-facilities {
    display:grid;

    grid-template-columns:
        .9fr
        1.1fr;

    gap:75px;

    margin-top:36px;

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


/* PROCESS */

.m5cm2-process {
    padding:
        72px 0;

    background:var(--navy);
}


.m5cm2-process
.m5cm2-index {
    color:#79a99e;
}


.m5cm2-process h2 {
    max-width:900px;

    color:#fff;
}


.m5cm2-process-intro {
    max-width:810px;

    margin:
        21px 0 0;

    color:#b9cbce;

    font-size:14px;

    line-height:1.72;
}


.m5cm2-steps {
    margin-top:43px;

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


.m5cm2-steps article {
    display:grid;

    grid-template-columns:
        70px
        .8fr
        1.2fr;

    gap:31px;

    padding:
        29px 0;

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


.m5cm2-steps span {
    color:#79a99e;

    font-size:10px;
}


.m5cm2-steps h3 {
    margin:0;

    color:#fff;

    font-size:20px;

    line-height:1.3;
}


.m5cm2-steps p {
    margin:0;

    color:#b9cbce;

    font-size:12px;

    line-height:1.7;
}


/* REASONS */

.m5cm2-reasons {
    display:grid;

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

    margin-top:40px;

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


.m5cm2-reasons article {
    min-height:265px;

    padding:
        29px 28px;

    border-right:
        1px solid
        var(--line);
}


.m5cm2-reasons article:last-child {
    border-right:0;
}


.m5cm2-reasons h3 {
    margin:
        0 0 15px;

    font-size:20px;

    line-height:1.28;
}


.m5cm2-reasons p {
    margin:0;

    color:var(--muted);

    font-size:12px;

    line-height:1.7;
}


/* REGULATORY */

.m5cm2-regulatory {
    padding:
        72px 0 78px;

    background:#eef5f2;
}


.m5cm2-regulatory-grid {
    display:grid;

    grid-template-columns:
        1fr
        .9fr;

    gap:90px;

    align-items:start;
}


.m5cm2-regulatory-grid > div > p:last-child {
    max-width:660px;

    margin:
        19px 0 0;

    color:var(--muted);

    font-size:14px;

    line-height:1.7;
}


/* RESPONSIVE */

@media (max-width:900px) {

    .m5cm2-two,
    .m5cm2-facilities,
    .m5cm2-regulatory-grid {
        grid-template-columns:1fr;

        gap:28px;
    }


    .m5cm2-steps article {
        grid-template-columns:
            55px 1fr;

    }


    .m5cm2-steps article p {
        grid-column:2;
    }


    .m5cm2-reasons {
        grid-template-columns:1fr;
    }


    .m5cm2-reasons article {
        min-height:0;

        border-right:0;

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

}


@media (max-width:620px) {

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


    .m5cm2-hero {
        padding:
            57px 0 52px;
    }


    .m5cm2-hero h1 {
        font-size:42px;
    }


    .m5cm2-section,
    .m5cm2-process,
    .m5cm2-regulatory {
        padding:
            52px 0;
    }


    .m5cm2-list-grid {
        grid-template-columns:1fr;

        gap:0;
    }


    .m5cm2-steps article {
        grid-template-columns:1fr;

        gap:11px;
    }


    .m5cm2-steps article p {
        grid-column:auto;
    }

}
