light · bold · sans · ai · video · warm · playful

DESIGN.md inspired by Pika

A cream-canvas AI video studio in custom Telka type, with peach and black pill CTAs.

By webdesignhot · pika.art
$ npx @webdesignhot/design-md add pika
Learn more about the CLI
Compare to…
try on →
theme
1440 × 900
mobile · 390 × 844
Tokens webdesignhot/0.1
  • bg #fcfaf7
  • bg-alt #f5f1ea
  • surface #ffffff
  • surface-soft #fbf7f0
  • text AAA · 18.7 #0d0d0d
  • text-strong #000000
  • text-muted #5c5c5c
  • text-soft #8a8a8a
  • text-faint — · 1.9 #b8b8b8
  • brand — · 1.4 #ffd184
  • brand-deep #f5be63
  • brand-soft rgba(255, 209, 132, 0.30)
  • on-brand #222222
  • ink-cta-bg #000000
  • ink-cta-text #ffffff
  • dark-cta-bg #222222
  • link #0d0d0d
  • link-hover #000000
  • selected-bg rgba(255, 209, 132, 0.30)
  • disabled #b8b8b8
  • border — · 1.2 rgba(13, 13, 13, 0.10)
  • border-strong — · 1.5 rgba(13, 13, 13, 0.18)
  • border-subtle rgba(13, 13, 13, 0.05)
  • success-bg rgba(34, 197, 94, 0.12)
  • success-text #15803d
  • warning-bg rgba(245, 190, 99, 0.20)
  • warning-text #92600c
  • danger-bg rgba(220, 38, 38, 0.10)
  • danger-text #b91c1c
  • info-bg rgba(13, 13, 13, 0.06)
  • info-text #0d0d0d
Typography
Ship faster than ever.
display-hero telkaExtended 80px w900 -0.03em
Ship faster than ever.
display-lg telkaExtended 56px w900 -0.02em
Ship faster than ever.
h1 telkaExtended 48px w900 -0.02em
Built for teams that ship.
h2 telkaExtended 32px w700 -0.012em
A complete kit
h3 telkaExtended 24px w600 -0.005em
The quick brown fox jumps over the lazy dog.
h4 telkaExtended 20px w600 0
The quick brown fox jumps over the lazy dog.
body-lg telka 18px w300 0
The quick brown fox jumps over the lazy dog.
h5 telka 16px w600 0
The quick brown fox jumps over the lazy dog.
body telka 16px w300 0
The quick brown fox jumps over the lazy dog.
body-sm telka 14px w300 0
OUR DESIGN SYSTEM
label telka 13px w500 0
npx @webdesignhot/design-md add stripe
code ui-monospace 13px w400 0
The quick brown fox jumps over the lazy dog.
eyebrow telka 12px w600 0.06em
OUR DESIGN SYSTEM
caption telka 12px w500 0.02em
Spacing
  • step-0 0px
  • step-1 4px
  • step-2 8px
  • step-3 12px
  • step-4 16px
  • step-5 24px
  • step-6 32px
  • step-7 48px
  • step-8 64px
  • step-9 96px
  • step-10 128px
Radius
  • micro 2px
  • sm 4px
  • md 8px
  • lg 12px
  • xl 16px
  • cta 18px
  • pill 9999px
Components
Text link →
Card preview A complete kit — everything your product needs. Hero, pricing, FAQ, dashboard, docs — every layout your product needs.
New Stable v1.0
Design roles 7/8 mapped · webdesignhot/0.1

Maps the 8 canonical role names to this entry's actual tokens. Use these to plug the design into role-aware tools — shadcn/ui themes, role-aware Tailwind plugins, atelier-lint — without hard-coding token names.

  • background bg
  • foreground text
  • primary brand
  • primary-foreground on-brand
  • accent
  • muted text-muted
  • border border
  • ring brand
Export 4 formats · paste-ready
Tailwind

theme.extend block for tailwind.config.js

tailwind.config.js
CSS variables

:root { --bg, --text, --brand, … } you can paste anywhere

design.css
DTCG JSON

W3C Design Tokens Community Group format

design.tokens.json
Figma Variables

Importable into Figma → Variables → Import

figma-variables.json
The file
---
name: Pika
tagline: A cream-canvas AI video studio in custom Telka type, with peach and black pill CTAs.
updated_at: 2026-05-28T23:10:59.523Z
published_at: 2026-05-28T23:10:59.523Z
author: webdesignhot
source_url: https://pika.art
spec: webdesignhot/0.1
quality: curated
featured: false
categories: [ai, media]
tags: [light, bold, sans, ai, video, warm, playful]
preview_swatch: ['#fcfaf7', '#ffd184', '#000000']
related: [krea]
description: 'Pika''s site is a warm-light AI video studio. The canvas is a cream off-white `#fcfaf7` — not clinical white, a hair of warmth that softens the generative-AI register into something playful — and the type is **Telka**, a custom geometric grotesque, with the wide **Telka Extended** cut carrying the display: the h1 lands at 48px / weight **900**, set near-black `#0d0d0d`. The defining structural move is the two-CTA grammar: a soft peach `#ffd184` button (dark text) for the inviting primary action, and a hard black `#000000` button (white text) for the do-it-now generate action, both at a generous 18px radius. Where Krea commits to absolute black and Swiss restraint, Pika does the opposite — a warm cream room, a fat-weight display face, and rounded peach-and-black pills that read playful rather than austere. The body runs Telka at a light 300 weight, so the page reads relaxed and approachable while the 900-weight headlines carry all the punch.'


# Canonical 8-role aliases (bg / text / brand / border / accent / muted / surface / danger).
# Maps role names to this entry's actual token names so role-aware
# downstream tools resolve `theme.background` → entry's `bg`, etc.
# Auto-generated by scripts/add-aliases.mjs — do not edit manually;
# regenerate after changing color token names.
aliases:
  background: bg
  foreground: text
  primary: brand
  primary-foreground: on-brand
  muted: text-muted
  border: border
  ring: brand

themes:
  default: light
  available: [light]
  switch-via: 'Light-only. The cream canvas is the brand surface across the entire marketing site and web studio; no dark variant is offered. The black CTA supplies the only true dark field on the page.'

colors:
  bg: '#fcfaf7'                  # cream off-white canvas — rgb(252, 250, 247)
  bg-alt: '#f5f1ea'             # one step warmer/darker for inset bands
  surface: '#ffffff'            # pure-white raised card on cream ground
  surface-soft: '#fbf7f0'       # softest panel fill, barely off the canvas
  text: '#0d0d0d'               # near-black display ink — rgb(13, 13, 13)
  text-strong: '#000000'        # absolute black for max-emphasis headings + CTA fill
  text-muted: '#5c5c5c'         # muted grey for captions, secondary copy
  text-soft: '#8a8a8a'          # quietest labels, placeholder, meta
  text-faint: '#b8b8b8'         # disabled text, hairline dividers as text
  brand: '#ffd184'              # peach — primary CTA fill, rgb(255, 209, 132)
  brand-deep: '#f5be63'         # pressed/active peach
  brand-soft: 'rgba(255, 209, 132, 0.30)'  # peach wash for highlight pills
  on-brand: '#222222'           # dark ink on peach — rgb(34, 34, 34)
  ink-cta-bg: '#000000'         # black generate-button fill
  ink-cta-text: '#ffffff'       # white text on black/dark CTA
  dark-cta-bg: '#222222'        # near-black "Try on Web" fill — rgb(34, 34, 34)
  link: '#0d0d0d'               # links use the near-black ink
  link-hover: '#000000'         # deepen to absolute black on hover
  selected-bg: 'rgba(255, 209, 132, 0.30)'  # peach-wash selection
  disabled: '#b8b8b8'
  border: 'rgba(13, 13, 13, 0.10)'       # 10% near-black hairline on cream
  border-strong: 'rgba(13, 13, 13, 0.18)' # emphasized rule on inputs
  border-subtle: 'rgba(13, 13, 13, 0.05)' # quietest division
  success-bg: 'rgba(34, 197, 94, 0.12)'
  success-text: '#15803d'
  warning-bg: 'rgba(245, 190, 99, 0.20)'
  warning-text: '#92600c'
  danger-bg: 'rgba(220, 38, 38, 0.10)'
  danger-text: '#b91c1c'
  info-bg: 'rgba(13, 13, 13, 0.06)'
  info-text: '#0d0d0d'

typography:
  display:
    family: 'telkaExtended, telka, system-ui, -apple-system, sans-serif'
    weights: [500, 600, 700, 900]
    opentype-features: ['kern', 'liga']
  body:
    family: 'telka, system-ui, -apple-system, sans-serif'
    weights: [300, 400, 500, 600]
    opentype-features: ['kern']
  mono:
    family: 'ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace'
    weights: [400, 500]
    opentype-features: ['tnum']
  scale:
    display-hero:    { size: 80, weight: 900, lineHeight: 1.0,  tracking: '-0.03em',  family: display, opentype: 'kern liga' }
    display-lg:      { size: 56, weight: 900, lineHeight: 1.05, tracking: '-0.02em',  family: display, opentype: 'kern liga' }
    h1:              { size: 48, weight: 900, lineHeight: 1.05, tracking: '-0.02em',  family: display }
    h2:              { size: 32, weight: 700, lineHeight: 1.15, tracking: '-0.012em', family: display }
    h3:              { size: 24, weight: 600, lineHeight: 1.25, tracking: '-0.005em', family: display }
    h4:              { size: 20, weight: 600, lineHeight: 1.3,  tracking: '0',        family: display }
    h5:              { size: 16, weight: 600, lineHeight: 1.4,  tracking: '0',        family: body }
    eyebrow:         { size: 12, weight: 600, lineHeight: 1.4,  tracking: '0.06em',   family: body, transform: uppercase }
    body-lg:         { size: 18, weight: 300, lineHeight: 1.55, tracking: '0',        family: body }
    body:            { size: 16, weight: 300, lineHeight: 1.55, tracking: '0',        family: body }
    body-sm:         { size: 14, weight: 300, lineHeight: 1.5,  tracking: '0',        family: body }
    label:           { size: 13, weight: 500, lineHeight: 1.4,  tracking: '0',        family: body }
    caption:         { size: 12, weight: 500, lineHeight: 1.4,  tracking: '0.02em',   family: body }
    code:            { size: 13, weight: 400, lineHeight: 1.55, tracking: '0',        family: mono, opentype: 'tnum' }

radius:
  micro: 2
  sm: 4
  md: 8
  lg: 12
  xl: 16
  cta: 18
  pill: 9999

spacing:
  base: 4
  scale: [0, 4, 8, 12, 16, 24, 32, 48, 64, 96, 128]

layout:
  page-width: 1280
  prose-width: 720
  site-gutter: 'clamp(20px, 5vw, 64px)'
  header-height: 64
  grid-columns: 12
  section-rhythm: '64-128px'

components:
  button-primary:
    background: '#ffd184'
    text: '#222222'
    padding: '10px 18px'
    radius: 18
    border: 'none'
    font: 'Telka 500 / 15px'
    hover-bg: '#f5be63'
    use: 'Primary invitation CTA — peach pill, dark text (Sign Up, Get started).'
  button-generate:
    background: '#000000'
    text: '#ffffff'
    padding: '10px 18px'
    radius: 18
    border: 'none'
    font: 'Telka 500 / 15px'
    hover-bg: '#1a1a1a'
    use: 'Do-it-now action CTA — black pill, white text (Generate).'
  button-dark:
    background: '#222222'
    text: '#ffffff'
    padding: '10px 18px'
    radius: 18
    border: 'none'
    font: 'Telka 500 / 15px'
    hover-bg: '#000000'
    use: 'Secondary dark CTA — near-black pill (Try on Web).'
  button-ghost:
    background: 'transparent'
    text: '#0d0d0d'
    padding: '10px 18px'
    radius: 18
    border: '1px solid rgba(13, 13, 13, 0.18)'
    font: 'Telka 500 / 15px'
    hover-bg: 'rgba(13, 13, 13, 0.04)'
    use: 'Quiet outline twin — nav and tertiary actions on cream.'
  card:
    background: '#ffffff'
    border: '1px solid rgba(13, 13, 13, 0.10)'
    radius: 16
    padding: '24px'
    use: 'Content card — pure-white fill lifting off the cream ground.'
  card-video-tile:
    background: '#f5f1ea'
    border: 'none'
    radius: 16
    padding: '0'
    aspect-ratio: '16 / 9'
    use: 'Generated-clip tile — rounded 16px frame, video bleeds to edge.'
  input:
    background: '#ffffff'
    border: '1px solid rgba(13, 13, 13, 0.18)'
    radius: 8
    padding: '10px 14px'
    font: 'Telka 300 / 15px'
    placeholder-color: '#8a8a8a'
    focus-ring: '0 0 0 3px rgba(255, 209, 132, 0.50)'
    use: 'Form fields, search.'
  prompt-input:
    background: '#ffffff'
    border: '1px solid rgba(13, 13, 13, 0.10)'
    radius: 18
    padding: '14px 16px 14px 20px'
    font: 'Telka 300 / 16px'
    inner-button: '40px black circle, white arrow'
    use: 'Studio prompt — wide rounded box with a black send button.'
  badge-tag:
    background: 'rgba(255, 209, 132, 0.30)'
    text: '#222222'
    padding: '4px 12px'
    radius: 9999
    font: 'Telka 500 / 12px'
    use: 'Style / category chip — peach-wash pill.'
  nav-link:
    background: 'transparent'
    text: '#0d0d0d'
    padding: '8px 12px'
    font: 'Telka 500 / 15px'
    hover-text: '#5c5c5c'

motion:
  ease-standard: 'cubic-bezier(0.4, 0, 0.2, 1)'
  ease-emphasized: 'cubic-bezier(0.2, 0, 0, 1)'
  ease-bounce: 'cubic-bezier(0.34, 1.56, 0.64, 1)'
  duration-fast: 150
  duration-standard: 240
  duration-slow: 320
  reduced-motion: 'respects prefers-reduced-motion: reduce — looping demo clips pause to a poster frame, transforms collapse to opacity.'

breakpoints:
  mobile: 640
  tablet: 1024
  desktop: 1280
  wide: 1536

shadows:
  none: 'none'
  ambient: 'rgba(13, 13, 13, 0.05) 0 1px 2px'
  standard: 'rgba(13, 13, 13, 0.08) 0 4px 16px'
  elevated: 'rgba(13, 13, 13, 0.12) 0 16px 40px -8px'
  modal: 'rgba(13, 13, 13, 0.20) 0 24px 64px -12px'
  ring: '0 0 0 3px rgba(255, 209, 132, 0.50)'

accessibility:
  contrast-text-on-bg: 18.9         # #0d0d0d on #fcfaf7 — AAA at all sizes
  contrast-text-muted-on-bg: 7.0    # #5c5c5c on #fcfaf7 — AAA at body sizes
  contrast-text-soft-on-bg: 3.9     # #8a8a8a on #fcfaf7 — AA large / placeholder only
  contrast-on-brand-on-brand: 8.9   # #222222 on #ffd184 peach — AAA at body sizes
  contrast-white-on-black-cta: 21.0 # #ffffff on #000000 generate CTA — AAA
  contrast-white-on-dark-cta: 15.9  # #ffffff on #222222 — AAA at all sizes
  focus-ring: '3px peach glow rgba(255, 209, 132, 0.50) with 2px offset; falls back to 2px solid #0d0d0d outline where peach lacks contrast on white.'
  reduced-motion-honored: true
  keyboard-nav: 'tab order: skip-link → masthead → primary CTA → hero prompt → footer; Esc dismisses modals.'
  prose-line-length: 'capped at 720px on text pages; studio + gallery bleed wider.'

dark-mode: none                    # Pika is light-only; the cream canvas is the brand surface.
colors-dark: none                  # no dark variant offered.
---

## 1. Visual Theme & Atmosphere

Pika opens as a warm, sunlit room. The canvas is a cream off-white `#fcfaf7` — not the clinical `#ffffff` of an enterprise dashboard, not the absolute `#000` of a gallery-AI tool, but a soft paper white with a faint warm cast that reads "approachable" before a single word is processed. Against that cream ground the headline sits in near-black `#0d0d0d`, set in **Telka Extended** — a wide, custom geometric grotesque — at 48px / weight **900**. The fat display weight is the brand's loudest move: where Krea refuses to bold and trusts Swiss restraint, Pika does the opposite, leaning into a chunky, confident, almost editorial-poster headline that gives the playful-AI register its punch.

The defining structural decision is the **two-CTA grammar**. Pika ships two differently-coded primary actions side by side: a soft peach `#ffd184` pill with dark text for the *inviting* action ("Sign Up", "Get started"), and a hard black `#000000` pill with white text for the *do-it-now* action ("Generate"). A third near-black `#222222` pill carries supporting actions ("Try on Web"). All three share the same generous **18px radius** — rounder than the 8px most SaaS uses, soft enough to feel friendly, tight enough to stay crisp. The peach-vs-black pairing is instantly recognisable from a thumbnail: warm invitation next to decisive black.

The body copy runs Telka at a light **300 weight**, which is the counterweight to the 900 display. The contrast between feather-light body and ultra-bold headline is the page's core typographic tension — relaxed and unhurried in the running text, emphatic and poster-like in the titles. There are no gradients fighting the cream, no neon, no dark-mode drama. The warmth comes from the canvas tint and the peach accent; the energy comes from the weight contrast and the rounded pills.

The atmospheric vocabulary: **cream-canvas, warm-light, Telka-Extended-900, feather-300-body, peach-and-black, rounded-18px-pills, playful-confident, two-CTA-grammar, poster-headline, sunlit-studio.** Section rhythm runs 64–128px between blocks — slightly tighter than a gallery hang, breezy rather than austere. Cards lift off the cream with pure-white fills and soft low-opacity shadows; the depth is gentle, never heavy. The whole effect is an AI video tool that feels like a creative toy box rather than a control panel.

**Key Characteristics**
- Cream off-white canvas `#fcfaf7` — warm paper, not clinical white
- Telka Extended display at 48px / weight **900** — chunky poster headlines
- Telka body at light **300** weight — feather-light running text, big weight contrast
- Two-CTA grammar — peach `#ffd184` invitation + black `#000` do-it-now
- 18px CTA radius — rounded, friendly pills (rounder than 8px SaaS default)
- Near-black ink `#0d0d0d` as primary text, absolute `#000` for max emphasis
- Peach accent `#ffd184` is the only warm chroma in an otherwise neutral page
- Pure-white cards lift off the cream with soft, low-opacity shadows
- Light-only — no dark variant; the cream is the brand surface
- Playful-warm register — creative toy box, not enterprise control panel

## 2. Color Palette & Roles

### Primary

- **bg** `#fcfaf7` — cream off-white gallery canvas; the warm paper ground (rgb 252, 250, 247).
- **text** `#0d0d0d` — near-black display + body ink; the primary value contrast on cream (rgb 13, 13, 13).
- **text-strong** `#000000` — absolute black for max-emphasis headings and the generate CTA fill.
- **bg-alt** `#f5f1ea` — one warm step down for inset bands and clip-tile placeholders.

### Brand & Accent

- **brand** `#ffd184` — peach; the primary invitation CTA fill and the only warm chroma on the page (rgb 255, 209, 132).
- **brand-deep** `#f5be63` — pressed / active peach for the hover state.
- **brand-soft** `rgba(255, 209, 132, 0.30)` — peach wash for highlight pills, selection, and the focus glow.
- **on-brand** `#222222` — dark ink that sits on the peach button (rgb 34, 34, 34).

### Interactive (the CTA family)

- **ink-cta-bg** `#000000` — black "Generate" pill; the decisive do-it-now action.
- **ink-cta-text** `#ffffff` — white text on the black / dark pills.
- **dark-cta-bg** `#222222` — near-black "Try on Web" pill; supporting dark action (rgb 34, 34, 34).
- **link** `#0d0d0d` — links use the near-black ink, underlined for affordance.
- **link-hover** `#000000` — deepens to absolute black on hover.
- **selected-bg** `rgba(255, 209, 132, 0.30)` — peach-wash selection / active chip.
- **disabled** `#b8b8b8` — neutral disabled chrome.

### Neutral Scale

- **text** `#0d0d0d` — near-black ink (rgb 13, 13, 13).
- **text-muted** `#5c5c5c` — muted grey for captions and secondary copy.
- **text-soft** `#8a8a8a` — quietest labels, placeholders, meta.
- **text-faint** `#b8b8b8` — disabled text, faint dividers.

### Surface & Borders

- **surface-0 (page)** — `#fcfaf7` cream canvas.
- **surface-1 (inset band)** — `#f5f1ea` warm step-down.
- **surface-2 (card)** — `#ffffff` pure white, lifting off the cream.
- **surface-soft** — `#fbf7f0` softest panel, barely off the canvas.
- **border** `rgba(13, 13, 13, 0.10)` — 10% near-black hairline, the default rule on cream.
- **border-strong** `rgba(13, 13, 13, 0.18)` — emphasized rule on inputs and dividers.
- **border-subtle** `rgba(13, 13, 13, 0.05)` — quietest division.

### Shadow Colors

Shadows on Pika are **near-black, very-low-opacity, and soft**. The cream canvas wants gentle depth, so cards lift with `rgba(13, 13, 13, 0.05–0.12)` at wide blur radii — a soft drop rather than a hard edge. The brand never tints shadows with the peach; the warmth stays in fills, the shadows stay neutral. Most depth is read as a pure-white card floating a few pixels above the cream, not as a heavy cast.

### Semantic

- **success** — bg `rgba(34, 197, 94, 0.12)`, text `#15803d` (green-700).
- **warning** — bg `rgba(245, 190, 99, 0.20)`, text `#92600c` (amber-800) — borrows the peach family at low saturation.
- **danger** — bg `rgba(220, 38, 38, 0.10)`, text `#b91c1c` (red-700).
- **info** — bg `rgba(13, 13, 13, 0.06)`, text `#0d0d0d` — neutral on the warm-light page; Pika doesn't introduce a cold info-blue.

Note: semantic text uses **700–800 step colours** so it stays AA-legible against the bright cream ground while keeping the warm, calm register. Saturated 500s would feel loud on the paper.

## 3. Typography Rules

### Font Family

- **Display**: `telkaExtended, telka, system-ui, -apple-system, sans-serif` — Telka Extended, the wide cut of Pika's custom geometric grotesque, carries every headline. The extended width plus weight 900 is the brand's poster signature.
- **Body**: `telka, system-ui, -apple-system, sans-serif` — Telka regular-width at a light 300 weight sets all running copy; the feather-light body is the deliberate counterweight to the 900 display.
- **Mono**: `ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace` — for prompt parameters, durations, dimensions, seed values, and rare inline code.
- **OpenType features**: `kern` and `liga` always on; `tnum` (tabular figures) in mono for clip durations and dimensions.

### Hierarchy

| Role | Font | Size | Weight | Line Height | Letter Spacing | OT Features | Notes |
|---|---|---|---|---|---|---|---|
| Display Hero | Telka Extended | 80px | 900 | 1.0 | -0.03em | kern liga | Major launch / campaign hero |
| Display Large | Telka Extended | 56px | 900 | 1.05 | -0.02em | kern liga | Section opener |
| H1 | Telka Extended | 48px | 900 | 1.05 | -0.02em | liga | Homepage hero — the signature |
| H2 | Telka Extended | 32px | 700 | 1.15 | -0.012em | liga | Major section heading |
| H3 | Telka Extended | 24px | 600 | 1.25 | -0.005em | — | Sub-section heading |
| H4 | Telka Extended | 20px | 600 | 1.3 | normal | — | Card heading |
| H5 | Telka | 16px | 600 | 1.4 | normal | — | Inline emphasis |
| Eyebrow | Telka | 12px | 600 | 1.4 | 0.06em | uppercase | Section pre-label |
| Body Large | Telka | 18px | 300 | 1.55 | normal | — | Lede paragraph |
| Body | Telka | 16px | 300 | 1.55 | normal | — | Default body |
| Body Small | Telka | 14px | 300 | 1.5 | normal | — | Compact UI body |
| Label | Telka | 13px | 500 | 1.4 | normal | — | UI labels, chips, buttons |
| Caption | Telka | 12px | 500 | 1.4 | 0.02em | — | Image captions, helper |
| Caption Tabular | mono | 12px | 500 | 1.4 | normal | tnum | Clip duration, dimensions |
| Code | mono | 13px | 400 | 1.55 | normal | tnum | Prompt params, seeds |

### Principles

- **The 900-vs-300 weight contrast is the brand statement.** Telka Extended at weight 900 for display and Telka at weight 300 for body is the single most identifying typographic move. The fat headline carries all the energy; the feather body keeps the page relaxed.
- **Display always uses the Extended cut.** Headlines (h1–h4) are Telka *Extended*; body and labels are regular Telka. Don't set a headline in the regular width — the poster character collapses.
- **Negative tracking scales with size.** -0.03em at 80px, -0.02em at 48px, easing to normal by 20px and below. Big type tightens; small type stays open.
- **Body stays light (300).** Telka at 300 is the brand's reading weight; bumping body to 400+ loses the relaxed, airy feel. Reserve 500 for labels and buttons where legibility at small sizes matters.
- **Eyebrows are 12px / 600 / uppercase / 0.06em.** A compact, slightly-tracked pre-label sets section context without competing with the 900 headline.
- **Mono only for data.** Clip durations (`0:08`), dimensions (`1280×720`), seeds, and prompt parameters — never UI chrome or button labels.
- **No italics in display.** Italics belong to citations and image captions in body copy.
- **Line length capped at 720px.** On text pages running copy never exceeds the prose width; studio and gallery views bleed wider for the work.

## 4. Component Stylings

### Buttons

**Primary (Peach Invitation)**
- Background: `#ffd184` peach. Text: `#222222`, Telka 500 / 15px.
- Padding: `10px 18px`. Radius: `18px`. No border.
- Hover: bg → `#f5be63`; transition `240ms ease-standard`.
- Active: slight 0.98× press; bg holds `#f5be63`.
- Focus: 3px peach glow `rgba(255, 209, 132, 0.50)` with 2px offset.
- Use: Inviting primary CTA — *Sign Up, Get started, Join.*

**Generate (Black Do-It-Now)**
- Background: `#000000`. Text: `#ffffff`, Telka 500 / 15px.
- Padding: `10px 18px`. Radius: `18px`. No border.
- Hover: bg → `#1a1a1a`.
- Use: Decisive action CTA — *Generate, Render, Create.* The black pill is the moment of commitment.

**Dark Secondary (Near-Black)**
- Background: `#222222`. Text: `#ffffff`, Telka 500 / 15px.
- Padding: `10px 18px`. Radius: `18px`. No border.
- Hover: bg → `#000000`.
- Use: Supporting dark action — *Try on Web, Open app.*

**Ghost (Quiet Outline)**
- Background: transparent. Text: `#0d0d0d`, Telka 500 / 15px.
- Border: `1px solid rgba(13, 13, 13, 0.18)`. Padding: `10px 18px`. Radius: `18px`.
- Hover: bg → `rgba(13, 13, 13, 0.04)`; border → `rgba(13, 13, 13, 0.30)`.
- Use: Tertiary actions, nav, "Learn more" on cream.

### Cards

**Content Card**
- Background: `#ffffff`. Border: `1px solid rgba(13, 13, 13, 0.10)`. Radius: `16px`. Padding: `24px`.
- Shadow: `rgba(13, 13, 13, 0.05) 0 1px 2px` at rest; on hover `rgba(13, 13, 13, 0.08) 0 4px 16px`.
- Use: Feature card, pricing tier, blog entry — pure white lifting off the cream.

**Clip Tile (Gallery)**
- Background: `#f5f1ea` (placeholder ground while clip loads). Border: none. Radius: `16px`. Aspect: 16:9.
- Hover: 1.02× scale + `rgba(13, 13, 13, 0.12) 0 16px 40px -8px` soft shadow.
- Use: Generated-clip gallery — videos auto-loop muted, radius matches the card system.

**Inset Card**
- Background: `#fbf7f0`. Border: `1px solid rgba(13, 13, 13, 0.05)`. Radius: `12px`. Padding: `16px`.
- Use: Quiet info zone — tip callout, in-feed announcement on the cream.

### Badges, Tags, Pills

**Tag Chip** — bg `rgba(255, 209, 132, 0.30)` peach wash, text `#222222`, Telka 500 / 12px, padding `4px 12px`, radius `9999`. Hover deepens the wash to `0.40`.

**Neutral Chip** — bg `rgba(13, 13, 13, 0.06)`, text `#0d0d0d`, radius `9999`. Used for non-brand categories and filters.

**Eyebrow Label** — no chrome, just type. Telka 600 / 12px / uppercase / 0.06em tracking, colour `#5c5c5c`.

### Inputs / Forms

**Text Input**
- Background: `#ffffff`. Border: `1px solid rgba(13, 13, 13, 0.18)`. Radius: `8px`. Padding: `10px 14px`.
- Font: Telka 300 / 15px. Placeholder: `#8a8a8a`.
- Focus: `0 0 0 3px rgba(255, 209, 132, 0.50)` peach glow, border → `#0d0d0d`.
- Error: border → `#b91c1c`, helper red below.

**Prompt Input (Studio)**
- Background: `#ffffff`. Border: `1px solid rgba(13, 13, 13, 0.10)`. Radius: `18px`. Padding: `14px 16px 14px 20px`.
- Font: Telka 300 / 16px. Placeholder: `#8a8a8a`.
- Inner button: 40px black `#000000` circle with white arrow icon, hard-right.
- Focus: peach glow grows to 3px.
- Use: Studio entry — the wide rounded prompt box where you describe a clip.

### Navigation

- Header height `64px`. Background `#fcfaf7` (cream), `backdrop-filter: blur(10px)` + a `border-subtle` hairline on scroll.
- Logo: Pika wordmark in near-black `#0d0d0d`, Telka Extended.
- Nav links: Telka 500 / 15px, colour `#0d0d0d`, padding `8px 12px`. Hover: text → `#5c5c5c`.
- Right-side: ghost link cluster + peach "Sign Up" pill + (in-app) black "Generate" pill.
- Mobile (<640px): hamburger collapses to a full-screen cream sheet; links stack at 18px / 500.

### Optional Components

**Dropdown Menu** — bg `#ffffff`, border `rgba(13, 13, 13, 0.10)`, radius `12px`, shadow `rgba(13, 13, 13, 0.12) 0 16px 40px -8px`. Items: Telka 300 / 15px, hover bg `rgba(13, 13, 13, 0.04)`.

**Tooltip** — bg `#0d0d0d`, text `#ffffff`, radius `8px`, padding `6px 10px`, font `12px / 500`.

**Toast** — bg `#ffffff`, border `rgba(13, 13, 13, 0.10)`, radius `12px`, padding `12px 16px`, shadow `rgba(13, 13, 13, 0.12) 0 8px 24px -4px`.

**Modal** — bg `#ffffff`, radius `16px`, shadow `rgba(13, 13, 13, 0.20) 0 24px 64px -12px`, max-width `560px`. Backdrop: 40% black over the cream.

## 5. Layout Principles

### Spacing System

- **Base unit**: 4px.
- **Scale**: 0, 4, 8, 12, 16, 24, 32, 48, 64, 96, 128 — breezy but compact.
- **Density observation**: Pika is *medium-dense* at the chrome level (64–128px section rhythm) and *packed* at the gallery level (tight clip-tile grids). The marketing chrome breathes; the studio and gallery pack tiles edge to edge.

### Grid & Container

- **Page max width**: `1280px` — a comfortable centred frame, narrower than Krea's 1440 cinematic span.
- **Site gutter**: `clamp(20px, 5vw, 64px)` — generous on desktop, tight on mobile.
- **Grid**: 12 columns with 24px gutters.
- **Hero treatment**: 48px Telka Extended headline, 18px light body below, peach + black CTA pair, then the prompt box or demo-clip strip.

### Whitespace Philosophy

The whitespace is **warm and breezy**. Section gutters run 64–128px between major blocks; minor blocks sit on 32–64px gaps; intra-section spacing uses 16–32px. The cream canvas makes generous space feel inviting rather than empty — the warmth fills the gaps the way an off-white wall does in a sunlit room.

### Section Cadence

- Hero (cream, headline + CTA pair + prompt) → Feature ladder (cream, white cards) → Clip gallery (cream, packed 16:9 tile grid) → Pricing (cream, white tier cards) → CTA band → Footer (`#f5f1ea` warm inset).
- The whole site stays on the cream canvas; the only true dark fields are the black CTAs and the occasional clip thumbnail.
- Section breaks are vertical space plus occasional 1px `border-subtle` hairlines.

## 6. Shapes & Radius Scale

| Tier | Value | Use |
|---|---|---|
| Micro | 2px | Decorative dividers, icon-corner inheritance |
| Standard (sm) | 4px | Compact chips, tight tags |
| Comfortable (md) | 8px | Text inputs, small controls |
| Relaxed (lg) | 12px | Inset cards, dropdowns, toasts |
| Large (xl) | 16px | Content cards, clip tiles, modals |
| CTA | 18px | Buttons — Pika's signature rounded pill |
| Pill | 9999px | Tag chips, filter pills, avatar |

Pika's signature radius is **18px on buttons** — rounder than the 8px most SaaS uses, soft enough to feel playful, tight enough to stay crisp. Cards and clip tiles land at 16px; inputs at 8px; chips fully round at `9999px`. There are no zero-radius surfaces; the whole system reads soft and friendly, in keeping with the warm-light register.

## 7. Depth & Elevation

| Level | Treatment | Use |
|---|---|---|
| 0 | Flat — no shadow | Cream page canvas, hero, body sections |
| 1 | `rgba(13,13,13,0.05) 0 1px 2px` | Resting cards, chips |
| 2 | `rgba(13,13,13,0.08) 0 4px 16px` | Hover-lifted cards |
| 3 | `rgba(13,13,13,0.12) 0 16px 40px -8px` | Clip tile hover, dropdowns, popovers |
| 4 | `rgba(13,13,13,0.20) 0 24px 64px -12px` | Modals, dialogs |

### Shadow Philosophy

Pika's depth is **soft, neutral, and low-opacity**. The cream canvas wants gentle lift, so cards float a few pixels above the ground with near-black shadows at 5–20% opacity and wide blur — a soft drop, never a hard edge. The primary elevation cue is a pure-white card surface against the warm cream, so most separation reads as the value step (`#fcfaf7` → `#ffffff`) before the shadow even registers. The brand never tints shadows with the peach — warmth lives in fills, shadows stay neutral grey-black.

## 8. Interaction & Motion

### Easing Curves

- **`ease-standard`**: `cubic-bezier(0.4, 0, 0.2, 1)` — default for hover, focus, colour transitions.
- **`ease-emphasized`**: `cubic-bezier(0.2, 0, 0, 1)` — punchier exit; modal enter, hero reveal.
- **`ease-bounce`**: `cubic-bezier(0.34, 1.56, 0.64, 1)` — a slight overshoot for playful moments (CTA press-release, chip add). Used sparingly to match the friendly register.

### Duration Buckets

- **Fast (150ms)** — colour transitions, focus rings, link hovers.
- **Standard (240ms)** — button hover, card hover, dropdown reveal.
- **Slow (320ms)** — modal enter/exit, section fade-in, clip-tile reveal.

### Per-Component Micro-States

- **Button hover (peach)**: bg `#ffd184` → `#f5be63` over 240ms; no transform.
- **Button hover (black/dark)**: bg `#000000` → `#1a1a1a` (or `#222` → `#000`) over 240ms.
- **Button press**: 0.98× scale with `ease-bounce` on release.
- **Card hover**: shadow level 1 → 2 over 240ms; no border change.
- **Clip tile hover**: scale 1.02× over 240ms + level-3 soft shadow; clip plays.
- **Link hover**: colour `#0d0d0d` → `#000000` over 150ms; underline thickens.
- **Input focus**: 3px peach glow fades in over 150ms; border picks up `#0d0d0d`.

### Page Transitions

Demo clips auto-play loops with `prefers-reduced-motion` honoured (they pause to a poster frame). Below-fold sections use `IntersectionObserver` to fade in at 80% viewport, 320ms, 12px translate-up.

### Reduced Motion

`@media (prefers-reduced-motion: reduce)` — looping demo clips pause and show a static poster; all transforms (scale, bounce, translate) collapse to opacity-only; durations halve.

## 9. Accessibility & A11y

### Contrast Pairs

- **`#0d0d0d` text on `#fcfaf7` cream bg**: 18.9:1 — AAA at all sizes.
- **`#5c5c5c` muted on `#fcfaf7` bg**: 7.0:1 — AAA at body sizes.
- **`#8a8a8a` soft on `#fcfaf7` bg**: 3.9:1 — AA large only; reserve for placeholders, not running copy.
- **`#222222` text on `#ffd184` peach CTA**: 8.9:1 — AAA at body sizes; safe for the peach button.
- **`#ffffff` text on `#000000` generate CTA**: 21.0:1 — AAA at all sizes.
- **`#ffffff` text on `#222222` dark CTA**: 15.9:1 — AAA at all sizes.
- **`#0d0d0d` text on `#ffffff` card**: 20.1:1 — AAA at all sizes.

### Focus Indicators

- Default ring: 3px peach glow `rgba(255, 209, 132, 0.50)` with 2px offset.
- On pure-white surfaces where the peach glow lacks contrast, fall back to a 2px solid `#0d0d0d` outline.
- All interactive surfaces show a visible focus state.

### ARIA Patterns

- **Navigation**: `<nav aria-label="Main">` with skip-link to `#main-content`.
- **Studio prompt**: `<form aria-label="Describe your video">` with `aria-label` on the input and the black send button.
- **Clip gallery**: `aria-label="Generated video gallery"`; each clip has `aria-label` matching its prompt caption.
- **Dialog**: `role="dialog" aria-modal="true" aria-labelledby` with focus trap and Esc-to-close.
- **Live regions**: `aria-live="polite"` for generation-status messages ("Generating…", "Done").

### Keyboard Navigation

- Tab order: skip-link → masthead nav → primary CTA → hero prompt → gallery → footer.
- Arrow keys navigate within the clip grid; Space/Enter activates a tile.
- `Esc` closes dropdowns and modals.

### Screen Reader Hints

- Decorative looping background clips with no semantic content: `aria-hidden="true"`.
- Generated clips carry an `aria-label` matching the prompt that produced them.
- Icon-only buttons (the black send arrow) carry an `aria-label`.

### Reduced Motion

Honoured globally. Demo clips pause to a poster frame; tile-scale and bounce hovers disabled; durations halved.

## 10. Responsive Behavior

### Breakpoints

| Name | Width | Use |
|---|---|---|
| Mobile | < 640px | Single-column, stacked CTAs, full-bleed clip tiles |
| Tablet | 640–1024px | 2-column tile grid, condensed nav |
| Desktop | 1024–1280px | 3-column tile grid, full nav |
| Wide | 1280–1536px | Page locks at 1280px; gutters expand |
| Ultra | > 1536px | Centred 1280px frame; cream fills the margins |

### Touch Targets

- Minimum tap target: 44×44px.
- CTA pills: 44px minimum height on mobile; the peach + black pair stacks vertically below 640px.
- Clip tile: the full tile is the tap target; controls reveal on tap.

### Collapsing Strategy

- **Header**: full nav at ≥1024px; hamburger sheet below.
- **Hero**: 48px → 40px → 32px headline across desktop/tablet/mobile.
- **CTA pair**: side-by-side ≥640px; stacked full-width below.
- **Tile grid**: 3-up → 2-up → 1-up across sizes.
- **Section spacing**: 128px → 96px → 64px across sizes.

### Image Behavior

- Demo clips use `<video autoplay muted loop playsinline>` with a poster frame for `prefers-reduced-motion`.
- Static images use `srcset` with breakpoint-derived sizes; native lazy-loading.
- Aspect ratio is locked at 16:9 for clip tiles; cards size to content.

### Container Queries

Used inside feature cards to switch icon-left vs. icon-top layout when card width crosses 320px.

## 11. Content & Voice

### Tone

**Playful, warm, and direct.** Pika writes like a friendly creative collaborator, not a control panel — short, energetic sentences, an occasional exclamation, and verbs that invite making. The 900-weight headlines back up a confident, upbeat voice; the copy positions Pika as a fun, fast way to make video, not an intimidating professional suite.

### Microcopy Patterns

- **Button verbs**: "Sign Up," "Generate," "Try on Web," "Create," "Remix," "Share." Action-first and short.
- **Error messages**: "That didn't render. Try a different prompt, or [contact support]." — friendly, never blaming.
- **Success confirmations**: "Your video's ready." "Saved to your library." Brief and warm.
- **Loading states**: "Generating your video…" with a soft progress indicator.

### Empty States

- *"No videos yet. Describe something and hit Generate."* — explain, offer the next step.
- *"Nothing matches that search."* — search empty.
- Encouraging, never apologetic — empty is a starting point, not a failure.

### CTA Verb Conventions

- Primary (peach): "Sign Up," "Get started," "Join"
- Action (black): "Generate," "Create," "Render"
- Secondary (dark/ghost): "Try on Web," "Watch the demo," "See examples"
- Footer: "Pricing," "Discord," "Careers," "API"

The voice is **invitational with creative energy** — describe it, generate it, remix it. The warmth of the cream canvas is matched by the warmth of the copy.

## 12. Dark Mode & Theming

**Light-only — no dark variant offered.** The cream canvas `#fcfaf7` is the brand surface across the entire marketing site and the web studio. There is no `prefers-color-scheme: dark` inversion; the only true dark fields on the page are the black `#000000` "Generate" pill, the near-black `#222222` "Try on Web" pill, and the occasional dark clip thumbnail.

This is a deliberate identity choice, not an omission. The warmth of the off-white ground and the peach accent are the brand — a dark inversion would lose both. If a low-light reading mode is ever needed, it should warm-shift (a deep warm charcoal, not a cold `#000`) and keep the peach accent intact, rather than flip to a Krea-style absolute-black gallery. For now: the single rule is that Pika lives on cream.

## 13. Lineage & Influences

Pika's design DNA is **warm-minimal canvas + fat-weight display poster typography + a friendly, rounded pill grammar**. It sits in the playful-AI lineage rather than the austere-AI one: where Krea commits to absolute black and Swiss restraint, Pika reaches for a warm cream room, a chunky 900-weight custom grotesque, and rounded peach-and-black CTAs that read like a creative toy box. The off-white `#fcfaf7` canvas borrows the "intentional, not default-white" philosophy that Vercel's `#fafafa` and Notion's warm surfaces popularised, but pushes it warmer and pairs it with energy rather than calm. The two-CTA grammar — soft peach invitation beside hard black action — is the brand's most distinctive structural decision.

What it inherits: the warm off-white canvas as a signal of "a person designed this on purpose" (Vercel, Notion); a single custom display typeface carrying brand personality (Stripe-era marketing polish ported onto a playful register); rounded, friendly geometry over hard corners. What it borrows from contemporaries: the clip-tile gallery hero pattern common to the creative-AI category. What it rejects: the dark-mode-first, absolute-black gallery aesthetic of Krea and the cold blue-on-clinical-white of enterprise SaaS — Pika is warm, light, and rounded by deliberate contrast.

**Named influences:**

- **Vercel** — the off-white "intentional, not pure-white" canvas philosophy and near-black-on-near-white type discipline; Pika warms the same idea toward cream. *https://vercel.com*
- **Notion** — warm off-white surface as a deliberate signal of approachability over clinical enterprise white. *https://notion.so*
- **Stripe** — single-typeface-carries-the-brand polish; the marketing-grade craft of a custom display face. *https://stripe.com*
- **Krea** — the adjacent creative-AI peer Pika defines itself against; the clip-tile gallery pattern shared, the dark-gallery aesthetic deliberately inverted to warm-light. *https://www.krea.ai*
- **Linear** — restrained, considered chrome and the discipline of a tight token system underneath the playful surface. *https://linear.app*

## 14. Do's and Don'ts

### Do

- **Do** keep the canvas at warm cream `#fcfaf7`. The off-white warmth is the brand; never flatten it to clinical `#ffffff`.
- **Do** set display in Telka Extended at weight **900**. The chunky poster headline is the signature.
- **Do** run body copy in Telka at a light **300** weight — the 900-vs-300 contrast is the core typographic tension.
- **Do** use the two-CTA grammar: peach `#ffd184` for the inviting action, black `#000000` for the do-it-now action.
- **Do** keep CTA radius at **18px** — Pika's signature rounded pill.
- **Do** put dark text `#222222` on the peach button; peach is too light for white text.
- **Do** lift cards with pure-white `#ffffff` fills and soft, low-opacity neutral shadows.
- **Do** keep section rhythm at 64–128px — breezy and warm, not austere.
- **Do** use the peach as the only warm chroma; let the work carry the colour.
- **Do** keep the voice playful, warm, and action-first.

### Don't

- **Don't** ship a dark mode. Pika is light-only; an absolute-black inversion loses the warm identity.
- **Don't** set body copy heavier than 300 — Telka loses its relaxed, airy feel.
- **Don't** set headlines in regular Telka; the Extended cut is what makes them poster-like.
- **Don't** put white text on the peach button — contrast fails; use `#222222`.
- **Don't** use the peach as a large background fill; it stays in CTAs and small wash accents.
- **Don't** flatten the canvas to clinical `#ffffff` — the cream warmth is the brand.
- **Don't** square off the CTAs to 8px; the 18px rounding is the friendly signature.
- **Don't** tint shadows with peach; shadows stay neutral grey-black.
- **Don't** introduce a cold info-blue; Pika's semantic palette stays warm and neutral.
- **Don't** apologise in microcopy — empty states are starting points, not failures.

## 15. Agent Prompt Guide

### Quick Color Reference

```
bg: #fcfaf7
bg-alt: #f5f1ea
surface: #ffffff
text: #0d0d0d
text-strong: #000000
text-muted: #5c5c5c
brand (peach CTA): #ffd184
on-brand (text on peach): #222222
ink-cta-bg (black Generate): #000000
dark-cta-bg (Try on Web): #222222
border: rgba(13, 13, 13, 0.10)
```

### Example Component Prompts

1. **"Create a Pika-style hero — warm cream `#fcfaf7` canvas, 48px headline in Telka Extended weight **900** near-black `#0d0d0d` with -0.02em tracking, 18px light body (Telka 300) in `#5c5c5c` below. Below the copy, two rounded 18px CTA pills side by side: a peach `#ffd184` 'Sign Up' with dark `#222222` text, and a black `#000000` 'Generate' with white text."**

2. **"Design a Pika prompt box — pure-white `#ffffff` field on cream, `1px rgba(13,13,13,0.10)` border, 18px radius, 14px×16px×14px×20px padding, placeholder in `#8a8a8a` Telka 300 / 16px. A 40px black `#000000` circle with a white arrow icon sits hard-right. Focus shows a 3px peach glow."**

3. **"Build a Pika feature card — pure-white `#ffffff` background lifting off the cream, `1px rgba(13,13,13,0.10)` border, 16px radius, 24px padding, 20px Telka Extended 600 heading in `#0d0d0d`, 16px Telka 300 body in `#5c5c5c`. Soft `rgba(13,13,13,0.05) 0 1px 2px` shadow at rest, deepening on hover."**

4. **"Compose a Pika nav — 64px header on cream `#fcfaf7`, wordmark hard-left in Telka Extended near-black. Link list Telka 500 / 15px `#0d0d0d` with `#5c5c5c` hover. Right-side: a ghost-outline link cluster plus a peach `#ffd184` 'Sign Up' pill at 18px radius with dark text."**

5. **"Render a Pika clip-tile gallery — 3-column 16:9 grid on cream, each tile a 16px-radius rounded frame with `#f5f1ea` placeholder ground, video bleeding to edge and auto-looping muted. Hover scales 1.02× with a soft `rgba(13,13,13,0.12) 0 16px 40px -8px` shadow. Prompt caption below in Telka 300 / 12px `#5c5c5c`."**

6. **"Create a Pika CTA band — full-width cream `#fcfaf7` section, 56px Telka Extended 900 headline centred in `#0d0d0d`, 18px Telka 300 subhead in `#5c5c5c`, and a single black `#000000` 'Generate' pill (white text, 18px radius) below."**

### Iteration Guide

1. **Start with cream `#fcfaf7`.** If the bg is pure `#ffffff` or a cold grey, you've lost the brand. The warm off-white is the entry ticket.
2. **Set the headline in Telka Extended at 900.** If it's a regular-width or medium-weight headline, the poster character collapses. Fat-weight Extended is the signature.
3. **Drop body to weight 300.** The 900-vs-300 contrast is the core tension; a 400+ body reads heavier and less playful.
4. **Use both CTA codes.** Peach `#ffd184` invites, black `#000000` commits. If everything is one colour, the two-CTA grammar is missing.
5. **Round the buttons to 18px.** 8px reads SaaS-generic; 18px is Pika's friendly pill.
6. **Put `#222222` text on the peach.** White on peach fails contrast — dark ink is mandatory on the peach fill.
7. **Keep shadows soft and neutral.** Near-black at 5–12% opacity, wide blur — never a hard edge, never peach-tinted.
8. **Warm the voice.** Replace "Render output" with "Generate your video"; keep copy action-first and friendly.
Prose

1. Visual Theme & Atmosphere

Pika opens as a warm, sunlit room. The canvas is a cream off-white #fcfaf7 — not the clinical #ffffff of an enterprise dashboard, not the absolute #000 of a gallery-AI tool, but a soft paper white with a faint warm cast that reads “approachable” before a single word is processed. Against that cream ground the headline sits in near-black #0d0d0d, set in Telka Extended — a wide, custom geometric grotesque — at 48px / weight 900. The fat display weight is the brand’s loudest move: where Krea refuses to bold and trusts Swiss restraint, Pika does the opposite, leaning into a chunky, confident, almost editorial-poster headline that gives the playful-AI register its punch.

The defining structural decision is the two-CTA grammar. Pika ships two differently-coded primary actions side by side: a soft peach #ffd184 pill with dark text for the inviting action (“Sign Up”, “Get started”), and a hard black #000000 pill with white text for the do-it-now action (“Generate”). A third near-black #222222 pill carries supporting actions (“Try on Web”). All three share the same generous 18px radius — rounder than the 8px most SaaS uses, soft enough to feel friendly, tight enough to stay crisp. The peach-vs-black pairing is instantly recognisable from a thumbnail: warm invitation next to decisive black.

The body copy runs Telka at a light 300 weight, which is the counterweight to the 900 display. The contrast between feather-light body and ultra-bold headline is the page’s core typographic tension — relaxed and unhurried in the running text, emphatic and poster-like in the titles. There are no gradients fighting the cream, no neon, no dark-mode drama. The warmth comes from the canvas tint and the peach accent; the energy comes from the weight contrast and the rounded pills.

The atmospheric vocabulary: cream-canvas, warm-light, Telka-Extended-900, feather-300-body, peach-and-black, rounded-18px-pills, playful-confident, two-CTA-grammar, poster-headline, sunlit-studio. Section rhythm runs 64–128px between blocks — slightly tighter than a gallery hang, breezy rather than austere. Cards lift off the cream with pure-white fills and soft low-opacity shadows; the depth is gentle, never heavy. The whole effect is an AI video tool that feels like a creative toy box rather than a control panel.

Key Characteristics

  • Cream off-white canvas #fcfaf7 — warm paper, not clinical white
  • Telka Extended display at 48px / weight 900 — chunky poster headlines
  • Telka body at light 300 weight — feather-light running text, big weight contrast
  • Two-CTA grammar — peach #ffd184 invitation + black #000 do-it-now
  • 18px CTA radius — rounded, friendly pills (rounder than 8px SaaS default)
  • Near-black ink #0d0d0d as primary text, absolute #000 for max emphasis
  • Peach accent #ffd184 is the only warm chroma in an otherwise neutral page
  • Pure-white cards lift off the cream with soft, low-opacity shadows
  • Light-only — no dark variant; the cream is the brand surface
  • Playful-warm register — creative toy box, not enterprise control panel

2. Color Palette & Roles

Primary

  • bg #fcfaf7 — cream off-white gallery canvas; the warm paper ground (rgb 252, 250, 247).
  • text #0d0d0d — near-black display + body ink; the primary value contrast on cream (rgb 13, 13, 13).
  • text-strong #000000 — absolute black for max-emphasis headings and the generate CTA fill.
  • bg-alt #f5f1ea — one warm step down for inset bands and clip-tile placeholders.

Brand & Accent

  • brand #ffd184 — peach; the primary invitation CTA fill and the only warm chroma on the page (rgb 255, 209, 132).
  • brand-deep #f5be63 — pressed / active peach for the hover state.
  • brand-soft rgba(255, 209, 132, 0.30) — peach wash for highlight pills, selection, and the focus glow.
  • on-brand #222222 — dark ink that sits on the peach button (rgb 34, 34, 34).

Interactive (the CTA family)

  • ink-cta-bg #000000 — black “Generate” pill; the decisive do-it-now action.
  • ink-cta-text #ffffff — white text on the black / dark pills.
  • dark-cta-bg #222222 — near-black “Try on Web” pill; supporting dark action (rgb 34, 34, 34).
  • link #0d0d0d — links use the near-black ink, underlined for affordance.
  • link-hover #000000 — deepens to absolute black on hover.
  • selected-bg rgba(255, 209, 132, 0.30) — peach-wash selection / active chip.
  • disabled #b8b8b8 — neutral disabled chrome.

Neutral Scale

  • text #0d0d0d — near-black ink (rgb 13, 13, 13).
  • text-muted #5c5c5c — muted grey for captions and secondary copy.
  • text-soft #8a8a8a — quietest labels, placeholders, meta.
  • text-faint #b8b8b8 — disabled text, faint dividers.

Surface & Borders

  • surface-0 (page)#fcfaf7 cream canvas.
  • surface-1 (inset band)#f5f1ea warm step-down.
  • surface-2 (card)#ffffff pure white, lifting off the cream.
  • surface-soft#fbf7f0 softest panel, barely off the canvas.
  • border rgba(13, 13, 13, 0.10) — 10% near-black hairline, the default rule on cream.
  • border-strong rgba(13, 13, 13, 0.18) — emphasized rule on inputs and dividers.
  • border-subtle rgba(13, 13, 13, 0.05) — quietest division.

Shadow Colors

Shadows on Pika are near-black, very-low-opacity, and soft. The cream canvas wants gentle depth, so cards lift with rgba(13, 13, 13, 0.05–0.12) at wide blur radii — a soft drop rather than a hard edge. The brand never tints shadows with the peach; the warmth stays in fills, the shadows stay neutral. Most depth is read as a pure-white card floating a few pixels above the cream, not as a heavy cast.

Semantic

  • success — bg rgba(34, 197, 94, 0.12), text #15803d (green-700).
  • warning — bg rgba(245, 190, 99, 0.20), text #92600c (amber-800) — borrows the peach family at low saturation.
  • danger — bg rgba(220, 38, 38, 0.10), text #b91c1c (red-700).
  • info — bg rgba(13, 13, 13, 0.06), text #0d0d0d — neutral on the warm-light page; Pika doesn’t introduce a cold info-blue.

Note: semantic text uses 700–800 step colours so it stays AA-legible against the bright cream ground while keeping the warm, calm register. Saturated 500s would feel loud on the paper.

3. Typography Rules

Font Family

  • Display: telkaExtended, telka, system-ui, -apple-system, sans-serif — Telka Extended, the wide cut of Pika’s custom geometric grotesque, carries every headline. The extended width plus weight 900 is the brand’s poster signature.
  • Body: telka, system-ui, -apple-system, sans-serif — Telka regular-width at a light 300 weight sets all running copy; the feather-light body is the deliberate counterweight to the 900 display.
  • Mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace — for prompt parameters, durations, dimensions, seed values, and rare inline code.
  • OpenType features: kern and liga always on; tnum (tabular figures) in mono for clip durations and dimensions.

Hierarchy

RoleFontSizeWeightLine HeightLetter SpacingOT FeaturesNotes
Display HeroTelka Extended80px9001.0-0.03emkern ligaMajor launch / campaign hero
Display LargeTelka Extended56px9001.05-0.02emkern ligaSection opener
H1Telka Extended48px9001.05-0.02emligaHomepage hero — the signature
H2Telka Extended32px7001.15-0.012emligaMajor section heading
H3Telka Extended24px6001.25-0.005emSub-section heading
H4Telka Extended20px6001.3normalCard heading
H5Telka16px6001.4normalInline emphasis
EyebrowTelka12px6001.40.06emuppercaseSection pre-label
Body LargeTelka18px3001.55normalLede paragraph
BodyTelka16px3001.55normalDefault body
Body SmallTelka14px3001.5normalCompact UI body
LabelTelka13px5001.4normalUI labels, chips, buttons
CaptionTelka12px5001.40.02emImage captions, helper
Caption Tabularmono12px5001.4normaltnumClip duration, dimensions
Codemono13px4001.55normaltnumPrompt params, seeds

Principles

  • The 900-vs-300 weight contrast is the brand statement. Telka Extended at weight 900 for display and Telka at weight 300 for body is the single most identifying typographic move. The fat headline carries all the energy; the feather body keeps the page relaxed.
  • Display always uses the Extended cut. Headlines (h1–h4) are Telka Extended; body and labels are regular Telka. Don’t set a headline in the regular width — the poster character collapses.
  • Negative tracking scales with size. -0.03em at 80px, -0.02em at 48px, easing to normal by 20px and below. Big type tightens; small type stays open.
  • Body stays light (300). Telka at 300 is the brand’s reading weight; bumping body to 400+ loses the relaxed, airy feel. Reserve 500 for labels and buttons where legibility at small sizes matters.
  • Eyebrows are 12px / 600 / uppercase / 0.06em. A compact, slightly-tracked pre-label sets section context without competing with the 900 headline.
  • Mono only for data. Clip durations (0:08), dimensions (1280×720), seeds, and prompt parameters — never UI chrome or button labels.
  • No italics in display. Italics belong to citations and image captions in body copy.
  • Line length capped at 720px. On text pages running copy never exceeds the prose width; studio and gallery views bleed wider for the work.

4. Component Stylings

Buttons

Primary (Peach Invitation)

  • Background: #ffd184 peach. Text: #222222, Telka 500 / 15px.
  • Padding: 10px 18px. Radius: 18px. No border.
  • Hover: bg → #f5be63; transition 240ms ease-standard.
  • Active: slight 0.98× press; bg holds #f5be63.
  • Focus: 3px peach glow rgba(255, 209, 132, 0.50) with 2px offset.
  • Use: Inviting primary CTA — Sign Up, Get started, Join.

Generate (Black Do-It-Now)

  • Background: #000000. Text: #ffffff, Telka 500 / 15px.
  • Padding: 10px 18px. Radius: 18px. No border.
  • Hover: bg → #1a1a1a.
  • Use: Decisive action CTA — Generate, Render, Create. The black pill is the moment of commitment.

Dark Secondary (Near-Black)

  • Background: #222222. Text: #ffffff, Telka 500 / 15px.
  • Padding: 10px 18px. Radius: 18px. No border.
  • Hover: bg → #000000.
  • Use: Supporting dark action — Try on Web, Open app.

Ghost (Quiet Outline)

  • Background: transparent. Text: #0d0d0d, Telka 500 / 15px.
  • Border: 1px solid rgba(13, 13, 13, 0.18). Padding: 10px 18px. Radius: 18px.
  • Hover: bg → rgba(13, 13, 13, 0.04); border → rgba(13, 13, 13, 0.30).
  • Use: Tertiary actions, nav, “Learn more” on cream.

Cards

Content Card

  • Background: #ffffff. Border: 1px solid rgba(13, 13, 13, 0.10). Radius: 16px. Padding: 24px.
  • Shadow: rgba(13, 13, 13, 0.05) 0 1px 2px at rest; on hover rgba(13, 13, 13, 0.08) 0 4px 16px.
  • Use: Feature card, pricing tier, blog entry — pure white lifting off the cream.

Clip Tile (Gallery)

  • Background: #f5f1ea (placeholder ground while clip loads). Border: none. Radius: 16px. Aspect: 16:9.
  • Hover: 1.02× scale + rgba(13, 13, 13, 0.12) 0 16px 40px -8px soft shadow.
  • Use: Generated-clip gallery — videos auto-loop muted, radius matches the card system.

Inset Card

  • Background: #fbf7f0. Border: 1px solid rgba(13, 13, 13, 0.05). Radius: 12px. Padding: 16px.
  • Use: Quiet info zone — tip callout, in-feed announcement on the cream.

Badges, Tags, Pills

Tag Chip — bg rgba(255, 209, 132, 0.30) peach wash, text #222222, Telka 500 / 12px, padding 4px 12px, radius 9999. Hover deepens the wash to 0.40.

Neutral Chip — bg rgba(13, 13, 13, 0.06), text #0d0d0d, radius 9999. Used for non-brand categories and filters.

Eyebrow Label — no chrome, just type. Telka 600 / 12px / uppercase / 0.06em tracking, colour #5c5c5c.

Inputs / Forms

Text Input

  • Background: #ffffff. Border: 1px solid rgba(13, 13, 13, 0.18). Radius: 8px. Padding: 10px 14px.
  • Font: Telka 300 / 15px. Placeholder: #8a8a8a.
  • Focus: 0 0 0 3px rgba(255, 209, 132, 0.50) peach glow, border → #0d0d0d.
  • Error: border → #b91c1c, helper red below.

Prompt Input (Studio)

  • Background: #ffffff. Border: 1px solid rgba(13, 13, 13, 0.10). Radius: 18px. Padding: 14px 16px 14px 20px.
  • Font: Telka 300 / 16px. Placeholder: #8a8a8a.
  • Inner button: 40px black #000000 circle with white arrow icon, hard-right.
  • Focus: peach glow grows to 3px.
  • Use: Studio entry — the wide rounded prompt box where you describe a clip.
  • Header height 64px. Background #fcfaf7 (cream), backdrop-filter: blur(10px) + a border-subtle hairline on scroll.
  • Logo: Pika wordmark in near-black #0d0d0d, Telka Extended.
  • Nav links: Telka 500 / 15px, colour #0d0d0d, padding 8px 12px. Hover: text → #5c5c5c.
  • Right-side: ghost link cluster + peach “Sign Up” pill + (in-app) black “Generate” pill.
  • Mobile (<640px): hamburger collapses to a full-screen cream sheet; links stack at 18px / 500.

Optional Components

Dropdown Menu — bg #ffffff, border rgba(13, 13, 13, 0.10), radius 12px, shadow rgba(13, 13, 13, 0.12) 0 16px 40px -8px. Items: Telka 300 / 15px, hover bg rgba(13, 13, 13, 0.04).

Tooltip — bg #0d0d0d, text #ffffff, radius 8px, padding 6px 10px, font 12px / 500.

Toast — bg #ffffff, border rgba(13, 13, 13, 0.10), radius 12px, padding 12px 16px, shadow rgba(13, 13, 13, 0.12) 0 8px 24px -4px.

Modal — bg #ffffff, radius 16px, shadow rgba(13, 13, 13, 0.20) 0 24px 64px -12px, max-width 560px. Backdrop: 40% black over the cream.

5. Layout Principles

Spacing System

  • Base unit: 4px.
  • Scale: 0, 4, 8, 12, 16, 24, 32, 48, 64, 96, 128 — breezy but compact.
  • Density observation: Pika is medium-dense at the chrome level (64–128px section rhythm) and packed at the gallery level (tight clip-tile grids). The marketing chrome breathes; the studio and gallery pack tiles edge to edge.

Grid & Container

  • Page max width: 1280px — a comfortable centred frame, narrower than Krea’s 1440 cinematic span.
  • Site gutter: clamp(20px, 5vw, 64px) — generous on desktop, tight on mobile.
  • Grid: 12 columns with 24px gutters.
  • Hero treatment: 48px Telka Extended headline, 18px light body below, peach + black CTA pair, then the prompt box or demo-clip strip.

Whitespace Philosophy

The whitespace is warm and breezy. Section gutters run 64–128px between major blocks; minor blocks sit on 32–64px gaps; intra-section spacing uses 16–32px. The cream canvas makes generous space feel inviting rather than empty — the warmth fills the gaps the way an off-white wall does in a sunlit room.

Section Cadence

  • Hero (cream, headline + CTA pair + prompt) → Feature ladder (cream, white cards) → Clip gallery (cream, packed 16:9 tile grid) → Pricing (cream, white tier cards) → CTA band → Footer (#f5f1ea warm inset).
  • The whole site stays on the cream canvas; the only true dark fields are the black CTAs and the occasional clip thumbnail.
  • Section breaks are vertical space plus occasional 1px border-subtle hairlines.

6. Shapes & Radius Scale

TierValueUse
Micro2pxDecorative dividers, icon-corner inheritance
Standard (sm)4pxCompact chips, tight tags
Comfortable (md)8pxText inputs, small controls
Relaxed (lg)12pxInset cards, dropdowns, toasts
Large (xl)16pxContent cards, clip tiles, modals
CTA18pxButtons — Pika’s signature rounded pill
Pill9999pxTag chips, filter pills, avatar

Pika’s signature radius is 18px on buttons — rounder than the 8px most SaaS uses, soft enough to feel playful, tight enough to stay crisp. Cards and clip tiles land at 16px; inputs at 8px; chips fully round at 9999px. There are no zero-radius surfaces; the whole system reads soft and friendly, in keeping with the warm-light register.

7. Depth & Elevation

LevelTreatmentUse
0Flat — no shadowCream page canvas, hero, body sections
1rgba(13,13,13,0.05) 0 1px 2pxResting cards, chips
2rgba(13,13,13,0.08) 0 4px 16pxHover-lifted cards
3rgba(13,13,13,0.12) 0 16px 40px -8pxClip tile hover, dropdowns, popovers
4rgba(13,13,13,0.20) 0 24px 64px -12pxModals, dialogs

Shadow Philosophy

Pika’s depth is soft, neutral, and low-opacity. The cream canvas wants gentle lift, so cards float a few pixels above the ground with near-black shadows at 5–20% opacity and wide blur — a soft drop, never a hard edge. The primary elevation cue is a pure-white card surface against the warm cream, so most separation reads as the value step (#fcfaf7#ffffff) before the shadow even registers. The brand never tints shadows with the peach — warmth lives in fills, shadows stay neutral grey-black.

8. Interaction & Motion

Easing Curves

  • ease-standard: cubic-bezier(0.4, 0, 0.2, 1) — default for hover, focus, colour transitions.
  • ease-emphasized: cubic-bezier(0.2, 0, 0, 1) — punchier exit; modal enter, hero reveal.
  • ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1) — a slight overshoot for playful moments (CTA press-release, chip add). Used sparingly to match the friendly register.

Duration Buckets

  • Fast (150ms) — colour transitions, focus rings, link hovers.
  • Standard (240ms) — button hover, card hover, dropdown reveal.
  • Slow (320ms) — modal enter/exit, section fade-in, clip-tile reveal.

Per-Component Micro-States

  • Button hover (peach): bg #ffd184#f5be63 over 240ms; no transform.
  • Button hover (black/dark): bg #000000#1a1a1a (or #222#000) over 240ms.
  • Button press: 0.98× scale with ease-bounce on release.
  • Card hover: shadow level 1 → 2 over 240ms; no border change.
  • Clip tile hover: scale 1.02× over 240ms + level-3 soft shadow; clip plays.
  • Link hover: colour #0d0d0d#000000 over 150ms; underline thickens.
  • Input focus: 3px peach glow fades in over 150ms; border picks up #0d0d0d.

Page Transitions

Demo clips auto-play loops with prefers-reduced-motion honoured (they pause to a poster frame). Below-fold sections use IntersectionObserver to fade in at 80% viewport, 320ms, 12px translate-up.

Reduced Motion

@media (prefers-reduced-motion: reduce) — looping demo clips pause and show a static poster; all transforms (scale, bounce, translate) collapse to opacity-only; durations halve.

9. Accessibility & A11y

Contrast Pairs

  • #0d0d0d text on #fcfaf7 cream bg: 18.9:1 — AAA at all sizes.
  • #5c5c5c muted on #fcfaf7 bg: 7.0:1 — AAA at body sizes.
  • #8a8a8a soft on #fcfaf7 bg: 3.9:1 — AA large only; reserve for placeholders, not running copy.
  • #222222 text on #ffd184 peach CTA: 8.9:1 — AAA at body sizes; safe for the peach button.
  • #ffffff text on #000000 generate CTA: 21.0:1 — AAA at all sizes.
  • #ffffff text on #222222 dark CTA: 15.9:1 — AAA at all sizes.
  • #0d0d0d text on #ffffff card: 20.1:1 — AAA at all sizes.

Focus Indicators

  • Default ring: 3px peach glow rgba(255, 209, 132, 0.50) with 2px offset.
  • On pure-white surfaces where the peach glow lacks contrast, fall back to a 2px solid #0d0d0d outline.
  • All interactive surfaces show a visible focus state.

ARIA Patterns

  • Navigation: <nav aria-label="Main"> with skip-link to #main-content.
  • Studio prompt: <form aria-label="Describe your video"> with aria-label on the input and the black send button.
  • Clip gallery: aria-label="Generated video gallery"; each clip has aria-label matching its prompt caption.
  • Dialog: role="dialog" aria-modal="true" aria-labelledby with focus trap and Esc-to-close.
  • Live regions: aria-live="polite" for generation-status messages (“Generating…”, “Done”).

Keyboard Navigation

  • Tab order: skip-link → masthead nav → primary CTA → hero prompt → gallery → footer.
  • Arrow keys navigate within the clip grid; Space/Enter activates a tile.
  • Esc closes dropdowns and modals.

Screen Reader Hints

  • Decorative looping background clips with no semantic content: aria-hidden="true".
  • Generated clips carry an aria-label matching the prompt that produced them.
  • Icon-only buttons (the black send arrow) carry an aria-label.

Reduced Motion

Honoured globally. Demo clips pause to a poster frame; tile-scale and bounce hovers disabled; durations halved.

10. Responsive Behavior

Breakpoints

NameWidthUse
Mobile< 640pxSingle-column, stacked CTAs, full-bleed clip tiles
Tablet640–1024px2-column tile grid, condensed nav
Desktop1024–1280px3-column tile grid, full nav
Wide1280–1536pxPage locks at 1280px; gutters expand
Ultra> 1536pxCentred 1280px frame; cream fills the margins

Touch Targets

  • Minimum tap target: 44×44px.
  • CTA pills: 44px minimum height on mobile; the peach + black pair stacks vertically below 640px.
  • Clip tile: the full tile is the tap target; controls reveal on tap.

Collapsing Strategy

  • Header: full nav at ≥1024px; hamburger sheet below.
  • Hero: 48px → 40px → 32px headline across desktop/tablet/mobile.
  • CTA pair: side-by-side ≥640px; stacked full-width below.
  • Tile grid: 3-up → 2-up → 1-up across sizes.
  • Section spacing: 128px → 96px → 64px across sizes.

Image Behavior

  • Demo clips use <video autoplay muted loop playsinline> with a poster frame for prefers-reduced-motion.
  • Static images use srcset with breakpoint-derived sizes; native lazy-loading.
  • Aspect ratio is locked at 16:9 for clip tiles; cards size to content.

Container Queries

Used inside feature cards to switch icon-left vs. icon-top layout when card width crosses 320px.

11. Content & Voice

Tone

Playful, warm, and direct. Pika writes like a friendly creative collaborator, not a control panel — short, energetic sentences, an occasional exclamation, and verbs that invite making. The 900-weight headlines back up a confident, upbeat voice; the copy positions Pika as a fun, fast way to make video, not an intimidating professional suite.

Microcopy Patterns

  • Button verbs: “Sign Up,” “Generate,” “Try on Web,” “Create,” “Remix,” “Share.” Action-first and short.
  • Error messages: “That didn’t render. Try a different prompt, or [contact support].” — friendly, never blaming.
  • Success confirmations: “Your video’s ready.” “Saved to your library.” Brief and warm.
  • Loading states: “Generating your video…” with a soft progress indicator.

Empty States

  • “No videos yet. Describe something and hit Generate.” — explain, offer the next step.
  • “Nothing matches that search.” — search empty.
  • Encouraging, never apologetic — empty is a starting point, not a failure.

CTA Verb Conventions

  • Primary (peach): “Sign Up,” “Get started,” “Join”
  • Action (black): “Generate,” “Create,” “Render”
  • Secondary (dark/ghost): “Try on Web,” “Watch the demo,” “See examples”
  • Footer: “Pricing,” “Discord,” “Careers,” “API”

The voice is invitational with creative energy — describe it, generate it, remix it. The warmth of the cream canvas is matched by the warmth of the copy.

12. Dark Mode & Theming

Light-only — no dark variant offered. The cream canvas #fcfaf7 is the brand surface across the entire marketing site and the web studio. There is no prefers-color-scheme: dark inversion; the only true dark fields on the page are the black #000000 “Generate” pill, the near-black #222222 “Try on Web” pill, and the occasional dark clip thumbnail.

This is a deliberate identity choice, not an omission. The warmth of the off-white ground and the peach accent are the brand — a dark inversion would lose both. If a low-light reading mode is ever needed, it should warm-shift (a deep warm charcoal, not a cold #000) and keep the peach accent intact, rather than flip to a Krea-style absolute-black gallery. For now: the single rule is that Pika lives on cream.

13. Lineage & Influences

Pika’s design DNA is warm-minimal canvas + fat-weight display poster typography + a friendly, rounded pill grammar. It sits in the playful-AI lineage rather than the austere-AI one: where Krea commits to absolute black and Swiss restraint, Pika reaches for a warm cream room, a chunky 900-weight custom grotesque, and rounded peach-and-black CTAs that read like a creative toy box. The off-white #fcfaf7 canvas borrows the “intentional, not default-white” philosophy that Vercel’s #fafafa and Notion’s warm surfaces popularised, but pushes it warmer and pairs it with energy rather than calm. The two-CTA grammar — soft peach invitation beside hard black action — is the brand’s most distinctive structural decision.

What it inherits: the warm off-white canvas as a signal of “a person designed this on purpose” (Vercel, Notion); a single custom display typeface carrying brand personality (Stripe-era marketing polish ported onto a playful register); rounded, friendly geometry over hard corners. What it borrows from contemporaries: the clip-tile gallery hero pattern common to the creative-AI category. What it rejects: the dark-mode-first, absolute-black gallery aesthetic of Krea and the cold blue-on-clinical-white of enterprise SaaS — Pika is warm, light, and rounded by deliberate contrast.

Named influences:

  • Vercel — the off-white “intentional, not pure-white” canvas philosophy and near-black-on-near-white type discipline; Pika warms the same idea toward cream. https://vercel.com
  • Notion — warm off-white surface as a deliberate signal of approachability over clinical enterprise white. https://notion.so
  • Stripe — single-typeface-carries-the-brand polish; the marketing-grade craft of a custom display face. https://stripe.com
  • Krea — the adjacent creative-AI peer Pika defines itself against; the clip-tile gallery pattern shared, the dark-gallery aesthetic deliberately inverted to warm-light. https://www.krea.ai
  • Linear — restrained, considered chrome and the discipline of a tight token system underneath the playful surface. https://linear.app

14. Do’s and Don’ts

Do

  • Do keep the canvas at warm cream #fcfaf7. The off-white warmth is the brand; never flatten it to clinical #ffffff.
  • Do set display in Telka Extended at weight 900. The chunky poster headline is the signature.
  • Do run body copy in Telka at a light 300 weight — the 900-vs-300 contrast is the core typographic tension.
  • Do use the two-CTA grammar: peach #ffd184 for the inviting action, black #000000 for the do-it-now action.
  • Do keep CTA radius at 18px — Pika’s signature rounded pill.
  • Do put dark text #222222 on the peach button; peach is too light for white text.
  • Do lift cards with pure-white #ffffff fills and soft, low-opacity neutral shadows.
  • Do keep section rhythm at 64–128px — breezy and warm, not austere.
  • Do use the peach as the only warm chroma; let the work carry the colour.
  • Do keep the voice playful, warm, and action-first.

Don’t

  • Don’t ship a dark mode. Pika is light-only; an absolute-black inversion loses the warm identity.
  • Don’t set body copy heavier than 300 — Telka loses its relaxed, airy feel.
  • Don’t set headlines in regular Telka; the Extended cut is what makes them poster-like.
  • Don’t put white text on the peach button — contrast fails; use #222222.
  • Don’t use the peach as a large background fill; it stays in CTAs and small wash accents.
  • Don’t flatten the canvas to clinical #ffffff — the cream warmth is the brand.
  • Don’t square off the CTAs to 8px; the 18px rounding is the friendly signature.
  • Don’t tint shadows with peach; shadows stay neutral grey-black.
  • Don’t introduce a cold info-blue; Pika’s semantic palette stays warm and neutral.
  • Don’t apologise in microcopy — empty states are starting points, not failures.

15. Agent Prompt Guide

Quick Color Reference

bg: #fcfaf7
bg-alt: #f5f1ea
surface: #ffffff
text: #0d0d0d
text-strong: #000000
text-muted: #5c5c5c
brand (peach CTA): #ffd184
on-brand (text on peach): #222222
ink-cta-bg (black Generate): #000000
dark-cta-bg (Try on Web): #222222
border: rgba(13, 13, 13, 0.10)

Example Component Prompts

  1. “Create a Pika-style hero — warm cream #fcfaf7 canvas, 48px headline in Telka Extended weight 900 near-black #0d0d0d with -0.02em tracking, 18px light body (Telka 300) in #5c5c5c below. Below the copy, two rounded 18px CTA pills side by side: a peach #ffd184 ‘Sign Up’ with dark #222222 text, and a black #000000 ‘Generate’ with white text.”

  2. “Design a Pika prompt box — pure-white #ffffff field on cream, 1px rgba(13,13,13,0.10) border, 18px radius, 14px×16px×14px×20px padding, placeholder in #8a8a8a Telka 300 / 16px. A 40px black #000000 circle with a white arrow icon sits hard-right. Focus shows a 3px peach glow.”

  3. “Build a Pika feature card — pure-white #ffffff background lifting off the cream, 1px rgba(13,13,13,0.10) border, 16px radius, 24px padding, 20px Telka Extended 600 heading in #0d0d0d, 16px Telka 300 body in #5c5c5c. Soft rgba(13,13,13,0.05) 0 1px 2px shadow at rest, deepening on hover.”

  4. “Compose a Pika nav — 64px header on cream #fcfaf7, wordmark hard-left in Telka Extended near-black. Link list Telka 500 / 15px #0d0d0d with #5c5c5c hover. Right-side: a ghost-outline link cluster plus a peach #ffd184 ‘Sign Up’ pill at 18px radius with dark text.”

  5. “Render a Pika clip-tile gallery — 3-column 16:9 grid on cream, each tile a 16px-radius rounded frame with #f5f1ea placeholder ground, video bleeding to edge and auto-looping muted. Hover scales 1.02× with a soft rgba(13,13,13,0.12) 0 16px 40px -8px shadow. Prompt caption below in Telka 300 / 12px #5c5c5c.”

  6. “Create a Pika CTA band — full-width cream #fcfaf7 section, 56px Telka Extended 900 headline centred in #0d0d0d, 18px Telka 300 subhead in #5c5c5c, and a single black #000000 ‘Generate’ pill (white text, 18px radius) below.”

Iteration Guide

  1. Start with cream #fcfaf7. If the bg is pure #ffffff or a cold grey, you’ve lost the brand. The warm off-white is the entry ticket.
  2. Set the headline in Telka Extended at 900. If it’s a regular-width or medium-weight headline, the poster character collapses. Fat-weight Extended is the signature.
  3. Drop body to weight 300. The 900-vs-300 contrast is the core tension; a 400+ body reads heavier and less playful.
  4. Use both CTA codes. Peach #ffd184 invites, black #000000 commits. If everything is one colour, the two-CTA grammar is missing.
  5. Round the buttons to 18px. 8px reads SaaS-generic; 18px is Pika’s friendly pill.
  6. Put #222222 text on the peach. White on peach fails contrast — dark ink is mandatory on the peach fill.
  7. Keep shadows soft and neutral. Near-black at 5–12% opacity, wide blur — never a hard edge, never peach-tinted.
  8. Warm the voice. Replace “Render output” with “Generate your video”; keep copy action-first and friendly.
Ship with this

Drop pika into your project, then ship the actual sections in an afternoon.

1 · install design
npx @webdesignhot/design-md add pika
2 · ship landing page
npx agentkit init --design pika
How AgentKit reads DESIGN.md