Alfred, an iteration on the five 3D voices, rebased onto main and committed on helper-main-signor-bernini (a39fab8f5 on top).

What changed
- Proportions, from the drawings measured on a grid. Every drawn head is a squat oval about 1.2 times as wide as tall (butler 155x133 px, colleague 244x182), not taller than wide, so that is how I built it, against the brief's "elongated upward". The body is taller: the chin sits at about 0.64 of the standing height, the arms are long (0.40 m upper, 0.30 m forearm), the legs 0.3 m thick on capsule thighs and shins so knees bend, and the shoes big. Each voice sizes bones in its rest pose where its drawing does: coach head 1.08 and arms 1.15 to 1.2, colleague head 1.45 on a 0.88 torso, homie head 1.2, squire helmet 0.9.
- The figures were mirrored. Every drawing turns its face to the viewer's right; the 3D turn was -24 and is now +24. That alone put the butler's bow, waistcoat, tray and ear cup where the drawing has them.
- Lighting, calibrated to the drawn tones (cream lit #f6f0e4, shadow #c6c0de): a pale yellow sun from the upper right over a blue-violet fill. Cream no longer reads blue or pink.
- Standing: the coach, homie and squire stand straight; the colleague stays seated, legs angled forward as drawn. The homie has no bean bag. The squire's shield is a heater shield (arched top, straight sides curving to a point) with the star.
- Details: the butler's bowler is bigger and tipped under his hand, with a cream band; a bigger tick disc on the laptop. The coach has a fist with curled fingers and a short thumb (a lone upright capsule read as the wrong finger), the whistle on a cord, big chart bars, and sneakers with a navy sole, cream upper and blue side patch. The colleague's glasses are frames following the head. The homie has ear cups as well as the neck pair, and his backwards cap shows the strap opening at the front and a drooping peak. The squire's plume is curled, and his quill a notched feather with a lavender vane.
- Clothing lines: there are no texture coordinates on these meshes, so the lines are thin ink tubes on the cloth. Knee and shin folds on every pair of trousers, elbow folds on every sleeve (grey on the colleague's white shirt), the coach's pockets and waistband, the homie's pocket, hem and drawstrings, the seams of the squire's plate, a fold on the towel. Thin parts skip the outline shell, which would otherwise triple their width.

Cloth, as Sir Jesse asked me to judge
- Moving cloth: the butler's towel and both coat tails, the squire's cape, plume and scarf end, the coach's whistle and lanyard, the homie's hood strings. All of them hang loose and should answer the arm, the walk or the wave. The towel, tails and cape are now rippled grid panels (a drape builder), so they bend rather than tilt like planks. How it works: the build marks each piece with the point it hangs from, its free end, and how strongly gravity holds it. The viewer runs a damped spring per piece on that end, in the figure's own frame, so turning the figure does not set it swinging, and bends the vertices toward the end, more the further they hang.
- Rigid: hats and caps (moving, they read as slipping off), the tray and laptop (must stay level), the clipboard, shield and quill (hard objects), glasses, headphones, bow tie, lapels and waistcoat (tailored and stiff).

A bug found and fixed on the way
three's animation mixer skips writing a value it thinks unchanged, while the figure resets its bones every frame. So whenever two frames sampled alike, a move left bones at rest: the wave left the arm hanging. This also affected the chat's own mascots. Clips are now sampled straight onto the bones, so the same moment always gives the same pose.

Tests written, not run (yours to run): src/web/tests/toon.test.js gains "a piece of cloth swings past where it should hang and settles there" and "every cloth piece names the point it hangs from and its free end"; its visor-set line is gone with the coach's own visor. scripts/mascots/faces.py lost the per-voice visor; toon.js faceUrl takes no visor.

What is left, with the overlay as the judge
- The homie and squire now stand while their drawings sit or leap, so their overlays compare heads, clothes and props, not pose.
- The squire's helmet still reads as the bare head: the shell's opening needs a visible rim and cheek guards.
- The plume is still blocky; the colleague's body is a little big for her head; the homie's arms cross as a clasp rather than folded forearms.
- The drawn butler's coat front cuts away below the waist more sharply.
- The chat cell ends 2.32 m above the floor, so a voice must stay under that or be clipped (the plume and the homie's cap were brought under it).

Not checked: the cloth swing in the live chat player (seen in the preview only), and the back views.

Preview: http://127.0.0.1:8431/toon-preview/index.html (five large turning views, each labelled with its voice and blinking, beside its rest pose; overlay rows below)
Side-by-side overlays, render | drawing | laid over, all five voices: http://127.0.0.1:8431/toon-preview/rest/overlays.png (redrawn live at http://127.0.0.1:8431/toon-preview/compare.html?voice=all)

ready for a round: proportions rebuilt from the drawings, turn flipped, lights calibrated, three voices standing, clothing lines, cloth on the loose pieces.
