/* ============================================================
   GRAVITY FORMS — styled to the Editorial Executive system.
   Targets GF 2.5+ markup (gform-theme / orbital). Loaded only
   on pages that contain a form (see functions.php).
   ============================================================ */
.gform_wrapper.gravity-theme,.gform_wrapper{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:clamp(1.6rem,4vw,2.6rem);box-shadow:var(--shadow-sm);max-width:680px;
}
.gform_wrapper .gform_fields{display:grid;gap:1.3rem;grid-template-columns:1fr}
.gform_wrapper .gfield{margin:0}
.gform_wrapper .gfield_label,.gform_wrapper legend.gfield_label{
  font-family:var(--sans);font-weight:600;font-size:var(--t-sm);color:var(--ink);margin-bottom:.45rem;display:block
}
.gform_wrapper .gfield_required{color:var(--err);margin-left:.15rem}
.gform_wrapper .gfield_description,.gform_wrapper .ginput_complex label{
  font-size:var(--t-xs);color:var(--muted);margin-top:.35rem
}
/* inputs */
.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 select,
.gform_wrapper textarea{
  width:100%;padding:.8rem 1rem;border:1px solid var(--line-strong);border-radius:var(--r-sm);
  background:var(--surface-2);color:var(--ink);font:inherit;font-size:var(--t-sm);
  transition:border-color var(--d-fast),box-shadow var(--d-fast),background var(--d-fast);
}
.gform_wrapper textarea{min-height:130px;resize:vertical}
.gform_wrapper input:focus,.gform_wrapper select:focus,.gform_wrapper textarea:focus{
  outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-tint);background:var(--surface)
}
/* multi-column (name first/last etc.) */
.gform_wrapper .ginput_complex{display:grid;gap:1rem;grid-template-columns:1fr 1fr}
@media (max-width:560px){.gform_wrapper .ginput_complex{grid-template-columns:1fr}}
/* checkboxes & radios */
.gform_wrapper .gfield_checkbox li,.gform_wrapper .gfield_radio li,
.gform_wrapper .gchoice{display:flex;gap:.6rem;align-items:flex-start;margin:.4rem 0}
.gform_wrapper input[type=checkbox],.gform_wrapper input[type=radio]{
  width:18px;height:18px;accent-color:var(--accent);margin-top:.2rem;flex:none
}
.gform_wrapper .gfield_consent_label,.gform_wrapper .gchoice label{font-size:var(--t-sm);color:var(--ink-soft)}
/* submit */
.gform_wrapper .gform_footer,.gform_wrapper .gform-footer{margin-top:1.6rem;padding:0}
.gform_wrapper input[type=submit],.gform_wrapper .gform_button{
  width:100%;justify-content:center;padding:1rem 1.5rem;border-radius:var(--r-pill);
  background:var(--accent);color:#fff;font-weight:600;font-size:var(--t-base);border:none;cursor:pointer;
  transition:transform var(--d-fast) var(--ease),box-shadow var(--d-fast)
}
.gform_wrapper input[type=submit]:hover,.gform_wrapper .gform_button:hover{
  box-shadow:var(--shadow-md);transform:translateY(-2px)
}
.gform_wrapper input[type=submit]:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
/* validation */
.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error select,
.gform_wrapper .gfield_error textarea{border-color:var(--err);box-shadow:0 0 0 3px rgba(181,52,31,.12)}
.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message{
  color:var(--err);font-size:var(--t-xs);margin-top:.4rem;background:none;border:none;padding:.2rem 0;font-weight:500
}
.gform_wrapper .gform_validation_errors{
  background:rgba(181,52,31,.08);border:1px solid var(--err);border-radius:var(--r-sm);
  padding:.9rem 1rem;margin-bottom:1.2rem;color:var(--err)
}
.gform_wrapper .gform_validation_errors h2{color:var(--err);font-size:var(--t-sm);font-family:var(--sans)}
/* spinner / loading */
.gform_wrapper .gform_ajax_spinner{margin-left:.7rem;vertical-align:middle}
/* confirmation (success) */
.gform_confirmation_wrapper,.gform_confirmation_message{
  background:var(--surface);border:1px solid var(--ok);border-radius:var(--r-lg);
  padding:clamp(1.6rem,4vw,2.4rem);text-align:center;color:var(--ink);font-size:var(--t-lg);box-shadow:var(--shadow-sm)
}
.gform_confirmation_message::before{content:"✓";display:grid;place-items:center;width:56px;height:56px;
  margin:0 auto 1rem;border-radius:50%;background:var(--ok);color:#fff;font-size:1.5rem}
