.atlas-form {
  width: 360px;
}
.atlas-form-wide {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  max-width: 750px;
  padding: 10px;
}
@media (max-width: 550px) {
  .atlas-form-wide {
    width: 100%;
  }
}
.atlas-form label {
  cursor: default;
}
.atlas-form-wide label,
.atlas-form-wide select,
.atlas-form-wide input[type='submit'] {
  width: calc(50% - 10px) !important;
}
@media (max-width: 600px) {
  .atlas-form-wide label,
  .atlas-form-wide select,
  .atlas-form-wide input[type='submit'] {
    width: 100% !important;
  }
}
.atlas-form label p {
  cursor: text;
  position: absolute;
  margin: 0 0 0 10px;
  padding: 11px 0;
  font-size: 16px;
  color: #777;
  transition: 150ms;
  transform: scale(1) translate(0, -44px);
}
.atlas-form label[for=firstName] {
  display: inline-block;
  width: calc(50% - 10px);
}
.atlas-form label[for=lastName] {
  display: inline-block;
  width: 50%;
  margin-left: 10px;
}
.atlas-form-wide label[for=lastName] {
  margin-left: 0;
}
.atlas-form-wide label[for=atlasCheckbox] {
  width: 100% !important;
  text-align: center;
}
.atlas-form input,
.atlas-form select {
  padding: 11px;
  margin: 24px 0 0 0;
  border: 1px solid #fff;
  width: 100%;
  font-size: 16px;
}
.atlas-form select {
  height: 41px;
  font-family: Akzidenz Grotesk BQ Light, Helvetica;
  color: #424242;
  border-radius: 0;
}
.atlas-form input::placeholder {
  color: transparent;
}
.atlas-form input:invalid {
  border: 1px solid transparent !important;
  box-shadow: none !important;
}
.atlas-form input:focus + p,
.atlas-form input:not(.input--empty) + p {
  color: inherit;
  transform: translate(-18px, -75px) scale(0.7);
}
.atlas-form-bordered.atlas-form-bordered input,
.atlas-form-bordered.atlas-form-bordered select,
.atlas-form-wide.atlas-form-wide input,
.atlas-form-wide.atlas-form-wide select {
  border: solid 1px #b3bbc1 !important;
  border-radius: 3px !important;
}
.atlas-form input[type='submit'] {
  border: 0 !important;
}
.atlas-form-wide input[type='submit'] {
  margin: 20px auto;
}
.atlas-form small {
  display: block;
}
.atlas-form small a {
  margin: 0;
}
.atlas-form .password-requirements {
  margin: 10px 0 0 0;
}
.atlas-form-wide .password-requirements {
  position: absolute;
  right: 10px;
  top: 0;
  width: calc(50% - 20px);
  padding: 10px;
  background-color: #fff;
  border: solid 1px #b3bbc1 !important;
  border-bottom: 0 !important;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  display: none;
}
@media (max-width: 600px) {
  .atlas-form-wide .password-requirements {
    width: calc(100% - 20px);
    top: 130px;
  }
}
.atlas-form-wide .password-requirements-focused {
  display: block;
}
.atlas-form .password-requirements svg {
  margin-right: 5px;
}
.atlas-form .password-requirements .req {
  color: #888;
  transition: 300ms;
}
.atlas-form .password-requirements .req svg {
  fill: #888;
  stroke: #888;
}
.atlas-form .password-requirements .req--valid {
  color: inherit;
}
.atlas-form .password-requirements .req--valid svg {
  animation-name: keyframes-bounce-large;
  animation-duration: 400ms;
  fill: #6aaf4e;
  stroke: #6aaf4e;
}
.form-error,
.form-success {
  width: 360px;
  padding: 15px;
  font-size: 14px;
  text-align: center;
}
@media (max-width: 550px) {
  .form-error,
  .form-success {
    width: 100%;
  }
}
.form-error {
  border: 1px solid #dd4661;
  background-color: rgba(255,221,221,0.54);
}
.form-success {
  border: 1px solid #6aaf4e;
  background-color: rgba(106,175,78,0.17);
}
@keyframes keyframes-bounce-large {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
  }
  100% {
    transform: scale(1);
  }
}
