:root {
    --stokki-white: #ffffff;
    --stokki-black: #181b1f;
    --stokki-secondary: #4db9eb;
    --stokki-transparent: #ffffff00;
}

@font-face {
    font-size: 1rem;
    font-weight: 400;
    font-family: 'OpenSans Regular';
    src: url(../assets/fonts/OpenSans-Regular.ttf) format('truetype');
}

@font-face {
    font-size: 1rem;
    font-weight: 400;
    font-family: 'RNSSanz Regular';
    src: url(../assets/fonts/RNSSanz-Regular.otf) format('opentype');
}

@font-face {
    font-size: 1rem;
    font-weight: 800;
    font-family: 'RNSSanz ExtraBold';
    src: url(../assets/fonts/RNSSanz-ExtraBold.otf) format('opentype');
}

body {
    background-repeat: no-repeat;
}

div.wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    margin: auto;
    background-position-x: 102%;
    background-position-y: 105%;
    background-repeat: no-repeat;
    background-size: 60vh;
}

header,
footer {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

main {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

header div nav {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

h1,
h2 {
    color: var(--stokki-primary);
    font-family: 'RNSSanz ExtraBold';
    text-align: center;
    letter-spacing: 0.08rem;
}

p,
span,
a {
    color: var(--stokki-black);
    font-family: 'OpenSans Regular';
    text-align: center;
}

footer div nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

footer div nav img {
    width: 8rem;
}

.inner-container {
    width: 100%;
    height: 100%;
}

.divider,
.hidden-divider {
    display: block;
    background-color: var(--stokki-primary);
}

.hidden-divider {
    display: block;
    background-color: var(--stokki-transparent);
}

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

.social-media-area {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.card {
    height: auto;
    border-radius: 20px;
    background-color: var(--stokki-white);
    box-shadow: 5px 5px 20px -10px var(--stokki-black);
}

.input-email-area label,
.input-password-area label {
    color: var(--stokki-black);
    font-weight: bold;
    font-size: 1rem;
    font-family: 'RNSSanz ExtraBold';
    margin-bottom: 0.5rem;
}

.input-email-area input,
.input-password-area input {
    border: none;
    height: 40px;
    font-size: 1rem;
    font-family: 'RNSSanz Regular';
    background-color: var(--stokki-white);
}

.input-email-area,
.input-password-area {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    margin-bottom: 1rem;
}

.input-email-area input,
.input-password-area input {
    box-shadow: 5px 5px 20px -10px var(--stokki-black);
}

.btn-confirm-area {
    margin-top: 2rem;
}

.forgot-password-area {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: end;

}

.forgot-password-link {
    font-size: 1rem;
    color: var(--stokki-black);
    border-bottom: 1px solid var(--stokki-black);
    transition: ease-in 300ms;
}

.forgot-password-link:hover {
    color: var(--stokki-secondary);
}

.btn {
    background-color: var(--stokki-primary);
    color: var(--stokki-white);
    cursor: pointer;
    position: static;
    top: 0px;
    transition: ease-in 300ms;
    font-family: 'OpenSans Regular';
    font-size: 1rem;
}

.confirm,
.email,
.whatsapp {
    font-size: 1rem;
    box-shadow: 5px 5px 20px -10px var(--stokki-black);
}

.btn.confirm:hover,
.btn.email:hover,
.btn.whatsapp:hover {
    background-color: var(--stokki-secondary);
    box-shadow: 0 0 0 0 var(--stokki-black);
    position: relative;
    top: 2px;
}

.reset-password .btn:hover {
    background-color: var(--stokki-secondary);
}

.confirm,
.email,
.whatsapp,
.input-email-area input,
.input-password-area input {
    border-radius: 100vw;
}

.confirm {
    width: 100%;
    height: 45px;
    letter-spacing: 0.8px;
}

.email,
.whatsapp {
    width: 120px;
    font-size: 0.9rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 0.8rem 0 0.8rem 0;
}

.reset-password {
    display: flex;
    background-color: var(--stokki-white);
    box-shadow: 5px 5px 20px -10px var(--stokki-black);
}

.reset-password input {
    padding: 0 0 0 1rem;
}

.card-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: start;
    margin-bottom: 2rem;
}

.card-header b {
    font-size: 1rem;
    font-weight: bold;
    color: var(--stokki-primary);
    font-family: 'OpenSans Regular';
}