/* ============================================================
   Preserve A Spot — Gravity Forms skin (Night at the Lodge).
   Targets GF 2.5+ (.gform_wrapper.gravity-theme). Styles colors,
   type, multi-step progress, validation & confirmation — it does
   NOT fight GF's field grid (set field widths in the form editor
   via layoutGridColumnSpan, not legacy half/third classes).
   Scoped under .aspot-reg-cta (the event registration card) plus
   .aspot-gform for use anywhere else.
   ============================================================ */
.aspot-reg-cta .gform_wrapper,
.aspot-gform .gform_wrapper{
  --gold:#c9a159; --ink:#15120e; --line:rgba(201,161,89,.24);
  font-family:"Montserrat",sans-serif; margin:0; color:#e9e1d2;
}

/* required legend / heading */
.aspot-reg-cta .gform_required_legend,
.aspot-gform .gform_required_legend{color:#8c8474;font-size:12px;}

/* ---- multi-step progress (steps + bar) ---- */
.aspot-reg-cta .gf_progressbar_wrapper,
.aspot-gform .gf_progressbar_wrapper{margin-bottom:22px;}
.aspot-reg-cta .gf_progressbar_title,
.aspot-gform .gf_progressbar_title{
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold);margin-bottom:8px;
}
.aspot-reg-cta .gf_progressbar,
.aspot-gform .gf_progressbar{background:rgba(255,255,255,.08);border-radius:0;height:6px;overflow:hidden;}
.aspot-reg-cta .gf_progressbar_percentage,
.aspot-gform .gf_progressbar_percentage{
  background:var(--gold);height:6px;border-radius:0;transition:width .35s ease;
}
.aspot-reg-cta .gf_progressbar_percentage span,
.aspot-gform .gf_progressbar_percentage span{display:none;}
/* step circles, if "Steps" style is chosen */
.aspot-reg-cta .gf_step,
.aspot-gform .gf_step{color:#8c8474;font-family:"Montserrat",sans-serif;font-size:11px;letter-spacing:.06em;opacity:1;}
.aspot-reg-cta .gf_step_number,
.aspot-gform .gf_step_number{border:1px solid var(--line);color:#bcb2a0;background:transparent;}
.aspot-reg-cta .gf_step_active .gf_step_number,
.aspot-gform .gf_step_active .gf_step_number{background:var(--gold);color:#1c150a;border-color:var(--gold);}
.aspot-reg-cta .gf_step_completed .gf_step_number,
.aspot-gform .gf_step_completed .gf_step_number{border-color:var(--gold);color:var(--gold);}

/* ---- labels & fields ---- */
.aspot-reg-cta .gform_wrapper .gfield_label,
.aspot-gform .gform_wrapper .gfield_label{
  font-weight:600;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#a59c8c;margin-bottom:7px;
}
.aspot-reg-cta .gfield_required,
.aspot-gform .gfield_required{color:var(--gold);}
.aspot-reg-cta .gform_wrapper input:not([type=submit]):not([type=button]),
.aspot-reg-cta .gform_wrapper select,
.aspot-reg-cta .gform_wrapper textarea,
.aspot-gform .gform_wrapper input:not([type=submit]):not([type=button]),
.aspot-gform .gform_wrapper select,
.aspot-gform .gform_wrapper textarea{
  font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;background:var(--ink);
  border:1px solid var(--line);color:#e9e1d2;padding:12px 14px;border-radius:2px;width:100%;
  transition:border-color .18s,box-shadow .18s;
}
.aspot-reg-cta .gform_wrapper input::placeholder,
.aspot-gform .gform_wrapper input::placeholder{color:#7a7264;}
.aspot-reg-cta .gform_wrapper input:focus,
.aspot-reg-cta .gform_wrapper select:focus,
.aspot-reg-cta .gform_wrapper textarea:focus,
.aspot-gform .gform_wrapper input:focus,
.aspot-gform .gform_wrapper select:focus,
.aspot-gform .gform_wrapper textarea:focus{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold);outline:none;}

/* choices */
.aspot-reg-cta .gform_wrapper .gchoice label,
.aspot-gform .gform_wrapper .gchoice label{font-family:"Cormorant Garamond",serif;font-size:17px;color:#d8d1c4;}
.aspot-reg-cta .gform_wrapper input[type=checkbox]:checked,
.aspot-reg-cta .gform_wrapper input[type=radio]:checked,
.aspot-gform .gform_wrapper input[type=checkbox]:checked,
.aspot-gform .gform_wrapper input[type=radio]:checked{accent-color:var(--gold);}

/* ---- buttons (next / previous / submit) ---- */
.aspot-reg-cta .gform_wrapper .gform_footer input,
.aspot-reg-cta .gform_wrapper .gform_page_footer input,
.aspot-reg-cta .gform_wrapper .gform_button,
.aspot-gform .gform_wrapper .gform_footer input,
.aspot-gform .gform_wrapper .gform_page_footer input{
  font-family:"Montserrat",sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;
  padding:15px 26px;cursor:pointer;border:1px solid var(--gold);background:#b8862f;color:#1c150a;border-radius:0;
  transition:background .22s;
}
.aspot-reg-cta .gform_wrapper .gform_footer input:hover,
.aspot-gform .gform_wrapper .gform_footer input:hover{background:var(--gold);}
.aspot-reg-cta .gform_wrapper .gform_page_footer .gform_previous_button,
.aspot-gform .gform_wrapper .gform_page_footer .gform_previous_button{
  background:transparent;color:var(--gold);border-color:var(--line);
}
.aspot-reg-cta .gform_wrapper .gform_footer input[type=submit],
.aspot-reg-cta .gform_wrapper .gform_page_footer .gform_next_button{width:100%;}

/* ---- validation ---- */
.aspot-reg-cta .gform_wrapper .gfield_error input,
.aspot-reg-cta .gform_wrapper .gfield_error textarea,
.aspot-gform .gform_wrapper .gfield_error input,
.aspot-gform .gform_wrapper .gfield_error textarea{border-color:#c0594a;}
.aspot-reg-cta .gform_wrapper .gfield_validation_message,
.aspot-reg-cta .gform_wrapper .validation_message,
.aspot-gform .gform_wrapper .gfield_validation_message,
.aspot-gform .gform_wrapper .validation_message{
  color:#e0a99e;font-family:"Montserrat",sans-serif;font-size:12px;background:transparent;border:0;padding:6px 0 0;
}
.aspot-reg-cta .gform_wrapper .gform_validation_errors,
.aspot-gform .gform_wrapper .gform_validation_errors{
  background:#241612;border:1px solid rgba(143,36,24,.5);border-radius:0;box-shadow:none;
}
.aspot-reg-cta .gform_wrapper .gform_validation_errors .gform_submission_error,
.aspot-gform .gform_wrapper .gform_validation_errors .gform_submission_error{color:#e0a99e;}

/* ---- confirmation ---- */
.aspot-reg-cta .gform_confirmation_message,
.aspot-gform .gform_confirmation_message{
  font-family:"Cormorant Garamond",serif;font-size:21px;line-height:1.5;color:#e6ddca;
  border-left:2px solid var(--gold);padding:8px 0 8px 18px;
}
