/* Gravity Forms — Beyond Arctic. Orbital-teeman päälle, tokenit :rootista. */

.gform_wrapper.gform-theme,
.gform_wrapper.gravity-theme,
.gform_wrapper.gform-theme--framework,
.gform_confirmation_wrapper {
  --gf-color-primary: var(--ba-ink);
  --gf-color-primary-rgb: 23, 36, 45;
  --gf-color-primary-contrast: var(--ba-white);
  --gf-color-primary-contrast-rgb: 255, 255, 255;
  --gf-color-primary-darker: var(--ba-ink-hover);
  --gf-color-primary-lighter: var(--ba-ink);
  --gf-color-secondary: var(--ba-white);
  --gf-color-secondary-contrast: var(--ba-black);
  --gf-color-in-ctrl: var(--ba-white);
  --gf-color-in-ctrl-contrast: var(--ba-black);
  --gf-color-in-ctrl-primary: var(--ba-ink);
  --gf-color-in-ctrl-primary-contrast: var(--ba-white);
  --gf-color-out-ctrl-dark: var(--ba-muted);
  --gf-color-out-ctrl-dark-darker: var(--ba-black);
  --gf-color-success: var(--ba-forest);
  --gf-color-success-contrast: var(--ba-white);
  --gf-font-family-base: var(--ba-body);
  --gf-font-family-primary: var(--ba-body);
  --gf-font-family-secondary: var(--ba-body);
  --gf-font-size-primary: var(--ba-text-body);
  --gf-line-height-primary: 1.5;
  --gf-radius: 0;
  --gf-radius-max-sm: 0;
  --gf-radius-max-md: 0;
  --gf-radius-max-lg: 0;
  --gf-ctrl-border-color: var(--ba-ink);
  --gf-ctrl-border-color-hover: var(--ba-ink);
  --gf-ctrl-border-color-focus: var(--ba-ink);
  --gf-ctrl-border-width: 1px;
  --gf-ctrl-bg-color: var(--ba-white);
  --gf-ctrl-bg-color-hover: var(--ba-white);
  --gf-ctrl-bg-color-focus: var(--ba-white);
  --gf-ctrl-color: var(--ba-black);
  --gf-ctrl-shadow: none;
  --gf-ctrl-shadow-focus: none;
  --gf-ctrl-shadow-hover: none;
  --gf-ctrl-size: var(--ba-btn-h);
  --gf-ctrl-size-lg: var(--ba-btn-h);
  --gf-ctrl-size-md: var(--ba-btn-h);
  --gf-ctrl-label-font-family: var(--ba-body);
  --gf-ctrl-label-font-size: var(--ba-text-body);
  --gf-ctrl-label-color: var(--ba-black);
  --gf-ctrl-label-font-weight: 600;
  --gf-ctrl-desc-font-family: var(--ba-body);
  --gf-ctrl-desc-font-size: var(--ba-text-sm);
  --gf-ctrl-desc-color: var(--ba-muted);
  --gf-ctrl-btn-radius: var(--ba-radius);
  --gf-ctrl-btn-font-family: var(--ba-display);
  --gf-ctrl-btn-font-size: var(--ba-text-ui);
  --gf-ctrl-btn-font-weight: 400;
  --gf-ctrl-btn-text-transform: uppercase;
  --gf-ctrl-btn-letter-spacing: 0;
  --gf-ctrl-btn-size: var(--ba-btn-h);
  --gf-ctrl-btn-padding-x: 24px;
  --gf-ctrl-btn-bg-color-primary: var(--ba-ink);
  --gf-ctrl-btn-bg-color-hover-primary: var(--ba-ink-hover);
  --gf-ctrl-btn-bg-color-focus-primary: var(--ba-ink-hover);
  --gf-ctrl-btn-color-primary: var(--ba-white);
  --gf-ctrl-btn-color-hover-primary: var(--ba-mint);
  --gf-ctrl-btn-color-focus-primary: var(--ba-mint);
  --gf-ctrl-btn-border-color-primary: var(--ba-ink);
  --gf-ctrl-btn-border-color-hover-primary: var(--ba-ink-hover);
  --gf-ctrl-btn-shadow: none;
  --gf-ctrl-btn-shadow-hover: none;
  --gf-ctrl-btn-shadow-focus: none;
  --gf-ctrl-choice-size: 20px;
  --gf-ctrl-choice-check-color: var(--ba-white);
  --gf-field-gap-y: 20px;
  --gf-form-gap-y: 20px;
  --gf-form-footer-margin-y-start: 24px;
  --gf-field-pg-prog-bar-bg-color: var(--ba-mint);
  --gf-field-pg-steps-number-bg-color-active: var(--ba-ink);
  --gf-field-pg-steps-number-bg-color-complete: var(--ba-forest);
  --gf-form-spinner-fg-color: var(--ba-ink);
  --gf-form-validation-bg-color: var(--ba-chip-bg);
  --gf-form-validation-border-color: var(--ba-ink);
  --gf-form-validation-color: var(--ba-black);
  --gf-form-validation-heading-color: var(--ba-black);
  --gf-form-validation-radius: 0;
  --gf-form-validation-font-family: var(--ba-body);
}

.gform_wrapper {
  font-family: var(--ba-body);
  color: var(--ba-black);
}

.gform_wrapper .gform_heading {
  margin: 0 0 24px;
}
.gform_wrapper .gform_title {
  font-family: var(--ba-display);
  font-size: var(--ba-text-h4);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--ba-black);
  margin: 0 0 12px;
}
.gform_wrapper .gform_description {
  font-size: var(--ba-text-body);
  line-height: 1.5;
  color: var(--ba-black);
}

.gform_wrapper .gfield_label,
.gform_wrapper legend.gfield_label {
  font-family: var(--ba-body);
  font-size: var(--ba-text-body);
  font-weight: 600;
  color: var(--ba-black);
  margin: 0 0 8px;
}
.gform_wrapper .gfield_required {
  color: var(--ba-ink);
}
.gform_wrapper .gfield_required_text {
  font-size: 0;
}
.gform_wrapper .gfield_required_text::before {
  content: "*";
  font-size: var(--ba-text-body);
  font-weight: 600;
  color: var(--ba-ink);
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper input[type="date"],
.gform_wrapper select,
.gform_wrapper textarea {
  width: 100%;
  min-height: var(--ba-btn-h);
  padding: 12px 16px;
  border: 1px solid var(--ba-ink);
  border-radius: 0;
  background: var(--ba-white);
  font-family: var(--ba-body);
  font-size: var(--ba-text-body);
  line-height: 1.5;
  color: var(--ba-black);
  box-shadow: none;
}
.gform_wrapper textarea {
  min-height: 160px;
  resize: vertical;
}
.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
  outline: 2px solid var(--ba-ink);
  outline-offset: 2px;
  border-color: var(--ba-ink);
  box-shadow: none;
}
.gform_wrapper ::placeholder {
  color: var(--ba-muted);
  opacity: 1;
}

.gform_wrapper .gfield_checkbox,
.gform_wrapper .gfield_radio {
  gap: 12px;
}
.gform_wrapper .gchoice {
  align-items: center;
}
.gform_wrapper input[type="checkbox"],
.gform_wrapper input[type="radio"] {
  width: 20px;
  height: 20px;
  min-height: 20px;
  accent-color: var(--ba-ink);
  border-color: var(--ba-ink);
}

.gform_wrapper .gform_fileupload_multifile,
.gform_wrapper .ginput_container_fileupload {
  border: 1px dashed var(--ba-ink);
  background: var(--ba-chip-bg);
  border-radius: 0;
  padding: 16px;
}

.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-top: 24px;
  padding: 0;
}

.gform_wrapper .ba-btn,
.gform_wrapper .gform_button,
.gform_wrapper .gform_next_button,
.gform_wrapper .gform_previous_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: var(--ba-btn-h);
  min-height: var(--ba-btn-h);
  padding: 0 24px;
  border-radius: var(--ba-radius);
  font-family: var(--ba-display);
  font-size: var(--ba-text-ui);
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0;
  border: 1px solid var(--ba-ink);
  cursor: pointer;
  white-space: nowrap;
  box-shadow: none;
  width: auto;
}
.gform_wrapper .ba-btn--ink,
.gform_wrapper .gform_button,
.gform_wrapper .gform_next_button {
  background: var(--ba-ink);
  color: var(--ba-white);
  border-color: var(--ba-ink);
}
.gform_wrapper .ba-btn--ink:hover,
.gform_wrapper .gform_button:hover,
.gform_wrapper .gform_next_button:hover {
  background: var(--ba-ink-hover);
  color: var(--ba-mint);
  border-color: var(--ba-ink-hover);
  opacity: 1;
}
.gform_wrapper .ba-btn--ghost,
.gform_wrapper .gform_previous_button {
  background: transparent;
  color: var(--ba-ink);
  border-color: var(--ba-ink);
}
.gform_wrapper .ba-btn--ghost:hover,
.gform_wrapper .gform_previous_button:hover {
  background: var(--ba-ink);
  color: var(--ba-mint);
  opacity: 1;
}

.gform_wrapper .gform_validation_errors,
.gform_wrapper .gform_submission_error {
  background: var(--ba-chip-bg);
  border: 1px solid var(--ba-ink);
  border-radius: 0;
  color: var(--ba-black);
  font-family: var(--ba-body);
  padding: 16px 20px;
}
.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message {
  color: var(--ba-ink);
  font-size: var(--ba-text-sm);
}

.gform_confirmation_wrapper,
.gform_wrapper .gform_confirmation_message {
  font-family: var(--ba-body);
  font-size: var(--ba-text-body);
  line-height: 1.5;
  color: var(--ba-black);
}
.gform_confirmation_message {
  background: var(--ba-chip-bg);
  padding: 24px 32px;
  border-left: 4px solid var(--ba-forest);
}

.gform_wrapper .gf_progressbar {
  background: var(--ba-chip-bg);
  border-radius: 0;
}
.gform_wrapper .gf_progressbar_percentage {
  background: var(--ba-ink);
  color: var(--ba-mint);
  font-family: var(--ba-display);
  text-transform: uppercase;
}

.gform_wrapper .gsection_title {
  font-family: var(--ba-display);
  font-size: var(--ba-text-h4);
  text-transform: uppercase;
  letter-spacing: -0.03em;
  color: var(--ba-black);
}
.gform_wrapper .gsection {
  border-bottom: 1px solid var(--ba-line);
}

.gform_wrapper .gform_ajax_spinner {
  filter: grayscale(1);
}
