.ct-forms-wrap{margin:16px 0;}
/* Confirmation message: keep spacing but avoid a nested "double box" look */
.ct-forms-confirmation{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  margin-bottom:12px;
}
.ct-forms-confirmation-error{
  opacity:0.95;
}
.ct-forms-confirmation-warning{
  opacity:0.95;
}
.ct-forms-form{display:grid;gap:12px;}
.ct-forms-field label{display:block;margin-bottom:6px;font-weight:600;}
.ct-forms-field input[type=text],
.ct-forms-field input[type=email],
.ct-forms-field input[type=number],
.ct-forms-field input[type=file],
.ct-forms-field select,
.ct-forms-field textarea{width:100%;max-width:640px;padding:10px 12px;border:1px solid #c3c4c7;border-radius:8px;}
.ct-forms-field textarea{min-height:120px;}
.ct-forms-field input[type=text],
.ct-forms-field input[type=email],
.ct-forms-field input[type=number],
.ct-forms-field input[type=file],
.ct-forms-field select,
.ct-forms-field textarea{box-sizing:border-box;}
.ct-forms-field label{padding-left:2px;}

.ct-forms-help{margin-top:6px;color:#50575e;font-size:13px;}
.ct-forms-required{color:#b32d2e;margin-left:4px;}
.ct-forms-submit{padding:10px 14px;border-radius:10px;border:1px solid #1d2327;background:#1d2327;color:#fff;max-width:220px;cursor:pointer;}
.ct-forms-hp{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px;opacity:0;}
.ct-forms-options{display:grid;gap:6px;}
.ct-forms-option{font-weight:400;}


/* Field help text (e.g., file upload allowed types) */
.truitt-field-help{margin:6px 0 0 0;font-size:13px;line-height:1.3;color:#6c757d;}

/* Field-level messages */
.ct-forms-field-error{margin-top:6px;font-size:13px;line-height:1.3;color:#b32d2e;}
.ct-forms-field-message{margin-top:6px;font-size:13px;line-height:1.3;}
.ct-forms-field-message--error{color:#b32d2e;}
.ct-forms-field-message--warning{color:#996800;}
