/* Form title */
.form-title {
  margin: 0;
}

.form-title ~ div > form {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

/* Labels */
form label {
  display: block;
  margin-bottom: 0.35rem;
}

/* Form fields */
form .hs-form-field {
  margin-bottom: 1.4rem;
}

form input[type=text],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form input[type=search],
form select,
form textarea {
  display: inline-block;
  width: 100% !important; /* stylelint-disable-line declaration-no-important */
}

form fieldset {
  max-width: 100% !important; /* stylelint-disable-line declaration-no-important */
}

/* Form fields - checkbox/radio */
form .inputs-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  margin-right: 0.35rem;
  cursor: pointer;
}

/* Headings and text */
form .hs-richtext,
form .hs-richtext p {
  margin: 0 0 1.4rem;
}

/* Validation */
form .hs-form-required {
  color: #ef6b51;
}

form .hs-input.error {
  border-color: #ef6b51;
}

form .hs-error-msg,
form .hs-error-msgs {
  margin-top: 0.35rem;
  color: #ef6b51;
}

/* Submit button */
form input[type=submit],
form .hs-button {
  display: inline-block;
  width: 100%;
  cursor: pointer;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal !important; /* stylelint-disable-line declaration-no-important */
  padding: 11px 23px;
  font-size: 13px;
  border-radius: 3px;
  color: #fff;
  border: none;
  background-size: 300% 100% !important;
  transition: all 0.4s ease;
  background-image: linear-gradient(to right, #471384, #9537af, #a90667, #fcb488) !important;
  box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.4) !important;
}

form input[type=submit]:hover {
  background-position: 100% 0 !important;
}

/* disable the roi calc button until all fields have values */
.hs-form:not(.roi-data-ready) .roi-calc-button {
  opacity: 0.3;
  color: #e5eaf0;
  cursor: default;
}

/* hide submit button until after ROI calculation */
.hs-form:not(.has-calculated-roi) .roi-calc-button-container ~ fieldset {
  display: none;
}

/* hide submit button until after ROI calculation */
/*  */
.hs-form:not(.is-ready-for-submission) .hs-submit {
  display: none;
}

.hs-form:not(.is-ready-for-submission) .learn-more-checkbox-container ~ fieldset {
  display: none;
}

.hs-form:not(.is-ready-for-submission) .hs-submit {
  display: none;
}

.hs-form .roi-calc-button {
  display: inline-block;
  margin: 0 auto 0 0;
  padding: 11px 23px;
  border-radius: 3px;
  cursor: pointer;
  text-align: center;
  color: #fff;
}

.hs-form .roi-calc-button + p {
  font-weight: bold;
  font-size: larger;
  cursor: auto;
  color: #613394;
}
