/* ==========================================================================
   Форма заявки
   ========================================================================== */

.kk-form__form {
  display: flex;
  flex-direction: column;
}

/* Поля формы уже несут свой отступ снизу, дублировать не нужно. */
.kk-form__form .field:last-of-type {
  margin-bottom: var(--space-4);
}

.kk-form__consents {
  margin-bottom: var(--space-5);
}

/* Ошибка согласия стоит под парой «чекбокс + текст», а не сбоку. */
.kk-form__consents .field__error:empty {
  display: none;
}

.kk-form__consents .field__error {
  margin: calc(var(--space-2) * -1) 0 var(--space-3) calc(20px + var(--space-3));
}

.kk-form__submit {
  margin-bottom: var(--space-3);
}

.kk-form__result[hidden] {
  display: none;
}

.kk-form__result {
  margin-top: var(--space-3);
}

/* Пустой контейнер ошибки не должен занимать место. */
.field__error:empty {
  display: none;
}

/* Форма в тёмной секции — form-cta поверх изображения. */
.section--dark .kk-form,
.b-form-cta .kk-form {
  color: var(--color-on-dark);
}

/* Подписи полей скрыты визуально — их роль играют плейсхолдеры. Поля стоят
   в две колонки, чтобы форма не вытягивалась в длинный столбец. */
.kk-form__row {
  display: grid;
  gap: var(--space-3);
}

@media (min-width: 560px) {
  .kk-form__row {
    grid-template-columns: 1fr auto;
    align-items: start;
  }

  .kk-form__row .field__select {
    min-width: 11rem;
  }
}
