.contact-form__status {
  margin-bottom: 12px;
  border-radius: 4px;
  padding: 12px 16px;
  background: rgba(255, 255, 255, 0.9);
  line-height: 1.4;
}

.contact-form__status[hidden] {
  display: none;
}

.contact-form__status.is-success {
  color: #0b6b35;
}

.contact-form__status.is-error {
  color: #9f1717;
}

.contact-form.is-submitting .form__submit,
.contact-form.is-submitted .form__submit {
  cursor: wait;
  opacity: 0.65;
}

.contact-form__upload {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 48px;
}

.contact-form__file {
  max-width: 100%;
}

.contact-form__file::file-selector-button {
  margin-right: 12px;
  border: 1px solid #111;
  border-radius: 24px;
  padding: 8px 18px;
  background: transparent;
  cursor: pointer;
}

.contact-form__file-label,
.contact-form__help {
  color: #777;
}

.contact-form__help {
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.4;
}

@media (max-width: 767px) {
  .contact-form__upload {
    align-items: flex-start;
    flex-direction: column;
  }
}

.contact-form.is-submitted .form__submit {
  cursor: default;
  opacity: 1;
}
