.banner {
    padding: 30px 35px 5px;
}

.banner.blue {
    color: #fff;
    background-color: #00A5E5;
    background-image: linear-gradient(to bottom, #00A5E5 80%, #fff 80%)
}

.banner.light-gray {
    color: #1a1a1a;
    background-color: #f5f5f5;
    background-image: linear-gradient(to bottom, #f5f5f5 80%, #fff 80%)
}

@media (min-width: 480px) {
    .banner {
        padding: 80px 35px 10px;
    }
}

@media (min-width: 960px) {
    .banner {
        padding: 130px 35px 40px;
    }
}

.banner .inner {
    margin: 0 auto;
    max-width: 1435px;
    text-align: center;
}

.banner .inner .text-container {
    margin: 0 auto 30px;
    max-width: 816px;
    text-align: center;
}

.banner .inner .text-container h1 {
    margin-bottom: 24px;
    font-size: 43px;
    font-weight: 100;
}

.banner .inner .text-container p {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
}

@media (min-width: 848px) {
    .banner .inner .text-container {
        margin: 0 auto 50px;
    }

    .banner .inner .text-container h1 {
        margin-bottom: 24px;
        font-size: 95px;
    }
    
    .banner .inner .text-container p {
        font-size: 27px;
        line-height: 1.8;
    }
}