/* ─── Contact Form 7 – Rote.biz Style Overrides ──────────────────── */

.wpcf7 form { margin: 0; }

/* Felder */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  background: var(--bg-elevated);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--radius-sm);
  color: var(--text-on-dark);
  font-family: inherit;
  font-size: 14px;
  padding: 12px 16px;
  transition: border-color .2s, box-shadow .2s;
  outline: none;
  appearance: none;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  border-color: var(--green);
  box-shadow: 0 0 0 3px var(--green-alpha-15);
}

.wpcf7 textarea { resize: vertical; min-height: 130px; }

/* Labels */
.wpcf7 label,
.wpcf7 .wpcf7-form-control-wrap { display: block; width: 100%; }

/* Inline-Fehler */
.wpcf7 .wpcf7-not-valid-tip {
  color: #ef4444;
  font-size: 12px;
  margin-top: 4px;
  display: block;
}

/* Submit Button */
.wpcf7 input[type="submit"] {
  width: 100%;
  background: var(--green);
  color: #fff;
  border: none;
  border-radius: var(--radius-sm);
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  padding: 14px 28px;
  cursor: pointer;
  transition: background .2s, transform .15s, box-shadow .2s;
}
.wpcf7 input[type="submit"]:hover {
  background: var(--green-dark);
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(61,181,74,.35);
}

/* Erfolgs- / Fehlermeldung */
.wpcf7-response-output {
  margin-top: 16px !important;
  border-radius: var(--radius-sm) !important;
  font-size: 14px !important;
  padding: 12px 16px !important;
  border: none !important;
}
.wpcf7 .wpcf7-mail-sent-ok {
  background: rgba(61,181,74,.12);
  color: var(--green);
}
.wpcf7 .wpcf7-validation-errors,
.wpcf7 .wpcf7-mail-sent-ng,
.wpcf7 .wpcf7-spam-blocked {
  background: rgba(239,68,68,.1);
  color: #ef4444;
}

/* Zweispaltiges Layout für Name + Unternehmen */
.wpcf7-row-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 540px) {
  .wpcf7-row-2col { grid-template-columns: 1fr; }
}

/* Honeypot verstecken (falls CF7-Honeypot-Plugin genutzt) */
.wpcf7-form .wpcf7-form-control-wrap[data-name="rotebiz-hp"] {
  display: none !important;
}

/* Abstände */
.wpcf7 p { margin-bottom: 16px; }
.wpcf7 p:last-child { margin-bottom: 0; }
