.login-box {
  background-color: #FFF;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  animation: fadeIn 2s;
  min-height: 30rem;
}

.login-box>header {

  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  padding: 1rem;
  background-color: rgba(0,0,0,.1);
}

.login-box>header>img {
  max-width: 90%;
}

.login-box>header>.title {
  font-size: 2rem;
  font-weight: 600;
}

.login-box>main {
  flex: 2;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.login-box>main .field {
  width: 100%;
  max-width: 35rem;
}
.login-box>main button {
  width: calc(100% - 2rem);
  max-width: 33rem;
  border-radius: 4px;
  max-height: 4rem;
}

.login-box>main button.secondary {
  color: rgba(100,100,100,.7);
  background-color: white;
  font-size: 1rem;
}

.login-box>footer {
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: red;
}

@media(orientation: landscape) {
  .login-box {
    flex-direction: row;
    min-width: 60vw;
    max-height: 60vh;
    display: grid;
    grid-template-areas: "header nav" "header main" "header footer";
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1rem 1fr auto;
  }
  .login-box>header {
    grid-area: header;
    flex: 2;
    background-color: rgba(0,0,0,.1);
  }

  .login-box>nav {
    grid-area: nav;
  }

  .login-box>main {
    flex: 2;
    grid-area: main;
  }

  .login-box>footer {
    grid-area: footer;
  }
}

@media (orientation: landscape) and (max-width: 600px) {
  .login-box {
    height: 100%;
    width: 100%;
  }
}

@media (orientation: portrait) and (max-width: 415px) {
  .login-box {
    height: 100%;
    width: 100%;
  }
}

@media (min-width: 415px) {
  .login-box {
    box-shadow: var(--shadow1);
    border-radius: 8px;
  }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

@keyframes pop {
  from { transform: scale(.8, .8) }
  to   { transform: scale(1, 1) }
}

@keyframes progressBar {

  0% {
    width: 0;
  }
  
  50% {
    width: 100%;
    margin-left: 0;
  }

  100% {
    width: 0;
    margin-left: 100%;
  }
}

.progress-bar {
  width: 100%;
  height: 2px;
}

.progress-bar>.progress {
  width: 50%;
  background-color: red;
  height: 100%;
  border-color: #4A90E2;
  animation: progressBar 1s infinite;
}


