/* Wykeham motion. Motion is a courtesy, not a feature: short, linear-ish opacity and
   colour transitions, plus at most a 1–2px positional nudge on arrows. No bounce, no
   spring, no scale, no parallax, no scroll-jacking. --duration-slow is used only for a
   first-paint fade-up of hero copy. */
:root{
  --duration-fast:120ms; /* @kind other */
  --duration:180ms; /* @kind other */
  --duration-slow:320ms; /* @kind other */
  --ease:cubic-bezier(.2,0,.2,1); /* @kind other */
  --ease-out:cubic-bezier(0,0,.2,1); /* @kind other */
  /* State transitions run at --duration-fast. interaction-rules.md is explicit:
     "Every hover on every page: 120ms, cubic-bezier(.2,0,.2,1), colour/opacity/
     transform only." --duration (180ms) is for everything that is not a hover. */
  --transition-color:color var(--duration-fast) var(--ease),background-color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease);
  --transition-opacity:opacity var(--duration) var(--ease);
  --arrow-nudge:2px;       /* translateX on hover for arrow links */
}
@media (prefers-reduced-motion:reduce){
  :root{--duration-fast:0ms; /* @kind other */ --duration:0ms; /* @kind other */ --duration-slow:0ms; /* @kind other */ --arrow-nudge:0px}
}
