@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;400;700&display=swap');
:root{
    --main-color: #ffffff;
    --secondary-color: #C58DDC;
    --very-light-color: #E8EDFA;
    --very-light-color-second: #F5F7FD;
    --text-color-mild: #AFBDE2;
    --text-color-light: #58627C;
    --text-color-dark: #2F3135;
    --text-color-blue: #4A90E2;
    --disabled-color: #ADB6D0;
    --main-button-color: #2463C7;
    --button-color: #8ab7dc;
    --border-color: #979797;
    --input-background: #f2f3f7;
}
*,*::after, *::before{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body{
    font-family: 'Lato', sans-serif;
}
input[type="text"],
input[type="tel"],
input[type="email"],
button{
    appearance: none;
    border: none;
    outline: none;
    border-radius: 4px;
}
input[type='radio']{
    background-color: lawngreen;
}
.error input{
    border: 1px solid crimson !important;
}
.error .small-error{
    display: block;
}
.small-error{
    display: none;
    position: absolute;
    top: 10px;
    right: 0;
    color: crimson;
}
.main{
    max-width: 450px;
    width: 100%;
    margin: 0 auto;
    padding: 8px;
}
.big-title{
    color: var(--text-color-dark);
    text-align: left;
}
.small-subtext{
    margin: 12px 0;
    font-size: .9rem;
    line-height: 1.5rem;
    color: var(--text-color-light)
}
#sign-up-form{
    width: 100%;
    color: var(--text-color-dark);
}
#sign-up-form input{
    padding: 10px;
    background-color: var(--input-background);
    border: 1px solid var(--text-color-mild);
}
.form-title{
    font-size: 1.25rem;
    font-weight: 400;
    margin: 10px 0;
    margin-top: 26px;
}
.text-input{
    position: relative;
    display: flex;
    flex-direction: column;
}
.optional-input{
    position: absolute;
    right:0;
    top: 12px;
    font-size: .7rem;
}
.text-bold{
    display: inline-block;
    margin: 18px 0;
    font-weight: 700;
}
.radio-input{
    margin-bottom: 12px;
}
.text-input input[type=text]{
    background-color: var(--input-background);
}
.text-input label{
    margin: 12px 0;
    margin-bottom: 4px;
    font-size: .75rem;
    color: var(--text-color);
}
.horizontal-placement{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.small-group .text-input{
    width: calc(100% / 3 - 4px);
}
.big-group .text-input{
    width: calc(100% / 2 - 8px);
}
.submit-btn{
    display: inline-block;
    width: 100%;
    padding: 12px;
    color: honeydew;
    background-color: green;
    margin: 24px 0;
}
.submit-btn:active{
    opacity: 0.7;
}


