#offer {
    padding: 55px 0 73px;
}

#offer .title {
    font-size: 2.875em;
    line-height: 1.08695652;
    margin-bottom: 12px;
}

#offer .button {
    font-size: 1.25em;
    height: 40px;
    line-height: 40px;
    width: 232px;
    border-radius: 20px;
    margin-top: 34px;
}

.offer-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 900px;
    margin: 60px auto 0 auto;
    gap: 35px 0;
}

.offer {
    padding: 0 10px;
}

.offer h5 {
    font-size: 1.25em;
    line-height: 1.15;
    margin: 20px 0 0 0;
    text-transform: capitalize;
}

.offer h5 span {
    font-size: 80%;
    line-height: 1.4375;
}
.offer img {
    height: auto;
}

@media screen and (max-width: 767px) {
    #offer {
        margin-top: 32px;
        padding: 30px 0 54px;
    }
    .offer-list {
        grid-template-columns: 1fr 1fr;
    }

    #offer .title {
        font-size: 2.3125em;
        margin-bottom: 36px;
    }

    #offer .button {
        margin-top: 36px;
        height: 40px;
        line-height: 40px;
        width: 288px;
    }
}

@media screen and (max-width: 567px) {

    #offer .title {
        font-size: 2.5em;
        flex-direction: column;
        align-items: center;
    }
    
    #offer .title img {
        margin-left: 0;
        margin-top: 5px;
    }

    .offer-list {
        gap: 35px 0;
        margin: 0 auto;
        grid-template-columns: 1fr;
    }

    .offer .image {
        flex-basis: 83px;
        flex-shrink: 0;
    }

    .offer {
        padding: 0;
        display: flex;
        align-items: center;
    }

    .offer img {
        min-height: unset;
        height: auto;
        max-width: 60px;
        margin-right: 25px;
    }

    .offer h5 {
        padding: 0;
        text-align: left;
        margin: 0;
    }

    #offer .button {
        font-size: 1.25em;
        height: 35px;
        line-height: 35px;
        border-radius: 18px;
        width: 226px;
        margin-top: 24px;
    }
}