.quote-box {
    position: relative;
    padding: 15px 15px 24px;
    margin: 1em auto;
    max-width: calc(1045px - 60px);
}
.quote-box .quote {
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #003399;
    font-family: "antipoda-variable", sans-serif;
    text-align: center;
    line-height: 40px;
    margin-top: 6.5px;

}
.quote-box::before {
    width: 205px;
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform:translateX(-50%);
    height: 2px;
    background-color: #cccccc;
}
.quote-box::after {
    width: 205px;
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform:translateX(-50%);
    height: 2px;
    background-color: #cccccc;
}
.quote-box .source {
    font-size: 22px;
    font-style: normal;
    text-align: center;
    letter-spacing: 0.02em;
    color: rgb(0, 0, 0);
    font-family: 'franklin-gothic-urw', sans-serif;
    font-weight: 400;
    line-height: 28px;
    margin-top:-2.7px;
    padding-bottom: 2px;
}

@media (min-width: 40em) {
    .quote-box {
        padding: 24px 30px;
    }
    .quote-box::before {
        width: 405px;
    }
    .quote-box::after {
        width: 405px;
    }
}

@media only screen and (max-width: 1023px) and (min-width: 641px)  {
    .quote-box .quote {
        font-size: 28px;
        line-height: 28px;
    }
    .quote-box .source {
        font-size: 18px;
    }
}

@media only screen and (max-width: 640px) {
    .quote-box .quote {
        font-size: 23px;
        line-height: 24px;
    }
    .quote-box .source {
        font-size: 15px;
        line-height: 24px;
    }
}