form {
  padding: 1.5rem 1rem;
  background-color: #151949;
  color: #ffffff;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
}
form h1, form h2, form h3, form h4, form h5, form h6, form label {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
}
form a:not(.btn) {
  color: #39b1fd;
  border-bottom-color: rgba(57, 177, 253, 0.5);
}
form a:not(.btn):hover {
  color: #00e0c1;
  border-color: rgba(0, 224, 193, 0.5);
  box-shadow: 0 2px 0 rgba(0, 224, 193, 0.5);
}

.webform-share-page-body a:not(.btn) {
  color: #39b1fd;
  border-bottom-color: rgba(57, 177, 253, 0.5);
}
.webform-share-page-body a:not(.btn):hover {
  color: #00e0c1;
  border-color: rgba(0, 224, 193, 0.5);
  box-shadow: 0 2px 0 rgba(0, 224, 193, 0.5);
}

form .button {
  background-color: #151949;
  border-color: #ffca00;
  border-radius: 44px;
  color: #ffca00;
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.2rem;
  line-height: 1.25rem;
  padding: 0.75rem 2.98rem;
  text-transform: uppercase;
  transition: background-color 0.5s cubic-bezier(0.16, 1, 0.3, 1), color 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
form .button::before {
  display: none;
}
form .button:focus, form .button:hover {
  background-color: #ffca00;
  background-image: unset;
  color: #151949;
}
form .button:focus::before, form .button:hover::before {
  display: none;
}

form label {
  margin-bottom: 0.25rem;
}
form input.form-text {
  margin-top: unset;
}
form .form-control {
  padding: 0.5rem 1rem;
  height: 2.8125rem;
  color: #ffffff;
  background-color: #151949;
  border-color: #f3f3f3;
  border-radius: 1.40625rem;
  font-weight: 400;
}
form .form-control:focus {
  color: #ffffff;
  background-color: #151949;
  border-color: #00e0c1;
  box-shadow: 0 0 0 0.25rem rgba(0, 224, 193, 0.25);
}
form .custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  background-color: #151949;
}
form .custom-control-input:focus ~ .custom-control-label::before {
  color: #00e0c1;
  background-color: #151949;
  box-shadow: 0 0 0 1px #f3f3f3, 0 0 0 0.25rem rgba(0, 224, 193, 0.25);
}
form .custom-control-input:active ~ .custom-control-label::before {
  color: #00e0c1;
  background-color: #151949;
}
form .custom-control-label::before {
  background-color: #151949;
}
form input[type=checkbox] ~ .option::before,
form input[type=radio] ~ .option::before {
  border-color: #f3f3f3;
}
form .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background: #fff;
}
form .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%2327a042' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}
form .custom-checkbox-checked .custom-control-label::before {
  background: #fff;
}
form .custom-checkbox-checked .custom-control-label::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%2327a042' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E");
}
form .custom-select {
  color: #ffffff;
  background: #151949 url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23ffffff' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center;
  background-size: 8px 10px;
  border-color: #f3f3f3;
  border-radius: 1.40625rem;
  font-weight: 400;
}
form .custom-select:focus {
  color: #ffffff;
  background-color: #151949;
  border-color: #00e0c1;
  box-shadow: 0 0 0 0.25rem rgba(0, 224, 193, 0.25);
}
form .webform-element-help {
  font-weight: 600;
  color: #000;
  border-color: #39b1fd;
  background: #39b1fd;
}
form .webform-element-help:focus, form .webform-element-help:active, form .webform-element-help:hover {
  color: #000;
  border-color: #00e0c1;
  background: #00e0c1;
}
form .tippy-tooltip {
  background: #00e0c1;
  color: #000;
}
form .tippy-tooltip[data-placement^=top] .tippy-arrow {
  border-top-color: #00e0c1;
}
form .tippy-tooltip[data-placement^=bottom] .tippy-arrow {
  border-bottom-color: #00e0c1;
}
form .tippy-tooltip[data-placement^=left] .tippy-arrow {
  border-left-color: #00e0c1;
}
form .tippy-tooltip[data-placement^=right] .tippy-arrow {
  border-right-color: #00e0c1;
}
form .tippy-box {
  background: #00e0c1;
  color: #000;
}
form .tippy-box[data-placement^=top] > .tippy-arrow::before {
  border-top-color: #00e0c1;
}
form .tippy-box[data-placement^=bottom] > .tippy-arrow::before {
  border-bottom-color: #00e0c1;
}
form .tippy-box[data-placement^=left] > .tippy-arrow::before {
  border-left-color: #00e0c1;
}
form .tippy-box[data-placement^=right] > .tippy-arrow::before {
  border-right-color: #00e0c1;
}
form .form-control.required.valid, form .custom-select.required.valid {
  border-color: #27a042;
}
form .form-control.required.valid:focus, form .custom-select.required.valid:focus {
  border-color: #27a042;
  box-shadow: 0 0 0 0.25rem rgba(39, 160, 66, 0.25);
}
form .form-control.required.error.error, form .custom-select.required.error.error {
  border-color: #ff4657;
}
form .form-control.required.error.error:focus, form .custom-select.required.error.error:focus {
  border-color: #ff4657;
  box-shadow: 0 0 0 0.25rem rgba(255, 70, 87, 0.25);
}
form .form-control.required.error.error ~ label, form .custom-select.required.error.error ~ label {
  color: #ff4657;
}
form .custom-control-input.required.valid ~ .custom-control-label, form .custom-control-input.form-required.valid ~ .custom-control-label {
  color: inherit; /* remove validation color from checkbox label */
}
form .custom-control-input.required.valid ~ .custom-control-label::before, form .custom-control-input.form-required.valid ~ .custom-control-label::before {
  background-color: #151949;
  border-color: #27a042;
}
form .custom-control-input.required.error ~ .custom-control-label, form .custom-control-input.form-required.error ~ .custom-control-label {
  color: inherit; /* remove validation color from checkbox label */
}
form .custom-control-input.required.error ~ .custom-control-label::before, form .custom-control-input.form-required.error ~ .custom-control-label::before {
  background-color: #151949;
  border-color: #ff4657;
}
form .js-form-required:not(.custom-control-label)::after, form .form-required:not(.custom-control-label)::after {
  color: #ff4657;
}
form label.error, form strong.error, form span.error {
  color: #ff4657;
}