/*
 * Дизайн-токены. Палитра снята с фирменных фонов и образцов визуала:
 * воздушный сине-белый «стеклянный» свет, оранжевый акцент внимания, тёмно-фиолетовый контрастный блок.
 */
:root {
  /* Бренд: синий из образцов визуала */
  --color-brand-300: #8db4f7;
  --color-brand-400: #5690f3;
  --color-brand-500: #3e7ce9;
  --color-brand-550: #2f6fe0; /* самый светлый синий, на котором белый текст проходит 4.5:1 */
  --color-brand-600: #2460d4;
  --color-brand-700: #1b4aab;
  --color-teal-600: #2388c4; /* бирюзовый хвост заголовков: 3:1 и выше на фоне страницы */
  --color-focus: var(--color-brand-600);

  /* Текст и поверхности */
  --color-ink: #0b1b3b;
  --color-ink-soft: #2b3d63;
  --color-muted: #4e6082;
  --color-page: #f3f7fd;
  --color-page-deep: #e2ecf9;
  --color-haze: #b9d1e9;
  --color-white: #ffffff;
  --color-line: rgb(36 96 212 / 0.16);

  /* Смысловые цвета: внимание (слабое место) → закрыто (прибыль) */
  --color-attention-400: #fe9a5f;
  --color-attention-500: #f2843f;
  --color-attention-700: #b4500f;
  --color-attention-wash: rgb(254 154 95 / 0.14);
  --color-ok-400: #2fc59a;
  --color-ok-500: #12a37f;
  --color-ok-700: #0a7058;
  --color-ok-wash: rgb(18 163 127 / 0.12);
  --color-error: #c8283c;

  /* Тёмный блок: палитра тёмных образцов */
  --color-night-900: #060a1c;
  --color-night-800: #0a1030;
  --color-night-700: #141a45;
  --color-violet-300: #b9b1ff;
  --color-violet-500: #8356fb;
  --color-night-text: #eef0ff;
  --color-night-muted: #a9add6;

  /* Стекло */
  --glass-bg: linear-gradient(140deg, rgb(255 255 255 / 0.82), rgb(255 255 255 / 0.5));
  --glass-bg-strong: linear-gradient(140deg, rgb(255 255 255 / 0.92), rgb(255 255 255 / 0.72));
  --glass-border: rgb(255 255 255 / 0.85);
  --glass-blur: 18px;
  --glass-night-bg: linear-gradient(140deg, rgb(255 255 255 / 0.1), rgb(255 255 255 / 0.03));
  --glass-night-border: rgb(185 177 255 / 0.22);

  /* Градиенты */
  --gradient-brand: linear-gradient(100deg, var(--color-brand-700), var(--color-brand-600) 55%, var(--color-brand-550));
  --gradient-headline: linear-gradient(100deg, var(--color-brand-700) 0%, var(--color-brand-500) 55%, var(--color-teal-600) 100%);
  --gradient-night: linear-gradient(100deg, var(--color-violet-300), var(--color-violet-500) 50%, var(--color-brand-400));
  /* Кнопка в тёмном блоке: стопы светлее, чтобы тёмный текст держал 4.5:1 по всей длине */
  --gradient-night-cta: linear-gradient(100deg, var(--color-violet-300), #9a7bff 55%, #7aa5f7);

  /* Типографика */
  --font-sans: 'Geologica', 'Segoe UI', system-ui, -apple-system, 'Helvetica Neue', Arial, sans-serif;
  --text-caption: 0.75rem;
  --text-small: 0.875rem;
  --text-base: clamp(1rem, 0.96rem + 0.2vw, 1.0625rem);
  --text-lead: clamp(1.0625rem, 0.98rem + 0.45vw, 1.3125rem);
  --text-h3: clamp(1.1875rem, 1.1rem + 0.45vw, 1.5rem);
  --text-h2: clamp(1.75rem, 1.2rem + 2.4vw, 3.25rem);
  --text-hero: clamp(2.125rem, 1.2rem + 3.6vw, 4.125rem);
  --text-giant: clamp(2.75rem, 0.5rem + 12vw, 12rem);
  --tracking-caption: 0.24em;
  --tracking-tight: -0.025em;

  /* Ритм */
  --gutter: clamp(1rem, 0.4rem + 2.6vw, 3rem);
  --container: 82.5rem;
  --space-2xs: 0.375rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2.5rem;
  --space-xl: 4rem;
  --space-section: clamp(4.5rem, 2.8rem + 6.5vw, 9rem);

  /* Радиусы: чем крупнее поверхность, тем мягче угол */
  --radius-xs: 0.625rem;
  --radius-sm: 0.875rem;
  --radius-md: 1.25rem;
  --radius-lg: 1.75rem;
  --radius-xl: 2.5rem;
  --radius-pill: 999px;

  /* Глубина: тени с синим подтоном */
  --shadow-tile: 0 10px 22px -12px rgb(27 74 171 / 0.45), inset 0 1px 0 rgb(255 255 255 / 0.95);
  --shadow-card: 0 22px 48px -28px rgb(27 74 171 / 0.38), inset 0 1px 0 rgb(255 255 255 / 0.9);
  --shadow-float: 0 34px 70px -30px rgb(27 74 171 / 0.5), 0 14px 28px -18px rgb(27 74 171 / 0.28),
    inset 0 1px 0 rgb(255 255 255 / 0.95);
  --shadow-cta: 0 18px 34px -14px rgb(36 96 212 / 0.65);
  --shadow-night: 0 30px 80px -30px rgb(131 86 251 / 0.55);

  /* Движение */
  --duration-fast: 160ms;
  --duration-normal: 320ms;
  --duration-slow: 720ms;
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  --header-offset: 6.5rem;
}
