.summary {
    padding: 25px 20px 3px;
    overflow: hidden;
    background: hsl(0, 0%, 95%);
    border-radius: 6px;
}

.summary .title {
    margin-top: 0;
    border-left: 2px solid hsl(358, 85%, 52%);
    padding-left: 15px;
}

.summary:not(.has-factors):not(.has-offers) .desc,
.summary:not(.has-offers) .factors {
    margin-bottom: 7px;
}

.summary .offers {
    margin-right: -10px;
    padding-top: 20px;
}

@media (min-width: 1024px) {
    .summary .desc {
        margin-bottom: 7px;
    }

    .summary .factors {
        float: right;
        width: 100%;
    }
}

@media (max-width: 1023px) {
    .summary > div {
        /* display: -webkit-box; */
        /* display: -webkit-flex; */
        display: -ms-flexbox;
        /* display: flex; */
        /* -webkit-flex-direction: column; */
        -ms-flex-direction: column;
        /* flex-direction: column; */
        /* -webkit-box-orient: vertical; */
        /* -webkit-box-direction: normal; */
    }

    .summary .offers {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
    }
}

.summary .factors > div {
    overflow: hidden;
}

.summary .factors > div:last-child {
}

.summary .factors > div:first-child {
    margin-top: 0;
}

.summary .factors i {
    float: left;
    margin-bottom: 7px;
    padding: 5px 5px 2px;
}

.summary .factors .fa-plus {
    background: white;
    color: hsl(0, 0%, 65%);
}

.summary .factors .fa-minus {
    background: hsl(0, 0%, 65%);
    color: white;
}

.summary .factors ul {
    margin: 0;
    text-align: left;
    list-style-type: none;
}

.summary .factors li {
    margin-bottom: 7px;
}

.mode--alt--b .summary {
    background: #151515;
}

.summary>div {
    display: flex;
    flex-flow: column-reverse;
}

.summary {
    margin-bottom: 30px;
}

.desc {
    padding-bottom: 20px;
}

.summary .factors .s-plus li:before {
    content: '+ ';
    color: #40db83;
    font-weight: 900;
}

.summary .factors .s-minus li:before {
    content: '- ';
    color: #f76060;
    font-weight: 900;
}

.factors {
    display: flex;
    column-gap: 20px;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: space-between;
}

.s-plus, .s-minus {
    width: 100%;
}

.s-plus, .s-minus {
    width: 100%;
    font-size: 95%;
}

.summary .factors .s-plus li:before, .summary .factors .s-minus li:before {
    margin-left: -10px;
}

.summary .factors .s-plus, .summary .factors .s-minus {
    padding: 0 10px;
}

.summary h3.title {
    margin-top: 10px!important;
}