/* ========== БЛОК ФОРМЫ BF311N — КАСТОМНЫЙ ========== */

/* Фон блока */
.t451 {
  background: #f8fafc !important;
  padding: 40px 20px !important;
}

/* Белая карточка */
.t451__form {
  background: #ffffff !important;
  border-radius: 24px !important;
  padding: 40px !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important;
  max-width: 500px !important;
  margin: 0 auto !important;
}

/* Заголовок */
.t451__title {
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #0a2540 !important;
  text-align: center !important;
  margin-bottom: 16px !important;
}

/* Описание */
.t451__descr {
  font-size: 16px !important;
  color: #425466 !important;
  text-align: center !important;
  margin-bottom: 30px !important;
}

/* Поля ввода */
.t-input {
  width: 100% !important;
  padding: 14px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  font-size: 16px !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  margin-bottom: 20px !important;
}

.t-input:focus {
  border-color: #0a2540 !important;
  outline: none !important;
}

/* Кнопка */
.t-submit {
  background: #0a2540 !important;
  color: white !important;
  padding: 14px !important;
  border: none !important;
  border-radius: 40px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: 0.2s !important;
  margin-top: 10px !important;
}

.t-submit:hover {
  background: #1a3a5f !important;
}

/* Чекбокс */
.t-checkbox__label {
  font-size: 13px !important;
  color: #425466 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Скрыть дублирующий текст */
.t-form__bottom-text {
  display: none !important;
}

/* Адаптив формы */
@media (max-width: 768px) {
  .t451__form {
    padding: 24px !important;
  }
  .t451__title {
    font-size: 28px !important;
  }
  .t451__descr {
    font-size: 14px !important;
  }
}

/* ========== УМЕНЬШЕНИЕ ОТСТУПОВ МЕЖДУ БЛОКАМИ ========== */

/* Принудительное удаление отступов между Zero Block */
.zero-block {
  margin-top: -60px !important;
  margin-bottom: -60px !important;
}

/* Первый блок на странице — не трогаем отступ сверху */
.zero-block:first-child {
  margin-top: 0 !important;
}

/* Последний блок — не трогаем отступ снизу */
.zero-block:last-child {
  margin-bottom: 0 !important;
}

/* Для мобильных устройств — меньшие отступы */
@media (max-width: 768px) {
  .zero-block {
    margin-top: -30px !important;
    margin-bottom: -30px !important;
  }
}