/*  Gravity Form Styles   */

/* Radio Buttons */

/* Gravity Forms Inquiry Type Radio Buttons */
.gform_wrapper .gravity-form__styles .radio-button__style .gfield_radio {
  display: flex;
  gap: 0;
  background: var(--bg-surface);
  border: 0.1rem solid var(--border-primary);
  border-radius: var(--radius-l);
  padding: var(--space-3xs);
  margin-bottom: var(--space-xs);
  grid-column-gap: var(--space-xs) !important;
}

.gform_wrapper
  .gravity-form__styles
  .radio-button__style
  .gfield_radio
  .gchoice {
  flex: 1;
  position: relative;
}

.gform_wrapper
  .gravity-form__styles
  .radio-button__style
  .gfield_radio
  .gfield-choice-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.gform_wrapper
  .gravity-form__styles
  .radio-button__style
  .gfield_radio
  .gform-field-label--type-inline {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  padding: var(--space-m) var(--space-xl);
  border-radius: var(--radius-s);
  text-align: center;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: var(--text-l);
  font-weight: 600;
  color: var(--base-l-1);
  transition:
    background var(--transition-fast),
    color var(--transition-fast),
    box-shadow var(--transition-fast);
  user-select: none;
  margin: 0;
}

/* Hover */
.gform_wrapper
  .gravity-form__styles
  .radio-button__style
  .gfield_radio
  .gform-field-label--type-inline:hover {
  color: var(--primary);
}

/* Active State */
.gform_wrapper
  .gravity-form__styles
  .radio-button__style
  .gfield_radio
  .gfield-choice-input:checked
  + .gform-field-label--type-inline {
  background: var(--light);
  color: var(--primary);
  box-shadow: 0 0.1rem 0.3rem rgba(0, 0, 0, 0.06);
}

/* Focus accessibility */
.gform_wrapper
  .gravity-form__styles
  .radio-button__style
  .gfield_radio
  .gfield-choice-input:focus
  + .gform-field-label--type-inline {
  box-shadow:
    0 0 0 0.3rem var(--primary-10),
    0 0.1rem 0.3rem rgba(0, 0, 0, 0.06);
}

/* Form Styles */

.gform_wrapper.gravity-theme .gravity-form__styles .gform_fields {
  gap: var(--space-3xl);
}

.gform_wrapper.gravity-theme .gform_required_legend {
  display: none;
}

.gform_wrapper.gravity-theme .gravity-form__styles .gfield .gfield_label,
.gform_wrapper.gravity-theme .gfield .gfield_label {
  font-size: var(--text-m);
  font-weight: 600;
  color: var(--base);
  letter-spacing: 0.02em;
}

.gform_wrapper.gravity-theme .gravity-form__styles .gfield_required,
.gform_wrapper.gravity-theme .gfield_required {
  color: #d14848;
  font-size: var(--text-m);
}

.gform_wrapper
  .gravity-form__styles
  .gfield
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
.gform_wrapper .gravity-form__styles .gfield select,
.gform_wrapper .gravity-form__styles textarea,
.gform_wrapper.gravity-theme
  .gfield
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]) {
  font-size: var(--text-xl);
  color: var(--base);
  background: var(--light);
  border: 0.1rem solid var(--border-primary);
  border-radius: var(--radius-l);
  padding: var(--space-m) var(--space-l);
  width: 100%;
  transition:
    border-color var(--transition-fast),
    box-shadow var(--transition-fast);
  line-height: 1.5;
  -webkit-appearance: none;
  appearance: none;
}
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gfield
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):focus,
.gform_wrapper.gravity-theme .gravity-form__styles .gfield select:focus,
.gform_wrapper.gravity-theme .gravity-form__styles textarea:focus,
.gform_wrapper.gravity-theme
  .gfield
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 0.3rem var(--primary-10);
}
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gfield
  input:not([type="submit"]):hover,
.gform_wrapper.gravity-theme .gravity-form__styles .gfield select:hover,
.gform_wrapper.gravity-theme .gravity-form__styles textarea:hover,
.gform_wrapper.gravity-theme
  .gfield
  input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):hover {
  border-color: var(--secondary);
}

.gform_wrapper.gravity-theme .gravity-form__styles .gfield_description {
  font-size: var(--text-s);
  color: var(--base-l-1);
  margin-top: 0.2rem;
  line-height: 1.5;
}

.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_footer
  input[type="submit"],
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  input.gform_next_button,
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  button.gform_next_button,
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  input[type="submit"],
.gform_wrapper.gravity-theme .gform_footer input[type="submit"],
.gform_wrapper.gravity-theme .gform_footer button[type="submit"] {
  display: inline-block;
  font-family: var(--font-body);
  font-weight: 600;
  text-decoration: none;
  border-radius: var(--radius-l);
  transition:
    background var(--transition-fast),
    transform 0.1s,
    color var(--transition-fast),
    border-color var(--transition-fast);
  white-space: nowrap;
  line-height: 1;
  cursor: pointer;
  border: none;
  background: var(--primary);
  color: var(--light);
  padding: var(--space-l) var(--space-5xl);
  font-size: var(--text-2xl);
}

.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_footer
  input[type="submit"]:hover,
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  input.gform_next_button:hover,
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  button.gform_next_button,
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  input[type="submit"]:hover,
.gform_wrapper.gravity-theme .gform_footer button[type="submit"]:hover {
  background: var(--tertiary);
  transform: translateY(-0.1rem);
}

.gform_wrapper.gravity-theme .gravity-form__styles .gform_footer {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  padding-bottom: 0;
  padding-top: var(--space-xl);
}

/* Newsletter */

.gravity-form__styles.newsletter {
  width: var(--width-s);
  max-width: 100%;
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  .gfield
  input:not([type="submit"]) {
  border: 1px solid #e3e7ee;
  min-height: 42px !important;
  padding: 3px 15px;
  border-radius: 2px;
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  input::placeholder {
  color: var(--light-40);
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  input::-webkit-input-placeholder {
  color: var(--light-40);
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  input:-ms-input-placeholder {
  color: var(--light-40);
}

.gform_wrapper.gravity-theme .gravity-form__styles.newsletter .gform_fields {
  grid-column-gap: var(--space-s);
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  .gfield
  input:not([type="submit"]) {
  border-radius: var(--radius-xl);
  text-align: left;
  background: var(--light-10);
  border: 1px solid var(--light-20);
  color: var(--light);
  font-size: var(--text-l);
}

.gravity-form__styles.newsletter .gfield input:not([type="submit"]):focus {
  background: var(--light-20);
  border: 1px solid var(--light-50);
}

.gravity-form__styles.newsletter .gfield_description {
  position: absolute;
}

.gravity-form__styles.newsletter .gform-footer {
  display: none;
}

.gform_wrapper.gravity-theme .gravity-form__styles.newsletter .gform_fields {
  grid-row-gap: var(--space-xs);
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  .ginput_container.ginput_container_email,
.gform_wrapper.gravity-theme
  .newsletter_wrapper
  .ginput_container.ginput_container_email
  input {
  height: 100%;
  min-height: 4.2rem;
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  .gfield
  input:not([type="submit"]) {
  padding: 0 2rem;
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  .gfield--type-submit
  input {
  background: var(--light);
  color: var(--primary);
  font-size: var(--text-l);
  font-weight: 700;
  padding: 11px 22px;
  border-radius: var(--radius-xl);
  border: none;
  cursor: pointer;
  transition: background 0.15s;
  white-space: nowrap;
  height: 100%;
  min-height: 4.2rem;
}

.gform_wrapper.gravity-theme
  .gravity-form__styles.newsletter
  .gfield--type-submit
  input:hover {
  background-color: var(--border-primary);
}

/* Multi Step Form */

.gform_wrapper.gravity-theme .gravity-form__styles .gform_page_fields {
  border-style: dashed;
  border-radius: var(--radius-l);
  padding: var(--space-7xl) var(--space-5xl);
}
.gform_wrapper.gravity-theme .gravity-form__styles .gf_page_steps {
  border-bottom: 0;
  margin-bottom: var(--space-xl);
  display: flex;
  align-items: center;
  justify-content: space-around;
}
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gf_step_active
  .gf_step_number {
  background: var(--primary);
  color: var(--light);
  border-color: var(--primary);
}
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gf_step_active
  .gf_step_label {
  color: var(--tertiary);
}
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  input.gform_previous_button,
.gform_wrapper.gravity-theme
  .gravity-form__styles
  .gform_page_footer
  button.gform_previous_button {
  display: inline-block;
  font-family: var(--font-body);
  font-weight: 600;
  text-decoration: none;
  border-radius: var(--radius-l);
  transition:
    background var(--transition-fast),
    transform 0.1s,
    color var(--transition-fast),
    border-color var(--transition-fast);
  white-space: nowrap;
  line-height: 1;
  cursor: pointer;
  border: 1px solid var(--primary);
  background: var(--light);
  color: var(--primary);
  padding: var(--space-l) var(--space-5xl);
  font-size: var(--text-2xl);
}
.gform_wrapper.gravity-theme .gravity-form__styles h2 {
  font-size: var(--text-5xxl);
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .gform_wrapper.gravity-theme .gravity-form__styles .gf_page_steps {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .gform_wrapper.gravity-theme .gravity-form__styles .gf_step {
    margin: 7px 32px 7px 0;
  }
  .gform_wrapper.gravity-theme .gravity-form__styles .gf_step_number {
    height: 36px;
    width: 36px;
  }
  .gform_wrapper.gravity-theme .gravity-form__styles .gf_step_label {
    padding-left: 12px;
  }
}
