* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    cursor: default;
    user-select: none;
}

section {
    width: 100svw;
    height: 100svh;
    display: flex;
    justify-content: center;
    align-items: center;
}
.top {
    margin-bottom: 2.25em;
}
.card-left {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.card-left > form > div.top > h1, p{
    font-family: var(--font-family-general);
    padding: 0;
}
.card-right {
    width: 50%;
    height: 100%;
}

.card-right > div, img {
    height: 100%;
    object-fit: cover;
    filter: brightness(70%);
}

section#login h1{
    font-size: var(--font-size-h2);
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--primary);
    text-align: center;
}
section#login h1 span{
    font-weight: bolder;
}
form {
    padding: var(--container-padding);
    width: 100%;
    max-width: 600px;
}

.input-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 0.5em;
}

.input-group > input {
    cursor: auto;
    background-color: rgb(237, 242, 248);
    transition: 200ms ease-in-out;
    border: 2px solid var(--primary);
}

.input-group > input:focus {
    outline: none;
    border: 2px solid var(--accent);
}

.input-group > input#email {
    margin-bottom: 0.5em;
}

.actions {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.actions > input {
    cursor: pointer;
    background-color: var(--primary);
    color: white;
    border: none;
    margin-top: 1em;
    width: 100%;
    transition: 200ms ease-in-out;
}

.actions > input:hover {
    background-color: var(--accent);
}

.actions > a {
    cursor: pointer;
    align-self: flex-end;
    text-decoration: underline;
    color: var(--accent);
}

input {
    border-radius: 0.3em;
    padding: 0.4em 0.9em;
}

label{
    padding: 0;
}
