/* Formulário de orçamento: preserva as classes Tailwind existentes e fornece fallback responsivo. */
.mdfoe-form {
  box-sizing: border-box;
  width: 100%;
}
.mdfoe-form *,
.mdfoe-form *::before,
.mdfoe-form *::after { box-sizing: border-box; }
.mdfoe-form .mdfoe-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
}
.mdfoe-form .mdfoe-field { min-width: 0; }
.mdfoe-form label { display: block; margin-bottom: .375rem; }
.mdfoe-form input:not([type="hidden"]):not([type="checkbox"]),
.mdfoe-form select {
  display: block;
  width: 100%;
  min-height: 3rem;
  padding: .75rem 1rem;
  border: 1px solid rgba(148, 163, 184, .45);
  border-radius: .75rem;
  background: #fff;
  color: #172033;
  font: inherit;
}
.mdfoe-form input:focus,
.mdfoe-form select:focus {
  outline: 2px solid #6475e8;
  outline-offset: 2px;
}
.mdfoe-form .mdfoe-submit {
  width: 100%;
  min-height: 3.5rem;
  border: 0;
  border-radius: .75rem;
  cursor: pointer;
}
.mdfoe-form .mdfoe-submit:disabled { opacity: .7; cursor: wait; }
.mdfoe-form .mdfoe-status {
  padding: 1rem;
  margin: .25rem 0;
  border-radius: .75rem;
}
.mdfoe-form .mdfoe-status[hidden] { display: none !important; }
.mdfoe-form .mdfoe-status.is-success { background: #dcfce7; color: #166534; }
.mdfoe-form .mdfoe-status.is-error { background: #fee2e2; color: #991b1b; }
.mdfoe-form .mdfoe-privacy { text-align: center; }
.mdfoe-form .mdfoe-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
@media (min-width: 640px) {
  .mdfoe-form .mdfoe-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
