/* База: шрифт, фон, контейнер. Слой идёт после CSS модулей. */

/* Модули neo жёстко задают Unbounded/SF Pro в десятках мест — один шрифт на весь сайт
   задаём глобально. Иконочных шрифтов на сайте нет (иконки — SVG), поэтому это безопасно. */
html, body, body *:not(code):not(pre):not(kbd) {
  font-family: var(--font) !important;
}

html, body {
  background: var(--c-bg);
  color: var(--c-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* Шапка тянется на всю ширину через 50vw (vw включает полосу прокрутки) — режем лишнее.
   clip, а не hidden: hidden ломает position: sticky у шапки. */
html, body { overflow-x: clip; }
body { font-size: 15px; line-height: 1.5; }
h1, h2, h3, h4, h5 { letter-spacing: -0.03em; color: var(--c-text); }
a { color: inherit; transition: color var(--ease); }
::selection { background: var(--c-accent-soft); }
::-webkit-scrollbar-thumb { background-color: var(--c-surface-3); }

.global-container, .cs-container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 24px;
}
.container-fluid { padding: 0; }
@media (max-width: 767px) {
  .global-container, .cs-container { padding: 0 16px; }
}
.num, .cs-table td, .cs-table th { font-variant-numeric: tabular-nums; }
.cs-muted { color: var(--c-text-2); }
.cs-accent { color: var(--c-accent); }
