/* Океаника — CSS-переменные из tokens.json */
:root {
  --bg: #121212;
  --bg-deep: #030303;
  --surface: #0c0c0c;
  --grid-line: #202020;
  --surface-active: #272727;
  --field: #3a3a3a;
  --border: #505050;
  --ink: #ffffff;
  --ink-soft: #c4c4c4;
  --ink-muted: #a1a1a1;
  --ink-subtle: #8c8c8c;
  --on-ink: #121212;
  --space-1: 8px;
  --space-2: 12px;
  --space-3: 16px;
  --space-4: 20px;
  --space-5: 32px;
  --space-6: 48px;
  --space-7: 60px;
  --space-8: 120px;
  --space-9: 200px;
  --radius-none: 0;
  --radius-full: 9999px;
  --container: 1800px;
  --column: 300px;
  --header-height: 88px;
  --control-height: 52px;
  --hairline: 1px;
  --m-margin: 16px;
  --m-gutter: 12px;
  --m-card-padding: 20px;
  --m-section: 80px;
  --m-header-height: 64px;
  --m-breakpoint: 1023px;
  --font-display: "Montserrat", "Helvetica Neue", Arial, sans-serif;
  --font-accent: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
}

/* Текстовые стили */
.hero-title { font-family: var(--font-display); font-size: 74px; line-height: 76px; font-weight: 800; }
.h2 { font-family: var(--font-display); font-size: 48px; line-height: 50px; font-weight: 700; }
.h3 { font-family: var(--font-display); font-size: 30px; line-height: 34px; font-weight: 700; }
.stat { font-family: var(--font-display); font-size: 96px; line-height: 96px; font-weight: 700; }
.step-number { font-family: var(--font-display); font-size: 80px; line-height: 80px; font-weight: 700; }
.hero-numeral { font-family: var(--font-accent); font-size: 130px; line-height: 120px; font-weight: 500; letter-spacing: -0.04em; }
.hero-lead { font-family: var(--font-accent); font-size: 26px; line-height: 34px; font-weight: 400; letter-spacing: -0.03em; }
.chip { font-family: var(--font-accent); font-size: 20px; line-height: 24px; font-weight: 400; letter-spacing: -0.02em; }
.lead { font-family: var(--font-display); font-size: 24px; line-height: 32px; font-weight: 400; }
.body { font-family: var(--font-display); font-size: 22px; line-height: 31px; font-weight: 400; }
.small { font-family: var(--font-display); font-size: 18px; line-height: 22px; font-weight: 400; }
.list-item { font-family: var(--font-display); font-size: 34px; line-height: 38px; font-weight: 500; }
.nav { font-family: var(--font-display); font-size: 18px; line-height: 22px; font-weight: 500; }
.button { font-family: var(--font-display); font-size: 16px; line-height: 20px; font-weight: 700; }
.eyebrow { font-family: var(--font-display); font-size: 16px; line-height: 20px; font-weight: 500; }
.label { font-family: var(--font-display); font-size: 16px; line-height: 20px; font-weight: 400; }
.m-hero-title { font-family: var(--font-display); font-size: 32px; line-height: 34px; font-weight: 800; }
.m-h2 { font-family: var(--font-display); font-size: 26px; line-height: 30px; font-weight: 700; }
.m-h3 { font-family: var(--font-display); font-size: 20px; line-height: 24px; font-weight: 700; }
.m-stat { font-family: var(--font-display); font-size: 56px; line-height: 56px; font-weight: 700; }
.m-step-number { font-family: var(--font-display); font-size: 48px; line-height: 48px; font-weight: 700; }
.m-hero-numeral { font-family: var(--font-accent); font-size: 64px; line-height: 60px; font-weight: 500; letter-spacing: -0.04em; }
.m-lead { font-family: var(--font-display); font-size: 16px; line-height: 22px; font-weight: 400; }
.m-body { font-family: var(--font-display); font-size: 15px; line-height: 22px; font-weight: 400; }
.m-small { font-family: var(--font-display); font-size: 14px; line-height: 20px; font-weight: 400; }
.m-list-item { font-family: var(--font-display); font-size: 20px; line-height: 24px; font-weight: 500; }
.m-menu { font-family: var(--font-display); font-size: 22px; line-height: 26px; font-weight: 600; }
.m-button { font-family: var(--font-display); font-size: 14px; line-height: 18px; font-weight: 700; }
.m-eyebrow { font-family: var(--font-display); font-size: 12px; line-height: 16px; font-weight: 500; }
