/**
 * Bootstrap / browser reset scoped to applicant portal.
 */

.ef-portal { margin: 0; }

/* Replace Bootstrap / browser blue focus with brand green, portal-wide. */
.ef-portal :focus:not(:focus-visible) {
  outline: none;
}
.ef-portal :focus-visible {
  outline: 2px solid var(--ef-color-primary);
  outline-offset: 2px;
}

.ef-portal h1, .ef-portal h2, .ef-portal h3, .ef-portal h4, .ef-portal h5, .ef-portal h6 {
  margin-bottom: 0;
}

.ef-portal .ef-card__title {
  font-family: var(--ef-font-display);
  font-size: var(--ef-text-headline-md);
  font-weight: var(--ef-font-weight-bold);
  line-height: var(--ef-text-headline-md-lh);
  letter-spacing: -0.01em;
}

.ef-portal button.ef-btn,
.ef-portal button.ef-icon-btn,
.ef-portal button.ef-menu-btn,
.ef-portal button.ef-close-btn,
.ef-portal button.ef-dropdown__trigger,
.ef-portal button.ef-dropdown__option {
  appearance: none;
  -webkit-appearance: none;
  box-shadow: none;
}

.ef-portal .ef-text-field__control input {
  appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
  box-shadow: none;
}

.ef-portal .ef-text-field__control input:focus {
  outline: none;
  box-shadow: none;
}

@keyframes efAutofillStart {
  from { opacity: 1; }
  to { opacity: 1; }
}

.ef-portal .ef-text-field__control input:-webkit-autofill {
  animation-name: efAutofillStart;
  animation-duration: 0.01s;
}

.ef-portal label.ef-checkbox,
.ef-portal label.ef-radio,
.ef-portal label.ef-toggle {
  margin-bottom: 0;
}

.ef-hidden-mobile { display: none; }

@media (min-width: 576px) {
  .ef-hidden-mobile { display: inline; }
}
