{
 "version": 2,
 "about": "BRAND-1 (30 Oct 2026). One face spec per candidate mark, for the FACE-1 engine (intelligence/face.js). All numbers are in the 32 x 32 tile space, y down.",
 "engine": {
  "mapsTo": "face.js MARKS entry: bg/edge/band/ink/paper/pupil/eye/eyes/mouth/lipLine/style come straight from \"face\" + the theme; head(ctx, s) is built from \"parts\" in order.",
  "eyes": "[xLeft, xRight, y, rx, ry]",
  "mouth": "[x, y, scale] (scale 1 = the hexagon face); null = the mark draws its own mouth (see parts[].live)",
  "eye": "\"ink\" = dark eyes straight on the tile; \"paper\" = white eyes with a pupil, for solid coloured shapes",
  "parts": "kind: path (d, w, cap, join) | ring (cx, cy, r, w) | disc (cx, cy, r) | wave (d, w, live). color is a theme key. fade: true = drawn at (1 - s.awake) so it gives way to the face. move: { level: [dx, dy, scale], brow: [dx, dy] } scales with s.level / s.brow; pivot defaults to [16, 16].",
  "converter": "scratch/brand-1/spec-to-face.js turns an entry + theme into a face.js mark object (used by the review page)."
 },
 "marks": {
  "kriya-a": {
   "product": "kriya",
   "name": "Kriyā · A",
   "idea": "Latin ā: the macron becomes the head line, joined to the stem at the top right",
   "meaning": "Kriyā — the act of getting it done.",
   "files": {
    "light": "mark-kriya-a.svg",
    "dark": "mark-kriya-a-dark.svg",
    "mono": "mark-kriya-a-mono.svg",
    "monoWhite": "mark-kriya-a-mono-white.svg",
    "adaptive": "mark-kriya-a-adaptive.svg"
   },
   "box": [
    3.4,
    6.6,
    28.6,
    27.4
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 1.96,
    "tx": 22.64,
    "ty": 20.68,
    "r": 32.02
   },
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     12.7,
     16.1,
     17.5,
     0.75,
     0.95
    ],
    "mouth": [
     14.4,
     20.5,
     0.5
    ],
    "lipLine": false
   },
   "speaks": "The head line lifts like an eyebrow on stress (up to 1.1 units) and rises a little with loudness; the bowl is the face and its mouth opens inside the counter.",
   "parts": [
    {
     "id": "headline",
     "kind": "path",
     "d": "M5 8.2H27",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph",
     "move": {
      "brow": [
       0,
       -1.1
      ],
      "level": [
       0,
       -0.5
      ]
     }
    },
    {
     "id": "stem",
     "kind": "path",
     "d": "M23.2 8.2V25.8",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph"
    },
    {
     "id": "bowl",
     "kind": "ring",
     "cx": 14.4,
     "cy": 18.6,
     "r": 5.6,
     "w": 3.2,
     "color": "glyph"
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#E8650A",
     "accent": "#E60023",
     "faceInk": "#7A2E0A",
     "facePaper": "#FBF7EE",
     "pupil": "#7A2E0A"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#FF8A3D",
     "accent": "#FF3B52",
     "faceInk": "#FFD9BF",
     "facePaper": "#FFF3E8",
     "pupil": "#3A1405"
    }
   }
  },
  "kriya-b": {
   "product": "kriya",
   "name": "Kriyā · B",
   "idea": "From क: head line, stem, and the bar with its hanging loop; the slit between loop and stem is kept",
   "meaning": "Kriyā — the act, written the way it starts: क.",
   "files": {
    "light": "mark-kriya-b.svg",
    "dark": "mark-kriya-b-dark.svg",
    "mono": "mark-kriya-b-mono.svg",
    "monoWhite": "mark-kriya-b-mono-white.svg",
    "adaptive": "mark-kriya-b-adaptive.svg"
   },
   "box": [
    3.4,
    6.6,
    28.6,
    27.4
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 1.96,
    "tx": 22.64,
    "ty": 20.68,
    "r": 32.02
   },
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     11.6,
     15.2,
     19.3,
     0.75,
     0.95
    ],
    "mouth": [
     13.4,
     22,
     0.5
    ],
    "lipLine": false
   },
   "speaks": "The head line lifts on stress and loudness; the loop is the face. The bar and stem stay still, so the letter keeps its shape while it speaks.",
   "parts": [
    {
     "id": "headline",
     "kind": "path",
     "d": "M5 8.2H27",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph",
     "move": {
      "brow": [
       0,
       -1.1
      ],
      "level": [
       0,
       -0.5
      ]
     }
    },
    {
     "id": "stem",
     "kind": "path",
     "d": "M23.2 8.2V25.8",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph"
    },
    {
     "id": "bar",
     "kind": "path",
     "d": "M23.2 14.7H13.4",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph"
    },
    {
     "id": "loop",
     "kind": "path",
     "d": "M13.4 15.2C10.65 15.2 8.37 17.35 8.21 20.1C8.05 22.85 10.06 25.25 12.8 25.56C15.53 25.88 18.04 24.02 18.52 21.3",
     "w": 3.2,
     "cap": "round",
     "color": "glyph"
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#E8650A",
     "accent": "#E60023",
     "faceInk": "#7A2E0A",
     "facePaper": "#FBF7EE",
     "pupil": "#7A2E0A"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#FF8A3D",
     "accent": "#FF3B52",
     "faceInk": "#FFD9BF",
     "facePaper": "#FFF3E8",
     "pupil": "#3A1405"
    }
   }
  },
  "kriya-c": {
   "product": "kriya",
   "name": "Kriyā · C",
   "idea": "Our own: a solid round doer beside the long ā stem, the head line in the brand red",
   "meaning": "Kriyā — someone who does it, and the line that says it is done.",
   "files": {
    "light": "mark-kriya-c.svg",
    "dark": "mark-kriya-c-dark.svg",
    "mono": "mark-kriya-c-mono.svg",
    "monoWhite": "mark-kriya-c-mono-white.svg",
    "adaptive": "mark-kriya-c-adaptive.svg"
   },
   "box": [
    3.4,
    6.6,
    28.6,
    26.6
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 1.99,
    "tx": 22.16,
    "ty": 20.97,
    "r": 32.01
   },
   "shape": "square",
   "face": {
    "eye": "paper",
    "eyes": [
     11.5,
     16.5,
     17.3,
     1.2,
     1.25
    ],
    "mouth": [
     14,
     21.4,
     0.75
    ],
    "lipLine": true
   },
   "speaks": "The red head line is the eyebrow of the whole letter: it lifts on stress. The round doer carries the eyes and the mouth (lips outlined in paper colour); the stem stays still.",
   "parts": [
    {
     "id": "stem",
     "kind": "path",
     "d": "M22.2 8.2V25",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph"
    },
    {
     "id": "doer",
     "kind": "disc",
     "cx": 14,
     "cy": 18.4,
     "r": 6.6,
     "color": "glyph"
    },
    {
     "id": "headline",
     "kind": "path",
     "d": "M5 8.2H27",
     "w": 3.2,
     "cap": "butt",
     "color": "accent",
     "move": {
      "brow": [
       0,
       -1.1
      ],
      "level": [
       0,
       -0.5
      ]
     }
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#E8650A",
     "accent": "#E60023",
     "faceInk": "#7A2E0A",
     "facePaper": "#FBF7EE",
     "pupil": "#7A2E0A"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#FF8A3D",
     "accent": "#FF3B52",
     "faceInk": "#FFD9BF",
     "facePaper": "#FFF3E8",
     "pupil": "#3A1405"
    }
   }
  },
  "listen-a": {
   "product": "listen",
   "name": "Listen · A",
   "idea": "Five round bars, tallest in the middle",
   "meaning": "Listen — hear the day’s news.",
   "files": {
    "light": "mark-listen-a.svg",
    "dark": "mark-listen-a-dark.svg",
    "mono": "mark-listen-a-mono.svg",
    "monoWhite": "mark-listen-a-mono-white.svg",
    "adaptive": "mark-listen-a-adaptive.svg"
   },
   "box": [
    5.95,
    4,
    26.05,
    28
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 2.05,
    "tx": 21.2,
    "ty": 21.2,
    "r": 32.09
   },
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     12.3,
     19.7,
     11.4,
     0.9,
     1.2
    ],
    "mouth": [
     16,
     21.2,
     1
    ],
    "lipLine": false,
    "style": "bars"
   },
   "speaks": "The five bars are the mouth. At rest the logo is the five bars; when the face wakes they fade, two eyes appear above and the engine’s own five bars (style \"bars\") move to the voice, one bar per sound band.",
   "parts": [
    {
     "id": "bar1",
     "kind": "path",
     "d": "M7.4 12.95V19.05",
     "w": 2.9,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "bar2",
     "kind": "path",
     "d": "M11.7 9.45V22.55",
     "w": 2.9,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "bar3",
     "kind": "path",
     "d": "M16 5.45V26.55",
     "w": 2.9,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "bar4",
     "kind": "path",
     "d": "M20.3 9.45V22.55",
     "w": 2.9,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "bar5",
     "kind": "path",
     "d": "M24.6 12.95V19.05",
     "w": 2.9,
     "cap": "round",
     "color": "glyph",
     "fade": true
    }
   ],
   "themes": {
    "light": {
     "bg": "#0F766E",
     "edge": null,
     "band": null,
     "glyph": "#FFFFFF",
     "accent": "#FFFFFF",
     "faceInk": "#FFFFFF",
     "facePaper": "#FFFFFF",
     "pupil": "#0F766E"
    },
    "dark": {
     "bg": "#0A1F1D",
     "edge": "#1F3F3B",
     "band": null,
     "glyph": "#5EEAD4",
     "accent": "#5EEAD4",
     "faceInk": "#5EEAD4",
     "facePaper": "#5EEAD4",
     "pupil": "#0A1F1D"
    }
   }
  },
  "listen-b": {
   "product": "listen",
   "name": "Listen · B",
   "idea": "One line, a wave that swells and settles",
   "meaning": "Listen — the voice, as one line.",
   "files": {
    "light": "mark-listen-b.svg",
    "dark": "mark-listen-b-dark.svg",
    "mono": "mark-listen-b-mono.svg",
    "monoWhite": "mark-listen-b-mono-white.svg",
    "adaptive": "mark-listen-b-adaptive.svg"
   },
   "box": [
    3.35,
    8.32,
    28.65,
    23.68
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 2.16,
    "tx": 19.44,
    "ty": 19.44,
    "r": 31.97
   },
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     12.3,
     19.7,
     11.4,
     0.9,
     1.2
    ],
    "mouth": null,
    "lipLine": false
   },
   "speaks": "The line is the mouth. When the face wakes it shrinks to the mouth position and its height follows the voice (the mark draws it itself: mouth is null, \"live\" holds the numbers).",
   "parts": [
    {
     "id": "wave",
     "kind": "wave",
     "d": "M4.5 16L4.98 15.89L5.46 15.54L5.94 15.04L6.42 14.56L6.9 14.3L7.38 14.41L7.85 14.98L8.33 16L8.81 17.32L9.29 18.72L9.77 19.89L10.25 20.56L10.73 20.53L11.21 19.68L11.69 18.1L12.17 16L12.65 13.7L13.13 11.61L13.6 10.1L14.08 9.47L14.56 9.86L15.04 11.24L15.52 13.4L16 16L16.48 18.6L16.96 20.76L17.44 22.14L17.92 22.53L18.4 21.9L18.88 20.39L19.35 18.3L19.83 16L20.31 13.9L20.79 12.32L21.27 11.47L21.75 11.44L22.23 12.11L22.71 13.28L23.19 14.68L23.67 16L24.15 17.02L24.63 17.59L25.1 17.7L25.58 17.44L26.06 16.96L26.54 16.46L27.02 16.11L27.5 16",
     "w": 2.3,
     "cap": "round",
     "color": "glyph",
     "live": {
      "x0": 9.5,
      "x1": 22.5,
      "y": 20.6,
      "ampBase": 0.35,
      "ampGain": 4.6,
      "cycles": 3,
      "w": 2.1
     }
    }
   ],
   "themes": {
    "light": {
     "bg": "#0F766E",
     "edge": null,
     "band": null,
     "glyph": "#FFFFFF",
     "accent": "#FFFFFF",
     "faceInk": "#FFFFFF",
     "facePaper": "#FFFFFF",
     "pupil": "#0F766E"
    },
    "dark": {
     "bg": "#0A1F1D",
     "edge": "#1F3F3B",
     "band": null,
     "glyph": "#5EEAD4",
     "accent": "#5EEAD4",
     "faceInk": "#5EEAD4",
     "facePaper": "#5EEAD4",
     "pupil": "#0A1F1D"
    }
   }
  },
  "beacon-a": {
   "product": "beacon",
   "name": "Beacon · A",
   "idea": "A browser window with a ping in it: the page, and something watching it",
   "meaning": "Beacon — a computer on the web that watches for you.",
   "files": {
    "light": "mark-beacon-a.svg",
    "dark": "mark-beacon-a-dark.svg",
    "mono": "mark-beacon-a-mono.svg",
    "monoWhite": "mark-beacon-a-mono-white.svg",
    "adaptive": "mark-beacon-a-adaptive.svg"
   },
   "box": [
    4.8,
    4.9,
    27.2,
    25.3
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 2.11,
    "tx": 20.24,
    "ty": 22.14,
    "r": 31.96
   },
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     12.4,
     19.6,
     15.5,
     0.8,
     1.05
    ],
    "mouth": [
     16,
     20,
     0.75
    ],
    "lipLine": false
   },
   "speaks": "The window is the face. The ping inside fades when the face wakes and the eyes and mouth take its place; the window breathes with loudness (2.5 %).",
   "parts": [
    {
     "id": "window",
     "kind": "path",
     "d": "M8.5 5.8H23.5C25.2 5.8 26.3 6.9 26.3 8.6V21.6C26.3 23.3 25.2 24.4 23.5 24.4H8.5C6.8 24.4 5.7 23.3 5.7 21.6V8.6C5.7 6.9 6.8 5.8 8.5 5.8Z",
     "w": 1.8,
     "cap": "round",
     "join": "round",
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.025
      ]
     }
    },
    {
     "id": "titlebar",
     "kind": "path",
     "d": "M5.7 11.2H26.3",
     "w": 1.6,
     "cap": "butt",
     "color": "glyph"
    },
    {
     "id": "ping-ring",
     "kind": "ring",
     "cx": 16,
     "cy": 18,
     "r": 4.6,
     "w": 1.5,
     "color": "glyph",
     "fade": true
    },
    {
     "id": "ping-dot",
     "kind": "disc",
     "cx": 16,
     "cy": 18,
     "r": 1.9,
     "color": "glyph",
     "fade": true
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#2F5FD0",
     "accent": "#2F5FD0",
     "faceInk": "#2F5FD0",
     "facePaper": "#FBF7EE",
     "pupil": "#2F5FD0"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#7B9CF0",
     "accent": "#7B9CF0",
     "faceInk": "#BFD0FA",
     "facePaper": "#16181C",
     "pupil": "#BFD0FA"
    }
   }
  },
  "beacon-b": {
   "product": "beacon",
   "name": "Beacon · B",
   "idea": "A small computer with a prompt, sending a signal from its corner",
   "meaning": "Beacon — a computer on the web that works for you.",
   "files": {
    "light": "mark-beacon-b.svg",
    "dark": "mark-beacon-b-dark.svg",
    "mono": "mark-beacon-b-mono.svg",
    "monoWhite": "mark-beacon-b-mono-white.svg",
    "adaptive": "mark-beacon-b-adaptive.svg"
   },
   "box": [
    3.6,
    2.8,
    29.2,
    26.4
   ],
   "adaptive": {
    "canvas": 108,
    "safeCircleDiameter": 66,
    "scale": 1.84,
    "tx": 23.82,
    "ty": 27.14,
    "r": 32.03
   },
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     10.2,
     15.3,
     15.6,
     0.75,
     1
    ],
    "mouth": [
     12.75,
     20.4,
     0.62
    ],
    "lipLine": false
   },
   "speaks": "The screen is the face; the prompt and cursor fade when it wakes. The two signal arcs in the corner swell with loudness (20 % and 14 %), so the computer “sends” while it speaks.",
   "parts": [
    {
     "id": "screen",
     "kind": "path",
     "d": "M7.7 10H17.8C20 10 21 11 21 13.2V22.3C21 24.5 20 25.5 17.8 25.5H7.7C5.5 25.5 4.5 24.5 4.5 22.3V13.2C4.5 11 5.5 10 7.7 10Z",
     "w": 1.8,
     "cap": "round",
     "join": "round",
     "color": "glyph"
    },
    {
     "id": "prompt",
     "kind": "path",
     "d": "M8.6 15.4L12.2 18L8.6 20.6",
     "w": 1.8,
     "cap": "round",
     "join": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "cursor",
     "kind": "path",
     "d": "M14.2 21H17.4",
     "w": 1.8,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "source",
     "kind": "disc",
     "cx": 23.4,
     "cy": 8.6,
     "r": 1.25,
     "color": "glyph"
    },
    {
     "id": "signal-1",
     "kind": "path",
     "d": "M23.4 5.9C24.89 5.9 26.1 7.11 26.1 8.6",
     "w": 1.6,
     "cap": "round",
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.2
      ],
      "pivot": [
       23.4,
       8.6
      ]
     }
    },
    {
     "id": "signal-2",
     "kind": "path",
     "d": "M23.4 3.6C26.16 3.6 28.4 5.84 28.4 8.6",
     "w": 1.6,
     "cap": "round",
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.14
      ],
      "pivot": [
       23.4,
       8.6
      ]
     }
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#2F5FD0",
     "accent": "#2F5FD0",
     "faceInk": "#2F5FD0",
     "facePaper": "#FBF7EE",
     "pupil": "#2F5FD0"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#7B9CF0",
     "accent": "#7B9CF0",
     "faceInk": "#BFD0FA",
     "facePaper": "#16181C",
     "pupil": "#BFD0FA"
    }
   }
  },
  "listen-c": {
   "name": "Listen · C",
   "idea": "Five bars inside a round head, the way the Intelligence star sits in its hexagon",
   "meaning": "Listen — a voice that tells you the news.",
   "speaks": "Asleep: the head with the sound in it. Awake: the bars fade and plain eyes and one mouth wake in the head, the same face as Intelligence. The head breathes with loudness (2.5 %).",
   "face": {
    "eye": "ink",
    "eyes": [
     12.9,
     19.1,
     13.9,
     0.9,
     1.2
    ],
    "mouth": [
     16,
     19.8,
     1.05
    ],
    "lipLine": false
   },
   "themes": {
    "light": {
     "bg": "#0F766E",
     "edge": null,
     "band": null,
     "glyph": "#FFFFFF",
     "accent": "#FFFFFF",
     "faceInk": "#0B4A44",
     "facePaper": "#FFFFFF",
     "pupil": "#0B4A44"
    },
    "dark": {
     "bg": "#0A1F1D",
     "edge": "#1F3F3B",
     "band": null,
     "glyph": "#5EEAD4",
     "accent": "#5EEAD4",
     "faceInk": "#0A1F1D",
     "facePaper": "#5EEAD4",
     "pupil": "#0A1F1D"
    }
   },
   "parts": [
    {
     "id": "head",
     "kind": "disc",
     "cx": 16,
     "cy": 16,
     "r": 11.4,
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.025
      ]
     }
    },
    {
     "id": "bar1",
     "kind": "path",
     "d": "M9.4 14.2V17.8",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar2",
     "kind": "path",
     "d": "M12.7 12.3V19.7",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar3",
     "kind": "path",
     "d": "M16 10.7V21.3",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar4",
     "kind": "path",
     "d": "M19.3 12.3V19.7",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar5",
     "kind": "path",
     "d": "M22.6 14.2V17.8",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    }
   ],
   "product": "listen",
   "shape": "square",
   "box": [
    4.6,
    4.6,
    27.4,
    27.4
   ],
   "files": {
    "light": "mark-listen-c.svg",
    "dark": "mark-listen-c-dark.svg"
   }
  },
  "listen-d": {
   "name": "Listen · D",
   "idea": "A wave line laid on a smile, inside a round head",
   "meaning": "Listen — a voice that is glad to see you.",
   "speaks": "The wave is the mouth: it stays when the face wakes and swells with loudness (25 %). Plain eyes open above it.",
   "face": {
    "eye": "ink",
    "eyes": [
     12.6,
     19.4,
     12.4,
     0.9,
     1.2
    ],
    "mouth": null,
    "lipLine": false
   },
   "themes": {
    "light": {
     "bg": "#0F766E",
     "edge": null,
     "band": null,
     "glyph": "#FFFFFF",
     "accent": "#FFFFFF",
     "faceInk": "#0B4A44",
     "facePaper": "#FFFFFF",
     "pupil": "#0B4A44"
    },
    "dark": {
     "bg": "#0A1F1D",
     "edge": "#1F3F3B",
     "band": null,
     "glyph": "#5EEAD4",
     "accent": "#5EEAD4",
     "faceInk": "#0A1F1D",
     "facePaper": "#5EEAD4",
     "pupil": "#0A1F1D"
    }
   },
   "parts": [
    {
     "id": "head",
     "kind": "disc",
     "cx": 16,
     "cy": 16,
     "r": 11.4,
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.025
      ]
     }
    },
    {
     "id": "wave",
     "kind": "path",
     "d": "M9 17.2L9.35 17.46L9.7 17.66L10.05 17.79L10.4 17.89L10.75 17.99L11.1 18.13L11.45 18.34L11.8 18.63L12.15 19L12.5 19.45L12.85 19.94L13.2 20.42L13.55 20.85L13.9 21.19L14.25 21.39L14.6 21.43L14.95 21.31L15.3 21.04L15.65 20.65L16 20.2L16.35 19.73L16.7 19.3L17.05 18.96L17.4 18.73L17.75 18.64L18.1 18.67L18.45 18.81L18.8 19.02L19.15 19.25L19.5 19.45L19.85 19.58L20.2 19.61L20.55 19.53L20.9 19.33L21.25 19.03L21.6 18.67L21.95 18.28L22.3 17.88L22.65 17.52L23 17.2",
     "w": 2.2,
     "cap": "round",
     "join": "round",
     "color": "bg",
     "move": {
      "level": [
       0,
       0,
       0.25
      ],
      "pivot": [
       16,
       19
      ]
     }
    }
   ],
   "product": "listen",
   "shape": "square",
   "box": [
    4.6,
    4.6,
    27.4,
    27.4
   ],
   "files": {
    "light": "mark-listen-d.svg",
    "dark": "mark-listen-d-dark.svg"
   }
  },
  "listen-e": {
   "name": "Listen · E",
   "idea": "Headphones with sound between the ear cups",
   "meaning": "Listen — someone listening, for you.",
   "speaks": "The band and cups stay; the three bars between the cups fade and a plain face (eyes and one mouth) wakes in their place. The band lifts a little with loudness.",
   "face": {
    "eye": "ink",
    "eyes": [
     13.2,
     18.8,
     15.6,
     0.85,
     1.1
    ],
    "mouth": [
     16,
     20.4,
     0.62
    ],
    "lipLine": false
   },
   "parts": [
    {
     "id": "band",
     "kind": "path",
     "d": "M6.4 17.4L6.48 16.15L6.73 14.92L7.13 13.73L7.69 12.6L8.38 11.56L9.21 10.61L10.16 9.78L11.2 9.09L12.33 8.53L13.52 8.13L14.75 7.88L16 7.8L17.25 7.88L18.48 8.13L19.67 8.53L20.8 9.09L21.84 9.78L22.79 10.61L23.62 11.56L24.31 12.6L24.87 13.73L25.27 14.92L25.52 16.15L25.6 17.4",
     "w": 2.6,
     "cap": "round",
     "join": "round",
     "color": "glyph",
     "move": {
      "level": [
       0,
       -0.5
      ]
     }
    },
    {
     "id": "cupL",
     "kind": "path",
     "d": "M6.4 17.6V22.6",
     "w": 4.4,
     "cap": "round",
     "color": "glyph"
    },
    {
     "id": "cupR",
     "kind": "path",
     "d": "M25.6 17.6V22.6",
     "w": 4.4,
     "cap": "round",
     "color": "glyph"
    },
    {
     "id": "bar1",
     "kind": "path",
     "d": "M12.6 17.8V21.4",
     "w": 2.4,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "bar2",
     "kind": "path",
     "d": "M16 15.6V23.6",
     "w": 2.4,
     "cap": "round",
     "color": "glyph",
     "fade": true
    },
    {
     "id": "bar3",
     "kind": "path",
     "d": "M19.4 17.8V21.4",
     "w": 2.4,
     "cap": "round",
     "color": "glyph",
     "fade": true
    }
   ],
   "product": "listen",
   "shape": "square",
   "themes": {
    "light": {
     "bg": "#0F766E",
     "edge": null,
     "band": null,
     "glyph": "#FFFFFF",
     "accent": "#FFFFFF",
     "faceInk": "#FFFFFF",
     "facePaper": "#FFFFFF",
     "pupil": "#0F766E"
    },
    "dark": {
     "bg": "#0A1F1D",
     "edge": "#1F3F3B",
     "band": null,
     "glyph": "#5EEAD4",
     "accent": "#5EEAD4",
     "faceInk": "#5EEAD4",
     "facePaper": "#5EEAD4",
     "pupil": "#0A1F1D"
    }
   },
   "box": [
    4.2,
    6.5,
    27.8,
    24.8
   ],
   "files": {
    "light": "mark-listen-e.svg",
    "dark": "mark-listen-e-dark.svg"
   }
  },
  "kriya": {
   "product": "kriya",
   "name": "Kriyā · tile",
   "idea": "Latin ā: the macron becomes the head line, joined to the stem at the top right",
   "meaning": "Kriyā — the act of getting it done.",
   "files": {
    "light": "tile-kriya.svg",
    "dark": "tile-kriya-dark.svg"
   },
   "box": [
    5,
    6.6,
    27,
    25.8
   ],
   "shape": "square",
   "face": {
    "eye": "ink",
    "eyes": [
     12.7,
     16.1,
     17.5,
     0.75,
     0.95
    ],
    "mouth": [
     14.4,
     20.5,
     0.5
    ],
    "lipLine": false
   },
   "speaks": "The head line lifts like an eyebrow on stress (up to 1.1 units) and rises a little with loudness; the bowl is the face and its mouth opens inside the counter.",
   "parts": [
    {
     "id": "headline",
     "kind": "path",
     "d": "M5 8.2H27",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph",
     "move": {
      "brow": [
       0,
       -1.1
      ],
      "level": [
       0,
       -0.5
      ]
     }
    },
    {
     "id": "stem",
     "kind": "path",
     "d": "M23.2 8.2V25.8",
     "w": 3.2,
     "cap": "butt",
     "color": "glyph"
    },
    {
     "id": "bowl",
     "kind": "ring",
     "cx": 14.4,
     "cy": 18.6,
     "r": 5.6,
     "w": 3.2,
     "color": "glyph"
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#E8650A",
     "accent": "#E60023",
     "faceInk": "#7A2E0A",
     "facePaper": "#FBF7EE",
     "pupil": "#7A2E0A"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#FF8A3D",
     "accent": "#FF3B52",
     "faceInk": "#FFD9BF",
     "facePaper": "#FFF3E8",
     "pupil": "#3A1405"
    }
   },
   "from": "kriya-a"
  },
  "listen": {
   "name": "Listen · tile",
   "idea": "Five bars inside a round head, the way the Intelligence star sits in its hexagon",
   "meaning": "Listen — a voice that tells you the news.",
   "speaks": "Asleep: the head with the sound in it. Awake: the bars fade and plain eyes and one mouth wake in the head, the same face as Intelligence. The head breathes with loudness (2.5 %).",
   "face": {
    "eye": "ink",
    "eyes": [
     12.9,
     19.1,
     13.9,
     0.9,
     1.2
    ],
    "mouth": [
     16,
     19.8,
     1.05
    ],
    "lipLine": false
   },
   "themes": {
    "light": {
     "bg": "#0F766E",
     "edge": null,
     "band": null,
     "glyph": "#FFFFFF",
     "accent": "#FFFFFF",
     "faceInk": "#0B4A44",
     "facePaper": "#FFFFFF",
     "pupil": "#0B4A44"
    },
    "dark": {
     "bg": "#0A1F1D",
     "edge": "#1F3F3B",
     "band": null,
     "glyph": "#5EEAD4",
     "accent": "#5EEAD4",
     "faceInk": "#0A1F1D",
     "facePaper": "#5EEAD4",
     "pupil": "#0A1F1D"
    }
   },
   "parts": [
    {
     "id": "head",
     "kind": "disc",
     "cx": 16,
     "cy": 16,
     "r": 11.4,
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.025
      ]
     }
    },
    {
     "id": "bar1",
     "kind": "path",
     "d": "M9.4 14.2V17.8",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar2",
     "kind": "path",
     "d": "M12.7 12.3V19.7",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar3",
     "kind": "path",
     "d": "M16 10.7V21.3",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar4",
     "kind": "path",
     "d": "M19.3 12.3V19.7",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    },
    {
     "id": "bar5",
     "kind": "path",
     "d": "M22.6 14.2V17.8",
     "w": 2.2,
     "cap": "round",
     "color": "bg",
     "fade": true
    }
   ],
   "product": "listen",
   "shape": "square",
   "box": [
    4.6,
    4.6,
    27.4,
    27.4
   ],
   "files": {
    "light": "tile-listen.svg",
    "dark": "tile-listen-dark.svg"
   },
   "from": "listen-c"
  },
  "beacon": {
   "product": "beacon",
   "name": "Beacon · tile",
   "idea": "The live ping, inside the tile grid",
   "meaning": "Beacon — something on the web that watches for you.",
   "speaks": "The outer ring is the head and breathes with loudness (3 %); the inner ring and the dot fade when the face wakes and the eyes and mouth take their place.",
   "face": {
    "eye": "ink",
    "eyes": [
     13,
     19,
     13.8,
     0.85,
     1.1
    ],
    "mouth": [
     16,
     18.9,
     0.62
    ],
    "lipLine": false
   },
   "parts": [
    {
     "id": "outer",
     "kind": "ring",
     "cx": 16,
     "cy": 15.4,
     "r": 9.6,
     "w": 1.9,
     "color": "glyph",
     "move": {
      "level": [
       0,
       0,
       0.03
      ],
      "pivot": [
       16,
       15.4
      ]
     }
    },
    {
     "id": "inner",
     "kind": "ring",
     "cx": 16,
     "cy": 15.4,
     "r": 5.8,
     "w": 1.9,
     "color": "glyph",
     "fade": true
    },
    {
     "id": "dot",
     "kind": "disc",
     "cx": 16,
     "cy": 15.4,
     "r": 2.5,
     "color": "glyph",
     "fade": true
    }
   ],
   "themes": {
    "light": {
     "bg": "#FBF7EE",
     "edge": "#E6DCC8",
     "band": "#E60023",
     "glyph": "#2F5FD0",
     "accent": "#2F5FD0",
     "faceInk": "#2F5FD0",
     "facePaper": "#FBF7EE",
     "pupil": "#2F5FD0"
    },
    "dark": {
     "bg": "#16181C",
     "edge": "#2A2D33",
     "band": "#FF3B52",
     "glyph": "#7B9CF0",
     "accent": "#7B9CF0",
     "faceInk": "#BFD0FA",
     "facePaper": "#16181C",
     "pupil": "#BFD0FA"
    }
   },
   "shape": "square",
   "files": {
    "light": "tile-beacon.svg",
    "dark": "tile-beacon-dark.svg"
   },
   "from": "live beacon.svg",
   "box": [
    5.45,
    4.85,
    26.55,
    25.95
   ]
  }
 },
 "tiles": {
  "about": "BRAND-2 (1 Nov 2026). One tile per product. The mark sits in the tile asleep; face.js wakes the face (eyes + mouth) in the same tile. FACE-3: mount a product by its key below (face.js specMark: an exact key wins).",
  "grid": 32,
  "radius": 7,
  "safe": [
   4,
   4,
   28,
   28
  ],
  "rules": {
   "safe": "every part of a mark, stroke included, inside safe (units); paper tiles also keep y <= 28 above the band",
   "band": "paper tiles (Kriyā, Beacon) carry the red band at y 29-32; colour tiles (Intelligence, Listen) do not",
   "face": "eyes and mouth inside safe; mouth below the eyes; mouth null = a part of the mark is the mouth (it has move.level)",
   "stroke": "no stroke under 1.8 units (0.9 px at 16 px)",
   "themes": "light and dark: each tile has both; glyph on tile >= 3:1"
  },
  "products": {
   "intelligence": {
    "mark": "hexagon",
    "builtin": true,
    "files": {
     "light": "tile-intelligence.svg",
     "dark": "tile-intelligence-dark.svg"
    }
   },
   "kriya": {
    "mark": "kriya",
    "files": {
     "light": "tile-kriya.svg",
     "dark": "tile-kriya-dark.svg"
    }
   },
   "listen": {
    "mark": "listen",
    "pick": "listen-c",
    "options": [
     "listen-c",
     "listen-d",
     "listen-e"
    ],
    "files": {
     "light": "tile-listen.svg",
     "dark": "tile-listen-dark.svg"
    }
   },
   "beacon": {
    "mark": "beacon",
    "files": {
     "light": "tile-beacon.svg",
     "dark": "tile-beacon-dark.svg"
    }
   }
  },
  "covers": {
   "about": "Where the Listen tile sits on the covers (scripts/build-podcast-covers.py LISTEN_SLOT, px at 1400).",
   "episode": {
    "x": 64,
    "y": 36,
    "size": 88
   },
   "og": {
    "x": 64,
    "y": 48,
    "size": 56,
    "at": "1200x630"
   }
  }
 }
}
