.form-container
{
    display: flex;
    flex-direction: column;
    align-items: center;

    color: var(--font-color)
}

.form
{
    display: flex;
    flex-direction: column;

    background-color: var(--quaternary-color);
    border: 1px solid var(--primary-color);
    border-radius: 10px;
}

.contact.form
{
    margin-top: 5vh;
    width: 350px;
}

.contact-title
{
    text-align: center;
    font-size: 1.2em;
    font-weight: lighter;
    color: var(--heading-color);
    margin: 5vmin 10vmin;
    max-width: 20vw;
}

.form-elem
{
    margin: 3vmin 4vmin;
    display: flex;
    justify-content: center;
}

.form-elem input {
    all: unset;
    width: 90%;
    padding: 0.5vmin;
    background-color: none;
    border-bottom: 1px solid var(--primary-color);
    z-index: 3;
    box-sizing: border-box;
    color-scheme: dark; /* this is because I can't f*cking change the :-internal-autofill-selected pseudo-class */
}

.form-elem label
{
    position: absolute;
    left: calc((100vw - 350px) / 2 + 10vmin);
    max-width: 20vw;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.form-elem input:focus ~ label, .form-elem input:not(:placeholder-shown) ~ label
{
    font-size: 0.7em;
    left: calc((100vw - 350px) / 2 + 8.5vmin);
    transform: translateY(-100%);
    transition: 0.3s;
    color: var(--tertiary-color);
} 

.form-elem fieldset
{
    border: 1px solid var(--primary-color);
    border-radius: 5px;
    width: 90%;
    margin: 0 2vmin;
}

.form-elem fieldset textarea, textarea:focus, textarea:active
{
    all: unset;
    background: none;
    width: 225px;
    font-size: 2vmin;
}

.form-elem fieldset legend
{
    transition: 0.3s;
    margin-left: 1.5vmin;
}

.form-elem fieldset textarea:focus ~ legend, .form-elem fieldset textarea:not(:placeholder-shown) ~ legend
{
    font-size: 0.7em;
    transition: 0.3s;
    color: var(--tertiary-color);
    margin-left: 0;
}

.send-button
{
    all: unset;
    width: 40%;
    text-align: center;
    color: var(--heading-color);
    /* align-items: center; */
    /* justify-content: center; */
    padding: 2vmin;
    margin: 0 30% 3vmin 30%;
    border: 1px solid var(--quaternary-color);
    border-radius: 5px;
    box-sizing: border-box;
}

.send-button:hover
{
    background-color: rgb(27 19 52);
    color: var(--font-color);
    border-color: var(--primary-color);
    cursor: pointer;
}
