/* Дополнения к оригинальному CSS: то, что в оригинале рисует React.
   Основные стили — в css/original.css (сборка Tailwind с сайта). */

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
/* якорные секции не должны прятаться под фиксированной шапкой */
section[id] { scroll-margin-top: 4rem; }

/* Пока элемент ждёт своей анимации — он скрыт (только при работающем JS) */
.js-anim [data-m] { opacity: 0; }

/* Шапка после прокрутки (в оригинале класс меняет React) */
#header.hdr-scrolled {
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 1px 0 0 #e2e8f0;
}

/* Мобильное меню (в оригинале рендерится клиентским React — здесь своё) */
.mm {
  position: fixed;
  top: 4rem;
  left: 0;
  right: 0;
  z-index: 49;
  display: none;
  flex-direction: column;
  background: #fff;
  border-bottom: 1px solid #e2e8f0;
  box-shadow: 0 24px 40px -24px rgba(2, 6, 24, .25);
  padding: .25rem 1.5rem 1.25rem;
}
.mm.open { display: flex; }
@media (min-width: 768px) { .mm { display: none !important; } }
.mm a {
  padding: .85rem 0;
  border-bottom: 1px solid #f1f5f9;
  font-size: .95rem;
  color: #314158;
}
.mm a.mm-cta {
  margin-top: 1rem;
  border-bottom: 0;
  background: #155dfc;
  color: #fff;
  text-align: center;
  padding: .85rem 1rem;
  font-weight: 500;
}
/* бургер -> крестик */
#burger.open span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
#burger.open span:nth-child(2) { opacity: 0; }
#burger.open span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

/* Согласие на обработку персональных данных */
.consent {
  display: flex;
  gap: .6rem;
  align-items: flex-start;
  font-size: 12px;
  line-height: 1.5;
  color: #62748e;
  cursor: pointer;
}
.consent input { margin-top: 2px; accent-color: #155dfc; }
.consent a { color: #155dfc; text-decoration: underline; }

/* Статус отправки формы */
.form-status { font-size: 13px; line-height: 1.5; }
.form-status.ok { color: #0d8a4f; }
.form-status.err { color: #d4183d; }
