/* Form additions for the static site (public/js/site.js + public/api/form.php).
   Nothing here applies until someone interacts with a form, so the pages still match live. */

/* Honeypot field: off-screen for people, visible to bots. */
.fi-hp { position: absolute !important; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }

/* Signature canvas: never wider than the screen; drawing must not scroll the page on phones. */
[data-fi-signature] canvas { max-width: 100%; touch-action: none; }
[data-fi-signature] .gfield_signature_container { max-width: 100%; }

/* Gravity Forms confirmation (replaces the waiver form after a successful submit). */
.fi-confirmation { box-sizing: border-box; width: 100%; margin: 16px 0 24px; }
.fi-confirmation:focus { outline: none; }
.fi-confirmation .gform_confirmation_message {
  padding: clamp(16px, 3vw, 28px);
  border-left: 6px solid #EDC80C;
  background: #f7f7f5;
  font-size: clamp(16px, 0.6vw + 13px, 19px);
  font-weight: 400;
  line-height: 1.55;
  color: #1E2229;
}
.fi-confirmation .gform_confirmation_message p:first-child { font-weight: 700; }
.fi-confirmation .gform_confirmation_message p { margin: 0 0 0.6em; }
.fi-confirmation .gform_confirmation_message p:last-child { margin-bottom: 0; }

/* Gravity validation summary (legacy markup has no style for it). */
.gform_wrapper .gform_validation_errors.fi-err { margin: 0 0 16px; padding: 12px 16px; border: 1px solid #c02b0a; border-radius: 3px; background: #fff9f9; }
.gform_wrapper .gform_validation_errors.fi-err h2 { margin: 0; font-size: 15px; font-weight: 700; line-height: 1.4; color: #c02b0a; }
.gform_wrapper li.gfield_error .fi-err { color: #c02b0a; font-size: 14px; font-weight: 600; margin-top: 6px; }

/* Elementor form messages, where the form sits on a dark band. */
.elementor-form .fi-err.elementor-message { flex-basis: 100%; width: 100%; }
