/* Доводка базы generator-kit под стили утверждённого макета.
 *
 * Грузится СРАЗУ ПОСЛЕ kit/site.css и ДО страничных стилей макета — порядок
 * здесь и есть всё содержание файла. Kit обнуляет margin-block у абзацев,
 * а стили макета рассчитаны на браузерный отступ в 1em и задают свой margin
 * только там, где он отличается. Если вернуть отступ последним слоем, он
 * перебьёт макетные значения (.hero-intro с 20px станет 1em). Отсюда —
 * этот промежуточный слой: kit → доводка → макет.
 *
 * Селекторы обёрнуты в :where(), чтобы их вес остался нулевым: иначе
 * body.home main p (0,2,2) перебивал бы макетный .hero-lead (0,1,0) и
 * отступы снова разъезжались бы — уже в другую сторону.
 */
/* Отступы абзацев на страницах, собранных по утверждённому макету.
   Стили макета рассчитаны на браузерный нижний отступ абзаца (1em) и задают
   только margin-top: 0. Kit обнуляет margin-block целиком, и секции
   схлопывались — подзаголовок прилипал к тексту, подпись к списку.
   Хабы, юридические страницы и 404 собраны на самом kit и живут на .stack
   с gap, поэтому их не трогаем. */
:where(body.home, body.house-page, body.gutter-page, body.city-page,
       body.about-page, body.careers-page, body.career-page) main p {
  margin-bottom: 1em;
}

/* Внутри kit-блоков отступ не нужен: там расстояние задаёт gap. */
:where(body.home, body.house-page, body.gutter-page, body.city-page,
       body.about-page, body.careers-page, body.career-page)
  :is(.stack, .site-cta, .consent-panel, .form-notice) p { margin-bottom: 0; }


/* Шрифтовой стек не трогаем. В самом макете он разный: на главной и
   городской — с system-ui, на страницах штатов — без него. Выравнивание под
   один вариант просто переносит расхождение с одних страниц на другие,
   а видимой разницы нет: везде грузится Inter. */
