Fitness Promo

# HyperTough Sample — Fitness Promo A ten-scene gym promo recreated from a screen recording. Every scene is the same three-part device worked into a different corner of the frame: - **A translucent purple plate**, `#2B1A52` at 87%, fading up 0.1s into the scene. It anchors somewhere different each time — a full-height column left or right of centre, a full-width band across the top or the bottom, a card hung off an edge — and that anchor is the only thing separating one beat from the next. - **A green copy block**: a headline in caps and an italic support line under it, both `#6BFD94`, both left-aligned to the plate (or centred on it in the two end cards). The block fades in and rises 4.7% of the frame height over 0.35s on a `power2.out`, starting 0.42s in. **Head and support move together** — measured frame by frame, there is no stagger between them in any of the ten scenes, and the reveal itself never varies. What varies is where the block sits. - **A barbell mark** in three scenes, one `vector` layer, rising 1.2ch just ahead of the copy. **The type.** Two sizes, not one: scenes two to ten share a single scale (cap 36 headline, cap 17.5 support) and the cover is set one step above it on both (cap 40 and cap 20) with its lockup tracked out. Rubik throughout, identified by metrics rather than by eye: cap-height normalised ink widths put Rubik 900 first on the headline shape fingerprint (0.019 RMSE against 0.033 for the next candidate), and fitting eight independent headlines at cap 36 lands Rubik **800** at zero tracking to within ±0.01em. Eleven support lines fit Rubik **400** italic, also at zero tracking. The cover is the one exception: its lockup is tracked out **+0.09em**, and both its headline and its support line are a step larger, which is what makes it read as a title rather than another card. Every authored line's rendered ink width is checked against the recording through the browser's own Rubik — median error 2%, worst headline 3.3%. **The cover banner.** Scene one's diagonal is one `generic` layer whose `fill` is a hard-stop `linear-gradient` — no image. In 16:9 it is a **banner**, not a corner: four stops, so the far bottom-right stays photo. The near edge is the one the recording draws — (807, 0) to (191, 588) in its own pixels — and the far edge is DERIVED from the copy it has to contain, taking each text box plus one extra line of growth (both are `height: -1`, so that is the real risk) and stopping there. That leaves a corner reveal about 292 × 306px at 1920, and it means a longer headline can never cross the edge. On 9:16 and 1:1 the copy is bottom-anchored, so a far edge would land a few percent off the bottom of the frame and read as a rendering fault. Those two canvases keep the half-plane instead — the builder measures the available reveal and falls back when it is under 7% of the width, rather than forcing one geometry onto three frames. **Where it departs from the source.** - **The source's two exits are dropped, both for the same reason.** In the last ~0.4s of every scene the copy rises and fades out, and the frame ramps to solid green before the cut, the green then decaying over about 0.3s into the next scene. Nothing here may key off a scene's end — the narration resizes it, so an exit written at 3.6s of a 4s scene fires a fifth of the way into a 20s one and the rest of the script plays over an empty plate. Playback also has no coloured-flash kind among its eight. Each boundary is one `fade` at 0.3s, which the timing engine applies at whatever end the scene turns out to have, and each scene simply holds its last frame until then. That exit is also why the copy positions here were wrong on the first pass: the frame picked as each scene's "settled" state sat inside the exit rise, so scene two's block was authored 28px high and scene four's 24px, jamming both against the top edge of their plates. Every layer is now measured mid-scene, and all twenty text layers land on that rest state to within 0.1px. - Four scenes split their background into two or three vertical media panels. Those are collapsed to **one full-bleed clip slot per scene**, deliberately: the brief was the type, and one honest `cover` slot per scene is more useful to fill than three tiles cut for one photo. - Nothing here is opaque, and every purple surface carries **one paint at one alpha**: `#2B1A52` at 87%, so about an eighth of the footage reads through the cover banner and through all nine copy panels alike. That is a deliberate departure — the source runs its panels flatter, at a measured 70% against the banner's 87% — held at one value so the whole deck reads with the same weight of picture coming through. Both the colour and the alpha are solved, not sampled. A flat sample inside the banner reads `#372364`, which is the *result* over mid-grey footage rather than the paint; taking that at face value and calling the wedge opaque was the first pass's mistake, and it made every plate a flat block. - The clips are stills standing in for footage, each drifting on a 2.5% `crop` push rather than a scale tween, so a scene resized by the user's script slows the push instead of cutting mid-move. Eight palette variants — the format's maximum — over three roles: the plate, the accent that carries all type and the mark, and the file ground. The plate is painted at 70% alpha and the role is 6-digit, so a switch carries that tint with it. Authored at 16:9 and laid out again for 9:16 and 1:1. The portrait and square layouts are not the landscape one scaled: the plate becomes a full-width band sized to its own copy and anchored top, middle or bottom as the base scene anchors it, and every headline size is solved against its own canvas so the widest authored line fills the column.

16:9
1:1
9:16

Stop wasting time, effort and money creating videos

Hours of content you create per month: 4 hours

To save over 96 hours of effort & $4800 per month

No technical skills or software download required.