/* ============================================================
   MVP Funding — contact form skin (CF7 form 5c940d2 / post 187)
   2026-07-16

   Layout: First + Last on one row · Email full row ·
           Phone + State on one row · full-width button.
   Tokens: labels #002738 · focused field stroke #002738 · Inter.

   Usage: paste into the page's custom CSS, or enqueue from the
   theme once the site build starts. Scoped to .mvp-form-grid so
   it can load site-wide safely.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

.mvp-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px 20px;
  font-family: 'Inter', sans-serif;
}

/* every field spans the full row by default… */
.mvp-form-grid .mvp-field,
.mvp-form-grid .mvp-form-note,
.mvp-form-grid .mvp-consent,
.mvp-form-grid .mvp-submit {
  grid-column: 1 / -1;
  margin: 0;
}
/* …except the paired fields (first/last, phone/state) */
.mvp-form-grid .mvp-field-half {
  grid-column: auto / span 1;
}

/* ---- labels ---- */
.mvp-form-grid .mvp-field > label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #002738;
}

/* ---- inputs / select: pill fields ---- */
.mvp-form-grid .mvp-field input,
.mvp-form-grid .mvp-field select {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 14px 22px;
  font-family: inherit;
  font-size: 15px;
  color: #002738;
  background: #ffffff;
  border: 1px solid #d9deea;
  border-radius: 999px;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.mvp-form-grid .mvp-field input::placeholder {
  color: #9aa6b2;
}
.mvp-form-grid .mvp-field select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23002738' stroke-width='2' stroke-linecap='round'/></svg>");
  background-repeat: no-repeat;
  background-position: right 20px center;
  padding-right: 44px;
}

/* focused field stroke */
.mvp-form-grid .mvp-field input:focus,
.mvp-form-grid .mvp-field select:focus {
  border-color: #002738;
  box-shadow: 0 0 0 1px #002738;
}

/* ---- reassurance line ---- */
.mvp-form-grid .mvp-form-note {
  text-align: center;
  font-size: 13px;
  font-style: italic;
  color: #5c6b77;
}
.mvp-form-grid .mvp-form-note em { font-style: italic; }

/* ---- consent box ---- */
.mvp-form-grid .mvp-consent {
  background: #f0f2f5;
  border-radius: 12px;
  padding: 14px 16px;
  font-size: 12px;
  line-height: 1.55;
  color: #3f4c58;
}
/* explicit typography — global/Elementor `a` rules beat inheritance,
   so every property the theme might set is pinned here */
.mvp-form-grid .mvp-consent a {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-transform: none !important;
  color: #002738 !important;
  text-decoration: underline !important;
}
.mvp-form-grid .mvp-consent .wpcf7-list-item {
  margin: 0;
}
.mvp-form-grid .mvp-consent .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.mvp-form-grid .mvp-consent input[type="checkbox"] {
  flex: none;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  accent-color: #002738;
}

/* ---- full-width pill button ---- */
.mvp-form-grid .mvp-submit input[type="submit"],
.mvp-form-grid .mvp-submit .wpcf7-submit {
  display: block;
  width: 100%;
  padding: 17px 24px;
  font-family: inherit;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ffffff;
  background: #002738;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  transition: background-color 0.15s ease, transform 0.15s ease;
}
.mvp-form-grid .mvp-submit input[type="submit"]:hover,
.mvp-form-grid .mvp-submit .wpcf7-submit:hover {
  background: #063a4f;
}
.mvp-form-grid .mvp-submit input[type="submit"]:active {
  transform: translateY(1px);
}

/* ---- CF7 validation + status ---- */
.mvp-form-grid .wpcf7-not-valid-tip {
  display: block;
  margin: 6px 0 0 22px;
  font-size: 12px;
  color: #b3261e;
}
.wpcf7 form .wpcf7-response-output {
  font-family: 'Inter', sans-serif;
  border-radius: 12px;
  padding: 12px 16px;
  font-size: 13px;
  margin: 16px 0 0;
}

/* ---- mobile: everything stacks ---- */
@media (max-width: 640px) {
  .mvp-form-grid .mvp-field-half {
    grid-column: 1 / -1;
  }
}
