/* ===========================================================================
   CTW — WPForms dealer form, themed to the cobalt design system.
   Enqueued AFTER WPForms' modern stylesheets (functions.php) so this wins on
   source order; !important + specificity guard against WPForms' var rules.
   Inputs match the site's .fld spec: 1.5px #E1DCD3 border, 11px radius,
   13/14 padding, 15px text, cobalt focus ring.
   =========================================================================== */

.form-card .wpforms-container { margin: 0; }

/* ---- inputs / selects / textareas ----
   Width is handled NATIVELY: fields are size "Large" (WPForms sets width:100%
   on inputs and Large lifts the medium 60% max-width cap), so no width override
   here. This block only themes borders/radius/padding to the .fld spec. */
.form-card .wpforms-container .wpforms-field input:not([type="checkbox"]):not([type="radio"]),
.form-card .wpforms-container .wpforms-field select,
.form-card .wpforms-container .wpforms-field textarea {
  border: 1.5px solid #E1DCD3 !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #16181c !important;
  font-family: 'Hanken Grotesk', system-ui, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  padding: 13px 14px !important;
  height: auto !important;
  box-shadow: none !important;
  transition: border-color .12s ease, box-shadow .12s ease;
}
.form-card .wpforms-container .wpforms-field input:not([type="checkbox"]):not([type="radio"]):focus,
.form-card .wpforms-container .wpforms-field select:focus,
.form-card .wpforms-container .wpforms-field textarea:focus {
  border-color: #2F6BFF !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 255, 0.13) !important;
  outline: none !important;
}
.form-card .wpforms-container .wpforms-field input::placeholder,
.form-card .wpforms-container .wpforms-field textarea::placeholder { color: #a49d92 !important; opacity: 1; }

/* ---- labels + spacing ---- */
.form-card .wpforms-field { padding: 0 !important; margin: 0 !important; }
.form-card .wpforms-field-label {
  font-family: 'Hanken Grotesk', sans-serif !important;
  font-weight: 700 !important; font-size: 13px !important; color: #33302b !important;
  margin: 0 0 7px !important; line-height: 1.3 !important;
}
.form-card .wpforms-field-sublabel { font-weight: 600 !important; font-size: 12px !important; color: #8a857f !important; }
.form-card .wpforms-required-label { color: #c0392b !important; }

/* ---- column layout via a 6-track CSS grid ----
   6 columns is the LCM of halves (span 3) and thirds (span 2), so the two-up
   pairs and the City/State/ZIP trio share one system. We use our OWN classes
   (ctw-half / ctw-third), not WPForms' one-half, so the plugin's float never
   applies and items simply fill their cell. Anti-spam honeypots are
   position:absolute, so they don't occupy grid cells. */
.form-card .wpforms-field-container {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: 16px;
  row-gap: 16px;
  align-items: start;
}
.form-card .wpforms-field-container > .wpforms-field {
  grid-column: span 6;   /* full width by default */
  width: 100% !important;
  min-width: 0;
  box-sizing: border-box;
}
.form-card .wpforms-field-container > .wpforms-field.ctw-half  { grid-column: span 3; }
.form-card .wpforms-field-container > .wpforms-field.ctw-third { grid-column: span 2; }
.form-card .wpforms-submit-container { margin-top: 8px !important; }
@media (max-width: 600px) {
  .form-card .wpforms-field-container { grid-template-columns: 1fr; }
  .form-card .wpforms-field-container > .wpforms-field { grid-column: 1 / -1 !important; }
}

/* ---- carrier checkboxes: cobalt, tidy ---- */
.form-card .wpforms-field-checkbox input[type="checkbox"],
.form-card .wpforms-field-radio input[type="radio"] { accent-color: #2F6BFF; width: 18px; height: 18px; }
.form-card .wpforms-field-checkbox label,
.form-card .wpforms-field-checkbox .wpforms-field-label-inline { font-size: 14px; color: #33302b; }

/* ---- submit: match the site's primary button ---- */
.form-card .wpforms-submit,
.form-card button.wpforms-submit {
  width: 100% !important;
  background-color: #2F6BFF !important;
  border: none !important;
  color: #fff !important;
  font-family: 'Hanken Grotesk', sans-serif !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  padding: 15px 24px !important;
  height: auto !important;
  min-height: 52px !important;
  border-radius: 13px !important;
  cursor: pointer;
  transition: background-color .15s ease;
}
.form-card .wpforms-submit:hover,
.form-card button.wpforms-submit:hover { background-color: #1E52D6 !important; }

/* ---- confirmation ("what happens next") as an on-brand cobalt-tint panel ---- */
.wpforms-confirmation-container-full {
  background: #F4F7FF !important; border: 1px solid #cdd9ff !important;
  border-radius: 14px !important; padding: 22px 24px !important; color: #16181c !important;
}
.wpforms-confirmation-container-full h3 { font-size: 20px; font-weight: 800; letter-spacing: -0.02em; margin: 0 0 8px; }
.wpforms-confirmation-container-full ol { margin: 8px 0 0; padding-left: 20px; }
.wpforms-confirmation-container-full li { margin-bottom: 6px; line-height: 1.5; }
