/* FORMULÁRIOS */
.box
{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.form-box
{
    border-radius: 5px;
    overflow: hidden;
    height: 90dvh;
    width: 55dvw;

    display: flex;
    flex-direction: column;
    align-content: center;
    text-align: center;
    align-items: center;

    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);

    background: #ddd;
}

.form-box img
{
    width: 20%;
}

form
{
    width: 100%;
    padding: 2rem 15rem;
}

form .icon-bg
{
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background: var(--c-purple);
    color: var(--c-red);
}

form .mb-4:first-child
{
    display: flex;
    justify-content: center;
}

form .icon-bg i
{
    margin: 1rem;
    font-size: 25pt;
}

form
{
    overflow-y: scroll;
    overflow-x: hidden;
}

#edit-form, form.inner
{
    padding: 2rem 5rem;
}

form .mb-3
{
    text-align: left;
}

/*** MOBILE ***/
@media only screen and (max-width: 768px)
{
    .box
    {
        justify-content: flex-start;
    }

    .form-box
    {
        width: 100dvw;
    }

    .form-collum:first-child
    {
        display: none;
    }

    .form-collum
    {
        width: 100%;
    }

    form
    {
        overflow-y: scroll;
        padding: 2rem 5rem;
    }

    form .d-flex
    {
        flex-direction: column;
    }

    form .d-flex a, form .d-flex button
    {
        margin-bottom: 1rem;
    }

    #edit-form
    {
        padding: 2rem 1rem;
    }
}

/* INPUTS */
input.custom, select.custom, textarea.custom
{
    background-color: #e3e3e3;
    border: none;
    padding: 12px 15px;
    margin: 8px 0;
    width: 100%;
    font-size: 0.8rem;
    transition: all 0.3s;

    border-bottom: 1px solid #000;
}

input.custom:focus, select.custom:focus, textarea.custom:focus
{
    outline: none;
    background: #000;
    border-radius: 5px;
    color: #fff;
    transition: all 0.3s;
}

input.custom.required, select.custom.required, textarea.custom.required
{
    border-bottom: 1px solid red;
}

span.required
{
    color: red; 
}

/*** IMAGE ***/
.logo 
{
    width: 250px;
    margin: 0 auto;
    margin-bottom: 70px;
}

/* BUTTONS */
form .btn-custom
{
    display: inline-block;
    font-weight: 500;
    text-align: center;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    padding: 0.5rem 1rem;
    text-transform: uppercase;
    font-size: 15px;
    text-shadow: 0 1px 3px rgba(0,0,0,0.3);
    letter-spacing: 2px;
    transition: all 0.3s;
    border-radius: 3px;
}

form .btn-custom-form:hover
{
    transform: scale(1.1);
    transition: all 0.3s;
}

/* LETRAS */
form h1, form h2, form h3, form h4, form h5, form h6, form p, form label
{
    font-family: "Montserrat", sans-serif;
    color: black;
}

.title
{
    font-family: "Montserrat", sans-serif;
    text-align: center;
    font-weight: bold;

    font-size: 1.5rem;
    margin-bottom: 1.2rem;
}

.register-info .title
{
    line-height: 23px;
}

.info
{
    font-family: "Montserrat", sans-serif;
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;

    letter-spacing: 1px;
    margin-bottom: 20px;
}

.letter
{
    font-family: "Montserrat", sans-serif;
    text-align: center;
    font-weight: bold;
    text-transform: uppercase;

    font-size: 15px;
    letter-spacing: 1px;
}