/* Contact form — placeholder-driven fields, centered gray submit */

.block-form__title { display: none; }

.block-form__form { max-width: 505px; }

.block-form__field { margin-bottom: 22px; }

/* placeholders carry the labels, like the original */
.block-form__label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.block-form__input,
.block-form__textarea,
.block-form__select {
  width: 100%;
  padding: 13px 14px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: #ffffff;
  font-family: var(--font-sans);
  font-size: 13px;
  color: #333333;
  outline: none;
  transition: border-color var(--transition);
}

.block-form__input:focus,
.block-form__textarea:focus {
  border-color: #aaaaaa;
}

.block-form__input::placeholder,
.block-form__textarea::placeholder {
  color: #a9a9a9;
}

.block-form__textarea { min-height: 128px; resize: vertical; }

/* iOS Safari auto-zooms fields under 16px on focus; bumping the
   focused size on touch devices prevents the zoom while fields
   stay 13px at rest. */
@media (hover: none) and (pointer: coarse) {
  .block-form__input:focus,
  .block-form__textarea:focus,
  .block-form__select:focus {
    font-size: 16px;
  }
}

.block-form__submit {
  display: block;
  margin: 30px auto 0;
  padding: 12px 28px;
  background: #757575;
  color: #ffffff;
  border: none;
  border-radius: var(--radius-md);
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  transition: background var(--transition);
}

.block-form__submit:hover { background: #5c5c5c; }

.block-form__success,
.block-form__error {
  max-width: 505px;
  padding: 14px 16px;
  margin-bottom: 24px;
  border-radius: var(--radius-sm);
  font-size: 14px;
}

.block-form__success {
  background: #f2f2f2;
  color: #333333;
}

.block-form__error {
  background: #fdeae7;
  color: #b3260f;
}

.block-form__success p,
.block-form__error p { margin: 0; }

.block-form__hp {
  position: absolute;
  left: -9999px;
}

.block-form__counter { display: none; }
