/* Look-alike classes */
.h1, .h2, .h3, .h4, .h5, .h6 {
    margin-top: 0;
    margin-bottom: 2rem;
    font-weight: 300;
}
.h1 { font-size: 4.0rem; line-height: 1.2;  letter-spacing: -.1rem; }
.h2 { font-size: 3.6rem; line-height: 1.25; letter-spacing: -.1rem; }
.h3 { font-size: 3.0rem; line-height: 1.3;  letter-spacing: -.1rem; }
.h4 { font-size: 2.4rem; line-height: 1.35; letter-spacing: -.08rem; }
.h5 { font-size: 1.8rem; line-height: 1.5;  letter-spacing: -.05rem; }
.h6 { font-size: 1.5rem; line-height: 1.6;  letter-spacing: 0; }
@media (min-width: 550px) {
    .h1 { font-size: 5.0rem; }
    .h2 { font-size: 4.2rem; }
    .h3 { font-size: 3.6rem; }
    .h4 { font-size: 3.0rem; }
    .h5 { font-size: 2.4rem; }
    .h6 { font-size: 1.5rem; }
}


img {
    max-width: 100%;
}

header {
    background-color: #000;
    background-size: cover;
    color: white;
    padding: 20em 0 20em;
}
header h1 {
    font-weight: bold;
}

main section {
    padding: 6em 0;
}
main section:nth-child(even) {
    background-color: #eee;
}
main h2 {
    overflow: hidden;
    text-overflow: ellipsis;
}

.icon {
    font-size: 1.4em;
    display: inline-block;
    width: 1.4em;
}
.form-message {
    margin-bottom: 1.5rem;
    font-weight: bold;
}
.form-message.error {
    color: red;
}
.form-message.success {
    color: green;
}


footer {
    background-color: #000;
    text-align: center;
    padding: 5em 0;
}
footer a {
    color: #444;
}
