/**
 * Color palette:
 * https://coolors.co/316c29-b4ccc6-1d2e23-74bb50-263934
 * https://coolors.co/visualizer/316c29-b4ccc6-1d2e23-74bb50-263934
 * #316C29 - Fern Green
 * #B4CCC6 - Ash Gray
 * #1D2E23 - Dark Green
 * #74BB50 - Mantis
 * #263934 - Dark Slate Gray
 * #FFFFFF - White
 */
.homepage {
    background: #eee;
}

.homepage header.masthead {
    background: #1D2E23;
    padding: 2rem 15vw;
    color: #FFF;
    text-align: center;
    border-bottom: 1px solid #316C29;
}
.homepage header.masthead h1 {
    font-size: 3em;
}
.homepage header.masthead p.about {
    font-size: 1.3em;
    font-style: italic;
    color: #B4CCC6;
    margin: 0;
}

.homepage header.masthead nav {
    text-align: center;
    margin: 1rem auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.homepage header.masthead nav .logo { }
.homepage header.masthead nav .logo h1 {
    font-size: 2em;
    margin: 0;
    padding: 0;
    color: #FFF;
}
.homepage header.masthead nav .logo h1 a {
    color: #FFF;
    text-decoration: none;
}
.homepage header.masthead nav ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    font-size: 13px;
}
.homepage header.masthead nav ul li {
    display: inline-block;
}
.homepage header.masthead nav ul li a {
    color: #FFF;
    text-decoration: none;
    font-size: 1.3em;
    font-weight: bold;
    padding: 0.5rem 1rem;
    border-radius: 5px;
    white-space: nowrap;
}
.homepage header.masthead nav ul li a:hover {
    color: #ed96ea;
    text-decoration: underline;
}
.homepage header.masthead nav ul.account li a {
    color: #316C29;
    background: #B4CCC6;

}



.homepage ul {
    list-style-type: none;
    padding: 0;
    margin: 1rem auto;
    max-width: 900px;
}

.homepage article, div.page article {
    padding: 0;
    margin: 0 auto;
}
.homepage article.legal, div.page article.legal {
    padding: 2rem 15rem;
}
.homepage article.legal h2, div.page article.legal h2 {
    margin: 0 0 2rem 0;
}
.homepage article.legal h3, div.page article.legal h3 {
    margin: 0 0 2rem 0;
}
.homepage article.legal ul, div.page article.legal ul {
    margin: 2rem 0;
}
.homepage article.legal ul li, div.page article.legal ul li {
    margin: 0 0 1rem 0;
}

.homepage article.help {
    max-width: 800px;
    margin: 0 auto;
    padding: 3rem;
}
.homepage article.help h2 {
    margin: 0 0 2rem 0;
}
.homepage article.help ul {
    margin: 2rem 0;
}
.homepage article.help ul li {
    margin: 0 0 1rem 0;
}
.homepage article.help ul li a {
    color: #316C29;
    text-decoration: none;
    font-weight: bold;
}
.homepage article.help ul li a:hover {
    text-decoration: underline;
}


.homepage article section {
    max-width: 100%;
    border: none;
    padding: 20vh 10vw 25vh;
    background: transparent;
    margin-bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 5rem;
    font-weight: 500;
}

.homepage article section > div {
    padding: 1rem;
    flex: 1 1 40%;
}
.homepage article section h2 {
    font-size: 2.5rem;
    font-weight: bold;
    color: #316C29;
    text-align: center;
    margin: 0;
    border: 0;
    text-shadow: 0 0 10px rgba(0,0,0,0.3);
}
.homepage article section figure {
    box-shadow: 0 0 20px #000;
    margin: 3rem;
}
.homepage article p.subhead {
    font-size: 1.5rem;
    font-weight: bold;
    padding: 1rem;
    text-align: center;
    color: #263934;
    /*border-bottom: 15px solid #74BB50;*/
    border-top: 4px solid #74BB50;
}
.homepage article ul.features {
    list-style-type: none;
    text-align: center;

}
.homepage article ul.features li {
    margin: 0 auto;
    padding: 3rem;
    font-size: 20px;
    border-bottom: 1px solid #24511f;

}
.homepage article ul.features li:last-child {
    border-bottom: none;
}
.homepage article ul.features li strong {
    font-size: 24px;
    font-weight: bold;
    color: #316C29;
}

/* Homepage section color schemes */

.homepage article section.fern {
    background: #316C29;
    color: #FFF;
}
.homepage article section.fern p.subhead {
    color: #B4CCC6;
}
.homepage article section.fern ul.features li strong {
    color: #B4CCC6;
}

.homepage article section.mantis {
    background: #74BB50;
    color: #1D2E23;
}
.homepage article section.mantis h2 {
    color: #1D2E23;
}
.homepage article section.mantis p.subhead {
    color: #1D2E23;
    /*border-bottom: 15px solid #316C29;*/
    border-top: 4px solid #316C29;
}
.homepage article section.mantis ul.features li strong {
    color: #1D2E23;
}


.homepage article section.ash {
    background: #B4CCC6;
    color: #263934;
}
.homepage article section.dark {
    background: #1D2E23;
    color: #FFF;
}

.homepage article section.dark h2 {
    color: #FFF;
}
.homepage article section.dark p.subhead {
    color: white;
    border-top-color: white;
}
.homepage article section.dark ul.features li strong {
    color: #ed96ea;
}
.homepage article section.dark strong {
    color: #ed96ea;
}

.homepage article section.fern {
    background: #316C29;
    color: #FFF;
}

.homepage article section.robin {
    background: #76a9c7;
    color: white;
}
.homepage article section.robin h2, .homepage article section.robin p.subhead {
    color: white;
    border-top-color: white;
}
.homepage article section.robin ul.features li {
    border-bottom-color: #CCC;
}
.homepage article section.robin ul.features li strong, .homepage article section.robin strong {
    color: #7cffb8;
}

.homepage article section.fern h2 {
    color: #FFF;
}
.homepage article section.fern p.subhead {
    color: #FFF;
}
.homepage article section.fern ul.features li strong {
    color: #FFF;
}
.homepage article section.slate {
    background: #263934;
    color: #FFF;
}


@media screen and (max-width: 1000px) {
    /* collapse the masthead nav*/
    .homepage header.masthead nav {
        flex-direction: column;
    }
    .homepage header.masthead nav ul {
        margin-top: 1rem;
    }
    .homepage header.masthead nav ul li {
        display: block;
    }
    .homepage header.masthead nav ul li a {
        display: block;
        padding: 0.5rem;
    }
    /* collapse the article sections */
    .homepage article section {
        padding: 2rem 1px;
        gap: 0;
    }
    .homepage article section > div {
        flex: 1 1 100%;
    }

}

@media screen and (max-width: 768px) {
    .hide-mobile {
        display: none;
    }
    .homepage header.masthead {
        padding: 1rem 1vw;
    }
    .homepage header.masthead nav .logo h1 {
        font-size: 1.5em;
    }
    .homepage header.masthead nav ul.features {
    }
    .homepage article section h2 {
        font-size: 2em;
    }
    .homepage article ul.features {
        padding: 0 0;
    }
    .homepage article ul.features li {
        padding: 3rem 1rem;
    }


}