main{
    flex: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: start;
    background-color: transparent; /* Permitir ver el grid del body */
}

.divider {
    width: 100vw;
}

.sect {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;

    & form {
        height: 383px;
        max-height: 60%;
        width: 667px;
        max-width: 85%;
        border-radius: 34px;
        border: 2px solid var(--gris5);
        background-color: var(--gris2);
        display: flex;
        flex-direction: column;
        align-items: center;
        box-sizing: border-box;
    }

    & h2{
        text-align: center;
        height: 42px;
        bottom: 29%;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        justify-content: center;

        color: var(--black);
        font-weight: 562;
        font-size: 26px;
    }

    & svg {
        width: 100%;
        min-height: 2px;
        flex-grow: 0;
        & path {
            stroke: var(--gris5);
        }
    }

    & .bottom {
        width: 100%;
        flex: 4;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-evenly;
        border-radius: 0 0 34px 34px;
        background-color: var(--gris2);

        
        & .campo-input {
            position: relative;
            height: 71px;
            max-height: 30%;
            width: 477px;
            max-width: 85%;
            
            & input{
                all: unset;
                height: 100%;
                width: 100%;
                box-sizing: border-box;
                border-radius: 10px;
                border: 2px solid var(--gris5);
                padding-left: 3%;
                color: var(--black);

                transition: border 500ms ease;

                &:focus {
                    border: 2px solid var(--azul-marginlab);
                }
            }
            & label {
                position: absolute;
                top: 50%;
                left: 3%;
                transform: translateY(-50%);
                background-color: var(--gris2);
                padding: 0px 5px;

                pointer-events: none;
                color: var(--gris5);
                font-size: 20px;

                transition: top 250ms ease, left 250ms ease, font-size 250ms ease;
            }
            input:focus + label, input:valid + label {
                top: 0px;
                left: 5%;
                font-size: 18px;
            }
        }
        & select{
            height: 71px;
            max-height: 30%;
            width: 477px;
            max-width: 85%;
            border-radius: 10px;
            border: 1px solid var(--gris5);
            background-color: var(--white);
            padding: 0 3%;

            font-family: inherit;
            font-size: 25px;
            color: var(--gris5);
            
            &:focus{
                outline: none;
                color: var(--black);
            }
        }

        & button {
            background-color: var(--azul-marginlab);
            background-image: var(--gradient2);
            background-size: 170%;
            background-position: center;
            height: 50px;
            width: 233px;
            max-width: 40%;
            border-radius: 10px;
            border: 0px;

            font-family: 'Jost Variable', system-ui, sans-serif;
            color: var(--gris3);
            font-weight: 562;
            font-size: 25px;

            transition-duration: 250ms;

            &:hover{
                transform: scale(105%);
            }
        }
    }

}

form > * {
    flex: 1;
}
