/* Reset base browser styling */
* {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent;
    font-family: "Mont", sans-serif;
}

@font-face {
    font-family: "Mont";
    src: url("../fonts/MontDemo-ExtraLight.otf") format("opentype");
}

@font-face {
    font-family: "Mont-Hvy";
    src: url("../fonts/MontDemo-Heavy.otf") format("opentype");
}

body {
    height: 100%;
}

body a {
    text-decoration: none;
}

.soon {
    position: absolute;
    z-index: 2;
    width: 100%;
    display: grid;
    grid-template-columns: 1;
    grid-template-rows: repeat(4, auto);
    justify-content: center;
} h1 {
    font-size: 12vh;
    justify-self: center;
    text-align: center;
    font-family: "Mont-Hvy";
    padding-left: 4vh;
    padding-right: 4vh;
    -webkit-user-select: none;       
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
} h3 {
    font-size: 2vh;
    justify-self: center;
    color: #e7e7e7;
    text-align: center;
    padding-top: 2vh;
    padding-left: 4vh;
    padding-right: 4vh;
    -webkit-user-select: none;       
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.logo {
    max-height: 45vh;
    justify-self: center;
}

/* Test Style */
.morphic {
    background: linear-gradient(to right, #53F6EB 0%, #A4A0B8 25%, #F54984 50%, #A4A0B8 75%, #53F6EB 100%);
    background-size: 200% auto;

    color: #000;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -o-background-clip: text;
    -o-text-fill-color: transparent;
    -ms-background-clip: text;
    -ms-text-fill-color: transparent;
    -moz-background-clip: text;
    -moz-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;

    animation: shine 10s linear infinite;
}

@keyframes shine {
    to {
        background-position: 200% center;
    }
}

.socials {
    justify-self: center;
    display: grid;
    grid-template-columns: repeat(3, auto);
    grid-gap: 10vh;
    padding-top: 5vh;
}

.icon {
    max-height: 5vh;
}

/* MQ: change -email and -submit font sizes to be em-based rather than vh-based
after a certain width. 1.2em seems a good starting point. */

.newsletter {
    padding-top: 5.5vh;
    justify-self: center;
}

.form {
    display: grid;
    grid-template-rows: repeat(2, auto);
    grid-gap: 0.5vh;
} button:hover {
    cursor: pointer;
}

.newsletter-email {
    background: transparent;
    color: #e7e7e7;
    font-size: 3.5vh;
    padding: .3em;
    margin: 0;
    border: 2px solid #e7e7e7;
    border-radius: .25em .25em 0 0;
    text-align: center;
}

.newsletter-submit {
    color: #e7e7e7;
    font-size: 3.5vh;
    padding: .3em;
    margin: 0;
    border-radius: 0 0 .25em .25em;

    display: grid;
    grid-template-columns: minmax(0, auto);
}

.button-morph {
    background: linear-gradient(to right, #53F6EB 0%, #A4A0B8 25%, #F54984 50%, #A4A0B8 75%, #53F6EB 100%);
    background-size: 200% auto;

    color: #000;

    animation: shine 10s linear infinite;
}