:root {
  /* Short, linear-ish easing. No bounce, no spring, no long fades. */
  --ease: ease; /* @kind other */
  --duration-fast: 150ms; /* @kind other */
  --duration-base: 180ms; /* @kind other */
  --duration-reveal: 550ms; /* @kind other */

  --transition-control: transform var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease); /* @kind other */
  --transition-surface: border-color var(--duration-base) var(--ease), transform var(--duration-base) var(--ease); /* @kind other */
  --transition-reveal: opacity var(--duration-reveal) var(--ease), transform var(--duration-reveal) var(--ease); /* @kind other */

  /* Scroll-reveal start state */
  --reveal-offset: translateY(18px); /* @kind other */

  /* Marquees — always linear and infinite; paused on hover. */
  --marquee-speed-uni: 30s; /* @kind other */
  --marquee-speed-fmt: 34s; /* @kind other */
  --marquee-speed-greek: 42s; /* @kind other */
  --marquee-speed-greek-rev: 46s; /* @kind other */
}
