/* Zmiany poza eksportem z Webflow — ten plik nie jest nadpisywany przy ponownym eksporcie. */

/* Pułapka na boty: niewidoczna dla ludzi, wypełniana przez automaty.
   Bez display:none — część botów pomija pola ukryte w ten sposób. */
.hp-field {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* ── Walidacja pól ─────────────────────────────────────────────────────────
   Jaśniejsza czerwień niż #fa3434 z .error-message — na ciemnym tle karty
   (#1a1a2e) tamta ledwo łapie kontrast 4.5:1 wymagany przez WCAG AA. */
.field-error {
  color: #ff6b6b;
  margin: 6px 0 0;
  font-size: 14px;
  line-height: 1.4;
  text-align: left;
}

/* Komunikat zgody leży bezpośrednio w .form-wrapper (flex, align-items:center),
   więc bez tego wyśrodkowałby się — inaczej niż komunikaty pozostałych pól. */
.field-error--consent {
  align-self: flex-start;
  width: 100%;
}

.form-input.has-error,
.form-input.has-error:hover {
  border-color: #ff6b6b;
  background-color: #ff6b6b14;
}

.checkbox-wrapper.has-error .checkbox-box {
  border-color: #ff6b6b;
}

/* Widoczny fokus klawiaturowy — Webflow go nie stylizuje. */
.form-input:focus {
  border-color: #6b4fcc;
  outline: 2px solid #6b4fcc73;
  outline-offset: 1px;
}
