/* Scoped wrapper */
.fd-lead-form{
  --fd-bg:#0f2f24;          /* dark green */
  --fd-card:#0b241b;        /* deeper green */
  --fd-ink:#f3fbf7;         /* near-white */
  --fd-muted:rgba(243,251,247,.78);
  --fd-line:rgba(243,251,247,.18);
  --fd-radius:18px;
  --fd-pad:clamp(16px,2.5vw,26px);
  --fd-shadow:0 14px 40px rgba(0,0,0,.25);

  max-width: 760px;
  width: min(760px, 92vw);
  margin: 0 auto;
  background: var(--fd-bg);
  border-radius: var(--fd-radius);
  padding: var(--fd-pad);
  box-shadow: var(--fd-shadow);
  color: var(--fd-ink);
}

/* CF7 response output (don’t let themes hide this) */
.fd-lead-form .wpcf7-response-output{
  margin: 14px 0 0;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid var(--fd-line);
  color: var(--fd-ink);
}

/* Rows/columns */
.fd-lead-form .fd-row{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 14px;
}
.fd-lead-form .fd-col{ min-width:0; }
.fd-lead-form .fd-col-full{ grid-column: 1 / -1; }

/* Labels */
.fd-lead-form label{
  display:block;
  font-weight: 650;
  margin: 0 0 8px;
  color: var(--fd-ink);
}

/* Inputs */
.fd-lead-form input[type="text"],
.fd-lead-form input[type="email"],
.fd-lead-form input[type="tel"],
.fd-lead-form input[type="file"],
.fd-lead-form select,
.fd-lead-form textarea{
  width:100%;
  box-sizing:border-box;
  background: var(--fd-card);
  color: var(--fd-ink);
  border: 1px solid var(--fd-line);
  border-radius: 14px;
  padding: 12px 12px;
  outline: none;
}

/* Placeholder */
.fd-lead-form input::placeholder,
.fd-lead-form textarea::placeholder{
  color: rgba(243,251,247,.55);
}

/* Select arrow spacing */
.fd-lead-form select{ padding-right: 34px; }

/* Textarea */
.fd-lead-form textarea{ min-height: 140px; resize: vertical; }

/* Help text */
.fd-lead-form .fd-help{
  display:block;
  margin-top: 6px;
  color: var(--fd-muted);
  font-size: 0.92rem;
}

/* Submit button */
.fd-lead-form .fd-actions{ margin-top: 8px; }
.fd-lead-form .fd-submit{
  width: 100%;
  border: 0;
  border-radius: 999px;
  padding: 14px 16px;
  font-weight: 750;
  cursor: pointer;
  background: #8dc63f; /* foliage green */
  color: #0b241b;
}
.fd-lead-form .fd-submit:hover{ filter: brightness(1.03); }

/* Field errors */
.fd-lead-form .wpcf7-not-valid-tip{
  margin-top: 6px;
  color: #ffd1d1;
  font-size: 0.95rem;
}

/* Honeypot: visually hidden */
.fd-lead-form .fd-hp{
  position:absolute;
  left:-9999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}

/* Mobile */
@media (max-width: 780px){
  .fd-lead-form .fd-row{ grid-template-columns: 1fr; }
}

