/* ============================================================
   utp·partner – Kontaktformulare + Auswahl-Umschalter
   ============================================================ */

/* Umschalter (zwei Buttons) */
.utp-cform-switch { display: flex; gap: 14px; flex-wrap: wrap; margin: 0 0 30px; }
.utp-cform-btn {
  flex: 1 1 220px; cursor: pointer; font-family: inherit;
  background: #fff;
  border: 1px solid var(--line, rgba(7,8,12,.16));
  color: var(--ink, #07080C);
  font-weight: 700; text-transform: uppercase; letter-spacing: .6px; font-size: 13px;
  padding: 18px 20px; line-height: 1.25;
  transition: background-color .25s var(--ease, cubic-bezier(.22,1,.36,1)),
              border-color .25s var(--ease, cubic-bezier(.22,1,.36,1)),
              color .25s var(--ease, cubic-bezier(.22,1,.36,1));
}
.utp-cform-btn:hover { border-color: var(--amber, #F2AE2E); }
.utp-cform-btn.is-active {
  background: var(--rust, #A64005);
  border-color: var(--rust, #A64005);
  color: #fff;
}

/* Sichtbarkeit der Formulare */
.utp-cf-hidden { display: none !important; }

/* Formular-Felder */
.utp-cform .uf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.utp-cform .uf-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
.utp-cform .uf-field span {
  font-size: 12px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .5px; color: var(--muted, #6B6B6B);
}
.utp-cform input,
.utp-cform textarea {
  padding: 13px 14px;
  border: 1px solid var(--line, rgba(7,8,12,.16));
  background: #fff; font-family: inherit; font-size: 15px;
  color: var(--ink, #07080C); border-radius: 0;
}
.utp-cform textarea { resize: vertical; }
.utp-cform input:focus,
.utp-cform textarea:focus { outline: none; border-color: var(--rust, #A64005); }
.utp-cform .uf-invalid { border-color: var(--rust, #A64005); background: #fdf3ee; }

/* Absende-Button */
.utp-cform .uf-submit {
  margin-top: 8px; cursor: pointer; font-family: inherit;
  background: var(--amber, #F2AE2E); color: var(--ink, #07080C); border: none;
  font-weight: 700; text-transform: uppercase; letter-spacing: .8px; font-size: 14px;
  padding: 16px 34px; border-radius: 0;
  transition: background-color .3s, color .3s, transform .3s;
}
.utp-cform .uf-submit:hover { background: var(--orange, #D97C0B); color: #fff; transform: translateY(-2px); }
.utp-cform .uf-note { font-size: 13px; color: var(--muted, #6B6B6B); margin-top: 14px; }

@media (max-width: 680px) {
  .utp-cform .uf-row { grid-template-columns: 1fr; gap: 0; }
  .utp-cform-btn { flex-basis: 100%; }
}
