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

    background:#fff;
}


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

    margin:0 auto;
}


.m5faq2-hero {
    padding:
        82px 0 69px;

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


.m5faq2-eyebrow {
    margin:0 0 16px;

    color:#627b83;

    font-size:10px;

    font-weight:850;

    letter-spacing:.16em;
}


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

    margin:0;

    color:var(--navy);

    font-size:
        clamp(
            47px,
            5vw,
            69px
        );

    line-height:1;

    letter-spacing:-.045em;
}


.m5faq2-section {
    padding:
        55px 0 80px;
}


.m5faq2-list {
    border-top:
        1px solid
        #9fbfb8;
}


.m5faq2-list details {
    border-bottom:
        1px solid
        var(--line);
}


.m5faq2-list summary {
    position:relative;

    padding:
        24px 55px 24px 0;

    color:var(--navy);

    font-size:16px;

    font-weight:750;

    line-height:1.45;

    cursor:pointer;

    list-style:none;
}


.m5faq2-list summary::-webkit-details-marker {
    display:none;
}


.m5faq2-list summary::after {
    content:"+";

    position:absolute;

    right:10px;
    top:17px;

    color:var(--green);

    font-size:26px;

    font-weight:300;
}


.m5faq2-list details[open]
summary::after {
    content:"−";
}


.m5faq2-list details > p {
    max-width:860px;

    margin:
        -2px 0 25px;

    color:var(--muted);

    font-size:13px;

    line-height:1.72;
}


.m5faq2-list ul {
    max-width:830px;

    margin:
        0 0 27px;

    padding:0;

    list-style:none;
}


.m5faq2-list li {
    position:relative;

    padding:
        7px 0 7px 21px;

    color:#526f77;

    font-size:12px;

    line-height:1.55;
}


.m5faq2-list li::before {
    content:"";

    position:absolute;

    left:2px;
    top:14px;

    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--green);
}


@media (max-width:620px) {

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


    .m5faq2-hero {
        padding:
            57px 0 51px;
    }


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


    .m5faq2-section {
        padding:
            38px 0 56px;
    }


    .m5faq2-list summary {
        padding-right:44px;

        font-size:15px;
    }

}
