.container-login {
    display: flex;
    flex-direction: column;
}

.container-login h2{
   text-align: center;
}


.login-form{
    background: #fff;
    border-radius: 8vw;
    padding: 8dvh 7vw 5vh 7vw;
}

.login-form form{
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-top: 2dvh;
}

.login-form label{
    font-size: 28px;
    margin-left: 24px;
}

.login-form h1 {
    font-size: 48px;
    font-weight: 800;
    letter-spacing: -0.04rem;
    margin-left: 2vw;
    color: #2E332E;
}

.login-form h2 {
    font-size: 7.7vw;
    text-align: center;
    margin-top: 2dvh;
}
.login-form .highlight {
    font-size: 48px;
    font-weight: bold;
    color: #35B728;
}

.login-form p {
   font-size: 3.7vw;
   font-weight: 700;
   text-align: center;
}

.container-login .registration-link{
    margin-top: 2dvw;
}


.login-form .registration-link a {
   font-size: 3.7vw;
   font-weight: 700;
   text-align: center;
   color: #35B728;
   text-decoration: underline;
}


.container-login img {
    display: none;
}

.container-login .error {
    font-size: 28px;
    margin-left: 24px;
    color: #35B828;
    font-weight: 400;
}

@media screen and (min-device-width: 480px) {
    .container-login{
        padding-left: 20%;
        padding-right: 20%;
    }


    .login-form form{
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-top: 20px;
    }

    .login-form h1 {
        font-size: 36px;
    }
    .login-form h2 {
        font-size: 36px;
        text-align: left;
    }

    .login-form label {
        font-size: 14px;
        margin-left: 12px;
    }

    .login-form .highlight {
        font-size: 36px;
        font-weight: bold;
        color: #35B728;
    }

    .login-form input[type="password"],
    .login-form input[type="email"],
    .login-form input[type="text"]{
      font-size: 20px;
      font-weight: 700;
      letter-spacing: -0.02rem;
      color: #2E332E;
      padding: 20px 20px;
      border-radius: 15px;
    }

    .login-form input[type="submit"] {
        padding: 10px;
        height: 70px;
        font-size: 20px;
    }

    .container-login .oauth2-links{
        margin-top: 10px;
    }

    .container-login p {
        font-size: 20px;
        padding: 0;
    }

    .login-form .registration-link a {
       font-size: 20px;
    }

    .container-login .row {
        margin-top: 30px;
    }

    .container-login .error {
        font-size: 20px;
        margin-left: 12px;
    }
}

@media screen and (min-device-width: 992px){
    .container-login {
        padding-left: 25%;
        padding-right: 25%;
    }

    .container-login h2{
        font-size: 36px;
    }

    .login-form {
        margin-top: 5dvh;
        border-radius: 50px;
        padding: 0;
    }

    .container-login .img-container {
        display: flex;
        align-items: flex-end;
        justify-content: center;
        height: 100%;
    }
}

@media screen and (min-device-width: 1200px){
    .container-login {
        padding-left: 10%;
        padding-right: 10%;
    }

    .container-login img {
        display: block;
        width: 90%;
        height: auto;
    }
}