*[data-active="false"]{
    display: none !important;
    opacity: 0 !important;
}

*{
    font-family: "Lexend", Helvetica, sans-serif;
}

html, body{
    margin: 0;
    padding: 0;
    display: flex;
    width: 100vw;
    height: 100vh;
    justify-content: space-evenly;
    align-items: center;
    /* background-color: black; */
    color: white;
}

body{
    box-sizing: border-box;
    padding: 3em;
    max-width: 1500px;
    background-color: black;
}

#shader-canvas{
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    display: block;
  }

img#logo{
    width: 100%;
    max-width: 40%;
}

img#divider{
    height: 400px;
}

img#horizontalDivider{
    display: none;
}

#content{
    width: 100%;
    max-width: 35%;
    margin-right: 5%;
}

#content h1{
    font-size: 1em;
}

#content p{
    font-weight: 100;
    line-height: 2em;
    margin-bottom: 1.2em;
}

#content button, input[type="submit"]{
    border: 0px solid transparent;
    padding: 0.6em 1.5em;
    margin-top: 1em;
    border: 1px solid white;
    background: black;
    color: white;
    border-radius: 6px;
    font-weight: 400;
}

#content button:hover, #content button:focus, input[type="submit"]:hover, input[type="submit"]:focus{
    background: white;
    border: 1px solid white;
    color: black;
    cursor: pointer;
}

.overlay{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.75);
    padding: 1em;
    box-sizing: border-box;
}

.overlay .overlayContent{
    width: 100%;
    max-width: 500px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 5px solid white;
    padding: 1em;
    box-sizing: border-box;
    border-radius: 15px;
    background: black;
    margin: 1em;
}

.overlay .overlayContent form{
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: center;
    align-items: normal;
}

.overlay .overlayContent form label{
    margin-bottom: 0.25em;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.overlay .overlayContent form label span{
    font-size: 0.75em;
    margin-left: 1em;
    color: orange;
}

.overlay .overlayContent form input:not([type="submit"]), .overlay .overlayContent form textarea{
    margin-bottom: 1.5em;
    background: black;
    border: 1px solid white;
    padding: 0.75em 1em;
    font-size: 1em;
    color: white;
}

.overlay .overlayContent form input[type="submit"]{
    margin-top: 3em;
}

.overlay .overlayContent form textarea{
    margin-bottom: 0;
    height: 100px;
}

.overlay .overlayContent form #wordCounter{
    font-size: 0.8em;
    color: rgba(255,255,255,0.5);
    text-align: right;
    transform: translate(-8px, -25px);
}

#contactStatus{
    position: fixed;
    top: 50%;
    left: 0;
    width: 100%;
    text-align: center;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
    transform: translateY(-50%);
    padding: 1em;
    box-sizing: border-box;
    text-shadow: 0px 1px 1px rgba(0,0,0,0.6);
}

#contactStatus[data-status="success"]{
    background: #92D5C1;
    background: linear-gradient(322deg, rgba(146, 213, 193, 1) 0%, rgba(92, 213, 81, 1) 100%);
    box-shadow: 0 0px 50px #5fd558;
    border-width: 1px 0 1px 0;
    border: solid 1px rgba(255, 255, 255, 0.5);
}

#contactStatus[data-status="success"] #errorMsg{
    display: none;
}

#contactStatus[data-status="error"]{
    background: #cf6161;
    background: linear-gradient(322deg,rgba(207, 97, 97, 1) 1%, rgba(219, 29, 32, 1) 100%);
    box-shadow: 0 0px 50px rgba(219, 29, 32, 1);
    border-width: 1px 0 1px 0;
    border: solid 1px rgba(255, 255, 255, 0.5);
}

#contactStatus[data-status="error"] #successMsg{
    display: none;
}

@media all and (max-width: 1024px){

    body {
        flex-direction: column;
        justify-content: flex-start;
    }

    img#logo{
        max-width: 100%;
        margin-bottom: 1em;
    }

    img#divider{
        display: none;
    }

    img#horizontalDivider{
        display: block;
        width: 100%;
    }

    #content{
        max-width: 100%;
        text-align: justify;
        font-size: 0.9em;
        margin-top: 1em;
        display: flex;
        flex-direction: column;
        margin-right: 0;
    }

    #content h1{
        font-size: 1.5em;
        text-align: center;
    }

}