@font-face {
  font-family: Neo;
  src: url('../fonts/AllianzNeoW02-Light.eot');
  src: url("../fonts/AllianzNeoW02-Light.eot?#iefix") format("embedded-opentype"), url('../fonts/AllianzNeoW02-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: Neo;
  src: url('../fonts/AllianzNeoW02-Regular.eot');
  src: url("../fonts/AllianzNeoW02-Regular.eot?#iefix") format("embedded-opentype"), url('../fonts/AllianzNeoW02-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
}

html {
  font-size: 16px;
}

body {
  font-family: 'Neo', 'Arial', sans-serif !important;
  font-style: normal;
  font-weight: 300 !important;
  color: #414141 !important;
  font-size: 0.8125rem !important;
}

html, body {
  margin: 0;
  padding: 0;
}
h4.title {
  color: #005cbf;
  font-size: 1rem;
}

.ks-form-group {
  position: relative;
  max-width: 350px;
  margin-bottom: 2rem;
}

.form-max-width {
  max-width: 350px;
}

/* Underline */

.bar {
  position: relative;
  display: block;
  width: 100%;
}

.bar:before, .bar:after {
  content: '';
  height: 1px;
  width: 0;
  bottom: 0;
  position: absolute;
  background: #0065AE;
  transition: all 0.2s ease;
}

.bar:before {
  left: 50%;
}

.bar:after {
  right: 50%;
}

.barError {
  position: relative;
  display: block;
  width: 100%;
}

.barError:before, .barError:after {
  content: '';
  height: 1px;
  width: 100%;
  bottom: 0.05rem;
  position: absolute;
  background: #dd435b !important;
}

/* active */

input:focus ~ .bar:before, input:focus ~ .bar:after {
  width: 50%;
}

/* Highlight */

.highlight {
  position: absolute;
  height: 60%;
  width: 100px;
  top: 25%;
  left: 0;
  pointer-events: none;
  opacity: 0.5;
  font-size: 0.8125rem;
  font-weight: 400;
}

/* Ripples container */

.ripples {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: transparent;
}

/* Ripples circle */

.ripplesCircle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: #E0E0E0;
}

.ripples.is-active .ripplesCircle {
  animation: ripples .4s ease-in;
}

/* Ripples animation */

@keyframes ripples {
  0% {
    opacity: 0;
  }

  25% {
    opacity: 1;
  }

  100% {
    width: 200%;
    padding-bottom: 200%;
    opacity: 0;
  }
}

footer {
  text-align: center;
}

footer p {
  color: #888888;
  font-size: 0.8125rem;
  letter-spacing: 0.025rem;
}

footer img {
  width: 80px;
  transition: all .2s ease;
}

footer img:hover {
  opacity: .83;
}

footer img:focus, footer a:focus {
  outline: none;
}

div.h1-header {
  font-size: 1.375rem;
  padding-bottom: 1em;
  font-weight: 300;
}

div.h2-header {
  font-size: 1.125rem;
  padding-bottom: 1em;
  font-weight: 300;
}

.center-content {
  margin-left: auto;
  margin-right: auto;
}

a.syn-link {
  color: #0065AE;
  font-size: 0.8125rem;
  padding: 0;
  border: 0;
  vertical-align: inherit;
}

a.syn-link:hover {
  color: #095592;
}

header.app-form-header {
  position: absolute;
  right: 0;
  top: 0;
}

.app-login {
  margin-top: auto;
  margin-bottom: auto;
}

.kc-form {
  height: 100%;
}

.full-screen-container {
  height: 100vh;
  padding: 0;
  margin: 0 !important;
}

.syn-margin-bottom {
  margin-bottom: 3.5rem;
}

.flex-center-container {
  display: flex;
  align-items: center;
}

.flex-center-container > span {
  font-size: 0.875rem;
}

/* from bootstrap alert-danger */
.alert-error {
  background-color: #f2dede;
  border-color: #ebcccc;
  color: #DD435B;
}

.kcFormGroupClassLast {
  margin-bottom: 0.5em;
}

.remember-me-label {
  padding-left: 1.5em;
}

.logo {
  width: 140px;
  height: 32px;
}

/** ASIDE **/
div.login-left-container {
  min-height: 500px;
}

button.btn-link {
  color: white;
  font-size: 0.8125rem;
}

button.btn-link:hover {
  color: white;
}

/** MODALS **/
div.modal {
  line-height: 1.2;
}

div.modal-backdrop.show {
  opacity: 0;
}

div.modal, .modal-backdrop {
  position: absolute;
}

.after_modal_appended {
  position: relative;
}

div.modal-body {
  padding: 1.875rem;
}

div.modal-header {
  padding: 0.9375rem 1.5rem 0.9375rem 0.9375rem;
}

div.modal-content {
  border: none;
  border-radius: 0.3125rem;
}

h5.modal-title {
  font-size: 1rem;
  font-weight: 600;
  color: #0065AE;
  padding-top: 0.9375rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}

/** BUTTONS **/
.btn-syn {
  padding: calc((2.125rem - 1.3125rem - 2px) / 2) 2rem !important;
  background-color: #0065AE;
  color: white;
  font-size: 0.875rem !important;
}

input.btn-syn:hover {
  background-color: #095592;
}

input.btn-syn:focus {
  box-shadow: none !important;
}

.btn-right {
  margin-left: 1rem;
}

.btn-aside {
  background: transparent;
  border-color: white !important;
  color: white;
}

.btn-aside:hover {
  background: white;
  color: #0071C3 !important;
}

/** password */
.password-toggler {
  position: absolute;
  top: 1rem;
  right: 0;
  color: #888888;
  font-size: 1rem;
}

input.toggle-visibility-password {
  padding-right: 1.5rem;
}

/** FLAGS */
.flag {
  -webkit-box-shadow: 1px 1px 5px 1px #CCCCCC;
  -moz-box-shadow: 1px 1px 5px 1px #CCCCCC;
  box-shadow: 1px 1px 5px 1px #CCCCCC;
  border-radius: 17px;
  border: 1px solid white;
  height: 18px;
  width: 17px;
}

/** carousel **/

.carousel .carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 40px;
  left: 0;
  z-index: 15;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel .carousel-links {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel .carousel-indicators li {
  width: .625rem;
  height: .625rem;
  cursor: pointer;
  border-radius: 50%;
}

.carousel .carousel-indicators li.active {
  opacity: 1;
}

.carousel-indicators li {
  box-sizing: content-box;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity .6s ease;
}

.carousel-inner .carousel-item .carousel-caption {
  left: 50%;
  top: 50%;
  bottom: 0;
  padding: 0;
  text-align: left;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

.carousel-inner .carousel-item .carousel-caption .header {
  font-size: 2.1875rem;
  font-weight: 400;
}

.carousel-inner .carousel-item .carousel-caption .sub-header {
  margin-bottom: 1.5rem;
  width: 25rem;
  font-weight: normal;
  font-size: 0.875rem;
}


.carousel-item div.view {
  width: 100%;
  height: 100vh;
  max-height: 1080px;
  align-self: center;
}

.carousel-item div.view.debt-analysis {
  background: url('../img/bg_login_debt_analysis.jpg') no-repeat center;
}

.carousel-item div.view.insurance {
  background: url('../img/bg_login_insurance.jpg') no-repeat center;
}


.footer-mobile {
  bottom: 0;
  max-height: 10rem;
  position: absolute;
  width: 100%;

  background: rgb(0, 101, 174);
  background: linear-gradient(180deg, rgba(0, 101, 174, 1) 0%, rgba(25, 80, 137, 1) 100%);
}

.footer-mobile .footer-links {
  max-height: 10rem;
  display: flex;
  flex-flow: column;
  bottom: 20px;
}

/* 1080px - background image height (.carousel-item)  */
@media(min-height: 1080px)  {
  .above-full-hd-carousel-container {
    margin: 0;
    position: absolute !important;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 41.66666%;
  }
}
