#email_info.verificationInfoText {
  border: 2px solid #34aa40;
  background-color: #f6fff6;
  border-radius: 10px;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.2;
  padding: 1.5rem 2rem 1.5rem 4rem;
}

#email_info.verificationInfoText:before {
  content: '\f058';
  font-family: FontAwesome, sans-serif;
  top: 1.5rem;
  left: 1.5rem;
  font-size: 1.5rem;
  color: #34aa40;
}

/* Header */
.header {
  background-color: #0f213a;
}

.header .wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 104px;
}

#logo {
  display: block;
  padding: 2px 4px 2px 2px;
  border: 1px solid transparent;
  border-radius: 4px;
}

#logo img {
  display: block;
  width: 15.6875rem;
  height: 4rem;
}

#logo:focus {
  background: none;
  border-color: #00caff;
  box-shadow: 0 0 3px 2px #4caaf0;
}

.help-and-support-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.5rem;
  width: auto;
  padding: 0 12px 4px 12px;
  border-radius: 4px;
  color: #fff;
  font-family: inherit;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: -0.0125rem;
  border: 1px solid transparent;
  position: relative;
}

.help-and-support-link:link,
.help-and-support-link:visited,
.help-and-support-link:active,
.help-and-support-link:hover {
  text-decoration: none;
  color: #fff;
}

.help-and-support-link:hover:after {
  content: '';
  display: block;
  position: absolute;
  left: 0.75rem;
  right: 0.75rem;
  height: 0.125rem;
  background-color: currentColor;
  bottom: 0.5rem;
}

.help-and-support-link:focus {
  background: none;
  border-color: #00caff;
  box-shadow: 0 0 3px 2px #4caaf0;
  text-decoration: none;
}

.help-and-support-link:active:after {
  background-color: #00caff;
}

/* Page title */
.title {
  color: #000;
  font-size: 1.875rem;
  line-height: 1.334;
  font-weight: bold;
  letter-spacing: -0.0125rem;
  margin: 0;
}

.title-wrapper {
  display: flex;
  padding-left: 1.25rem;
  align-items: center;
  justify-content: space-between;
  padding-top: 32px;
  padding-bottom: 32px;
}

/* Footer */
.footer {
  padding: 3rem 0;
  background-color: #0f213a;
}

.footer .footer-logo {
  box-sizing: border-box;
  display: inline-block;
  width: 15.75rem;
  height: 4rem;
  padding: 0.125rem 0.5rem 0.125rem 0.125rem;
}

.footer .footer-logo:focus {
  border-radius: 0.625rem;
  box-shadow: 0 0 0.125rem 0.125rem #00caff, 0 0 0.125rem 0.125rem #4caaf0;
  background: transparent;
  outline: none;
}

.footer .text-holder {
  display: flex;
  margin-bottom: 2.5rem;
  align-items: end;
  justify-content: space-between;
}

.footer .text {
  margin: 0;
  flex-basis: 100%;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5rem;
  letter-spacing: -0.013em;
  color: #fff;
}

.footer .social-btns-holder {
  display: flex;
}

.footer .social-btn {
  display: inline-flex;
  width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  justify-content: center;
  color: #0f213a;
  background-color: #fff;
  border-radius: 100%;
  border: 1px solid #fff;
  box-sizing: border-box;
  transition: none;
}

.footer .social-btn:hover {
  background-color: #d4eeff;
  border: none;
}

.footer .social-btn:active {
  background-color: #cedef0;
}

.footer .social-btn:focus {
  box-shadow: 0 0 0.125rem 0.125rem #00caff, 0 0 0.125rem 0.125rem #4caaf0;
  color: #0360a6;
  outline: none;
}

.footer .facebook {
  margin: 0 0.5rem;
}

.footer .separator {
  margin: 0;
  border: 0;
  border-bottom: 1px solid #f0f0f0;
  opacity: 0.6;
}

.footer .footer-menu ul {
  margin: 2rem 0;
  padding: 0;
  display: grid;
  grid-gap: 1.5rem;
  grid-row-gap: 0.75rem;
  list-style: none;
}

@media (min-width: 768px) {
  .footer .footer-menu ul {
    grid-template-columns: repeat(2, 19rem);
  }
}

.footer .footer-menu ul a {
  font-weight: 400;
  font-size: 1rem;
  letter-spacing: -0.013em;
  line-height: 1.5rem;
  color: #fff;
  transition: all 0.15s ease-out;
}

.footer .footer-menu ul a:hover,
.footer .footer-menu ul a:active {
  text-decoration: underline;
  color: #0056b3;
  background: #d4eeff;
}

.footer .footer-menu ul a:focus {
  background: transparent;
  color: #fff;
  text-decoration: underline;
}

.footer .about-us-holder {
  margin-top: 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer .about-us-holder p {
  margin: 0;
  flex-basis: 60%;
  font-size: 0.87rem;
  line-height: 1.25rem;
  letter-spacing: -0.013em;
  color: #fff;
}

.footer .about-us-holder .logos-holder {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer .about-us-holder .portal-plane-quest-logo,
.footer .about-us-holder .terra-quest-logo {
  display: inline-block;
  padding: 0.125rem 0.5rem 0.125rem 0.125rem;
  box-sizing: border-box;
}

.footer .about-us-holder .portal-plane-quest-logo:focus,
.footer .about-us-holder .terra-quest-logo:focus {
  border-radius: 0.625rem;
  box-shadow: 0 0 0.125rem 0.125rem #00caff, 0 0 0.125rem 0.125rem #4caaf0;
  background: transparent;
  outline: none;
}

.footer .about-us-holder .portal-plane-quest-logo {
  margin: 0 5.6rem 0 2rem;
  width: 12rem;
  height: 2.7rem;
  pointer-events: none;
  cursor: normal;
}

.footer .about-us-holder .terra-quest-logo {
  width: 10.9rem;
  height: 2.7rem;
}

/* Tablet */
@media (max-width: 768px) {

  /* Header */
  /* Page title */
  /* Page footer */
  .header .wrapper {
    height: 5.5rem;
  }

  #logo img {
    width: 11.75rem;
    height: 3rem;
  }

  .title {
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .title-wrapper {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .footer {
    padding: 3rem 0 2.5rem;
  }

  .footer .footer-logo {
    margin-bottom: 1.5rem;
  }

  .footer .text-holder {
    flex-wrap: wrap;
  }

  .footer .text {
    margin-bottom: 2.5rem;
  }

  .footer .about-us-holder {
    flex-wrap: wrap;
  }

  .footer .about-us-holder p {
    margin-bottom: 2rem;
    flex-basis: 100%;
  }

  .footer .about-us-holder .logos-holder a:first-of-type {
    margin-left: 0;
  }
}

/* Mobile */
@media screen and (max-width: 576px) {

  /* Header */
  /* Page title */
  /* Page footer */
  .header .wrapper {
    height: 4.5rem;
  }

  .help-and-support-link span {
    display: none;
  }

  .title {
    font-size: 1.25rem;
    margin-bottom: 4px;
  }

  .title-wrapper {
    display: block;
  }

  .footer {
    padding: 2.5rem 0;
  }

  .footer .footer-logo {
    width: 11.8rem;
    height: 3rem;
  }

  .footer .text {
    line-height: 1.75rem;
  }

  .footer .about-us-holder .logos-holder {
    flex-wrap: wrap;
    flex-basis: 100%;
    justify-content: space-between;
  }

  .footer .about-us-holder .portal-plane-quest-logo {
    margin: 0;
    width: 10rem;
    height: 2.5rem;
  }

  .footer .about-us-holder .terra-quest-logo {
    width: 8.7rem;
    height: 2.5rem;
  }
}

html {
  height: -webkit-fill-available;
}

body {
  margin: 0;
  font-family: 'Open Sans', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
  line-height: 1.5;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  background-color: #fcfcfc;
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  transition: all 0.15s ease-out;
}

a:link,
a:visited,
a:active {
  color: #0360a6;
  font-size: inherit;
  font-weight: 600;
  letter-spacing: -0.2px;
  text-decoration: none;
}

a:focus {
  box-shadow: none;
  outline: none;
  color: #0360a6;
  background-color: #d4eeff;
}

a:focus,
a:hover {
  text-decoration: underline;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

.wrapper {
  max-width: 80rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  margin-left: auto;
  margin-right: auto;
}

/* Page content */
.api-container {
  box-sizing: border-box;
  height: auto;
  padding: 0 1rem;
  margin-bottom: 2rem;
  border: 1px solid #eaeaea;
  background-color: #fff;
  box-shadow: 0 0 12px -8px rgba(0, 0, 0, 0.35);
  border-radius: 10px;
}

@media (max-width: 768px) {
  .api-container {
    border-top: 2px solid #ddd;
    border-bottom: 2px solid #ddd;
  }
}

/* B2C overrides */
#api {
  padding-top: 80px;
  padding-bottom: 80px;
  /* Hidden elements */
  /* Containers */
  /* Intro */
  /* Fields */
  /* Input error states */
  /* Input focus states */
  /* Notifications */
  /* Primary buttons */
  /* Secondary buttons */
  /* Secondary buttons */
  /* Terms and conditions (login only) */
}

#api .divider {
  display: none !important;
}

#api .entry,
#api .create,
#api .pageLevel,
#api .intro,
#api #attributeVerification,
#api #localAccountForm {
  width: 100%;
  max-width: 26.875rem;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}

#api .localAccount {
  width: 100%;
  max-width: 26.875rem;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}

#api .create {
  margin-top: 1rem;
}

#api .intro p:first-child {
  font-size: 1.25rem;
  font-weight: bold;
  margin-top: 0;
}

#api #attributeList ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#api .intro:after {
  content: '';
  display: table;
  clear: both;
}

#api .entry-item,
#api .attrEntry {
  position: relative;
  margin-bottom: 1.5rem;
}

#api label {
  display: block;
  color: #000;
  font-weight: 600;
  letter-spacing: -0.2px;
  clear: both;
  font-family: inherit;
}

#api input[type='text'],
#api input[type='email'],
#api input[type='password'] {
  box-sizing: border-box;
  height: 2.75rem;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  padding-left: 16px;
  padding-right: 16px;
  margin-top: 0.75rem;
  font-family: inherit;
  border-radius: 10px;
  border: 1px solid #c1c1c1;
  background-color: #fff;
}

#api input[type='text'][disabled],
#api input[type='email'][disabled],
#api input[type='password'][disabled],
#api input[type='text']:read-only,
#api input[type='email']:read-only,
#api input[type='password']:read-only {
  background-color: #eee;
  border-color: #c1c1c1;
}

#api .RadioSingleSelect label,
#api .CheckboxMultiSelect label {
  padding: 1rem 1rem 1rem 3rem;
  margin: 0;
  background-color: #fcfcfc;
  border-top: 1px solid #e8e8e8;
  border-bottom: 1px solid #e8e8e8;
}

#api .RadioSingleSelect label:first-child,
#api .CheckboxMultiSelect label:first-child,
#api #true_option {
  padding: 0;
  background: none;
  border: none;
  margin-bottom: 1rem;
}

#api .RadioSingleSelect input[type='radio'],
#api .CheckboxMultiSelect input[type='checkbox'] {
  position: absolute;
  margin: 1.25rem;
}

#api #extension_TermsAccepted_label {
  padding: 1rem 1rem 1rem 3rem;
}

#api #extension_TermsAccepted_true {
  top: 0;
}

#api .radio-checkbox-label {
  color: #0360a6;
}

#api .radio-checkbox-label div {
  color: #000;
}

#api .label-description {
  font-size: 0.875rem;
  margin-top: 0.5em;
  margin-bottom: 0;
  text-align: justify;
}

#api .password-toggle {
  font-size: inherit;
  background: none;
  text-decoration: none;
  border: 0;
  padding: 0;
  outline: none;
  cursor: pointer;
  color: #0360a6;
  position: absolute;
  bottom: 0.8125rem;
  right: 1rem;
}

#api .password-toggle:focus {
  background-color: #d4eeff;
}

#api .password-toggle:before {
  content: '\f06e';
  font-family: FontAwesome, sans-serif;
}

#api .password-toggle.active:before {
  content: '\f070';
}

#api .password-toggle span {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

#api #forgotPassword {
  float: right;
  margin-top: 1rem;
}

#api input.highlightError,
#api .error[aria-hidden='false']~.entry input,
#api .attrEntry.validate input {
  border: 2px solid #d0011c;
}

#api .itemLevel {
  display: inline-block;
  margin-bottom: -0.5rem;
  margin-top: 0.5rem;
  color: #d0011c;
}

#api .itemLevel p {
  margin: 0;
}

#api .itemLevel:empty {
  display: none;
}

#api input:focus,
#api .error[aria-hidden='false']~.entry input:focus {
  box-sizing: border-box;
  outline: 0;
  border: 1px solid #2885c0;
  box-shadow: 0 0 3px 1px #4caaf0;
}

#api .pageLevel,
#api .verificationInfoText,
#api .verificationSuccessText,
#api .verificationErrorText {
  box-sizing: border-box;
  letter-spacing: -0.2px;
  color: #000;
  margin-bottom: 1.5rem;
  margin-top: 0;
  float: left;
  width: 100%;
  position: relative;
}

#api .pageLevel:before,
#api .verificationInfoText:before,
#api .verificationSuccessText:before,
#api .verificationErrorText:before {
  position: absolute;
  display: block;
  content: '';
}

#api .pageLevel p {
  margin: 0;
}

#api .verificationInfoText {
  border: 2px solid #0360a6;
  background-color: #ebf7ff;
  border-radius: 10px;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.2;
  padding: 1.5rem 2rem 1.5rem 4rem;
}

#api .verificationInfoText:before {
  content: '\f05a';
  font-family: FontAwesome, sans-serif;
  top: 1.5rem;
  left: 1.5rem;
  font-size: 1.5rem;
  color: #0360a6;
}

#api .verificationInfoText h2,
#api .verificationInfoText h3 {
  margin: 0 0 1rem 0;
  font-size: 1.25rem;
}

#api .verificationInfoText h2 span,
#api .verificationInfoText h3 span {
  display: none;
}

#api .verificationInfoText ul {
  padding: 0;
  margin: 0;
  list-style-position: inside;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
}

#api .verificationInfoText p {
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
}

#api .verificationSuccessText {
  border: 2px solid #34aa40;
  background-color: #f6fff6;
  border-radius: 10px;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.2;
  padding: 1.5rem 2rem 1.5rem 4rem;
}

#api .verificationSuccessText:before {
  content: '\f058';
  font-family: FontAwesome, sans-serif;
  top: 1.5rem;
  left: 1.5rem;
  font-size: 1.5rem;
  color: #34aa40;
}

#api .pageLevel,
#api .verificationErrorText {
  border: 2px solid #d0011c;
  background-color: #fff3f3;
  border-radius: 10px;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 1.2;
  padding: 1.5rem 2rem 1.5rem 4rem;
}

#api .pageLevel:before,
#api .verificationErrorText:before {
  content: '\f06a';
  font-family: FontAwesome, sans-serif;
  top: 1.5rem;
  left: 1.5rem;
  font-size: 1.5rem;
  color: #d0011c;
}

#api .pageLevel:after {
  content: '';
  display: table;
  clear: both;
}

#api .buttons {
  margin-top: 1.5rem;
}

#api .buttons:after {
  content: '';
  display: table;
  clear: both;
}

#api #attributeList+.buttons {
  margin-top: -0.5rem;
}

#api .buttons>button,
#api #cancel,
#api #createAccount {
  box-sizing: border-box;
  height: 2.75rem;
  width: auto;
  font-size: 1rem;
  font-family: inherit;
  font-weight: bold;
  letter-spacing: -0.2px;
  line-height: 1.5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  padding: 0 1.25rem;
  float: left;
  clear: left;
  color: #fff;
  border: 1px solid #0360a6;
  background-color: #0360a6;
  border-radius: 1.375rem;
  width: 100%;
}

#api .buttons>button:hover,
#api #cancel:hover,
#api #createAccount:hover {
  background-color: #1b76d8;
  border-color: #1b76d8;
}

#api .buttons>button:focus,
#api #cancel:focus,
#api #createAccount:focus,
#api .buttons>button:focus:hover,
#api #cancel:focus:hover,
#api #createAccount:focus:hover {
  box-shadow: #00caff 0px 0px 0.125rem 0.125rem, #4caaf0 0px 0px 0.125rem 0.125rem;
  background: #05487a;
  border-color: #fff;
  color: #fff;
  outline: none;
}

#api .buttons>button[disabled],
#api #cancel[disabled],
#api #createAccount[disabled],
#api .buttons>button[aria-disabled='true'],
#api #cancel[aria-disabled='true'],
#api #createAccount[aria-disabled='true'] {
  background-color: #6d6d6d !important;
  border-color: #6d6d6d !important;
  color: #fff !important;
  cursor: default !important;
}

#api .buttons button+button {
  margin-top: 1rem;
}

#api .buttons button+button#email_ver_but_verify {
  margin-top: 1.5rem;
}

#api #email_ver_but_resend {
  background-color: #fff !important;
  border-color: #0360a6 !important;
  color: #0360a6 !important;
  border-radius: 1.375rem;
  width: 100%;
}

#api #email_ver_but_resend:hover,
#api #email_ver_but_resend:focus {
  background-color: #ebf2f9 !important;
}

#api #cancel,
#api #createAccount {
  background-color: #fff !important;
  border-color: transparent !important;
  color: #0360a6 !important;
  border-radius: 1.375rem;
  width: 100%;
}

#api #cancel:hover,
#api #createAccount:hover {
  text-decoration: none !important;
  background-color: #ebf2f9 !important;
}

#api #cancel:focus,
#api #createAccount:focus {
  text-decoration: none;
  border-color: #0360a6 !important;
  background-color: #ebf2f9 !important;
  box-shadow: #00caff 0px 0px 0.125rem 0.125rem, #4caaf0 0px 0px 0.125rem 0.125rem;
}

#api .pp2-login-terms-and-conditions {
  font-size: 0.8rem;
  margin-top: 1rem;
  margin-bottom: 0;
}

/* Tablet */
@media (max-width: 768px) {

  /* Page content */
  /* B2C Overrides */
  /* Containers */
  .api-container {
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    box-shadow: none;
    margin-left: -1rem;
    margin-right: -1rem;
  }

  #api {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

#api .intro {
  display: none !important;
}

#api .create {
  font-size: 0;
  display: flex;
}

#api .create p {
  width: 100%;
}

#api #localAccountForm .buttons {
  margin-top: 5rem;
}