/*
|--------------------------------------------------------------------------
| Purpose Statement
|--------------------------------------------------------------------------
*/

.purpose-statement {
    position: relative;

    min-height: 520px;

    overflow: hidden;

    background: #292929;
}


/*
|--------------------------------------------------------------------------
| Background
|--------------------------------------------------------------------------
*/

.purpose-statement__background {
    position: absolute;
    inset: 0;

    z-index: 0;

    background-image:
        url("../../images/content-bg.png");

    background-position:
        center center;

    background-repeat:
        no-repeat;

    background-size:
        cover;

    pointer-events: none;
}


/*
|--------------------------------------------------------------------------
| Inner
|--------------------------------------------------------------------------
*/

.purpose-statement__inner {
    position: relative;

    z-index: 1;

    min-height: 520px;

    display: flex;
    align-items: center;
}


/*
|--------------------------------------------------------------------------
| Content
|--------------------------------------------------------------------------
*/

.purpose-statement__content {
    width: 100%;

    max-width: 1250px;

    margin-left: auto;
    margin-right: auto;

    padding:
        70px
        0;
}


/*
|--------------------------------------------------------------------------
| Eyebrow
|--------------------------------------------------------------------------
*/

.purpose-statement__eyebrow {
    margin-bottom: 28px;

    color: var(--color-gold);

    font-family: var(--font-primary);

    font-size: var(--font-size-text-large);
    font-weight: 700;

    line-height: 1.2;

    text-transform: uppercase;
}


/*
|--------------------------------------------------------------------------
| Statement
|--------------------------------------------------------------------------
*/

.purpose-statement__text {
    margin: 0;

    max-width: 1160px;

    font-family: var(--font-title);

    font-size: var(--font-size-h2);

    font-weight: 400;

    line-height: 1.12;

    letter-spacing: -.015em;

    color: rgba(255,255,255,.30);
}


/*
|--------------------------------------------------------------------------
| Generated Lines
|--------------------------------------------------------------------------
*/

.purpose-statement__line {
    position: relative;

    display: block;

    width: fit-content;

    color: rgba(255,255,255,.30);
}


/*
|--------------------------------------------------------------------------
| White Fill
|--------------------------------------------------------------------------
*/

.purpose-statement__line-fill {
    position: absolute;

    inset: 0;

    color: #fff;

    white-space: nowrap;

    overflow: hidden;

    width: 0%;

    pointer-events: none;

    will-change: width;
}
/*
|--------------------------------------------------------------------------
| White Fill Layer
|--------------------------------------------------------------------------
*/

.purpose-statement__text::after {
    content: attr(data-text);

    position: absolute;
    inset: 0;

    color: #fff;

    pointer-events: none;

    clip-path:
        inset(
            0
            var(--reveal, 100%)
            0
            0
        );
}

/*
|--------------------------------------------------------------------------
| Generated Word
|--------------------------------------------------------------------------
*/

.purpose-statement__word {
    display: inline;

    color: rgba(255, 255, 255, .32);
    transition:
        color .15s linear;

    will-change: color;
}


/*
|--------------------------------------------------------------------------
| Space
|--------------------------------------------------------------------------
*/

.purpose-statement__space {
    white-space: pre;
}


/*
|--------------------------------------------------------------------------
| Responsive
|--------------------------------------------------------------------------
*/

@media (max-width: 1199px) {

    .purpose-statement__content {
        max-width: 1050px;
    }


    .purpose-statement__text {
        max-width: 1000px;
    }

}


@media (max-width: 991px) {

    .purpose-statement,
    .purpose-statement__inner {
        min-height: 470px;
    }


    .purpose-statement__content {
        padding:
            65px
            0;
    }


    .purpose-statement__text {
        font-size:
            clamp(
                40px,
                6vw,
                54px
            );
    }

}


@media (max-width: 767px) {

    .purpose-statement,
    .purpose-statement__inner {
        min-height: 430px;
    }


    .purpose-statement__content {
        padding:
            55px
            0;
    }


    .purpose-statement__eyebrow {
        margin-bottom: 20px;

        font-size: 13px;
    }


    .purpose-statement__text {
        font-size:
            clamp(
                34px,
                9vw,
                44px
            );

        line-height: 1.12;
    }

}

/*
|--------------------------------------------------------------------------
| Mandate Statement
|--------------------------------------------------------------------------
*/

.mandate-statement {
    position: relative;

    overflow: hidden;

    background: #292929;
}


/*
|--------------------------------------------------------------------------
| Background
|--------------------------------------------------------------------------
*/

.mandate-statement__background {
    position: absolute;

    top: 0;
    left: 0;
    right: 0;

    /*
     * Give the artwork roughly the same visual
     * height it has in the Purpose section.
     */
    height: 520px;

    z-index: 0;

    background-image:
        url("../../images/content-bg.png");

    background-position:
        center top;

    background-repeat:
        no-repeat;

    /*
     * Important:
     * don't use cover against the full mandate section.
     */
    background-size:
        100% 520px;

    pointer-events: none;
}


/*
|--------------------------------------------------------------------------
| Fade background into the section
|--------------------------------------------------------------------------
*/

.mandate-statement__background::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(41, 41, 41, 0) 0%,
            rgba(41, 41, 41, .05) 55%,
            #292929 100%
        );

    pointer-events: none;
}


/*
|--------------------------------------------------------------------------
| Outer
|--------------------------------------------------------------------------
*/

.mandate-statement__outer {
    position: relative;

    z-index: 1;
}


/*
|--------------------------------------------------------------------------
| Inner
|--------------------------------------------------------------------------
*/

.mandate-statement__inner {
    width: 100%;

    max-width: 1250px;

    margin:
        0
        auto;

    padding:
        85px
        0
        100px;
}


/*
|--------------------------------------------------------------------------
| Eyebrow
|--------------------------------------------------------------------------
*/

.mandate-statement__eyebrow {
    margin-bottom: 26px;

    color:
        var(--color-gold);

    font-family:
        var(--font-primary);

    font-size: var(--font-size-text-large);
    font-weight: 700;

    line-height: 1.2;

    text-transform: uppercase;
}


/*
|--------------------------------------------------------------------------
| Animated Statement
|--------------------------------------------------------------------------
*/

.mandate-statement__title {
    margin:
        0
        0
        46px;

    max-width: 1160px;

    font-family:
        var(--font-title);

    font-size: var(--font-size-h2);
        

    font-weight: 400;

    line-height: 1.12;

    letter-spacing:
        -.015em;

    color:
        rgba(255, 255, 255, .30);
}


/*
|--------------------------------------------------------------------------
| Generated Animation Lines
|--------------------------------------------------------------------------
*/

.mandate-statement__title
.purpose-statement__line {
    position: relative;

    display: block;

    width: fit-content;

    color:
        rgba(255, 255, 255, .30);
}


/*
|--------------------------------------------------------------------------
| White Fill
|--------------------------------------------------------------------------
*/

.mandate-statement__title
.purpose-statement__line-fill {
    position: absolute;

    inset: 0;

    width: 0%;

    overflow: hidden;

    white-space: nowrap;

    color: #fff;

    pointer-events: none;

    will-change: width;
}


/*
|--------------------------------------------------------------------------
| Body Content
|--------------------------------------------------------------------------
*/

.mandate-statement__content {
    max-width: 980px;
}


/*
|--------------------------------------------------------------------------
| Lead
|--------------------------------------------------------------------------
*/

.mandate-statement__lead {
    margin:
        0
        0
        18px;

    font-family:
        var(--font-primary);

    font-size: var(--font-size-h3);
    font-weight: 700;

    line-height: 1.4;

    color:
        rgba(255, 255, 255, .88);
}


/*
|--------------------------------------------------------------------------
| Paragraphs
|--------------------------------------------------------------------------
*/

.mandate-statement__content p {
    margin:
        0
        0
        25px;

    font-family:
        var(--font-primary);

    font-size: var(--font-size-text-main);
    font-weight: 300;

    line-height: 1.7;

    color:
        rgba(255, 255, 255, .68);
}


.mandate-statement__content p:last-child {
    margin-bottom: 0;
}


/*
|--------------------------------------------------------------------------
| Closing
|--------------------------------------------------------------------------
*/

.mandate-statement__content
.mandate-statement__closing {
    margin-top: 12px;

    color:
        var(--color-gold);

    font-weight: 700;
}


/*
|--------------------------------------------------------------------------
| Reveal Items
|--------------------------------------------------------------------------
*/

.mandate-statement__reveal {
    will-change:
        opacity,
        transform;
}


/*
|--------------------------------------------------------------------------
| <= 1199px
|--------------------------------------------------------------------------
*/

@media (max-width: 1199.98px) {

    .mandate-statement__inner {
        max-width: 1050px;

        padding:
            80px
            0
            90px;
    }


    .mandate-statement__title {
        max-width: 1000px;
    }


    .mandate-statement__content {
        max-width: 900px;
    }

}


/*
|--------------------------------------------------------------------------
| <= 991px
|--------------------------------------------------------------------------
*/

@media (max-width: 991.98px) {

    .mandate-statement__inner {
        padding:
            70px
            0
            80px;
    }


    .mandate-statement__title {
        margin-bottom: 38px;

        font-size:
            clamp(
                40px,
                6vw,
                54px
            );
    }


    .mandate-statement__content {
        max-width: 100%;
    }


    .mandate-statement__lead {
        font-size: 20px;
    }


    .mandate-statement__content p {
        font-size: 20px;

        line-height: 1.65;
    }

    .mandate-statement__background {

        height: 470px;

        background-size:

            100% 470px;

    }

}


/*
|--------------------------------------------------------------------------
| <= 767px
|--------------------------------------------------------------------------
*/

@media (max-width: 767.98px) {

    .mandate-statement__inner {
        padding:
            55px
            0
            65px;
    }


    .mandate-statement__eyebrow {
        margin-bottom: 20px;

        font-size: 13px;
    }


    .mandate-statement__title {
        margin-bottom: 32px;

        font-size:
            clamp(
                34px,
                9vw,
                44px
            );

        line-height: 1.12;
    }


    .mandate-statement__lead {
        font-size: 19px;
    }


    .mandate-statement__content p {
        margin-bottom: 22px;

        font-size: 20px;

        line-height: 1.6;
    }
    .mandate-statement__background {

        height: 430px;

        background-size:

            auto 430px;

        background-position:

            center top;

    }

}