/* CSS Resets */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: 'Poppins', sans-serif;
  background-color: white;
  color: #123C5D;
}

/* Page CSS */
nav {
  display: flex;
  position: absolute;
  top: 0;
  width: 100%;
  height: 70px;
  padding: 0 20px;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.10);

  a {
    line-height: 0;
    .logo {
      width: 120px;
    }
  }

  .links {
    a {
      font-size: 1rem;
      text-decoration: none;
      color: #123C5D;
    }
  }
}

.main-content {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 100dvh;

  form {
    width: 526px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 32px;

    .title {
      font-size: 1.5rem;
      font-weight: 300;
      margin-bottom: 20px;
    }

    .input-container {
      position: relative;
      display: flex;
      align-items: center;
      width: 80%;
      height: 48px;
      border-radius: 5px;
      padding: 0 24px;
      font-size: .75rem;
      background-color: #697B8F;
      color: white;
      gap: 24px;

      img {
        width: 12px;
        height: 16px;
      }
      
      input {
        border: none;
        width: 100%;
        height: 60%;
        background-color: transparent;
        color: white;
        &::placeholder {
          color: white;
        }
        &:focus {
          outline: none;
          box-sizing: content-box;
          border-bottom: white 2px solid;
        }
      }
    }

    button {
      border-radius: 5px;
      background: #2C3E4C;
      color: white;
      width: 80%;
      height: 48px;
      cursor: pointer;
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      border: none;
      &:hover {
        background-color: #3f4955;
      }
      &:focus {
        outline: 4px solid #abb8c6;
        box-shadow: 0px 0.5px 2px 4px rgba(0, 0, 0, 1);
      }

      img {
        position: absolute;
        right: 24px;
        width: 21px;
        height: 14px;
      }
    }

    .error-message {
      color: red;
      font-weight: 500;
      text-align: center;
    }

    .company-info {
      margin-top: 48px;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      gap: 24px;
      .logo {
        width: 180px;
      }
      p {
        text-align: center;
        font-size: 1rem;
        font-weight: 300;
      }
    }
  }
}

/* Class to be toggled when the user clicks submit button */
.cursor-wait {
  cursor: wait !important;
}