/* ================= AJAX-Форма контакта ================= */
.contact-form {
  display: flex;
  flex-direction: column;
  gap: 15px;           /* расстояние между полями */
  max-width: 500px;     /* форма не слишком широкая */
  width: 100%;          /* растягиваем на контейнер */
  margin: 0 auto;       /* центрируем форму */
  font-family: 'Roboto', sans-serif;
}

.contact-form input,
.contact-form textarea,
.contact-form select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus {
  outline: none;
  border-color: #2a7cff;
  box-shadow: 0 0 5px rgba(42, 124, 255, 0.4);
}

/* Кнопка отправки */
.contact-form button[type="submit"] {
  background-color: #2a7cff;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.contact-form button[type="submit"]:hover {
  background-color: #1964d1;
}

/* Сообщения об ошибке / успехе */
.form-status {
  font-weight: 500;
  padding: 10px 15px;
  border-radius: 6px;
  margin-top: 5px;
}

.form-status.success {
  color: green;
  background-color: #e6f5e6;
  border: 1px solid #a3d9a3;
}

.form-status.error {
  color: red;
  background-color: #fceaea;
  border: 1px solid #f5a3a3;
}

/* Адаптив для мобильных */
@media (max-width: 480px) {
  .contact-form {
    gap: 12px;
    padding: 0 10px;
  }

  .contact-form input,
  .contact-form textarea,
  .contact-form select {
    font-size: 15px;
    padding: 8px 10px;
  }

  .contact-form button[type="submit"] {
    font-size: 15px;
    padding: 8px 12px;
  }
}
