/* ═══════════════════════════════════════════════════════════════════════════
   BASE — глобальные токены и сброс
   ═══════════════════════════════════════════════════════════════════════════ */
:root {
  /* Цвета */
  --accent:   #CAFE48;
  --accent-dim: rgba(202,254,72,.12);
  --bg:       #0a0a0a;
  --bg1:      #111111;
  --bg2:      #161616;
  --bg3:      #1e1e1e;
  --border:   rgba(255,255,255,.08);
  --text:     #ffffff;
  --text-muted: rgba(255,255,255,.55);
  --text-dim:   rgba(255,255,255,.35);

  /* Типографика */
  --font-tektur:  "Tektur", system-ui, sans-serif;
  --font-ubuntu:  "Ubuntu Sans", system-ui, sans-serif;

  /* Отступы контейнера */
  --pad-x: clamp(20px, 5vw, 80px);
  --container-max: 1280px;

  /* Радиусы */
  --r-sm: 8px;
  --r-md: 16px;
  --r-lg: 24px;
  --r-xl: 40px;
  --r-pill: 999px;

  /* Тени */
  --shadow-card: 0 4px 40px rgba(0,0,0,.5), inset 0 0 0 1px var(--border);
  --shadow-glow:  0 0 40px rgba(202,254,72,.15);

  /* Переходы */
  --tr: .25s cubic-bezier(.4,0,.2,1);
  --tr-slow: .5s cubic-bezier(.4,0,.2,1);
}

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

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-ubuntu);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

main { padding-top: 0 !important; }

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

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

h1, h2, h3, h4 {
  margin: 0;
  line-height: 1.1;
}

p { margin: 0; }

button {
  font-family: var(--font-ubuntu);
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
}

/* Контейнер */
.container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--pad-x);
}

/* Утилита: визуально скрытый (для a11y) */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
