.jd-login {
  background: url(../img/bg.jpg) no-repeat center center fixed;
  background-size: cover; }

@media (max-width: 767px) {
  .jd-login {
    background: white; } }

body {
  font-family: 'Raleway', sans-serif; }

.jd-page-header {
  margin-top: 25px; }

.jd-content {
  padding-left: 30px;
  padding-right: 30px;
  margin-bottom: 30px; }
  .jd-content #kc-login {
    margin-top: 30px; }
  .jd-content p {
    margin-bottom: 15px; }
  .jd-content .login-pf-social-link p {
    margin-bottom: 0px; }

.jd-login-wrapper {
  position: absolute;
  margin: 100px 0;
  top: 0;
  left: 50%;
  transform: translateX(-50%); }
  @media (max-width: 767px) {
    .jd-login-wrapper {
      margin: 0;
      position: initial;
      top: initial;
      left: initial;
      transform: initial; } }
  .jd-login-wrapper .container {
    background: white;
    width: 600px;
    border-radius: 3px; }
    @media (max-width: 767px) {
      .jd-login-wrapper .container {
        width: 100%; } }
  .jd-login-wrapper .main {
    padding: 25px 30px; }
    @media (max-width: 767px) {
      .jd-login-wrapper .main {
        padding: 30px 20px; } }
  .jd-login-wrapper .logo {
    width: 100%;
    max-width: 300px; }
  .jd-login-wrapper .alert {
    text-align: center;
    word-wrap: break-word; }
  .jd-login-wrapper #alert-validation ul {
    list-style: none;
    padding: 0; }
  .jd-login-wrapper h1 {
    font-size: 30px; }
  .jd-login-wrapper h1, .jd-login-wrapper h2 {
    margin-bottom: 30px; }
  .jd-login-wrapper p, .jd-login-wrapper h1, .jd-login-wrapper h2 {
    text-align: center; }
  .jd-login-wrapper p {
    word-wrap: break-word; }
  .jd-login-wrapper .form-group .btn:first-of-type {
    margin-top: 25px; }
  .jd-login-wrapper .form-group .required.control-label:after {
    color: #a94442;
    content: "*"; }
  .jd-login-wrapper .required-label {
    text-align: left; }
    .jd-login-wrapper .required-label:before {
      color: #a94442;
      content: "*"; }
  .jd-login-wrapper #kc-terms-text pre {
    white-space: pre-wrap;
    word-break: keep-all; }
  .jd-login-wrapper #kc-terms-text p {
    text-align: left; }

.checkbox label:after, .radio label:after {
  content: '';
  display: table;
  clear: both; }

.checkbox .cr {
  position: relative;
  display: inline-block;
  border: 1px solid #a9a9a9;
  border-radius: .25em;
  width: 1.3em;
  height: 1.3em;
  float: left;
  margin-right: .5em; }

.radio .cr {
  position: relative;
  display: inline-block;
  border: 1px solid #a9a9a9;
  border-radius: .25em;
  width: 1.3em;
  height: 1.3em;
  float: left;
  margin-right: .5em;
  border-radius: 50%; }

.checkbox .cr .cr-icon {
  position: absolute;
  font-size: .8em;
  line-height: 0;
  top: 50%;
  left: 20%;
  color: #3bae69; }

.radio .cr .cr-icon {
  position: absolute;
  font-size: .8em;
  line-height: 0;
  top: 50%;
  left: 20%;
  margin-left: 0.04em;
  color: #3bae69; }

.checkbox label input[type="checkbox"], .radio label input[type="radio"] {
  display: none; }

.checkbox label input[type="checkbox"] + .cr > .cr-icon, .radio label input[type="radio"] + .cr > .cr-icon {
  transform: scale(3) rotateZ(-20deg);
  opacity: 0;
  transition: all .3s ease-in; }

.checkbox label input[type="checkbox"]:checked + .cr > .cr-icon, .radio label input[type="radio"]:checked + .cr > .cr-icon {
  transform: scale(1) rotateZ(0deg);
  opacity: 1; }

.checkbox label input[type="checkbox"]:disabled + .cr, .radio label input[type="radio"]:disabled + .cr {
  opacity: .5; }

.alert-error {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1; }

.btn-default:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74; }

.btn-green-outline {
  border: 3px solid #3bae69; }

.login-pf-social-link-spacing {
  padding-bottom: 20px; }

.logo-social-login {
  width: 100%;
  max-width: 300%; }

.logo-inline {
  display: inline; }
