.nat-works-login {
  min-height: 100vh;
  background: #f4f7fb;
}

.nat-works-login__shell {
  min-height: 100vh;
  display: flex;
  align-items: center;
  padding-top: 32px;
  padding-bottom: 32px;
}

.nat-works-login__layout {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(320px, 420px);
  align-items: center;
  gap: 48px;
}

.nat-works-login__brand {
  display: flex;
  justify-content: center;
}

.nat-works-login__logo {
  display: block;
  width: min(100%, 460px);
  height: auto;
}

.nat-works-login__form-panel {
  width: 100%;
}

.nat-works-login__card {
  width: 100%;
  background: #fff;
  border: 1px solid #dfe6f0;
  border-radius: 8px;
  box-shadow: 0 18px 44px rgba(20, 39, 74, 0.12);
}

.nat-works-login__card-body {
  padding: 32px;
}

.nat-works-login__title {
  margin-bottom: 24px;
  color: #17233c;
  font-weight: 700;
}

.nat-works-login .form-label {
  color: #17233c;
  font-weight: 600;
}

.nat-works-login .form-control {
  min-height: 44px;
  border-color: #cfd8e6;
}

.nat-works-login .form-control:focus {
  border-color: #0d6efd;
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.16);
}

.nat-works-login .btn-app--primary {
  min-height: 44px;
  color: #fff;
  background: #0b5ed7;
  border-color: #0b5ed7;
  font-weight: 700;
}

.nat-works-login .btn-app--primary:hover,
.nat-works-login .btn-app--primary:focus-visible {
  color: #fff;
  background: #094fb8;
  border-color: #094fb8;
}

@media (max-width: 767.98px) {
  .nat-works-login__shell {
    align-items: flex-start;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .nat-works-login__layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .nat-works-login__logo {
    max-width: 320px;
  }

  .nat-works-login__card-body {
    padding: 24px;
  }
}
