:root {
  --bg: #07080c;
  --bg-2: #0b0d12;
  --bg-3: #11141b;
  --bg-4: #171b24;
  --bg-light: #efece6;
  --bg-light-2: #e4e0d8;
  --line: rgba(246, 241, 232, 0.08);
  --line-strong: rgba(246, 241, 232, 0.14);
  --text: #f6f1e8;
  --text-dim: #b7b0a4;
  --text-mute: #8c8578;
  --ink: #12110e;
  --ink-dim: #5c564c;
  --copper: #e3a14a;
  --copper-2: #c9842e;
  --copper-soft: rgba(227, 161, 74, 0.16);
  --teal: #6ce3d2;
  --teal-2: #3aa99b;
  --teal-soft: rgba(108, 227, 210, 0.14);
  --violet: #9b8cff;
  --rose: #e8a39a;
  --white: #ffffff;
  --danger: #e26d5a;
  --ok: #6ce3d2;

  --font: "Outfit", "Segoe UI", system-ui, sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, Consolas, monospace;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-md: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: 1.25rem;
  --fs-2xl: 1.5rem;
  --fs-3xl: clamp(1.75rem, 1.2rem + 1.6vw, 2.25rem);
  --fs-4xl: clamp(2.25rem, 1.4rem + 3.2vw, 3.75rem);
  --fs-5xl: clamp(2.6rem, 1.5rem + 4vw, 4.5rem);

  --lh-tight: 1.08;
  --lh: 1.6;
  --lh-loose: 1.75;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4.5rem;
  --space-9: 7rem;

  --shell: 1180px;
  --pad: 1.25rem;
  --radius: 18px;
  --radius-sm: 12px;
  --pill: 999px;
  --touch: 44px;
  --ease: 280ms cubic-bezier(0.22, 1, 0.36, 1);
  --ease-out: 700ms cubic-bezier(0.16, 1, 0.3, 1);
  --focus: var(--copper);
  --glass: rgba(12, 14, 20, 0.58);
  --glass-2: rgba(17, 20, 27, 0.72);
  --glow-copper: rgba(227, 161, 74, 0.22);
  --glow-teal: rgba(108, 227, 210, 0.16);
  --glow-violet: rgba(155, 140, 255, 0.14);
}

@media (min-width: 768px) {
  :root { --pad: 1.75rem; }
}

@media (prefers-reduced-motion: reduce) {
  :root { --ease: 0ms; }
}
