/*
 * Gravity Forms skin.
 * The forms are built in Gravity Forms; this file makes them look like the designed application and contact forms.
 * Everything is scoped to .mcr-gf (added by mcr_form()), so forms elsewhere on the site are untouched.
 * Written against Gravity Forms 2.5 to 2.9 markup (legacy "gravity-theme", "Orbital" and no-framework output).
 * See docs/gravity-forms.md for the field blueprint and the custom CSS classes this file understands (mcr-*).
 */

/* ---------- wrapper and reset ---------- */
.mcr-gf {
  position:relative;
  font-family:var(--font-body);
  font-size:var(--font-size-md);
  color:var(--color-text-body);
}
.mcr-gf .gform_wrapper,
.mcr-gf .gform_wrapper form,
.mcr-gf .gform_body,
.mcr-gf .gform-body {
  margin:0;
  padding:0;
  max-width:none;
  width:100%;
}
.mcr-gf .gform_wrapper ul,
.mcr-gf .gform_wrapper ol {
  list-style:none;
  margin:0;
  padding:0;
}
.mcr-gf .gform_wrapper li {
  margin:0;
  padding:0;
}
.mcr-gf .gform_wrapper *,
.mcr-gf .gform_wrapper *::before,
.mcr-gf .gform_wrapper *::after {
  box-sizing:border-box;
}
.mcr-gf .gform_heading,
.mcr-gf .gform_title,
.mcr-gf .gform_required_legend {
  display:none;
}
.mcr-gf .gform_validation_container,
.mcr-gf .gform_wrapper .gform_validation_container,
.mcr-gf .gfield--type-honeypot {
  display:none !important;
  position:absolute !important;
  left:-9999px !important;
}
.mcr-gf .gform_hidden,
.mcr-gf input[type="hidden"] {
  display:none;
}

/* ---------- field grid (two columns, like .fgrid) ---------- */
.mcr-gf .gform_fields {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 14px;
  margin-top:22px;
  padding:0;
  list-style:none;
}
.mcr-gf .gfield {
  grid-column:1/-1;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}
.mcr-gf .gfield--width-half,
.mcr-gf .gfield.gf_left_half,
.mcr-gf .gfield.gf_right_half {
  grid-column:auto;
}
.mcr-gf .gfield--width-third,
.mcr-gf .gfield--width-quarter,
.mcr-gf .gfield--width-two-thirds,
.mcr-gf .gfield--width-three-quarter {
  grid-column:1/-1;
}
.mcr-gf .gfield--type-html,
.mcr-gf .gfield--type-section {
  grid-column:1/-1;
}
.mcr-gf .gfield_visibility_hidden,
.mcr-gf .gfield--type-hidden {
  display:none;
}

/* ---------- labels, hints ---------- */
.mcr-gf .gfield_label,
.mcr-gf legend.gfield_label,
.mcr-gf .gform-field-label:not(.gform-field-label--type-inline):not(.gform-field-label--type-sub) {
  display:block;
  margin:0 0 6px;
  padding:0;
  font-size:var(--font-size-sm);
  font-weight:600;
  line-height:1.35;
  color:var(--color-text-body);
}
.mcr-gf .gfield_required,
.mcr-gf .gfield_required_text,
.mcr-gf .gfield_required_asterisk {
  display:none;
}
/* The design marks optional fields, not required ones */
.mcr-gf :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-select, .gfield--type-number, .gfield--type-name, .gfield--type-address, .gfield--type-date, .gfield--type-website):not(.gfield_contains_required) > .gfield_label::after,
.mcr-gf :is(.gfield--type-text, .gfield--type-email, .gfield--type-phone, .gfield--type-textarea, .gfield--type-select, .gfield--type-number, .gfield--type-name, .gfield--type-address, .gfield--type-date, .gfield--type-website):not(.gfield_contains_required) > legend.gfield_label::after {
  content:"optional";
  margin-left:6px;
  font-weight:400;
  color:var(--color-muted-soft);
}
.mcr-gf .gfield_description,
.mcr-gf .instruction {
  margin:-2px 0 8px;
  padding:0;
  font-size:var(--fs-14_5);
  line-height:1.4;
  color:var(--color-muted);
}
.mcr-gf .gfield_description.validation_message,
.mcr-gf .validation_message {
  margin:8px 0 0;
}
.mcr-gf .gform-field-label--type-sub,
.mcr-gf .ginput_complex label,
.mcr-gf .ginput_complex .gform-field-label {
  display:block;
  margin:4px 0 0;
  font-size:var(--fs-14);
  font-weight:400;
  color:var(--color-muted);
}
.mcr-gf .ginput_container {
  margin:0;
  padding:0;
  position:relative;
}

/* ---------- text inputs (.inp) ---------- */
.mcr-gf .gfield input:is([type="text"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="password"], [type="date"], [type="search"]),
.mcr-gf .gfield select,
.mcr-gf .gfield textarea {
  display:block;
  width:100% !important;
  max-width:none !important;
  height:var(--control-height);
  margin:0;
  padding:0 16px;
  border:1.5px solid var(--color-input-border);
  border-radius:var(--radius-lg);
  background:var(--color-white);
  font:400 var(--font-size-md)/1.2 var(--font-body);
  color:var(--color-text-body);
  box-shadow:none;
  appearance:none;
  -webkit-appearance:none;
}
.mcr-gf .gfield textarea {
  height:132px;
  min-height:132px;
  padding:14px 16px;
  line-height:1.45;
  resize:vertical;
}
.mcr-gf .gfield select {
  padding-right:44px;
  background-image:linear-gradient(45deg,transparent 50%,var(--color-primary) 50%),linear-gradient(135deg,var(--color-primary) 50%,transparent 50%);
  background-position:calc(100% - 22px) 25px,calc(100% - 16px) 25px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
.mcr-gf .gfield ::placeholder {
  color:var(--color-placeholder);
  opacity:1;
}
.mcr-gf .gfield input:is([type="text"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="password"], [type="date"], [type="search"]):focus,
.mcr-gf .gfield select:focus,
.mcr-gf .gfield textarea:focus {
  outline:none;
  border-color:var(--color-primary);
  box-shadow:var(--shadow-focus);
}
.mcr-gf .gfield--type-number .ginput_container_number {
  position:relative;
}

/* name, address and other multi-part fields */
.mcr-gf .ginput_complex,
.mcr-gf .gform-grid-row {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:0;
}
.mcr-gf .ginput_complex > span,
.mcr-gf .ginput_complex > div,
.mcr-gf .gform-grid-col {
  display:block;
  width:auto;
  margin:0;
  padding:0;
  float:none;
  grid-column:auto;
}
.mcr-gf .ginput_complex .ginput_full,
.mcr-gf .ginput_complex .address_line_1,
.mcr-gf .ginput_complex .address_line_2 {
  grid-column:1/-1;
}

/* ---------- errors ---------- */
.mcr-gf .gfield_error input:is([type="text"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="date"]),
.mcr-gf .gfield_error select,
.mcr-gf .gfield_error textarea,
.mcr-gf .gfield--error input:is([type="text"], [type="email"], [type="tel"], [type="url"], [type="number"], [type="date"]),
.mcr-gf .gfield--error select,
.mcr-gf .gfield--error textarea,
.mcr-gf input[aria-invalid="true"],
.mcr-gf select[aria-invalid="true"],
.mcr-gf textarea[aria-invalid="true"] {
  border-color:var(--color-danger);
  background-color:var(--color-danger-wash);
}
.mcr-gf .validation_message,
.mcr-gf .gfield_validation_message {
  display:flex;
  gap:8px;
  padding:0;
  border:0;
  background:none;
  font-size:var(--fs-14_5);
  line-height:1.4;
  font-weight:500;
  color:var(--color-danger);
}
.mcr-gf .validation_message::before,
.mcr-gf .gfield_validation_message::before {
  content:"!";
  flex:none;
  width:18px;
  height:18px;
  margin-top:1px;
  border-radius:var(--radius-round);
  background:var(--color-danger);
  color:var(--color-white);
  font-size:12px;
  font-weight:800;
  line-height:18px;
  text-align:center;
}
.mcr-gf .gform_validation_errors {
  margin:0 0 20px;
  padding:14px 16px;
  border:1.5px solid var(--color-danger-bg-2);
  border-radius:var(--radius-lg);
  background:var(--color-danger-wash);
  color:var(--color-danger-dark);
  font-size:var(--font-size-sm);
}
.mcr-gf .gform_validation_errors h2,
.mcr-gf .gform_submission_error {
  margin:0;
  font:700 var(--font-size-sm)/1.4 var(--font-body);
  color:var(--color-danger-dark);
}
.mcr-gf .gform_validation_errors ol {
  margin:8px 0 0;
  padding-left:20px;
  list-style:decimal;
}
.mcr-gf .gform_validation_errors a {
  color:var(--color-danger-dark);
}

/* ---------- radios and checkboxes (.chk) ---------- */
.mcr-gf .gfield_radio,
.mcr-gf .gfield_checkbox {
  display:grid;
  gap:0;
  margin:0;
  padding:0;
}
.mcr-gf .gchoice {
  display:flex;
  gap:12px;
  align-items:flex-start;
  min-height:var(--tap-size);
  margin:0;
  padding:8px 0;
}
.mcr-gf .gchoice input:is([type="radio"], [type="checkbox"]),
.mcr-gf .ginput_container_consent input[type="checkbox"] {
  flex:none;
  width:24px;
  height:24px;
  margin:0;
  accent-color:var(--color-primary);
}
.mcr-gf .gchoice label,
.mcr-gf .gform-field-label--type-inline,
.mcr-gf .gfield_consent_label {
  display:block;
  margin:0;
  font-size:var(--fs-16_5);
  font-weight:400;
  line-height:1.4;
  color:var(--color-text-body);
  cursor:pointer;
}
.mcr-gf .gfield_radio .gchoice_other_control,
.mcr-gf .gfield_radio input[type="text"] {
  margin-top:6px;
}

/* Choice cards: add the class "mcr-optcards" to a Radio or Checkbox field (Appearance tab, Custom CSS Class) */
.mcr-gf .mcr-optcards .gfield_radio,
.mcr-gf .mcr-optcards .gfield_checkbox {
  gap:10px;
  margin-top:8px;
}
.mcr-gf .mcr-optcards .gchoice {
  padding:16px;
  border:1.5px solid var(--color-input-border);
  border-radius:var(--radius-lg);
  background:var(--color-white);
  cursor:pointer;
}
.mcr-gf .mcr-optcards .gchoice:has(input:checked) {
  padding:15.5px;
  border:2px solid var(--color-primary);
  background:var(--color-success-wash);
}
.mcr-gf .mcr-optcards .gchoice label {
  font-weight:600;
  color:var(--color-text);
}

/* Checklist box: class "mcr-chkbox" on a Checkbox field */
.mcr-gf .mcr-chkbox .gfield_checkbox {
  margin-top:8px;
  padding:6px 14px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-white);
}
.mcr-gf .mcr-chkbox .gchoice + .gchoice {
  border-top:1px solid var(--color-surface-tint-2);
}

/* Consent: class "mcr-consent" is optional, any Consent field gets the boxed look */
.mcr-gf .gfield--type-consent .ginput_container_consent {
  display:flex;
  gap:12px;
  align-items:flex-start;
  min-height:var(--tap-size);
  padding:10px 12px;
  border:1.5px solid var(--color-input-border);
  border-radius:var(--radius-lg);
  background:var(--color-white);
}
.mcr-gf .gfield--type-consent.gfield_error .ginput_container_consent,
.mcr-gf .gfield--type-consent.gfield--error .ginput_container_consent {
  border-color:var(--color-danger);
  background:var(--color-danger-wash);
}

/* ---------- file uploads (.up) ---------- */
.mcr-gf .gfield--type-fileupload {
  margin-top:0;
  padding:16px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-xl);
  background:var(--color-white);
}
.mcr-gf .gfield--type-fileupload > .gfield_label {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  font-size:var(--fs-18);
  font-weight:700;
  color:var(--color-text);
}
.mcr-gf .gfield--type-fileupload .ginput_container_fileupload,
.mcr-gf .gfield--type-fileupload .gform_drop_area {
  padding:18px 14px;
  border:1.5px dashed var(--color-input-border);
  border-radius:var(--radius-lg);
  background:var(--color-surface-warm);
  text-align:center;
}
.mcr-gf .gfield--type-fileupload input[type="file"] {
  width:100%;
  max-width:100%;
  font-size:var(--fs-14_5);
  color:var(--color-muted);
}
.mcr-gf .gfield--type-fileupload input[type="file"]::file-selector-button,
.mcr-gf .gform_button_select_files {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:var(--control-height);
  margin:0 12px 0 0;
  padding:0 26px;
  border:0;
  border-radius:var(--radius-lg);
  background:var(--color-primary);
  color:var(--color-white);
  font:600 var(--font-size-md)/1.1 var(--font-body);
  cursor:pointer;
}
.mcr-gf .gfield--type-fileupload .gform_drop_instructions {
  display:block;
  margin-bottom:10px;
  font-size:var(--font-size-md);
  font-weight:600;
  color:var(--color-text);
}
.mcr-gf .gfield--type-fileupload .gform_fileupload_rules,
.mcr-gf .gfield--type-fileupload .gfield_description {
  display:block;
  margin:10px 0 0;
  font-size:var(--fs-14);
  color:var(--color-muted);
}
.mcr-gf .ginput_preview_list,
.mcr-gf .ginput_preview {
  margin:12px 0 0;
  padding:0;
}
.mcr-gf .ginput_preview {
  display:flex;
  gap:12px;
  align-items:center;
  text-align:left;
}
.mcr-gf .ginput_preview::before {
  content:"";
  flex:none;
  width:22px;
  height:22px;
  border-radius:var(--radius-round);
  background:var(--color-secondary);
}
.mcr-gf .gfield_fileupload_filename {
  font-weight:600;
  color:var(--color-text);
  overflow-wrap:anywhere;
}
.mcr-gf .gfield_fileupload_filesize {
  font-size:var(--fs-14);
  color:var(--color-muted);
}
.mcr-gf .gform_delete_file,
.mcr-gf .gform_delete_file_icon {
  margin-left:auto;
  font-size:var(--fs-14_5);
  font-weight:600;
  color:var(--color-danger);
  background:none;
  border:0;
  cursor:pointer;
}

/* ---------- section headings and HTML blocks ---------- */
.mcr-gf .gfield--type-section {
  margin-top:14px;
  padding:0;
  border:0;
}
.mcr-gf .gsection_title,
.mcr-gf .gfield--type-section h3 {
  margin:0;
  font-family:var(--font-heading);
  font-size:var(--fs-23);
  font-weight:600;
  line-height:1.15;
  letter-spacing:-.01em;
  color:var(--color-text);
}
.mcr-gf .gsection_description {
  margin:6px 0 0;
  font-size:var(--fs-17_5);
  color:var(--color-text-mid);
}
/* Step title: class "mcr-step-title" on a Section field */
.mcr-gf .mcr-step-title {
  margin-top:0;
}
.mcr-gf .mcr-step-title .gsection_title {
  font-size:var(--fs-32);
  line-height:1.08;
  letter-spacing:-.02em;
  text-wrap:balance;
}
.mcr-gf .gfield--type-html {
  font-size:var(--font-size-md);
  color:var(--color-text-mid);
}

/* ---------- repeater (directors, owners) ---------- */
.mcr-gf .gfield_repeater_container,
.mcr-gf .gfield--type-repeater {
  margin-top:0;
}
.mcr-gf .gfield_repeater_items {
  display:grid;
  gap:16px;
}
.mcr-gf .gfield_repeater_item {
  padding:18px 16px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-xl);
  background:var(--color-white);
}
.mcr-gf .gfield_repeater_cell {
  margin:0 0 14px;
}
.mcr-gf .gfield_repeater_buttons {
  display:flex;
  gap:10px;
  margin-top:14px;
}
.mcr-gf .gfield_repeater_button,
.mcr-gf .add_repeater_item,
.mcr-gf .remove_repeater_item {
  display:inline-flex;
  align-items:center;
  min-height:var(--tap-size);
  padding:0 4px;
  border:0;
  background:none;
  font:600 var(--font-size-sm)/1.2 var(--font-body);
  color:var(--color-primary);
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
}
.mcr-gf .remove_repeater_item {
  color:var(--color-danger);
}

/* ---------- buttons ---------- */
.mcr-gf .gform_button,
.mcr-gf .gform_next_button,
.mcr-gf .gform_previous_button,
.mcr-gf .gform-theme-button,
.mcr-gf .gform_footer input[type="submit"],
.mcr-gf .gform_page_footer input[type="submit"],
.mcr-gf .gform_page_footer input[type="button"] {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:auto;
  min-height:var(--control-height);
  margin:0;
  padding:0 26px;
  border:0;
  border-radius:var(--radius-lg);
  background:var(--color-accent);
  color:var(--color-white);
  font:600 var(--font-size-md)/1.1 var(--font-body);
  text-decoration:none;
  text-align:center;
  cursor:pointer;
  box-shadow:none;
}
.mcr-gf .gform_button:hover,
.mcr-gf .gform_next_button:hover,
.mcr-gf .gform_footer input[type="submit"]:hover,
.mcr-gf .gform_page_footer input[type="submit"]:hover {
  background:var(--color-accent-hover);
  color:var(--color-white);
}
.mcr-gf .gform_previous_button,
.mcr-gf .gform_page_footer input.gform_previous_button,
.mcr-gf .gform-theme-button--secondary {
  min-width:56px;
  padding:0 18px;
  background:var(--color-white);
  color:var(--color-primary);
  border:1.5px solid var(--color-primary);
}
.mcr-gf .gform_previous_button:hover,
.mcr-gf .gform_page_footer input.gform_previous_button:hover {
  background:var(--color-success-wash);
  color:var(--color-primary);
}
/* Footer bar: sticks to the bottom of the screen on phones, like the design's action bar (.a-bar) */
.mcr-gf .gform_footer,
.mcr-gf .gform_page_footer,
.mcr-gf .gform-footer,
.mcr-gf .gform-page-footer {
  position:sticky;
  bottom:0;
  z-index:15;
  display:flex;
  flex-wrap:wrap;
  gap:10px 12px;
  align-items:center;
  margin:28px -20px 0;
  padding:12px 20px calc(12px + env(safe-area-inset-bottom));
  background:var(--color-white);
  border-top:1px solid var(--color-border);
}
.mcr-gf .gform_footer .gform_button,
.mcr-gf .gform_page_footer .gform_next_button,
.mcr-gf .gform_page_footer .gform_button {
  flex:1;
}
.mcr-gf .gform_page_footer .gform_previous_button {
  order:-1;
}
.mcr-gf .gform_ajax_spinner,
.mcr-gf .gform-loader {
  width:22px;
  height:22px;
}

/* Contact form: a plain footer, not a sticky bar (class .mcr-gf--contact is set by mcr_form()) */
.mcr-gf--contact .gform_footer,
.mcr-gf--contact .gform-footer {
  position:static;
  margin:24px 0 0;
  padding:0;
  border:0;
  background:none;
}
.mcr-gf--contact .gform_footer .gform_button {
  flex:none;
  width:100%;
}

/* ---------- progress: the steps of a multi-page form ---------- */
/* In flow by default. On the application pages (.a-flow, see application.css) they sit in a band above the form card, as designed. */
.mcr-gf .gf_page_steps {
  display:flex;
  gap:6px;
  margin:0 0 46px;
  padding:0;
}
.mcr-gf .gf_step {
  position:relative;
  flex:1 1 0;
  min-width:0;
  margin:0;
  padding:0;
  display:block;
  opacity:1;
}
.mcr-gf .gf_step::before {
  content:"";
  display:block;
  height:6px;
  border-radius:3px;
  background:var(--color-line);
}
.mcr-gf .gf_step_completed::before {
  background:var(--color-primary);
}
.mcr-gf .gf_step_active::before {
  background:var(--color-accent);
}
.mcr-gf .gf_step_number {
  display:none;
}
.mcr-gf .gf_step_label {
  display:none;
  font-size:var(--font-size-sm);
  line-height:1.4;
  color:var(--color-text-mid);
}
.mcr-gf .gf_step_active .gf_step_label {
  display:block;
  position:absolute;
  top:14px;
  left:0;
  white-space:nowrap;
  font-weight:700;
  color:var(--color-text);
}
.mcr-gf .gf_step_hidden {
  display:none;
}
.mcr-gf .gf_progressbar_wrapper {
  margin:0 0 24px;
}
.mcr-gf .gf_progressbar_title {
  margin:0 0 8px;
  font:400 var(--font-size-sm)/1.4 var(--font-body);
  color:var(--color-text-mid);
}
.mcr-gf .gf_progressbar {
  height:6px;
  border-radius:3px;
  background:var(--color-line);
  overflow:hidden;
}
.mcr-gf .gf_progressbar_percentage {
  height:100%;
  background:var(--color-accent);
}
.mcr-gf .gf_progressbar_percentage span {
  display:none;
}

/* ---------- save and continue, confirmation ---------- */
.mcr-gf .gform_save_link,
.mcr-gf a.gform_save_link {
  display:inline-flex;
  align-items:center;
  min-height:var(--tap-size);
  font:600 var(--fs-15_5,15.5px)/1.2 var(--font-body);
  color:var(--color-primary);
  text-decoration:underline;
  text-underline-offset:3px;
  background:none;
  border:0;
  cursor:pointer;
}
.mcr-gf .gform_confirmation_wrapper,
.mcr-gf .gform_confirmation_message {
  padding:8px 0 28px;
  font-size:var(--font-size-md);
  color:var(--color-text-mid);
}
.mcr-gf .gform_confirmation_message h2,
.mcr-gf .gform_confirmation_message h3 {
  margin:0 0 10px;
  font-family:var(--font-heading);
  font-size:var(--fs-32);
  font-weight:600;
  line-height:1.08;
  letter-spacing:-.02em;
  color:var(--color-text);
}
.mcr-gf .gform_confirmation_message::before {
  content:"";
  display:block;
  width:56px;
  height:56px;
  margin-bottom:18px;
  border-radius:var(--radius-round);
  background:var(--color-success-tint);
}
.mcr-gf .gform_confirmation_message a {
  color:var(--color-primary);
  font-weight:600;
}

/* ---------- desktop ---------- */
@media (min-width:860px) {
  .mcr-gf .gform_fields {
    gap:22px 20px;
  }
  .mcr-gf .gfield--width-third {
    grid-column:span 1;
  }
  .mcr-gf .mcr-step-title .gsection_title {
    font-size:var(--fs-44);
  }
  .mcr-gf .gsection_description {
    font-size:var(--fs-19);
    max-width:620px;
  }
  .mcr-gf .gform_footer,
  .mcr-gf .gform_page_footer,
  .mcr-gf .gform-footer,
  .mcr-gf .gform-page-footer {
    margin:40px -48px 0;
    padding:18px 48px;
    border-radius:0 0 var(--radius-xl) var(--radius-xl);
    flex-wrap:nowrap;
  }
  .mcr-gf .gform_footer .gform_button,
  .mcr-gf .gform_page_footer .gform_next_button,
  .mcr-gf .gform_page_footer .gform_button {
    flex:none;
    min-width:280px;
    margin-left:auto;
  }
  .mcr-gf--contact .gform_footer .gform_button {
    min-width:0;
    margin-left:0;
    width:auto;
  }
  .mcr-gf .gfield--type-fileupload .gform_drop_area,
  .mcr-gf .gfield--type-fileupload .ginput_container_fileupload {
    padding:26px 24px;
  }
  .mcr-gf .gf_page_steps {
    align-items:center;
    gap:0;
    margin:0 0 28px;
  }
  .mcr-gf .gf_step {
    flex:none;
    display:flex;
    align-items:center;
    gap:10px;
  }
  .mcr-gf .gf_step::before {
    display:none;
  }
  .mcr-gf .gf_step_number {
    display:grid;
    place-items:center;
    flex:none;
    width:32px;
    height:32px;
    border-radius:var(--radius-round);
    border:1.5px solid var(--color-input-border);
    background:var(--color-white);
    font-weight:700;
    font-size:var(--fs-14_5);
    color:var(--color-muted);
  }
  .mcr-gf .gf_step_label,
  .mcr-gf .gf_step_active .gf_step_label {
    display:inline;
    position:static;
    font-size:var(--font-size-sm);
    font-weight:600;
    color:var(--color-muted);
  }
  .mcr-gf .gf_step:not(:last-child)::after {
    content:"";
    width:44px;
    height:2px;
    margin:0 16px;
    background:var(--color-line);
  }
  .mcr-gf .gf_step_completed .gf_step_number {
    background:var(--color-primary);
    border-color:var(--color-primary);
    color:var(--color-white);
  }
  .mcr-gf .gf_step_completed .gf_step_label {
    color:var(--color-primary);
  }
  .mcr-gf .gf_step_completed:not(:last-child)::after {
    background:var(--color-primary);
  }
  .mcr-gf .gf_step_active .gf_step_number {
    background:var(--color-accent);
    border-color:var(--color-accent);
    color:var(--color-white);
  }
  .mcr-gf .gf_step_active .gf_step_label {
    color:var(--color-text);
  }
}
