@font-face {
    font-family: DPDFontRegular;
    src: url(../fonts/PlutoSansDPDRegular-Web.woff);
}
  
  @font-face {
    font-family: DPDFontLight;
    src: url(../fonts/PlutoSansDPDLight-Web.woff);
  }
  
  body {
    font-family: DPDFontLight;
    height: 100vh;
    margin: 0;
  }
  
  a:hover {
    color: #dc0032;
  }
  
  .login-page {
    height: 100vh;
    display: flex;
    flex-direction: column;
  }
  
  /* content style */
  main {
    display: flex;
    flex-grow: 1;
    background-image: url(../img/b2b.webp);
    background-size: cover;
  
  }
  #main-keycloak-div{
      display: none;
  }
              
  .login-content {
      position: relative;
      display: flex;
      width: auto;
      min-width: 540px;
      align-items: center;
      height: auto;
      background: white;
      margin: auto;
      flex-wrap: nowrap;
      align-content: center;
      flex-direction: column;
      justify-content: center;
      border-radius: 20px;
      box-shadow: 0px 0px 50px 0px #414042;
      padding: 20px;
      padding-left: 40px;
      padding-right:40px;
      padding-top:40px;
  }
  
  .login-content .login-box {
    width: 386px;
    color: #414042;
    text-align: center;
    margin: 0 auto;
    
  }
  
  .login-content .register-box {
    color: #414042;
    text-align: center;
    margin: 0 auto;
    width: 500px;
  }
  
  
  .login-content h1 {
    color: #414042;
    font-size: 24px;
    line-height: 29px;
    margin-bottom: 10px;
  }
  
  .login-header {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .dpd-login-logo {
    height: 93px;
  }
  
  .bu-logo {
    display: none;
    margin: 0px !important;
    padding: 20px !important;
  }
  
  .login-content .login-box h1 {
    font-size: 24px;
    line-height: 29px;
    margin-bottom: 10px;
  }
  
  .login-content .login-box p {
    font-size: 14px;
    line-height: 17px;
    margin-bottom: 34px;
  }
  
  .login-content .login-box .dif-login {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 230px;
    margin: 0 auto 20px;
  }
  
  .login-content .login-box .dif-login a {
    display: block;
    width: 62px;
    height: 62px;
  }
  
  .dif-login a.apple-login {
    background-image: url("../img/apple.svg");
  }
  
  .dif-login a.facebook-login {
    background-image: url("../img/facebook.svg");
  }
  
  .dif-login a.google-login {
    background-image: url("../img/google.svg");
  }
  
  
  
  /* login form */
  .login-form .form-group {
    margin-bottom: 20px;
  }
  
  .form-floating>.form-control {
    background-color: #ffffff;
    border: 1px solid #808285;
    width: 100%;
    height: 45px;
    margin: 0;
    padding: 15px 10px;
    color: #808285;
    font-size: 12px;
    line-height: 16px;
    text-align: left;
    border-radius: 0;
    cursor: text;
    position: relative;
   
  }
  
  .form-floating>.form-control[value] {
    color:#414042;
  }
  
  .delete-icon {
    right: 0.5rem;
    width: 25px;
    position: absolute;
    background-image: url('../img/clear_black_24dp.svg');
    height: 25px;
    z-index: 1;
    top: 0.5rem;
    cursor: pointer;
  }
  
  .delete-icon.hide{
    visibility: hidden;
  }
  
  .form-control:focus {
    box-shadow: none;
  }
  
  .form-floating.error label,
  .form-floating.error input {
    border-color: #dc0032 !important;
    color: #dc0032 !important;
    width: 100%;
  }
  
  .form-floating.error label {
    border: 0;
  }
  
  .login-form label {
    color: #808285;
    font-size: 13px;
    line-height: 16px;
    text-align: left;
  }
  
  .form-floating>label {
    padding: 15px 10px;
  }
  
  
  .login-form .password .see-password .unsee-password {
    position: absolute;
    top: 2px;
    right: 2px;
  }
  
  .hr {
    color: #414042;
    font-family: DPDFontRegular;
    font-size: 13px;
    line-height: 17px;
    text-align: center;
    margin-bottom: 20px;
    position: relative;
  }
  
  .hr::before,
  .hr::after {
    content: "";
    display: block;
    height: 1px;
    width: 41.5%;
    background: #000;
    position: absolute;
    top: 50%;
  }
  
  .hr::after {
    right: 0;
  }
  
  
  .submit-row a span,
  .registration-row a span {
    color: #dc0032;
  }
  
  .submit-row button {
    height: 45px;
    /* border-radius: 5px; */
    color: #ffffff;
    font-family: DPDFontRegular;
    font-size: 14px;
    line-height: 17px;
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
  }
  
  .pf-m-primary,
  .btn-primary,
  .btn-danger {
    background-color: #dc0032;
    border-color: #dc0032;
    color: #fff;
    border: 1px;
    /* border-radius: 0.5rem; */
    background-image: none;
    background-repeat: no-repeat;
    line-height: 1.8;
  }
  
  .pf-m-primary:hover,
  .btn-primary:hover,
  .btn-danger:hover {
    background-color: #a90034;
    border-color: #a90034;
    color: #fff;
  }
  
  .img-container {
    background-image: url("../img/delivery_bicycle_5.jpg");
    background-size: cover;
    flex-grow: 1;
  }
  
  .login-pf-settings {
    display: flex
  }
  
  .login-pf-settings > div {
    flex-grow: 1;
  }
  
  .login-pf-settings > div:first-of-type {
    margin-right: 10px;
  }
  
  .login-pf-settings > div:last-of-type {
    margin-left: 10px;
  }
  
  
  #kc-content {
    margin-top: 20px;
  }
  
  #kc-decline {
    background-color: #808285;
    justify-content: center;
  }
  
  #kc-terms-text {
    text-align: left
  }
  
  
  /* footer style */
  footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #cac4be;
    min-height: 63px;
    width: 100%;
    color: #414042;
    font-size: 11px;
  }
  
  .dpdg-logo-redgrad-rgb {
    display: inline-block;
    width: 81px;
    height: 21px;
  }
  
  .imprint-privacy,
  .dpd-2021 {
    margin: 0 36px;
  }
  
  .imprint-privacy {
    line-height: 18px;
    text-align: right;
  }
  
  .imprint-privacy a {
    color: #414042;
    text-decoration: none;
  }
  
  .imprint-privacy a:first-of-type {
    color: #414042;
    margin-right: 7px;
    padding-right: 10px;
  }
  
  .dpd-2021 {
    display: flex;
    align-items: center;
    line-height: 14px;
    text-align: left;
  }
  
  .dpd-2021 span {
    padding-top: 3px;
    width: max-content;
  }
  
  .dpd-2021 img {
    padding-right: 6px;
  }
  
  .has-error {
    color: #dc0032;
    padding: 0.1rem 0;
    font-size: 13px;
    display: block;
    text-align: left;
  }
  
  .text-start {
    font-size: 20px;
    margin: 20px 0px;
  }
  
  .text-start label.mandatory{
    font-size: 11px;
  }
  
  .text-start span {
      color: #dc0032;
  }
  
  .asterisk {
    color: red;
  }
  
  /* alerts */
  .alert {
    border-radius: 0;
    padding: 0.5rem;
    font-size: 13px;
  }
  .alert-danger {
    background-color: transparent;
    border-color: #dc0032;
  }
  
  .form-check .form-check-input[type=checkbox] {
    border-radius: 0;
    border-color: #808285;
    margin-top: -1px;
  }
  .form-check .form-check-input[type=checkbox]:focus {
    outline: 0;
    box-shadow: none;
  }
  
  .form-check-input:checked {
    background-color: black;
  }
  
  .form-check-input:checked[type=checkbox] {
    filter: invert(1);
  }
  
  .form-check .form-check-label a {
    color: #808285;
  }
  .form-check .form-check-label a:hover {
    color: #dc0032;
  }
  .form-check.error label,
  .form-check.error input {
    color: #dc0032 !important;
    border-color: #dc0032 !important;
  }
  
  .error-box {
    border: 1px solid #dc0032;
    margin: 10x 0px;
    color: #dc0032;
  }
  
  .error-box li {
    margin: 5px 0px;
    line-height: 12px;
  }
  
  .show {
    display: revert;
  }
  
  
  /* Change autocomplete styles in WebKit */
  input:-webkit-autofill,
  input:-webkit-autofill::first-line,
  input:-webkit-autofill:hover, 
  input:-webkit-autofill:focus,
  textarea:-webkit-autofill,
  textarea:-webkit-autofill:hover,
  textarea:-webkit-autofill:focus,
  select:-webkit-autofill,
  select:-webkit-autofill:hover,
  select:-webkit-autofill:focus {
    border: 1px solid #414042;
    -webkit-text-fill-color: #414042;
    -webkit-box-shadow: 0 0 0px 1000px #efedeb inset;
    transition: background-color 5000s ease-in-out 0s;
    font-family: DPDFontLight !important;
  }
  
  @media (max-width: 1024px) { 
    .login-content {
      min-width: auto;
    }
  }
  
  @media (max-width: 991px) {
    .login-content {
      width: 100%;
      height: 100%;
      border-radius: 0;
      box-shadow: none;
    }
    .delivery-bicycle {
      display: none;
    }
  }
  
  @media (max-width: 425px) {
    .login-content .login-box,
    .login-content .register-box {
      width: auto;
    }
  
    .login-content {
      padding: 0px 10px;
    }
  }