/* PRO-WHITE.NET */

@font-face {
    font-family: averagesans;
    font-style: normal;
    src: url("/font/average.sans.ttf");
}
@font-face {
    font-family: stardos;
    font-style: bold;
    src: url("/font/stardos.stencil-bold.ttf");
}

:root {
    --background: #ECECEC;
    --white:      #FFFFFF;
    --charcoal:   #333333;
    --wg-01:      #808080;
    --wg-02:      #555555;
    --wg-03:      #999999;
    --wg-04:      #BEBEBE;
    --brdr-size:   .15em;
    --ratio: 1.2;
    --s9: calc(var(--s8) * var(--ratio));
    --s8: calc(var(--s7) * var(--ratio));
    --s7: calc(var(--s6) * var(--ratio));
    --s6: calc(var(--s5) * var(--ratio));
    --s5: calc(var(--s4) * var(--ratio));
    --s4: calc(var(--s3) * var(--ratio));
    --s3: calc(var(--s2) * var(--ratio));
    --s2: calc(var(--s1) * var(--ratio));
    --s1: calc(var(--s0) * var(--ratio));
    --s0: 1rem;
    --s-1: calc(var(--s0) / var(--ratio));
    --s-2: calc(var(--s-1) / var(--ratio));
    --s-3: calc(var(--s-2) / var(--ratio));
    --s-4: calc(var(--s-3) / var(--ratio));
    --s-5: calc(var(--s-4) / var(--ratio));
    --s-6: calc(var(--s-5) / var(--ratio));
    --s-7: calc(var(--s-6) / var(--ratio));
    --s-8: calc(var(--s-7) / var(--ratio));
    --s-9: calc(var(--s-8) / var(--ratio));
}

html { /* overflow-y: scroll; */ background-color: var(--background); }
body {
    color: var(--white);
    display: grid;
    font-family: Sans-Serif;
    font-size: var(--s0);
    font-weight: bold;
    grid-gap: 0;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas: "header"
                         "main"
                         "footer";
    margin: auto;
    width: 90%;
 }
div { padding: 0; margin: 0; }

header {
    background-color: var(--wg-02);
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    margin-top: 1em;
    text-align: center;
}
header a {
    color: var(--white);
    text-decoration: none;
}
header .banner-logo {
    font-family: stardos;
    font-size: var(--s8);
    letter-spacing: var(--s-4);
    padding: var(--s-4) var(--s2);
    text-shadow: 2px 3px var(--wg-03);
}
header .banner {
    background-color: var(--wg-01);
    letter-spacing: .1em;
    padding: .3em;
}
header .banner span {
    font-size: var(--s2);
}

main {
    font-family: averagesans;
    font-size: var(--s1);
}
main a {
    background-color: var(--white);
    border: solid 1px var(--charcoal);
    color: var(--charcoal);
    display: block;
    padding: var(--s-4) var(--s-2);
    text-decoration: none;
}
main a:hover {
    background-color: var(--wg-04);
    color: var(--white);
    text-shadow: 1px 3px var(--wg-02);
}
main img {
    padding-right: var(--s-4);
    vertical-align: text-bottom;
    width: var(--s2);
}
main ul {
    align-content: stretch;
    border: solid 1px var(--charcoal);
    display: flex;
    flex-flow: row;
    flex-wrap: wrap;
    justify-content: center;
}
main li {
    flex-grow: 1;
    margin: .1em;
    text-align: center;
}

footer {
    background-color: var(--wg-02);
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    color: var(--white);
    margin-bottom: 3rem;
    text-align: center;
}
footer a {
    color: var(--white);
    text-decoration: none;
}
footer ul {
    display: flex;
    flex-flow: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    list-style-type: none;
    padding: 1rem;
}
footer li { padding: var(--s-2); }

@media (max-width: 610px) {
    header .banner-logo { font-size: var(--s4); }
    footer ul { display: list-item; }
    footer li { padding: var(--s-4); }
}