@charset "UTF-8";
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-display: swap;
  font-weight: 200;
  src: local("Source Sans Pro Extra Light "),
    local("Source Sans Pro-Extra Light"),
    url(/assets/files/source-sans-pro-latin-200-normal.woff2) format("woff2"),
    url(/assets/files/source-sans-pro-latin-200-normal.woff) format("woff");
}
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: local("Source Sans Pro Light "), local("Source Sans Pro-Light"),
    url(/assets/files/source-sans-pro-latin-300-normal.woff2) format("woff2"),
    url(/assets/files/source-sans-pro-latin-300-normal.woff) format("woff");
}
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: local("Source Sans Pro Regular "), local("Source Sans Pro-Regular"),
    url(/assets/files/source-sans-pro-latin-400-normal.woff2) format("woff2"),
    url(/assets/files/source-sans-pro-latin-400-normal.woff) format("woff");
}
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: local("Source Sans Pro SemiBold "), local("Source Sans Pro-SemiBold"),
    url(/assets/files/source-sans-pro-latin-600-normal.woff2) format("woff2"),
    url(/assets/files/source-sans-pro-latin-600-normal.woff) format("woff");
}
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: local("Source Sans Pro Bold "), local("Source Sans Pro-Bold"),
    url(/assets/files/source-sans-pro-latin-700-normal.woff2) format("woff2"),
    url(/assets/files/source-sans-pro-latin-700-normal.woff) format("woff");
}
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-display: swap;
  font-weight: 900;
  src: local("Source Sans Pro Black "), local("Source Sans Pro-Black"),
    url(/assets/files/source-sans-pro-latin-900-normal.woff2) format("woff2"),
    url(/assets/files/source-sans-pro-latin-900-normal.woff) format("woff");
}

body {
  --wigl-login--primary-color: #501688;
  --wigl-login--primary-color--darker: #40116c;

  --pf-global--primary-color--100: var(--wigl-login--primary-color);
  --pf-global--primary-color--dark-100: var(--wigl-login--primary-color);
  --pf-global--primary-color--200: var(--wigl-login--primary-color--darker);
  --pf-global--primary-color--dark-200: var(--wigl-login--primary-color--darker);
  --pf-global--link--Color: var(--wigl-login--primary-color);
  --pf-global--link--Color--dark: var(--wigl-login--primary-color);
  --pf-global--link--Color--hover: var(--wigl-login--primary-color--darker);
  --pf-global--link--Color--focus: var(--wigl-login--primary-color--darker);
}

body .pf-c-form-control {
  --wigl-login--primary-color: #501688;
  --wigl-login--primary-color--darker: #40116c;

  --pf-global--Color--100: var(--wigl-login--primary-color);
  --pf-global--Color--200: var(--wigl-login--primary-color);
  --pf-global--link--Color: var(--wigl-login--primary-color);
  --pf-global--link--Color--hover: var(--wigl-login--primary-color--darker);
}

body input:focus-visible,
body input:focus {
  outline: 1px var(--pf-global--link--Color);
}


body a {
  color: var(--pf-global--link--Color);
}

body a:focus {
  color: var(--pf-global--link--Color--focus);
}
body a:hover,
body .login-pf a:hover {
  color: var(--pf-global--link--Color--hover);
}

body .card-pf {
  border-radius: 0px;
  box-shadow: none;
  border-top: 0px;
}

html.login-pf,
html.login-pf body {
  background-color: white;
  background-image: none;
}

.login-pf body {
  padding-bottom: 100px;

  color: #666;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 16px;

  background-color: #fff;
  background-image: none;
}

html.login-pf a {
  color: var(--pf-global--link--Color);
}

.login-pf a:hover,
.login-pf a:focus {
  text-decoration: underline;
  color: var(--pf-global--link--Color--focus);
}

.login-pf-page {
  padding-top: 100px;
}

/* Site Header */
.login-pf-page-header {
  display: flex;
  align-items: center;

  position: absolute;
  left: 0;
  top: 0;
  right: 0;

  min-height: 80px;

  margin: 0 !important;
  padding: 0 15px !important;

  border-bottom: 1px solid #d7d7d7;
  background-color: #f8f8f8;
  box-shadow: rgba(0, 0, 0, 0.08) 0px 2px 8px;
}

.login-pf-page-header .header-logo {
  display: block;
  height: 72px;
  background-size: auto 100%;
  content: "";
}

#kc-header-wrapper {
  display: none;
}

/* Site Content / Page */
.card-pf {
  max-width: 500px !important;
  padding: 15 15px 20px !important;
  border-radius: 10px;
}

@media (min-width: 640px) {
  .card-pf {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
}

@media (min-width: 960px) {
  .card-pf {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
}

@media (max-width: 767px) {
  .card-pf {
    margin: 0 auto !important;
  }
}

@media (max-width: 840px) {
  .card-pf {
    margin: 0 auto !important;
  }
}

/* Page Header */
.login-pf-header {
  margin: 0 !important;
}

#kc-page-title {
  margin: 0;
  padding: 10px 0 20px;

  text-align: left;
  font-size: 35px !important;
  font-weight: 300;
  line-height: 1.2;
  color: #333;
}

/* Page Content (Form) */
.form-control {
  display: inline-block;
  height: 40px !important;
  padding: 0 10px;
  border: 1px solid #e5e5e5;
  vertical-align: middle;
  color: #666;
  background: #fff;
  box-shadow: none !important;
  font-size: 16px;
}

.form-control:hover {
  border-color: #e5e5e5;
}

.form-control:focus {
  color: #666;
  border-color: #501688;
  outline: 0;
}

.btn-primary {
  padding: 0 30px;
  box-sizing: border-box;

  vertical-align: middle;
  box-shadow: none;
  border: 0;
  background-color: #501688 !important;
  background-image: none;

  line-height: 38px;
  text-align: center;
  text-transform: uppercase;

  transition: background-color 0.5s ease;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #501688 !important;
  border: 0;
}

/* Page Content (Registration) */
#kc-registration {
  margin-top: 50px;
  display: block;
  color: #333;
  font-size: 24px;
  line-height: 1.4;
  font-weight: 300;
}

#kc-registration span {
  display: block;
}

#kc-registration a {
  display: block;
  margin: 0;
  margin-top: 20px;
  padding: 0 30px;

  line-height: 38px;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;

  color: #999;
  border: 1px solid #e5e5e5;
}

#kc-registration a:hover,
#kc-registration a:focus {
  text-decoration: none;
}

#kc-info {
  margin: 0;
  padding: 0;
}

/** no grey background for register div */
div#kc-info-wrapper {
    background-color: inherit;
}
