.benefits {
    text-align: center;
    padding-top: 2em;
    margin-top: 0em;
}

.benefits-container {
    margin-left: 8%;
    margin-right: 8%;
}

.benefits-container .row i {
    font-size: 3em;
    color: white;
    border-radius: 50%;
    width: 2em;
    height: 2em;
    padding-top: 0.5em;
    margin-top: 0.1em;
    margin-bottom: 0.3em;
    text-shadow: 2px 2px 1px #555555;
    box-shadow: 2px 2px 4px #555555;
}

.benefits h1 {
    margin: 0em 0em 1em 0em;
    color: olive;
    font-size: 2.5rem;
}

.benefits h2 {
    padding: 0em;
    margin: 0em;
    color: olive;
    font-size: 1.5em;
    text-transform: uppercase;
}

.benefits p {
    font-size: 1em;
    color: #555555;
    padding-top: 0.6em;
    padding-bottom: 1.6em;
    margin-bottom: 0em;
}

/* -------------------- Responsive design media queries -------------------- */

/* everything smaller than 1500px */
@media (max-width: 1500px) {
    .benefits h1 {
        font-size: 2.1em;
        padding: 0em 0.2em;
    }

    .benefits-container {
        margin-left: 6%;
        margin-right: 6%;
    }

    .benefits h2 {
        font-size: 1.4em;
    }
}

/* everything smaller than 1250px */
@media (max-width: 1250px) {
    .benefits h1 {
        font-size: 2em;
        padding: 0em 1em;
    }

    .benefits-container {
        margin-left: 4%;
        margin-right: 4%;
    }

    .benefits h2 {
        font-size: 1.2em;
    }
}

/* everything smaller than 800px */
@media (max-width: 800px) {
    .benefits h1 {
        font-size: 1.8em;
    }
}

/* everything smaller than 600px */
@media (max-width: 600px) {
    .benefits h1 {
        font-size: 1.6em;
    }
}

@media (max-width: 575px) {
    .benefits p {
        padding-left: 3em;
        padding-right: 3em;
    }
}