ARTEFACT 14 — ART DIRECTION · MIRRA · 2026-05-16

The spec.
2026-Q3 lock.

Photography style · palette · typography · motion · AI-gen prompts. Tightened to a 6-page lock-up that every Mirra creative in W21-W30 must pass through. Built from the 87-ad library, MIROFISH 300 verified preferences, and Karpathy reference-stack discipline.

METHOD 42 visual refs (artefact 12) + brand calibration + MIROFISH preference signals  ·  COST $0.10  ·  STATUS 2026-Q3 lock

14.01 The art-direction one-pager summary

Mirra's visual identity is pink-cream Y2K-feminine wellness. Not pink-bro. Not Y2K-loud. Soft, warm, editorial. The brand should feel like a Sephora carousel — not a YoloFoods macro-grid. The category-default is black-tray + white-marble + green-accent. Mirra's pink-cream + crimson-accent is the differentiator and must NOT be diluted.

"If a Mirra hero shot could just as easily be a Innisfree shot — we've nailed the visual ICP-overlap. If it could just as easily be a YoloFoods shot — we've lost.

14.02 Palette — locked

Mirra PinkPRIMARY · HERO
#F8BECD
Dusty RoseSECONDARY
#EBAABD
CrimsonACCENT · CTA
#AC374B
Warm CreamSUPPORTING
#F7E9D6
BoneBACKGROUND
#FFF5EE
Plum InkTEXT · CONTRAST
#3A1F2B
Matte Rose-GoldPREMIUM-TIER
#D4B4A0

Palette rules

3-color max per asset
Pink + crimson + cream is the canonical trio. Adding more dilutes brand recognition (Glossier discipline benchmark).
NEVER use pure white
Always #FFF5EE bone, not #FFFFFF. Cream-tinted whites carry warmth.
NEVER use pure black
Always #3A1F2B plum-ink. Pure black on Mirra reads industrial.
Rose-gold for premium
The 20-pack tier and corporate gift box use matte rose-gold (#D4B4A0) as secondary accent instead of crimson.
Forbidden colors
Green (#4DAA50 — Dietmonsta), orange (#F36C21 — YoloFoods), turquoise. ANY accent gold > rose-gold (too generic).

14.03 Photography — locked

Hero bento (top-down)

Camera angle
Top-down 90° straight-down, lens roughly centered on bento. ±5° tolerance.
Lens
50mm equivalent (or 24mm iPhone equiv). NO wide-angle distortion at edges.
Distance
Bento fills 70-80% of frame. NOT centered — slight offset to give breathing room (rule-of-thirds bias).
Lighting
Diagonal natural window light at 35° from top-right. Soft shadows on bottom-left. NO ring light. NO softbox studio flatness.
Background
Pink-cream gradient cloth OR cream wood (matte, never glossy). Could also use linen #F7E9D6 tinted.
Props
One human hand visible at edge (holding chopsticks OR resting). One small accent (cup of water, sprig of herb, phone screen showing menu). NEVER more than 2 props.
Post-processing
Color cast +5 magenta, brightness +5, shadows -15, highlights -8. Mirra's signature LUT. Save as `mirra_hero_v3.cube`.

Lifestyle portrait (model + bento)

Camera angle
Eye-level OR slight low-angle from chin (3/4 view). Models look slightly UP-and-AWAY from camera (never direct at lens unless laughing).
Framing
Crop tight at shoulders — show the bento AND a slice of face/torso. Avoid full-body.
Lighting
Window light, side-lit (45° from camera). Adds dimension to face + bento.
Casting (locked Q3-2026)
30% non-Chinese-MY · 20% postpartum · 15% plus-size · 35% slim Chinese-MY. 12-member rotating roster.
Hair / Wardrobe
Office attire (NOT athleisure, NOT lingerie-wellness). Natural hair (no heavy styling). NO heavy makeup.
Expression
Laughter mid-frame > posed smile. "Caught in the moment" framing > eye-contact-camera.

UGC reel (1-shot handheld)

Camera
iPhone, 9:16, no stabilization. The wobble IS the trust signal.
Length
15-22 seconds. NEVER over 22.
Cuts
0 cuts (full 1-shot) for UGC. 5-6 cuts for produced reels. NEVER more than 8 cuts.
Audio
Direct-to-camera voiceover. Real Malaysian English. No music until the 2-second outro.
Captions
Auto-captioned in JetBrains Mono or similar mono-sans. Pink #F8BECD on plum-ink #3A1F2B with 60% opacity background.
Outro
Mirra wordmark + price ("FROM RM19/MEAL") for 1.5s. Pink-cream end card.

14.04 Typography — locked

PRIMARY DISPLAY  →  Fraunces serif, italic, 500 weight
                       Use for: hooks, hero lines, "feeling" copy
                       Example: "All i changed was lunch"

PRIMARY BODY     →  Geist sans, 400 weight
                       Use for: body copy, captions, secondary info
                       Example: 50+ dishes, rotated weekly

PRIMARY CTA      →  Nunito bold or Geist semibold, 600 weight
                       Use for: button labels, action verbs
                       Example: START PLAN · SUBSCRIBE

NUMERICAL        →  Fraunces serif, 500 weight, large size (60pt+)
                       Use for: prices, calorie counts, kg-loss
                       Example: RM19

MONOSPACE        →  JetBrains Mono, 400 weight
                       Use for: meta info, dates, tags
                       Example: 2026-W21 · KL DELIVERY

FORBIDDEN: Helvetica Neue Bold (too generic), Comic Sans (obvi), Pacifico
(too cute), Playfair Display (over-used in F&B 2024).

14.05 Motion — locked (the 6 rules)

DO

  • Use side-profile chewing only (no mid-bite reveal)
  • Steam-plume reveal from microwave open
  • Ken-Burns slow zoom on still bento images (5-8s)
  • 5-6 cuts per 20-second reel
  • Add "3 min" countdown overlay on heat-up shots
  • Use 1-shot UGC for testimonial reels
  • Natural lateral pans, never crash-zooms

DON'T

  • Mid-bite shots (Veo + Wan fail mode — 5 verified failure patterns)
  • Card-flip "before/after" cards (banned per Tricia rule)
  • Lid-wrap reveals (Mirra rule — no plastic wrap drama)
  • Fast cuts (>8 per 20-sec)
  • Heavy graphic overlays during hero shots
  • Background music louder than voiceover
  • AI-gen humans with morphing faces (verify VLM pass)

14.06 AI-gen prompts — ready to fire 2026-Q3 batch

Drop-in prompts for nanobanana-pro / GPT-image-2. Every prompt assumes Mirra brand-DNA pre-loaded. Run 3 variants per prompt, audit ≥8.5/10.

P1 — Hero bento top-down (winning template, 5-line lock)

Top-down 90° flat-lay photograph, rectangular 3-compartment black
bento tray with round cream-white bowl in the upper-right, filled with
Malaysian sambal-chicken rendang, jasmine rice, sambal long beans,
acar pickled vegetables. Soft pink-cream linen cloth backdrop in
warm cream #F7E9D6. Diagonal window light from upper-right at 35°
casting soft shadows on lower-left. One Asian woman's hand at the
left edge holding chopsticks, soft natural skin. Editorial styling,
nutritionist-designed bento aesthetic. Mirra Pink #F8BECD accent
napkin folded in lower-right corner. Shot on Fujifilm GFX 50mm,
shallow but not crushed depth, 4:5 ratio, photorealistic, 8K,
NO ring-light flatness, NO oversaturation.

P2 — Lifestyle portrait (working KL woman + bento)

Editorial 3/4 portrait, Malaysian-Chinese woman late-20s, slight
laugh mid-frame, holding open Mirra bento at chest level. Soft side-
window light from camera-left at 45°. Background: blurred pink-cream
office interior, soft bokeh. Wardrobe: cream silk blouse, natural
hair down, minimal makeup. Subject's eyes look slightly up-and-away
(not direct at camera). The bento visible in frame: pasta with
salmon, fresh salad, cherry tomatoes. Editorial palette — pink #F8BECD
+ cream #F7E9D6 + plum-ink #3A1F2B. Shot on Leica Q, 28mm equiv,
medium-shallow depth. NO ring light, NO heavy retouching,
NO athletic-model framing. Photorealistic, 8K, 4:5 ratio.

P3 — Postpartum-specific lifestyle (new ICP)

Editorial portrait, Malaysian-Malay woman early-30s, post-baby body
shape (not slim, not plus-size — realistic mom body), seated at home
breakfast counter at golden hour. Holding Mirra bento. Baby's high
chair visible in soft background. Side-lit from window at 45°, warm
golden tones. Subject's expression: tired-but-content, slight half-
smile. Wardrobe: cream linen shirt, natural hair, no makeup.
Mirra bento visible: rice + fish + sambal + greens. Backdrop palette:
warm cream + pink-cream textiles + plum-ink contrast. Shot on Leica
Q at 28mm, photorealistic, 8K, 4:5 ratio. NO bright studio lighting,
NO heavy stylization, NO "perfect mom" trope.

P4 — 2pm office moment (scene-script reel still)

Editorial workplace photo, Malaysian-Chinese woman early-30s at her
desk in a KL co-working space, mid-afternoon, glazed expression
looking out the window. Generic Grab takeaway box half-eaten on the
desk (rice + chicken). Computer screen blurred in background.
Side window light, dim afternoon overcast. Subject body language:
slight slump, hand on chin. Wardrobe: muted office blouse.
Palette: muted neutrals (gray, beige) — INTENTIONALLY non-Mirra-pink
because this is the "BEFORE Mirra" scene. Shot on Fujifilm X-T5,
35mm, medium depth, photorealistic, 8K, 4:5 ratio.

P5 — Steam-plume microwave reveal (motion-still, single frame)

Side-profile photograph, microwave door just opened, visible steam-
plume rising from a Mirra bento on the turntable. Behind the
microwave: bone-cream tiled kitchen wall #FFF5EE. Camera at micro-
wave-door height, eye-level. Soft warm light from kitchen window
camera-left. Steam plume captured in motion-blur, bento visible
through plume. NO faces, NO hands — pure product moment.
Add "3 MIN" overlay graphic in Mirra Pink #F8BECD top-right corner
(small, JetBrains Mono). 16:9 ratio for reel, 8K, photorealistic.

P6 — Brand wordmark + price card

Pink-cream gradient background #F8BECD to #F7E9D6. Center: "RM19"
in Fraunces serif italic 500-weight, rendered in plum-ink #3A1F2B,
600pt size. Below: "PER MEAL" in JetBrains Mono regular, 36pt,
0.3em letter-spacing, plum-ink. Below that: "MIRRA" wordmark, Geist
600-weight, 80pt, crimson #AC374B. 4:5 ratio, 8K, NO photographic
elements — pure typographic composition. Add subtle paper-texture
overlay for editorial feel.

14.07 Audit checklist — must pass before publish

#Audit dimensionThresholdMethod
1Reference fidelity (SKU correct)≥ 9/10vlm-see.sh --task compare --ref mirra/refs/12.png
2Brand palette compliance (3-color rule)PASSpalette extraction · reject if > 3 dominant hues
3Reference: hand-in-frame (lifestyle)PRESENTVLM detection · 1 hand visible OR explicit reason
4Bento type (rect 3-compartment + cream bowl)PRESENTVLM compare vs canonical bento image
5No-mid-bite rule (motion assets)PASScard-flip-detector + frame-by-frame check
6No-card-flip rule (motion assets)PASScard-flip-detector.sh
7Casting diversity (rolling 12-asset window)≥ 30% non-Chinese-MYmanual review of casting log
8Typography pairing (Fraunces + Nunito/Geist)BOTH presentvisual review
9Hero-copy includes number specificityYEScopy review for RM-X or N-cal or kg-loss
10Permission-frame complianceYESreview — does the hook permit, not demand?