Nothing broke — check passed first try and the first render shipped. (The photo grid wrapped to 2 columns x 3 rows instead of 3x2 — inline-block whitespace; it reads deliberate in the square frame and was kept.)
Banned list —Beat grid —Build method —Self-review —
<direction>
A 9-second photo app launch film, HyperFrames 1080x1080 square at 30fps. House style: near-black #0a0a0a background, panels #141414, borders #2a2a2a, text #ffffff/#c9c9c9, ONE accent #ff5c1a, Arial/Helvetica bold, no webfonts. There are no photographs in this film: every "photo" is drawn from flat SVG shapes (sun circles, triangle mountains) — which is the honest way to launch a fictional app and a useful constraint for real ones without assets. No gradients, no stock photos, no real brand logos, no lorem ipsum, no purple/blue tech gradient.
</direction>
<structure>
0.0-3.4s — Kicker "PHOTO APP LAUNCH FILM — Lumen Album". Six photo frames pop in with a back ease, staggered: each an inline SVG scene (sun + mountains, moon + hill, framed picture, peak, sunset band, twin peaks).
3.4-6.2s — The grid scales down and fades; one hero frame scales up centre with the payoff "YOUR LIFE, ORGANISED." under it.
6.2-9.0s — End card: the app wordmark, "Every photo finds its place — automatically.", the "TRY IT FREE" pill, and a fine print noting the app is fictional and the photos are drawn shapes.
</structure>
<build>
One paused GSAP timeline. Photos are inline SVGs (rect/circle/polygon only). Grid items are inline-blocks entering with scale + y; the hero is a separate larger SVG scene, crossfaded — simpler and crisper than FLIP-style moves.
</build>
<gotchas>
- Inline-block grids wrap earlier than the math says (whitespace gaps): our 3-across plan landed as a clean 2x3 — design so either wrap reads deliberate, or use flex with explicit widths.
- Keep every SVG scene inside its frame's border radius (overflow hidden on the frame).
</gotchas>
Before you finish: step through the timeline at five points and fix anything that overlaps, clips the frame, or drifts off the beat grid.