.tp-auth-page {
    position: relative;
    z-index: 1;
    width: min(440px, calc(100vw - 32px));
    margin: 0 auto;
  }

  .tp-auth-card {
    border: 1px solid rgba(216, 228, 239, 0.92);
    border-radius: 1.55rem;
  }

  .tp-auth-intro {
    margin-bottom: 1.2rem;
    text-align: center;
  }

  .tp-auth-kicker {
    display: inline-flex;
    margin-bottom: 0.45rem;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }

  .tp-auth-title {
    margin: 0 0 0.45rem;
    color: #081120;
    font-size: 1.58rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.06;
  }

  .tp-auth-subtitle {
    margin: 0;
    color: #5f6f82;
    font-size: 0.95rem;
    line-height: 1.6;
  }

  .tp-auth-login-link,
  .tp-auth-help {
    margin: 1rem 0 0;
    text-align: center;
  }

  .tp-auth-login-link a,
  .tp-auth-help a {
    color: #5f6f82;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
  }

  .tp-auth-login-link a:hover,
  .tp-auth-help a:hover {
    color: #081120;
    text-decoration: underline;
  }

  .tp-auth-card .btn-login-primary {
    min-height: 3rem;
    font-weight: 800;
    letter-spacing: 0.04em;
  }

  .tp-auth-card .form-control,
  .tp-auth-card .input-group-text,
  .tp-auth-card .js-toggle-password {
    min-height: 44px;
  }

  .tp-auth-card .form-control {
    font-size: 1rem;
  }

  .tp-auth-card .input-group {
    flex-wrap: nowrap;
  }

  .tp-auth-card .js-toggle-password {
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .tp-auth-card .icheck-indigo {
    min-height: 44px;
    display: flex;
    align-items: center;
  }

  .tp-auth-card .alert,
  .tp-auth-card a,
  .tp-auth-card label {
    overflow-wrap: anywhere;
  }

  .tp-auth-card .row > .col-8,
  .tp-auth-card .row > .col-4 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .tp-auth-card .row > .col-4 {
    margin-top: 0.9rem;
  }

  @media (max-width: 575.98px) {
    .tp-auth-page {
      width: calc(100vw - 20px);
    }

    .tp-auth-card {
      border-radius: 1.1rem;
    }

    .tp-auth-card .login-card-body {
      padding: 1.25rem;
    }

    .tp-auth-title {
      font-size: 1.35rem;
    }

    .tp-auth-card-head__logo {
      max-width: 164px;
      height: auto;
    }
  }
