﻿.newsletter {
}
    .newsletter h3 {
        text-transform: uppercase;
        letter-spacing: .5rem;
        font-weight: 400;
        font-size: 2.4rem;
        margin: 0 0 .5rem 0;
        text-align: center;
    }
    .newsletter > div > div > p {
        text-transform: uppercase;
        letter-spacing: .4rem;
        font-weight: 500;
        margin: 0;
        text-align: center;
    }
    .newsletter form {
        padding: 2rem 0;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        grid-gap: .5rem;
        max-width: 75rem;
        margin: 0 auto;
    }
        .newsletter form input {
            width: 100%;
        }
        .newsletter form button {
            text-transform: uppercase;
        }
    .newsletter .message-box {
        background-color: #fff;
        max-width: 50rem;
        margin: 3rem auto;
        text-align: center;
        padding: 2rem 0;
        border-radius: .5rem;
        font-weight: 500;
        box-shadow: 0 0 25px 10px #e2e2e2;
    }
        .newsletter .message-box > div.loading {
            color: var(--main-color);  
        }
        .newsletter .message-box > div.error p {
            color: #ff0000;
            margin: 0;
        }
        .newsletter .message-box > div.success p {
            color: var(--main-color);
            margin: 0;
        }
    .newsletter .legal {
        opacity: .1;
        text-align: center;
    }

@media (max-width: 768px) {
    .newsletter form {
        max-width: 100%;
    }
    .newsletter .message-box {
        max-width: 100%;
    }
}
@media (max-width: 550px) {
    .newsletter form {
        grid-template-columns: 1fr;
    }
}
