.vp-creative-quote {
    position: relative;
    background: #050505;
    color: #ffffff;
    padding: 220px 0;
    overflow: hidden;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.vp-creative-quote__inner {
    width: min(100% - 64px, 1200px);
    margin: 0 auto;
    text-align: center;
}

.vp-creative-quote__eyebrow {
    display: inline-block;
    margin-bottom: 38px;
    font-size: 12px;
    line-height: 1;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.58);
}

.vp-creative-quote__title {
    max-width: 1100px;
    margin: 0 auto;
    font-size: clamp(54px, 7vw, 132px);
    line-height: 0.88;
    letter-spacing: -0.08em;
    font-weight: 800;
    text-transform: uppercase;
}

.vp-creative-quote__text {
    max-width: 760px;
    margin: 42px auto 0;
    font-size: clamp(18px, 1.2vw, 24px);
    line-height: 1.8;
    font-weight: 300;
    color: rgba(255, 255, 255, 0.72);
}

.vp-creative-quote__signature {
    margin-top: 90px;
    padding-top: 34px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.vp-creative-quote__signature-text {
    display: inline-block;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.48);
}

@media (max-width: 980px) {
    .vp-creative-quote {
        padding: 140px 0;
    }
}

@media (max-width: 768px) {
    .vp-creative-quote__inner {
        width: min(100% - 32px, 1500px);
    }

    .vp-creative-quote__title {
        font-size: clamp(46px, 13vw, 78px);
        line-height: 0.92;
    }

    .vp-creative-quote__text {
        margin-top: 34px;
        font-size: 16px;
        line-height: 1.75;
    }

    .vp-creative-quote__signature {
        margin-top: 58px;
    }
}







/* =========================================================
   CREATIVE QUOTE JS STATES
========================================================= */

.vp-creative-quote__title,
.vp-creative-quote__text,
.vp-creative-quote__signature {
    transition:
        transform .95s cubic-bezier(.16, 1, .3, 1),
        opacity .85s ease,
        filter .85s ease,
        letter-spacing .95s cubic-bezier(.16, 1, .3, 1);
}

.vp-creative-quote.is-focused .vp-creative-quote__title {
    transform: translateY(-10px) scale(1.012);
    letter-spacing: -0.065em;
    filter: contrast(1.08);
}

.vp-creative-quote.is-focused .vp-creative-quote__text {
    transform: translateY(6px);
    opacity: .82;
}

.vp-creative-quote.is-focused .vp-creative-quote__signature {
    transform: translateY(14px);
    opacity: 1;
}

.vp-creative-quote__signature::before {
    content: "";
    display: inline-block;

    width: 0;
    height: 1px;

    margin-right: 0;

    vertical-align: middle;

    background: rgba(255, 255, 255, .46);

    transition:
        width .85s cubic-bezier(.16, 1, .3, 1),
        margin-right .85s cubic-bezier(.16, 1, .3, 1);
}

.vp-creative-quote.is-focused .vp-creative-quote__signature::before {
    width: 46px;
    margin-right: 18px;
}

/* =========================================================
   CREATIVE QUOTE
   Tablet + Mobile final responsive polish
========================================================= */

@media (max-width: 1024px) {

    .vp-creative-quote {
        padding: 150px 0;
    }

    .vp-creative-quote__inner {
        width: min(100% - 48px, 1200px);
    }

    .vp-creative-quote__title {
        font-size: clamp(50px, 10vw, 96px);
        line-height: .9;
    }

    .vp-creative-quote__signature {
        margin-top: 68px;
    }
}

@media (max-width: 640px) {

    .vp-creative-quote {
        padding: 96px 0;
    }

    .vp-creative-quote__inner {
        width: min(100% - 32px, 1200px);
    }

    .vp-creative-quote__eyebrow {
        margin-bottom: 24px;
    }

    .vp-creative-quote__title {
        font-size: clamp(38px, 13vw, 60px);
        line-height: .96;
        letter-spacing: -.065em;
    }

    .vp-creative-quote__text {
        margin-top: 28px;
        font-size: 15px;
        line-height: 1.68;
    }

    .vp-creative-quote__signature {
        margin-top: 46px;
        padding-top: 26px;
    }

    .vp-creative-quote__signature-text {
        font-size: 10px;
        letter-spacing: .16em;
    }

    .vp-creative-quote.is-focused .vp-creative-quote__title,
    .vp-creative-quote.is-focused .vp-creative-quote__text,
    .vp-creative-quote.is-focused .vp-creative-quote__signature {
        transform: none;
        filter: none;
    }

    .vp-creative-quote.is-focused .vp-creative-quote__title {
        letter-spacing: -.065em;
    }

    .vp-creative-quote.is-focused .vp-creative-quote__signature::before {
        width: 28px;
        margin-right: 12px;
    }
}

@media (max-width: 420px) {

    .vp-creative-quote {
        padding: 84px 0;
    }

    .vp-creative-quote__inner {
        width: min(100% - 28px, 1200px);
    }

    .vp-creative-quote__title {
        font-size: clamp(34px, 14vw, 52px);
    }

    .vp-creative-quote__signature::before {
        display: none;
    }
}