@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-ExtraLight.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-ExtraLight.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLight.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLight.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLight.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLight.svg#ExtraLight") format("svg");
  font-style: normal;
  font-weight: 200;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-ExtraLightItalic.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-ExtraLightItalic.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLightItalic.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLightItalic.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLightItalic.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-ExtraLightItalic.svg#ExtraLightItalic") format("svg");
  font-style: italic;
  font-weight: 200;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-Light.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-Light.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-Light.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-Light.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-Light.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-Light.svg#Light") format("svg");
  font-style: normal;
  font-weight: 300;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-LightItalic.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-LightItalic.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-LightItalic.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-LightItalic.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-LightItalic.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-LightItalic.svg#LightItalic") format("svg");
  font-style: italic;
  font-weight: 300;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-Regular.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-Regular.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-Regular.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-Regular.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-Regular.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-Regular.svg#Regular") format("svg");
  font-style: normal;
  font-weight: normal;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-Italic.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-Italic.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-Italic.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-Italic.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-Italic.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-Italic.svg#Italic") format("svg");
  font-style: italic;
  font-weight: normal;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-SemiBold.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-SemiBold.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBold.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBold.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBold.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBold.svg#SemiBold") format("svg");
  font-style: normal;
  font-weight: 600;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-SemiBoldItalic.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-SemiBoldItalic.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBoldItalic.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBoldItalic.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBoldItalic.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-SemiBoldItalic.svg#SemiBoldItalic") format("svg");
  font-style: italic;
  font-weight: 600;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-Bold.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-Bold.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-Bold.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-Bold.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-Bold.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-Bold.svg#Bold") format("svg");
  font-style: normal;
  font-weight: bold;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-BoldItalic.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-BoldItalic.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-BoldItalic.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-BoldItalic.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-BoldItalic.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-BoldItalic.svg#BoldItalic") format("svg");
  font-style: italic;
  font-weight: bold;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-Black.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-Black.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-Black.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-Black.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-Black.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-Black.svg#Black") format("svg");
  font-style: normal;
  font-weight: 900;
}

@font-face {
  font-family: "Source Sans Pro";
  src: url("/fonts/trustarc_sans/SourceSansPro-BlackItalic.eot");
  src: url("/fonts/trustarc_sans/SourceSansPro-BlackItalic.eot?") format("eot"),
    url("/fonts/trustarc_sans/SourceSansPro-BlackItalic.woff2") format("woff2"),
    url("/fonts/trustarc_sans/SourceSansPro-BlackItalic.woff") format("woff"),
    url("/fonts/trustarc_sans/SourceSansPro-BlackItalic.ttf") format("truetype"),
    url("/fonts/trustarc_sans/SourceSansPro-BlackItalic.svg#BlackItalic") format("svg");
  font-style: italic;
  font-weight: 900;
}


@font-face {
  font-family: TrustArc;
  src: url("/fonts/trustarc_sans/TrustArc.eot");
  src: url("/fonts/trustarc_sans/TrustArc.eot?") format("eot"),
    url("/fonts/trustarc_sans/TrustArc.woff2") format("woff2"),
    url("/fonts/trustarc_sans/TrustArc.woff") format("woff"),
    url("/fonts/trustarc_sans/TrustArc.ttf") format("truetype"),
    url("/fonts/trustarc_sans/TrustArc.svg#TrustArc") format("svg");
  font-style: normal;
  font-weight: 400;
}

body {
  background: #ebf2f9;
  color: #000;
  font-family: "Source Sans Pro", -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,
    Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji,
    Segoe UI Symbol;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
}

/* Card */
.card {
  background: #ffffff;
  box-shadow: 0px -2px 2px rgb(0 58 112 / 10%), 0px 2px 2px rgb(0 58 112 / 10%),
    -2px 0px 2px rgb(0 58 112 / 10%), 2px 0px 2px rgb(0 58 112 / 10%);
  border: none;
  border-radius: 4px;
  padding: 0;
}

.card-body {
  padding: 0;
}

.card-body.padded {
  padding: 0 45px 45px;
}

.card-img-top {
  margin-bottom: 24px;
  min-height: 104px;
}

.privacy-policy {
  margin-top: 32px;
  text-align: center;
}

.footer-links {
  margin-top: 32px;
  display: flex;
  justify-content: space-between;
}

/* Form Group */
.form-group label {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
}

.form-group input {
  background: #fff;
  border: 1px solid #9c9c9c;
  border-radius: 4px;
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
  height: 36px;
  padding: 0.5rem;
}

.form-group input[type="checkbox"] {
  accent-color: #064676;
  border: 1px solid #9c9c9c;
  border-radius: 4px;
  font-size: 14px;
  height: auto;
  position: absolute;
  top: -5px;
}

.form-group input:active,
.form-group input:focus,
.form-group input:focus-visible {
  border: 1px solid #007a8b;
  box-shadow: none;
  outline: none;
}

.form-group.form-check {
  margin-bottom: 1.2rem;
}

.form-group.password-input {
  position: relative;
}

.form-group.password-input > i.lock-icon,
.form-group.password-input > i.check-icon {
  position: absolute;
  top: 10px;
  left: 12px;
  border-right: 1px solid #d2d2d2;
  padding-right: 12px;
  line-height: 18px;
  align-items: center;
}

.form-group.password-input i.lock-icon {
  display: flex;
}

.form-group.password-input.password-strength-passed i.lock-icon {
  display: none;
}

.form-group.password-input i.check-icon {
  display: none;
}

.form-group.password-input.password-strength-passed i.check-icon {
  display: flex;
}

.form-group.password-input > input[type="password"] {
  padding-left: 44px;
}

.form-group.password-input.password-strength-error > input[type="password"] {
  border: 1px solid #F28C8C;
}

.form-group.password-input.password-strength-passed > input[type="password"] {
  border: 1px solid #7CE467;
}

.form-group.password-input.password-strength-error .alert-strength {
  color: #F28C8C;
}

/* Buttons */
.btn {
  background: #fff;
  border: none;
  border-radius: 4px;
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
  padding: 12px 16px;
}

.btn:disabled {
  cursor: default;
  pointer-events: none;
}

.btn-primary {
  background-color: #de1b76;
  color: #ffffff;
}
.btn-primary:hover {
  background-color: #e54991;
  border: none !important;
  outline: none;
}
.btn-primary:focus:not(.disabled) {
  background-color: #de1b76 !important;
  box-shadow: inset 0 0 0 2px #f2a4c8 !important;
  border: none !important;
  outline: none;
}
.btn-primary:active {
  background-color: #b2165e !important;
  box-shadow: inset 0 0 0 2px transparent !important;
  border: none !important;
  outline: none;
}
.btn-primary:disabled {
  background-color: #a8a8a8;
  color: #5b5b5b;
  border: none !important;
  outline: none;
}

.btn-secondary {
  background-color: #f6f9fd;
  color: #0052cc;
}
.btn-secondary:hover {
  background-color: #e6eefa;
  color: #0052cc;
  border: none !important;
  outline: none;
}
.btn-secondary:active {
  background-color: #ccdcf5 !important;
  box-shadow: inset 0 0 0 2px transparent !important;
  color: #0052cc !important;
  border: none !important;
  outline: none;
}
.btn-secondary:focus:not(.disabled) {
  background-color: #f6f9fd;
  box-shadow: inset 0 0 0 2px #99dfe9 !important;
  color: #0052cc !important;
  border: none !important;
  outline: none;
}
.btn-secondary:disabled {
  background-color: #a8a8a8;
  color: #5b5b5b;
  border: none !important;
  outline: none;
}
.btn-secondary:disabled:active {
  background-color: #a8a8a8 !important;
  color: #5b5b5b !important;
  border: none !important;
  outline: none;
}

.btn-link {
  border: none;
  color: #0052cc !important;
  font-weight: 300;
  font-size: 14px;
  line-height: 20px;
  text-decoration: none;
  padding: 0;
}

.btn.disabled {
  background: #a8a8a8;
  color: #5b5b5b;
  border: none !important;
  outline: none;
}

.btn-google {
  background: #fff;
  border: 1px solid #E6E6E6 !important;
  border-radius: 4px;
  color: #000 !important;
  font-weight: 300;
  font-size: 14px;
  line-height: 20px;
  outline: none;
  padding: 2px;
}

.xauth-list .btn-google {
  margin-bottom: 16px !important;
}

.btn-google .abcRioButtonIcon {
  background: #ffffff;
  border-radius: 4px;
  line-height: 18px;
  padding: 9px;
}

.btn-google .abcRioButtonContents {
  flex: 1 0;
  font-weight: 300;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
}

/* Separator */
.separator {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 32px 0;
}

.separator span.line:nth-child(1) {
  border-top: 1px solid #e6e6e6;
  flex: 1 0;
  margin-right: 24px;
}

.separator span.text {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
}

.separator span.line:nth-child(3) {
  border-top: 1px solid #e6e6e6;
  flex: 1 0;
  margin-left: 24px;
}

/* Alert */
.alert {
  display: flex;
  flex-direction: row;
  align-items: center;
  color: #000;
  font-weight: 300;
  font-size: 14px;
  line-height: 20px;
  padding: 12px 18px;
  margin-bottom: 32px;
  border-radius: 4px;
}

.alert > svg:first-child {
  margin-right: 18px;
}

.alert-danger {
  background: #fce8e8;
  border: 1px solid #ed5e5e;
}

.alert-info {
  background: #F0EEF9;
  border: 1px solid #A398D9;
}

.hidden {
  display: none !important;
}

.invisible {
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}