{
  "id": "inflated-type",
  "name": "Inflated Type",
  "tagline": "Puffy candy-coloured letters drop in on springs, wobble like jelly and get bowled over on a doodle wallpaper.",
  "description": "Playful toy-like style for apps, creative tools, kids' products, games and fun feature announcements. A short word is set in huge rounded letters, each inflated in its own saturated candy colour (magenta, amber, lime, cyan, violet) with stacked-shadow extrusion, a coloured glow and glossy highlights. Letters drop in one by one and squash on landing, jiggle on a jelly beat, then a striped bouncy ball rolls through and knocks them flying before they bounce back into place. Behind them an off-white wallpaper of small black doodle icons drifts slowly, and a mono caption strip lists features.",
  "mood": [
    "playful",
    "bouncy",
    "sweet"
  ],
  "pacing": "medium",
  "format": "1:1",
  "width": 1080,
  "height": 1080,
  "durationSeconds": 7,
  "palette": {
    "paper": "#f3efe6",
    "ink": "#1b1b1b",
    "magenta": "#ff2e88",
    "amber": "#ffb000",
    "lime": "#7ed321",
    "cyan": "#12c9e8",
    "violet": "#9a3cff"
  },
  "fonts": {
    "display": {
      "family": "Fredoka",
      "weights": [
        600,
        700
      ],
      "source": "Google Fonts",
      "usage": "Inflated hero word 360px weight 700, one colour per letter; end-card tagline 60px weight 600 in ink"
    },
    "body": {
      "family": "Space Mono",
      "weights": [
        700
      ],
      "source": "Google Fonts",
      "usage": "Uppercase feature strip 21px tracking 0.08em separated by magenta dots; CTA pill 22px"
    }
  },
  "easing": {
    "drop": "power2.in",
    "landing": "elastic.out(1.2, 0.3)",
    "wobble": "sine.inOut (yoyo)",
    "knock": "power2.out",
    "fallBack": "bounce.out",
    "endCard": "back.out(1.6)"
  },
  "transitions": [
    "no cuts: one continuous toy-box shot on a slowly drifting doodle wallpaper",
    "a rolling ball sweeps through the frame and resets the composition",
    "word springs up and shrinks to make room for the end-card tagline and pill"
  ],
  "textAnimations": [
    "letters drop from above one at a time (0.12s stagger) and squash to scaleY 0.7 on landing, then spring back elastically",
    "continuous ±5° jelly wobble with a staggered squash wave on the beat",
    "letters knocked into the air with rotation, then fall back with bounce.out",
    "feature strip items pop in one by one with back.out"
  ],
  "rhythm": {
    "averageShotSeconds": 7,
    "notes": "Single continuous shot in beats: drop-in (0–1.2s), wobble and squash waves (1.2–3.3s), ball knock (3.3–5.3s), end card (5.6s+). Something is always bouncing."
  },
  "tags": [
    "playful",
    "3d-type",
    "candy",
    "bouncy",
    "doodles",
    "toy"
  ],
  "guide": "- Background: paper #f3efe6 tiled with small (~44px) black #1b1b1b doodle icons (eye, flower, sparkle, smiley, bolt, swirl, heart, ghost) at random rotations plus coloured confetti dots; drift the whole wallpaper ~270px diagonally over the video.\n- One short word (4–6 letters) in Fredoka 700 at ~360px on 1080, each letter its own candy colour: #ff2e88, #ffb000, #7ed321, #12c9e8, #9a3cff.\n- Inflate each letter with three stacked copies: an extrusion layer (7 stacked 2px text-shadows in a darker shade + a soft drop shadow + a 50px glow in the letter colour), a top-lit linear-gradient body clipped to the text, and a blurred radial white highlight clipped to the text.\n- Nest each letter as position > wobble > squash wrappers (transform-origin 50% 90%) so drops, wobble and squash never fight. Squash = scaleX 1.24 / scaleY 0.7 for 0.07s, then elastic.out(1.2, 0.3).\n- Add one physical interruption (ball, toy, cursor) that knocks the letters up with rotation; they fall back with bounce.out ~0.95s.\n- Feature strip: Space Mono 700 uppercase 21px with magenta separators on paper-coloured chips; end with a 60px tagline and a black pill CTA.\n- Avoid sharp or serif type, dark backgrounds, and static frames: keep something wobbling at all times."
}
