@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100;0,9..40,200;0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;0,9..40,900;0,9..40,1000;1,9..40,100;1,9..40,200;1,9..40,300;1,9..40,400;1,9..40,500;1,9..40,600;1,9..40,700;1,9..40,800;1,9..40,900;1,9..40,1000&display=swap');

* {
  margin: 0;
  font-family: "Montserrat";
}

body {
  display: flex;
  flex-direction: column;
  background-color: white;
  width: 100%;
  height: 100dvh;
  overflow: hidden;
}

input::-ms-reveal,
input::-ms-clear {
  display: none;
}

.main {
  margin: auto;
  width: 20vw;
  border-radius: 10px;
  box-shadow: 0 20px 50px #00000053;
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.main-one{
  animation: main-one;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes main-one {
  0% {
    top: 50%;
  }
  10% {
    top: 52%;
  }
  100% {
    top: -50%;
  }
}

.main-two{
  animation: main-two;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes main-two {
  0% {
    top: -50%;
  }
  100% {
    top: 50%;
  }
}

.forgot-password-main {
  margin: auto;
  border-radius: 10px;
  box-shadow: 0 20px 50px #00000053;
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 150%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 20px;
}

.forgot-password-one{
  animation: forgot-password-one;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes forgot-password-one {
  0% {
    top: 150%;
  }
  100% {
    top: 50%;
  }
}

.forgot-password-two{
  animation: forgot-password-two;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}

@keyframes forgot-password-two {
  0% {
    top: 50%;
  }
  10% {
    top: 48%;
  }
  100% {
    top: 150%;
  }
}

.row {
  margin: 0 auto;
  display: flex;
  width: 90%;
}

.column {
  margin: auto;
  display: flex;
  flex-direction: column;
}

.logo {
  cursor: pointer;
  margin: 2vh auto 0 auto;
  border-radius: 5px;
  width: 7vw;
  filter: drop-shadow(0 10px 20px #097d5460);
}

.general-title{
  font-family: "Montserrat";
  font-size: 0.8vw;
  color: #7c7c7c;
  font-weight: 600;
  margin: 0 auto 1vh auto;
}

.general-title-small{
  font-family: "Montserrat";
  font-size: 0.7vw;
  color: #7c7c7cce;
  font-weight: 500;
  margin: 0 auto 0 auto;
  width: 15vw;
}

.inputTitle {
  font-family: "Montserrat";
  font-size: 0.7vw;
  color: #7c7c7c;
  font-weight: 600;
  margin-top: 1vh;
  text-align: left;
}

.input {
  background-color: #f1f1f1;
  border: 1px #c0c0c0 solid;
  width: 15vw;
  height: 2.5vh;
  border-radius: 3px;
  display: flex;
  margin: 0 auto auto auto;
}

.small {
  width: 8vw !important;
}

.red{
  color: #d75f40;
}

*:focus {
  outline: none;
}

#pulsanteRegistrazione {
  width: 50%;
  height: 5vh;
  margin: auto auto 2vh auto;
  border: none;
  border-radius: 4px;
  font-family: "Montserrat";
  background-color: #259870;
  color: white;
  font-weight: 800;
  font-size: 1vw;
  cursor: pointer;
  padding-left: 10px;
  padding-right: 10px;
  transition: 0.3s;
}

#pulsanteRegistrazione:hover {
  box-shadow: 0 0 10px #009762c5;
  transition: 0.3s;
}

.subtitle {
  font-family: "Montserrat";
  font-size: 0.6vw;
  color: #7c7c7cce;
  font-weight: 600;
  transition: 0.3s;
}

.show-password{
  display: flex;
  margin: 1vh 0;
  cursor: pointer;
  user-select: none;
}

.show-password span{
  margin: auto 0 auto 5px;
  cursor: pointer;
}

.show-password input{
  cursor: pointer;
  margin: auto 0;
  outline: none;
}

.forgot-password {
  font-family: "Montserrat";
  font-size: 0.6vw;
  color: #7c7c7cce;
  font-weight: 600;
  margin: 1vh auto 1vh auto;
  cursor: pointer;
  transition: 0.3s;
}

.comment {
  font-family: "Montserrat";
  font-size: 0.7vw;
  color: #c52b2bce;
  font-weight: 600;
  margin: 1vh auto 1vh auto;
  transition: 0.3s;
  text-align: justify;
}

.forgot-password:hover {
  color: #7c7c7c;
  transition: 0.3s;
}

#codiceFiscaleReset{
  background-color: #f1f1f1;
  border: 1px #c0c0c0 solid;
  width: 15vw;
  height: 2.5vh;
  border-radius: 3px;
  display: flex;
  margin: 0 auto auto auto;
  box-sizing: border-box;
}

#resetpasswordbutton{
  padding: 10px;
  box-sizing: border-box;
  margin: auto auto 0 auto;
  border: none;
  border-radius: 4px;
  font-family: "Montserrat";
  background-color: #259870;
  color: white;
  font-weight: 800;
  font-size: 1vw;
  cursor: pointer;
  padding-left: 10px;
  padding-right: 10px;
  transition: 0.3s;
}

#resetpasswordbutton:hover{
  box-shadow: 0 0 10px #009762c5;
  transition: 0.3s;
}
.change-login{
  margin: 1vh 1vw 1vh auto;
  font-family: "Montserrat";
  font-size: 0.6vw;
  color: #7c7c7cce;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s;
}
.whitespace{
  height: 1vh;
  width: 100%;
}
.logintype{
  margin: 0 auto 1vw auto;
  font-family: "Montserrat";
  font-size: 1vw;
  font-weight: 500;
  color: #256d54;
}
.admin-logo{
  position: absolute;
  width: 2.5vw;
  top: 2vh;
  right: 3vw;
  filter: drop-shadow(0 0px 10px #097d544a);
}

.block{
  width: 100dvw;
  height: 100dvh;
  display: flex;
  margin: 0;
  flex-direction: column;
}

.block span{
  margin: auto;
  font-size: 3em;
  font-weight: 500;
  padding: 10%;
  padding-top: 0;
  padding-bottom: 0;
  box-sizing: border-box;
}

.block img{
  width: 20%;
  bottom: 2vh;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
}