.banner-promo,
.banner-promo aside {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.banner-promo {
   max-width: 64rem;
   padding: 2rem;
   margin: 2rem auto;
   border-top: 2px solid #ededed;
   border-bottom: 2px solid #ededed;
}

    .banner-promo aside {
        width: 100%;
    }

        .banner-promo .aside-img img {
            width: 100%;
            min-width: 150px;
            width: 150px;
            height: auto;
            max-height: 150px;
            object-fit: contain;
            padding-bottom: 1.5rem;
            margin-bottom: 1.3rem;
            border-bottom: 2px solid #196098;
        }

        .banner-promo .aside-content p {
            margin: 0;
            color: #212529;
            font-weight: 500;
            font-size: 1.1rem;
            width: 100%;
            text-align: center;
        }

@media only screen and (min-width: 768px) {

    .banner-promo {
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: flex-start;
    }

        .banner-promo aside {
            width: 50%;
            justify-content: flex-start;
        }

        .banner-promo .aside-img {
            margin-bottom: 0;
            width: 35%;
            max-width: 190px;
            min-width: 190px;
        }

        .banner-promo .aside-content {
            padding-left: 0;
            align-content: center;
            align-items: center;
            justify-content: flex-start;
            width: 65%;
            flex-grow: 2;
        }

        .banner-promo .aside-img img {
            margin-bottom: 0;
            padding-bottom: 0;
            padding-right: 2rem;
            margin-right: 2rem;
            min-width: 150px;
            width: 150px;
            height: auto;
            max-height: 150px;
            border-bottom: 0;
            border-right: 2px solid #196098;
        }

        .banner-promo .aside-content p {
            text-align: left;
        }

}

@media only screen and (min-width: 1024px) {

    .banner-promo {
        padding: 2rem 3rem;
    }

    .banner-promo .aside-img {
        max-width: 215px;
        min-width: 215px;
    }

    .banner-promo .aside-img img {
        width: 175px;
        min-width: 175px;
    }

}

@media only screen and (min-width: 1400px) {

    .banner-promo {
        justify-content: center;
    }

        .banner-promo .aside-content {
            max-width: 800px;
        }

        .banner-promo .aside-content p {
            line-height: 1.4;
        }

}
