/* Основа страницы. Только токены системы (css/tokens.css). */

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--color-bg-strong);
  color: var(--color-text-default);
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-body);
  font-size: var(--font-size-body-md);
  line-height: var(--font-line-height-body);
}

h1, h2, h3, h4, h5, h6, p, ul, ol, figure, input {
  margin: 0;
}

/* Браузер даёт кнопке свои отступы 1 px сверху и снизу — убрать, высоту задаёт токен */
button {
  padding-block: 0;
}

ul, ol {
  padding: 0;
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
}

/* Секция: на всю ширину, поля страницы — отступы самой секции (docs/apply-to-layout.md, раздел 3) */
.section {
  padding: var(--space-16) var(--grid-margin-x);
}

/* Карточка секции */
.section__card {
  max-width: var(--grid-container);
  margin-inline: auto;
  background: var(--color-bg-default);
  border-radius: var(--radius-container);
}

/* 12-колоночная сетка */
.grid-12 {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));
  gap: var(--grid-gutter);
}
