/* the agent flywheel — motion is slow and continuous, never bouncing */
.fw-in{stroke:var(--ink-3);stroke-width:1.6;stroke-linecap:round}
.fw-feed{fill:none;stroke:var(--iris);stroke-width:1.5}
.fw-arh{fill:none;stroke:var(--iris);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.fw-rim{fill:none;stroke:var(--iris);stroke-width:1.6}
.fw-rim-in{fill:none;stroke:#C7C5D1;stroke-width:1}
.fw-tooth{stroke:#B9B7C4;stroke-width:1}
.fw-tooth-lit{stroke:var(--iris);stroke-width:1.5}
.fw-petal{fill:rgba(109,40,217,.05);stroke:#B9B7C4;stroke-width:1}
.fw-petal-lit{fill:rgba(109,40,217,.14);stroke:var(--iris);stroke-width:1.2}
.fw-hair{stroke:var(--iris);stroke-width:1.1}
.fw-hub{fill:#fff;stroke:var(--iris);stroke-width:1.8}
.fw-hub-t{font-family:var(--display);font-style:italic;font-size:20px;fill:var(--ink)}

.fw-sheet{fill:#fff;stroke:#9A98A6;stroke-width:1.15}
.fw-fold{fill:none;stroke:#9A98A6;stroke-width:1.15}
.fw-rule{stroke:#C7C5D1;stroke-width:1.4;stroke-linecap:round}
.fw-name{font-family:var(--body);font-size:13.5px;font-weight:500;fill:var(--ink-2)}
.fw-trail{fill:none;stroke:var(--iris);stroke-width:1.1;stroke-dasharray:5 9;opacity:.5;
  animation:fw-flow 3.4s linear infinite}

@keyframes fw-flow{to{stroke-dashoffset:-42}}
@keyframes fw-spin{to{transform:rotate(360deg)}}
@keyframes fw-spin-r{to{transform:rotate(-360deg)}}
@keyframes fw-breathe{0%,100%{opacity:1}50%{opacity:.72}}

.fw-turn-a,.fw-turn-b,.fw-turn-c{transform-box:view-box;transform-origin:470px 360px}
.fw-turn-a{animation:fw-spin 96s linear infinite}
.fw-turn-b{animation:fw-spin-r 64s linear infinite}
.fw-turn-c{animation:fw-spin 38s linear infinite}
.fw-file{animation:fw-breathe 5s ease-in-out infinite}

@media (prefers-reduced-motion:reduce){
  .fw-turn-a,.fw-turn-b,.fw-turn-c,.fw-file,.fw-trail{animation:none}
}
