/* Login Page Custom Styles - Bootstrap 3 Compatible */

body {
  font-family: "Roboto", sans-serif;
  background-color: #f8fafb;
}

p {
  color: #b3b3b3;
  font-weight: 300;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto", sans-serif;
}

a {
  transition: .3s all ease;
}

a:hover {
  text-decoration: none !important;
}

.content {
  padding: 7rem 0;
  min-height: 100vh;
  display: flex;
  align-items: center;
}

@media (max-width: 767px) {
  .content {
    padding: 3rem 0;
  }
}

h2 {
  font-size: 20px;
}

.contents h3 {
  margin-bottom: 20px;
}

.contents p.mb-4 {
  margin-bottom: 30px;
}

/* Responsive Image */
.img-responsive.center-block {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

@media (max-width: 991px) {
  .img-responsive.center-block {
    margin-bottom: 30px;
    max-width: 80%;
  }
}

@media (max-width: 767px) {
  .img-responsive.center-block {
    max-width: 60%;
    margin-bottom: 40px;
  }
}

/* Form Styling */

.content .contents .form-group,
.content .bg .form-group {
  position: relative;
}

.content .contents .form-group label,
.content .bg .form-group label {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
}

.content .contents .form-group input,
.content .bg .form-group input {
  background: transparent;
  border-bottom: 1px solid #ccc;
}

.content .contents .form-group.first,
.content .bg .form-group.first {
  border-top-left-radius: 7px;
  border-top-right-radius: 7px;
}

.content .contents .form-group.last,
.content .bg .form-group.last {
  border-bottom-left-radius: 7px;
  border-bottom-right-radius: 7px;
}

.content .contents .form-group label,
.content .bg .form-group label {
  font-size: 12px;
  display: block;
  margin-bottom: 0;
  color: #b3b3b3;
}

.content .contents .form-group.focus,
.content .bg .form-group.focus {
  background: #fff;
}

.content .contents .form-group.field--not-empty label,
.content .bg .form-group.field--not-empty label {
  margin-top: -25px;
}

.content .contents .form-control,
.content .bg .form-control {
  border: none;
  padding: 0;
  font-size: 20px;
  border-radius: 0;
}

.content .contents .form-control:active,
.content .contents .form-control:focus,
.content .bg .form-control:active,
.content .bg .form-control:focus {
  outline: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.help-block {
  color: #a94442;
  font-size: 13px;
  margin-top: 5px;
}

/* Button */
.btn-primary {
  background: #bb2c32;
  border: none;
  height: 48px;
  padding-left: 30px;
  padding-right: 30px;
  font-size: 16px;
  font-weight: 500;
  transition: .3s all ease;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background: #a1272d !important;
  border: none !important;
  box-shadow: none !important;
}

/* Forgot Password Link */
.forgot-pass {
  font-size: 14px;
  color: #888;
  text-decoration: underline;
}

.forgot-pass:hover {
  color: #bb2c32;
}

/* Custom Checkbox */
.control {
  display: block;
  position: relative;
  padding-left: 30px;
  margin-bottom: 0;
  cursor: pointer;
  font-size: 14px;
}

.control .caption {
  position: relative;
  top: .2rem;
  color: #888;
}

.control input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.control__indicator {
  position: absolute;
  top: 2px;
  left: 0;
  height: 20px;
  width: 20px;
  background: #e6e6e6;
  border-radius: 4px;
  transition: .3s all ease;
}

.control:hover input~.control__indicator,
.control input:focus~.control__indicator {
  background: #ccc;
}

.control input:checked~.control__indicator {
  background: #bb2c32;
}

.control:hover input:not([disabled]):checked~.control__indicator,
.control input:checked:focus~.control__indicator {
  background: #a1272d;
}

.control__indicator:after {
  content: '\2713';
  position: absolute;
  display: none;
  font-size: 14px;
  transition: .3s all ease;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-weight: bold;
}

.control input:checked~.control__indicator:after {
  display: block;
}

/* Clearfix utility */
.clearfix-login {
  margin-bottom: 25px;
  overflow: hidden;
}

@media (max-width: 767px) {
  .clearfix-login {
    text-align: center;
  }

  .clearfix-login .pull-left,
  .clearfix-login .pull-right {
    float: none !important;
    display: block;
    margin-bottom: 15px;
  }
}

/* Alert Styling */
.alert {
  border-radius: 4px;
  margin-bottom: 20px;
}

.alert h4 {
  margin-top: 0;
  margin-bottom: 5px;
}

/* Column adjustments for smaller screens */
@media (max-width: 991px) {
  .contents {
    margin-top: 30px;
  }
}

@media (min-width: 992px) {
  .contents .col-md-10 {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
}