@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root {
    /* Primary colors */
    --primaryBlue: #31b9cf;
    --primaryDarkBlue: #107889;
    --primaryBlack: #464647;
    /* Secondary colors */
    --secondaryBlue: #E6EFDF;
    --secondaryWhite: #FBFBFB;
    --secondaryGray: #F0F0F0;
    --white: #FFFFFF;
    /* Font colors */
    --textOffColor: #757575;
    --linkColor: #31b9cf;
    --buttonColor: #31b9cf;
    --backgroundBlue: #E7EFE0;
    /* Space between */
    --spaceBetweenElementsS: 15px;
    --spaceBetweenElements: 20px;
    --spaceBetweenTitleAndText: 25px;
    --spaceBetweenTextAndButtons: 30px;
    --spaceBetweenColumns: 40px;
    --spaceBetweenTextAndSection: 70px;
    --spaceBetweenBlocAndText: 100px;
    --spaceBetweenSections: 150px;
  }

  /* Fonts */
  .mainTitle, #kc-header-wrapper {
    color: var(--primaryBlack);
    line-height: 1em;
    font-size: 28px;
    font-family: "Montserrat";
    text-transform: uppercase;
    font-weight: 800
  }

  .secondaryTitle, #kc-page-title {
    color: var(--linkColor);
    line-height: 1em;
    font-size: 23px;
    font-family: "Barlow";
    font-weight: 600;
  }

  .header {
    color: var(--primaryBlack);
    line-height: 1.1em;
    font-size: 28px;
    font-family: "Barlow";
    text-transform: uppercase;
  }

  .regularText, .label-text, .control-label, #kc-locale-dropdown a {
    color: var(--textOffColor);
    line-height: 1.7em;
    font-size: 16px;
    font-family: "Barlow";
  }
  
  .link, a {
    color: var(--linkColor);
    line-height: 1.7em;
    font-size: 16px;
    font-family: "Barlow";
    font-weight: 500;
  }

  /* Body */

  body {
    background: var(--white) !important;
    color: var(--primaryBlack);
    font-size: 18px;
    height: inherit!important;
    min-width: fit-content!important;
  }

  /* Buttons */
  .pf-c-button.pf-m-primary {
    background-color: var(--buttonColor);
  }

  .button, .btn-primary, .btn-lg {
    border: none;
    border-radius: 40px;
    padding: 20px 40px 20px 40px;
    font-size: 16px;
    text-transform: uppercase;
    color: var(--white);
    font-family: "Barlow";
    font-weight: 700;
    background: var(--buttonColor)!important;
  }

  .btn-primary:hover {
    outline: none;
    background: var(--buttonColor) !important;
    opacity: 0.8;
  }

  /* Card */
  .card, .card-pf {
    border-radius: 15px;
    box-shadow: none;
    padding: 30px, 30px, 30px, 30px;
    background: var(--backgroundBlue);
    max-width: 600px!important;
    margin: auto!important;
  }

  .form-group {
    margin-top: var(--spaceBetweenTextAndButtons);
    margin-bottom: var(--spaceBetweenTextAndButtons);
  }

  /* Input */
  .input, .form-control {
   /* Container */
    padding: 15px, 40px, 15px, 40px;
    background: var(--secondaryWhite);
    /* Font: regularText */
    font-size: 16px;
    font-family: "Barlow";
    color: var(--textOffColor);
    line-height: 1.7em;
    font-style: normal;
  }

  .pf-c-form-control {
    border-radius: 5px!important;
    border-style: none!important;
  }

  .alert-error {
    border-color: var(--primaryDarkBlue)
  }

  .pficon-error-circle-o:before {
    color: var(--primaryDarkBlue)
  }

  #kc-header-wrapper .kc-logo-text {
    width: 50%;
    max-width: 400px;
    height: 20vw;
    max-height: 150px;
    background-image: url("../img/brand-logo.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  .form-group input:hover {
    border-color: var(--primaryDarkBlue);
  }
  .form-group input:focus{
    outline-style: none;
    box-shadow: none;
    border-color: var(--primaryDarkBlue);
  }

  .pf-c-dropdown__menu {
   visibility: hidden;
   margin-top: -4px;
  }

  .pf-c-dropdown__menu:hover {
   display: block;
  }

  #kc-locale-dropdown:hover .pf-c-dropdown__menu {
    display: block;
  }

  #kc-locale-dropdown {
    width: 100px;
  }

  span #reset-password {
    visibility: visible;
  }

  span, .kc-info-message, .kc-page-title, .alert-warning, .pf-c-alert, .pf-m-inline, .pf-m-warning {
    visibility: hidden;
  }