diff --git a/.github/scripts/validate-site.mjs b/.github/scripts/validate-site.mjs
index 7d02872..5c6a48a 100644
--- a/.github/scripts/validate-site.mjs
+++ b/.github/scripts/validate-site.mjs
@@ -13,7 +13,7 @@ const ok = (msg) => console.log(' ✓ ' + msg);
// Pages built on the shared kit (must load assets/site.js).
const KIT_PAGES = [
'index.html', 'browse.html', 'series.html', 'body.html', 'character.html',
- 'family.html', 'quiz.html', 'craft.html', 'contact.html',
+ 'family.html', 'quiz.html', 'craft.html', 'contact.html', 'configurator.html',
];
// Standalone legacy page — kept for reference, intentionally self-contained.
const STANDALONE_PAGES = ['index-gallery-original.html'];
diff --git a/README.md b/README.md
index 43ab73d..7e0d9d8 100644
--- a/README.md
+++ b/README.md
@@ -71,6 +71,8 @@ build_profiles.py # WHR/BWR analysis → classify into the 6 Body Families
build_characters.py # Series → Body → 4 characters → photoshoot|placeholder
merge_stories.py # fold story/profile inputs into characters.json
make_thumbs.py # generate hero/gallery thumbnails (re-run after build_characters)
+build_neck_compat.py # neck-connector classes → db/neck_compatibility.json (head interchangeability)
+build_heads.py # reverse-engineer heads → db/heads.json (configurator head gallery; imports build_neck_compat)
build_package.py # stage the deliverable (code + referenced images) + zip
```
diff --git a/configurator.html b/configurator.html
new file mode 100644
index 0000000..92b9713
--- /dev/null
+++ b/configurator.html
@@ -0,0 +1,569 @@
+
+
+
+
+
+ZELEX — Configurator
+
+
+
+
+
+
+
+Loading catalog…
+
+
+
+
+
diff --git a/db/configurator_examples.json b/db/configurator_examples.json
new file mode 100644
index 0000000..55254bf
--- /dev/null
+++ b/db/configurator_examples.json
@@ -0,0 +1,139 @@
+{
+ "_comment": "Reverse-engineered worked examples: three strong-data ZELEX architectures expressed as configurator build documents, each paired with the values its declarations resolve to. This is the proof that the declarative model in db/configurator_schema.json round-trips real catalogued bodies. `build` = buyer inputs only; `resolved` = output of the schema's derivations; `source` = where each fact came from. All numbers are transcribed from db/, not invented.",
+ "spec_version": "1.0.0",
+ "validated_against": "db/configurator_schema.json#/build_document_schema",
+
+ "examples": [
+ {
+ "id": "yvonne-zg170c",
+ "title": "I-Series Muse — ZG170C (e.g. Yvonne / Valerie cast)",
+ "why_chosen": "Full 17-field spec card; exact-confidence Muse; 59 live variants — the richest head pool to exercise head/face/tone axes.",
+ "build": {
+ "spec_version": "1.0.0",
+ "body": { "line": "I-Series", "height_cm": 170, "cup": "C", "material": "Silicone" },
+ "head": { "head_code": "GE52_2", "face_variant": "Standard", "head_tone_match": true },
+ "components": { "skin_tone": "Tan", "breast_type": "Standard", "standing_feet": false, "fingers": false }
+ },
+ "resolved": {
+ "body_code": "ZG170C",
+ "family": "The Muse",
+ "family_confidence": "exact",
+ "WHR": 0.686,
+ "BWR": 1.357,
+ "signature": {
+ "upper_bust": 87.5, "under_bust": 71.5, "waist": 64.5, "hip": 94,
+ "neck": 33, "shoulder_width": 40, "arm_length": 68, "hand_length": 18.5,
+ "leg_length": 78, "foot_length": 23, "thigh_circ": 50, "calf_circ": 32,
+ "weight_kg": 36.1
+ },
+ "sku": "GE52_2+ZG170C-Tan",
+ "price": "3599.00",
+ "price_basis": "catalogued live variant (authoritative)",
+ "estimated": false
+ },
+ "movable_jaw_alt": {
+ "note": "Switching face_variant → Movable Jaw resolves a different head+face and SKU, per db/product_overrides.json.",
+ "build_delta": { "head.head_code": "GE02_1", "head.face_variant": "Movable Jaw" },
+ "resolved_sku": "GE02_1_2(GE46MJ)+ZG170C-Tan"
+ },
+ "source": {
+ "signature": "db/body_measurements.json#/bodies/ZG170C",
+ "family_whr_bwr": "db/body_profiles.json#/profiles (ZG170C)",
+ "sku_price": "db/live_variants.json (body=ZG170C, head=GE52_2, tone=Tan)",
+ "movable_jaw": "db/product_overrides.json#/GE02_1"
+ }
+ },
+
+ {
+ "id": "somi-zk168b",
+ "title": "K-Series Muse — ZK168B (Somi cast)",
+ "why_chosen": "Full spec card; demonstrates the WHR/BWR classifier landing at a family boundary (WHR just under Icon, BWR low) yet still resolving to a precomputed family value — the case where you trust the stored classification over a re-derive.",
+ "build": {
+ "spec_version": "1.0.0",
+ "body": { "line": "K-Series", "height_cm": 168, "cup": "B", "material": "Silicone" },
+ "head": { "head_code": "KE03_1", "face_variant": "Standard", "head_tone_match": true },
+ "components": { "skin_tone": "Fair", "breast_type": "Standard", "standing_feet": false, "fingers": false }
+ },
+ "resolved": {
+ "body_code": "ZK168B",
+ "family": "The Muse",
+ "family_confidence": "loose",
+ "WHR": 0.649,
+ "BWR": 1.238,
+ "signature": {
+ "upper_bust": 78, "under_bust": 66, "waist": 63, "hip": 97,
+ "neck": 27.5, "shoulder_width": 34.5, "arm_length": 71, "hand_length": 16,
+ "leg_length": 81, "foot_length": 22.5, "thigh_circ": 51, "calf_circ": 33,
+ "weight_kg": 37.5
+ },
+ "sku": "KE03_1+ZK168B-1",
+ "price": "3869.10",
+ "price_basis": "catalogued live variant (authoritative)",
+ "estimated": false,
+ "classifier_note": "WHR 0.649 sits below the Muse floor (0.65) and inside the Icon band (0.60–0.65), but BWR 1.238 is below both. The nearest-center family (The Muse) contains NEITHER axis in range → confidence 'loose' (per db/family_taxonomy.json#/confidence_labels). This is why resolve_price prefers the stored db/body_profiles family over a live re-derive."
+ },
+ "source": {
+ "signature": "db/body_measurements.json#/bodies/ZK168B",
+ "family_whr_bwr": "db/body_profiles.json#/profiles (ZK168B)",
+ "sku_price": "db/live_variants.json (body=ZK168B, head=KE03_1)"
+ }
+ },
+
+ {
+ "id": "zxe215-zx172e",
+ "title": "SLE Icon — ZX172E (ZXE215_1 cast)",
+ "why_chosen": "Exercises the SLE-only axes (TPE material, skeleton_version) and the version/tone SKU suffix; exact-confidence Icon. Shows the same architecture priced two ways across skeleton versions.",
+ "build": {
+ "spec_version": "1.0.0",
+ "body": { "line": "SLE 3.0", "height_cm": 172, "cup": "E", "material": "TPE", "skeleton_version": "SLE 3.0" },
+ "head": { "head_code": "ZXE215_1", "face_variant": "Standard", "head_tone_match": true },
+ "components": { "skin_tone": "Tan", "breast_type": "Standard", "standing_feet": false, "fingers": false }
+ },
+ "resolved": {
+ "body_code": "ZX172E",
+ "family": "The Icon",
+ "family_confidence": "exact",
+ "WHR": 0.608,
+ "BWR": 1.504,
+ "signature": {
+ "upper_bust": 86.5, "under_bust": 67, "waist": 57.5, "hip": 94.5,
+ "neck": 32.5, "shoulder_width": 38, "arm_length": 70.5, "hand_length": 19,
+ "leg_length": 84.5, "foot_length": 21, "thigh_circ": 48.5, "calf_circ": 34,
+ "weight_kg": 35.7
+ },
+ "sku": "ZXE215_1+ZX172E-Tan-Sle3.0",
+ "price": "2000.00",
+ "price_basis": "catalogued live variant (authoritative)",
+ "estimated": false
+ },
+ "skeleton_version_alt": {
+ "note": "Same body, head, tone, but SLE 2.0 skeleton resolves a separate, lower-priced SKU — proving skeleton_version is a real price axis, not cosmetic.",
+ "build_delta": { "body.skeleton_version": "SLE 2.0" },
+ "resolved_sku": "ZXE203_W1+ZX172E-White-Sle2.0",
+ "resolved_price": "1600.00"
+ },
+ "source": {
+ "signature": "db/body_measurements.json#/bodies/ZX172E",
+ "family_whr_bwr": "db/body_profiles.json#/profiles (ZX172E)",
+ "sku_price": "db/live_variants.json (body=ZX172E, head=ZXE215_1, tone=Tan, Sle3.0)"
+ }
+ }
+ ],
+
+ "bespoke_example": {
+ "id": "bespoke-empress",
+ "title": "Bespoke combination — no catalogued architecture",
+ "why_chosen": "Shows the warn-path: a valid-looking selection that resolve_body_code cannot map to a real body_code.",
+ "build": {
+ "spec_version": "1.0.0",
+ "body": { "line": "K-Series", "height_cm": 175, "cup": "K", "material": "Silicone" },
+ "head": { "head_code": "KE03_1", "face_variant": "Standard" },
+ "components": { "skin_tone": "Fair" }
+ },
+ "resolved": {
+ "body_code": null,
+ "validation_flags": ["bespoke_combination"],
+ "disposition": "Route to a bespoke inquiry (PDR-003 notify-me pattern), not an instant SKU. ZK175K is not a catalogued architecture."
+ }
+ }
+}
diff --git a/db/configurator_schema.json b/db/configurator_schema.json
new file mode 100644
index 0000000..e9e3b4c
--- /dev/null
+++ b/db/configurator_schema.json
@@ -0,0 +1,267 @@
+{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "spec_version": "1.0.0",
+ "title": "ZELEX Declarative Configurator Spec",
+ "description": "A data-driven specification a configurator UI is GENERATED from (not hand-coded against). Each axis declares its control, type, option source, provenance, and price effect. A buyer's selections form a 'build document' that resolves — through the declarations in `derivations` — to a catalogued body architecture, a SKU, a measurement signature, a Body Family, and a price. See docs/pdr/PDR-011-declarative-configurator.md. Large option sets are referenced by data source rather than inlined, so the catalog stays the single source of truth.",
+ "generated_from": [
+ "db/catalog.json", "db/body_measurements.json", "db/body_profiles.json",
+ "db/body_types.json", "db/live_variants.json", "db/product_overrides.json"
+ ],
+
+ "data_sources": {
+ "catalog": { "file": "db/catalog.json", "note": "series + 255 head+body products" },
+ "measurements": { "file": "db/body_measurements.json", "note": "spec-card measurements — source of truth for the signature" },
+ "profiles": { "file": "db/body_profiles.json", "note": "WHR/BWR + Body Family classification per body_code" },
+ "body_types": { "file": "db/body_types.json", "note": "architecture records (family, slots, photoshoots)" },
+ "variants": { "file": "db/live_variants.json", "note": "396 live SKUs — head+body+tone → price" }
+ },
+
+ "provenance_legend": {
+ "catalog": "Enumerated directly from catalogued product data.",
+ "spec-card": "Read from db/body_measurements.json once a body_code resolves; not buyer-editable.",
+ "derived": "Computed by a rule in `derivations`; never stored as input.",
+ "proposed": "A real ZELEX option not yet structured in db/. Flagged so the team can decide to backfill it before this axis goes live."
+ },
+
+ "groups": [
+ {
+ "id": "body",
+ "label": "Body Architecture",
+ "intent": "Selectors that RESOLVE to one catalogued architecture. They are filters, not free composition — every valid combination must map to an existing body_code (or be flagged bespoke).",
+ "axes": [
+ {
+ "id": "line", "label": "Series / Line", "control": "select", "type": "string",
+ "required": true, "provenance": "catalog",
+ "enum": ["K-Series", "I-Series", "Fusion", "SLE 3.0", "The Classic", "The Sculpt"],
+ "code_prefix": { "K-Series": "ZK", "I-Series": ["ZG", "ZGX"], "Fusion": "ZF", "SLE 3.0": "ZX", "The Classic": "ZC", "The Sculpt": "ZS" },
+ "status": { "The Classic": "in_development", "The Sculpt": "in_development" },
+ "note": "Drives the body_code prefix and the head-pool naming grammar."
+ },
+ {
+ "id": "height_cm", "label": "Height", "control": "slider", "type": "integer",
+ "unit": "cm", "required": true, "provenance": "catalog",
+ "min": 153, "max": 175, "step": 1, "default": 168,
+ "exclude_below": 120, "exclude_reason": "Torso / mini bodies are out of scope (is_torso filter in build_characters.py).",
+ "note": "Resolves with line+cup to a body_code. Not all heights exist for all lines."
+ },
+ {
+ "id": "cup", "label": "Cup", "control": "select", "type": "string",
+ "required": true, "provenance": "catalog",
+ "enum": ["A", "B", "C", "D", "E", "F", "G", "J", "K"],
+ "default": "C"
+ },
+ {
+ "id": "material", "label": "Material", "control": "radio", "type": "string",
+ "required": true, "provenance": "catalog",
+ "enum": ["Silicone", "TPE"],
+ "default_by_line": { "K-Series": "Silicone", "I-Series": "Silicone", "Fusion": "Silicone", "SLE 3.0": "TPE" },
+ "note": "Catalog titles mark K/I/Fusion as Silicone; SLE skews TPE. Material is a price driver."
+ },
+ {
+ "id": "skeleton_version", "label": "Skeleton Version", "control": "select", "type": "string",
+ "required": false, "provenance": "catalog",
+ "enum": ["SLE 2.0", "SLE 3.0"], "default": "SLE 3.0",
+ "visible_when": { "line": "SLE 3.0" },
+ "note": "Only meaningful for the SLE line; appears in SKU suffix (…-Sle3.0)."
+ },
+ {
+ "id": "body_code", "label": "Resolved Architecture", "control": "derived", "type": "string",
+ "provenance": "derived", "derivation_ref": "resolve_body_code"
+ },
+ {
+ "id": "signature", "label": "Measurement Signature", "control": "derived", "type": "object",
+ "provenance": "spec-card", "source_ref": "measurements",
+ "fields": ["upper_bust", "under_bust", "waist", "hip", "neck", "shoulder_width", "arm_length", "hand_length", "leg_length", "foot_length", "thigh_circ", "calf_circ", "weight_kg"],
+ "unit": "cm (weight_kg in kg)",
+ "note": "Locked to the resolved body_code. Read-only — the buyer picks an architecture, not loose tape measures."
+ },
+ {
+ "id": "family", "label": "Body Family", "control": "derived", "type": "string",
+ "provenance": "derived", "derivation_ref": "classify_family"
+ }
+ ]
+ },
+
+ {
+ "id": "head",
+ "label": "Head & Face",
+ "axes": [
+ {
+ "id": "head_code", "label": "Head", "control": "gallery-select", "type": "string",
+ "required": true, "provenance": "catalog",
+ "enum_source": { "source": "catalog", "path": "products[*].head_code", "distinct": true, "filter": "matches selected line prefix" },
+ "note": "163 distinct heads in catalog; rendered as an image gallery filtered to the line, not a 163-row dropdown."
+ },
+ {
+ "id": "face_variant", "label": "Jaw / Face Build", "control": "radio", "type": "string",
+ "required": true, "provenance": "catalog",
+ "enum": ["Standard", "Movable Jaw"],
+ "default": "Standard",
+ "resolves": { "Movable Jaw": "appends MJ face_code (e.g. GE46MJ) per db/product_overrides.json" },
+ "note": "~50 catalog variants carry a Movable-Jaw face_code. Availability depends on head_code."
+ },
+ {
+ "id": "head_tone_match", "label": "Match head tone to body", "control": "toggle", "type": "boolean",
+ "required": false, "provenance": "catalog", "default": true,
+ "note": "When true, head skin_tone follows the body skin_tone component; otherwise selectable independently."
+ },
+ {
+ "id": "cross_line_heads", "label": "Interchangeable heads (cross-line)", "control": "toggle", "type": "boolean",
+ "required": false, "provenance": "proposed", "default": false,
+ "compat_basis": "neck_class (db/heads.json#/neck_classes) — heads attach at the neck; the connector size, not the marketing line, is the constraint.",
+ "note": "Show every head that physically fits this body's neck connector, across lines. A cross-line pairing is a CUSTOM build (neck-class is estimated from spec cards), never a catalogued SKU — it resolves to a bespoke inquiry."
+ }
+ ]
+ },
+
+ {
+ "id": "components",
+ "label": "Components & Finish",
+ "axes": [
+ {
+ "id": "skin_tone", "label": "Skin Tone", "control": "swatch", "type": "string",
+ "required": true, "provenance": "catalog",
+ "enum": ["Fair", "Tan", "White"],
+ "default": "Fair",
+ "note": "From live_variants tone field (Tan 228, Fair 72, White 23 SKUs); resolves into the SKU suffix (…-Tan)."
+ },
+ {
+ "id": "breast_type", "label": "Breast Build", "control": "radio", "type": "string",
+ "required": false, "provenance": "catalog",
+ "enum": ["Standard", "Gel / Implant"],
+ "default": "Standard",
+ "note": "15 catalog SKUs reference an implant/gel build; offered where the body supports it."
+ },
+ {
+ "id": "standing_feet", "label": "Standing Feet (foot bolts)", "control": "toggle", "type": "boolean",
+ "required": false, "provenance": "proposed", "default": false,
+ "note": "PROPOSED — a real ZELEX option not yet in db/. Backfill a per-body 'standing' flag before enabling."
+ },
+ {
+ "id": "fingers", "label": "Articulated Fingers", "control": "toggle", "type": "boolean",
+ "required": false, "provenance": "proposed", "default": false,
+ "note": "PROPOSED — needs a per-body capability flag in db/ before going live."
+ }
+ ]
+ },
+
+ {
+ "id": "face",
+ "label": "Face & Finish",
+ "intent": "Per-head finish options. PROPOSED: these are real ZELEX customizations, but there is no per-head face-feature data in db/ to reverse-engineer from — the enums below are the standard option set, not catalogued per-head availability/defaults. They compose into the build as a custom finish (no SKU impact) and write to the `face_features` slot reserved on each head (db/heads.json). Backfill that slot per head to turn these from global options into head-aware ones.",
+ "axes": [
+ { "id": "eye_color", "label": "Eye Colour", "control": "select", "type": "string", "provenance": "proposed",
+ "enum": ["As pictured", "Brown", "Hazel", "Blue", "Green", "Grey"], "default": "As pictured",
+ "note": "PROPOSED — acrylic eye swap. Per-head default unknown (no db/ data); 'As pictured' = the head's shipped eyes." },
+ { "id": "makeup", "label": "Makeup", "control": "radio", "type": "string", "provenance": "proposed",
+ "enum": ["As pictured", "Natural", "Glam"], "default": "As pictured",
+ "note": "PROPOSED — factory makeup style." },
+ { "id": "eyebrows", "label": "Eyebrows", "control": "radio", "type": "string", "provenance": "proposed",
+ "enum": ["Painted", "Implanted"], "default": "Painted",
+ "note": "PROPOSED — hand-painted vs implanted brow hair." },
+ { "id": "wig_color", "label": "Wig", "control": "select", "type": "string", "provenance": "proposed",
+ "enum": ["As pictured", "Black", "Brunette", "Blonde", "Red"], "default": "As pictured",
+ "note": "PROPOSED — removable wig; not a sculpt attribute." },
+ { "id": "freckles", "label": "Freckles", "control": "toggle", "type": "boolean", "provenance": "proposed",
+ "default": false, "note": "PROPOSED — optional painted freckles." }
+ ]
+ }
+ ],
+
+ "derivations": [
+ {
+ "id": "resolve_body_code",
+ "produces": "body.body_code",
+ "inputs": ["body.line", "body.height_cm", "body.cup"],
+ "rule": "code = code_prefix(line) + height_cm + cup; lookup must exist in db/body_measurements.json#/bodies. If absent, set body_code=null and raise the `bespoke_combination` validation flag.",
+ "example": "K-Series + 168 + B → ZK168B"
+ },
+ {
+ "id": "classify_family",
+ "produces": "body.family",
+ "inputs": ["signature.waist", "signature.hip", "signature.upper_bust"],
+ "rule": "WHR = waist/hip; BWR = upper_bust/waist; choose the family whose whr_range and bwr_range both contain the point (db/body_profiles.json#/families). On no exact containment, pick nearest range-center and label confidence near|loose (see db/family_taxonomy.json#/confidence_labels).",
+ "note": "Prefer the precomputed value at db/body_profiles.json#/profiles[body_code] when present; recompute only for bespoke combinations."
+ },
+ {
+ "id": "resolve_sku",
+ "produces": "resolved.sku",
+ "inputs": ["head.head_code", "head.face_variant", "body.body_code", "components.skin_tone", "body.skeleton_version"],
+ "rule": "sku = head_code [ + '(' + faceMJ + ')' if Movable Jaw ] + '+' + body_code [ + '-' + skin_tone ] [ + '-Sle' + version for SLE ]. Match against db/live_variants.json#/sku for an exact catalogued SKU.",
+ "example": "ZXE215_1 + ZX172E + Tan + SLE 3.0 → ZXE215_1+ZX172E-Tan-Sle3.0"
+ },
+ {
+ "id": "resolve_price",
+ "produces": "resolved.price",
+ "inputs": ["resolved.sku", "body.family", "body.material"],
+ "rule": "If resolved.sku matches a live variant, use its price (authoritative). Otherwise estimate: base_by_line × material_factor × (1 + family_premium). Mark estimated:true.",
+ "pricing_model": {
+ "base_by_line_usd": { "SLE 3.0": 1800, "Fusion": 3200, "I-Series": 3400, "K-Series": 3600 },
+ "material_factor": { "Silicone": 1.0, "TPE": 0.85 },
+ "family_premium": { "The Classic": 0.20, "The Muse": 0.25, "The Icon": 0.30, "The Siren": 0.35, "The Empress": 0.30, "The Sculpt": 0.25 },
+ "note": "Premiums mirror db/body_profiles.json. Catalogued SKU price always wins over the estimate."
+ }
+ }
+ ],
+
+ "validation": [
+ { "id": "bespoke_combination", "severity": "warn", "when": "resolve_body_code finds no catalogued body_code", "message": "This line + height + cup is not a catalogued architecture. Treat as a bespoke inquiry, not an instant SKU." },
+ { "id": "mj_unsupported", "severity": "error", "when": "face_variant == 'Movable Jaw' and head_code has no MJ face_code in product_overrides", "message": "Selected head has no Movable-Jaw build." },
+ { "id": "neck_incompatible", "severity": "error", "when": "head neck_class != body neck_class", "message": "This head's neck connector does not fit this body — different neck class." },
+ { "id": "cross_line_head", "severity": "warn", "when": "head line != body line (but neck_class matches)", "message": "Cross-line head pairing — neck-compatible but not a catalogued combination. Custom build / bespoke inquiry, not an instant SKU. Neck fit is estimated; confirm before order." },
+ { "id": "skeleton_scope", "severity": "error", "when": "skeleton_version is set and line != 'SLE 3.0'", "message": "Skeleton version applies to the SLE line only." },
+ { "id": "torso_excluded", "severity": "error", "when": "height_cm < 120", "message": "Torso / mini bodies are out of scope." },
+ { "id": "dev_line", "severity": "warn", "when": "line in ['The Classic','The Sculpt']", "message": "This line is in development — route to notify-me, not checkout (see PDR-003)." }
+ ],
+
+ "build_document_schema": {
+ "$comment": "JSON Schema a saved build is validated against. Inputs only — derived fields live in `resolved` and are recomputed, never trusted from input.",
+ "type": "object",
+ "required": ["spec_version", "body", "head", "components"],
+ "properties": {
+ "spec_version": { "const": "1.0.0" },
+ "body": {
+ "type": "object",
+ "required": ["line", "height_cm", "cup", "material"],
+ "properties": {
+ "line": { "enum": ["K-Series", "I-Series", "Fusion", "SLE 3.0", "The Classic", "The Sculpt"] },
+ "height_cm": { "type": "integer", "minimum": 120, "maximum": 175 },
+ "cup": { "enum": ["A", "B", "C", "D", "E", "F", "G", "J", "K"] },
+ "material": { "enum": ["Silicone", "TPE"] },
+ "skeleton_version": { "enum": ["SLE 2.0", "SLE 3.0"] }
+ }
+ },
+ "head": {
+ "type": "object",
+ "required": ["head_code", "face_variant"],
+ "properties": {
+ "head_code": { "type": "string" },
+ "face_variant": { "enum": ["Standard", "Movable Jaw"] },
+ "head_tone_match": { "type": "boolean" },
+ "cross_line_heads": { "type": "boolean" }
+ }
+ },
+ "components": {
+ "type": "object",
+ "required": ["skin_tone"],
+ "properties": {
+ "skin_tone": { "enum": ["Fair", "Tan", "White"] },
+ "breast_type": { "enum": ["Standard", "Gel / Implant"] },
+ "standing_feet": { "type": "boolean" },
+ "fingers": { "type": "boolean" }
+ }
+ },
+ "face": {
+ "type": "object",
+ "description": "Optional custom finish (all PROPOSED — no per-head data backing yet).",
+ "properties": {
+ "eye_color": { "enum": ["As pictured", "Brown", "Hazel", "Blue", "Green", "Grey"] },
+ "makeup": { "enum": ["As pictured", "Natural", "Glam"] },
+ "eyebrows": { "enum": ["Painted", "Implanted"] },
+ "wig_color": { "enum": ["As pictured", "Black", "Brunette", "Blonde", "Red"] },
+ "freckles": { "type": "boolean" }
+ }
+ }
+ }
+ }
+}
diff --git a/db/heads.json b/db/heads.json
new file mode 100644
index 0000000..b8889f9
--- /dev/null
+++ b/db/heads.json
@@ -0,0 +1,4701 @@
+{
+ "version": "1.0.0",
+ "_comment": "Head catalog reverse-engineered from products + variants + characters + movable-jaw overrides (scripts/build_heads.py). One record per head sculpt: line, movable-jaw availability, skin tones, paired bodies, cast characters, a representative image, and price range. Feeds the configurator head gallery (PDR-011). Regenerate after build_characters.py / make_thumbs.py.",
+ "generated_from": [
+ "db/catalog.json",
+ "db/live_variants.json",
+ "db/product_overrides.json",
+ "db/characters.json"
+ ],
+ "series_line_map": {
+ "Fusion": "Fusion",
+ "I": "I-Series",
+ "K": "K-Series",
+ "SLE": "SLE 3.0"
+ },
+ "neck_classes": {
+ "_basis": "Neck-connector class is the interchangeability constraint, not the marketing line. Threshold: neck circumference < 29.0cm = 'slim', else 'standard'. ESTIMATED from spec-card neck measurements — confirm against the physical neck joint.",
+ "slim": "Narrow connector — K-Series (~27cm).",
+ "standard": "Standard connector — Fusion / I-Series / SLE 3.0 (~31-33cm). Heads here are mutually swappable."
+ },
+ "count": 189,
+ "heads": {
+ "GE02_1": {
+ "head_code": "GE02_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE46MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [
+ "I-ZG170C-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE02_1/GE02_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE03_1": {
+ "head_code": "GE03_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE70MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C",
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE03_1/GE03_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE03_2": {
+ "head_code": "GE03_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE70MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C",
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE03_2/GE03_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE07_1": {
+ "head_code": "GE07_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE07_1_ZG170C/GE07_1_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE07_3": {
+ "head_code": "GE07_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE07_3/GE07_3-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE100_1": {
+ "head_code": "GE100_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE100_1/GE100_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE101_1": {
+ "head_code": "GE101_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": null,
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE109_1": {
+ "head_code": "GE109_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE109_1/GE109_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE111_1": {
+ "head_code": "GE111_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 3,
+ "representative_image": "assets/I-Series/GE111_1/GE111_1-109.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE111_2": {
+ "head_code": "GE111_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE111_2/GE111_2-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE111_3": {
+ "head_code": "GE111_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE111_3_ZGE175E/GE111_3_ZGE175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE113_1": {
+ "head_code": "GE113_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE50MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE113_1_GE50MJ/GE113_1_GE50MJ_-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE114_1": {
+ "head_code": "GE114_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE52MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE114_1/GE114_1-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE115_1": {
+ "head_code": "GE115_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE55MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C",
+ "ZG175E"
+ ],
+ "characters": [
+ "I-ZG175E-01"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/I-Series/GE115_1/GE115_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE116_1": {
+ "head_code": "GE116_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE49MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE116_1/GE116_1-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE122_1": {
+ "head_code": "GE122_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE122_1/GE122_1-115.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE122_2": {
+ "head_code": "GE122_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE122_2_ZG170C/GE122_2_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE123_1": {
+ "head_code": "GE123_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE123_1/GE123_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE124_1": {
+ "head_code": "GE124_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE124_1/GE124_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE124_2": {
+ "head_code": "GE124_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE124_2_ZG170C/GE124_2_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE125_1": {
+ "head_code": "GE125_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C",
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE125_1/GE125_1-102.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE125_2": {
+ "head_code": "GE125_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE125_2/GE125_2-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE125_3": {
+ "head_code": "GE125_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE127_1": {
+ "head_code": "GE127_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE78MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170D"
+ ],
+ "characters": [
+ "I-ZG170D-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE127_1_GE78MJ_ZG170D/GE127_1_GE78MJ_ZG170D-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE134_1": {
+ "head_code": "GE134_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE122MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [
+ "I-ZGX165F-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE134_1_GE122MJ_ZGX165F/GE134_1_GE122MJ_ZGX165F-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE137_1": {
+ "head_code": "GE137_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE125MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE137_1_GE125MJ_ZG175E/GE137_1_GE125MJ_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE138_1": {
+ "head_code": "GE138_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE106MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [
+ "I-ZG175E-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE138_1_GE106MJ_ZG175E/GE138_1_GE106MJ_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE139_1": {
+ "head_code": "GE139_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE08MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C",
+ "ZGX165F"
+ ],
+ "characters": [
+ "I-ZGX165F-02"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/I-Series/GE139_1_GE08MJ_ZGX165F/GE139_1_GE08MJ_ZGX165F-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE139_2": {
+ "head_code": "GE139_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE141_1": {
+ "head_code": "GE141_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE72MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [
+ "I-ZGX165F-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE141_1_GE72MJ_ZGX165F/GE141_1_GE72MJ_ZGX165F-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE146_1": {
+ "head_code": "GE146_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE88MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE146_1_GE88MJ_ZG170C/GE146_1_GE88MJ_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE149_1": {
+ "head_code": "GE149_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE74MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170D"
+ ],
+ "characters": [
+ "I-ZG170D-02"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE149_1_GE74MJ_ZG170D/GE149_1_GE74MJ_ZG170D-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE14_1": {
+ "head_code": "GE14_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE109MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE14_1/GE14_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE14_2": {
+ "head_code": "GE14_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE109MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE14_2/GE14_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE14_3": {
+ "head_code": "GE14_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE109MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE14_3/GE14_3-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE16_1": {
+ "head_code": "GE16_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE76MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE16_1/GE16_1-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE16_2": {
+ "head_code": "GE16_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE76MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE16_2/GE16_2-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE173_1": {
+ "head_code": "GE173_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE110MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE173_1_GE110MJ_ZG170C/GE173_1_GE110MJ_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE24_1": {
+ "head_code": "GE24_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE24_1_ZG170C/GE24_1_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE41_1": {
+ "head_code": "GE41_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE98MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [
+ "I-ZG175E-02"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/I-Series/GE41_1_GE98MJ_ZG175E/GE41_1_GE98MJ_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE45_1": {
+ "head_code": "GE45_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE45_1/GE45_1-105.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE45_2": {
+ "head_code": "GE45_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE45_2/GE45_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE45_5": {
+ "head_code": "GE45_5",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE45_5/GE45_5-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE45_6": {
+ "head_code": "GE45_6",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE45_6/GE45_6-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE45_7": {
+ "head_code": "GE45_7",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE45_7_ZG175E/GE45_7_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE45_8": {
+ "head_code": "GE45_8",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [
+ "I-ZGX165F-04"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE45_8_ZGX165F/GE45_8_ZGX165F-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE46_2": {
+ "head_code": "GE46_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE46_2/GE46_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE46_3": {
+ "head_code": "GE46_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE46_3/GE46_3-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE46_4": {
+ "head_code": "GE46_4",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE46_4/GE46_4-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE46_5": {
+ "head_code": "GE46_5",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE46_5/GE46_5-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE47_1": {
+ "head_code": "GE47_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 31.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG162D"
+ ],
+ "characters": [
+ "I-ZG162D-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE47_1_ZG162D/GE47_1_ZG162D-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE48_1": {
+ "head_code": "GE48_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE48_1/GE48_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE48_2": {
+ "head_code": "GE48_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE48_2/GE48_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE49_1": {
+ "head_code": "GE49_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE49_1/GE49_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE49_2": {
+ "head_code": "GE49_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE49_2/GE49_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE50_1": {
+ "head_code": "GE50_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE50_1/GE50_1-123.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE51_2": {
+ "head_code": "GE51_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE51_2/GE51_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE52_1": {
+ "head_code": "GE52_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [
+ "I-ZG170C-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE52_1/GE52_1-108.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE52_2": {
+ "head_code": "GE52_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE52_2/GE52_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE53_1": {
+ "head_code": "GE53_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [
+ "I-ZG170C-04"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE53_1/GE53_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE53_2": {
+ "head_code": "GE53_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE53_2/GE53_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE53_3": {
+ "head_code": "GE53_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [
+ "I-ZG170C-02"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/I-Series/GE53_3/GE53_3-108.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE55_3": {
+ "head_code": "GE55_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE55_3/GE55_3-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE58_1": {
+ "head_code": "GE58_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE58_1_ZG175E/GE58_1_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE59_1": {
+ "head_code": "GE59_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE58MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE59_1_GE58MJ_ZG175E/GE59_1_GE58MJ_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE60_1": {
+ "head_code": "GE60_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 31.5,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE06MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG162D"
+ ],
+ "characters": [
+ "I-ZG162D-02"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE60_1_GE06MJ_ZG162D/GE60_1_GE06MJ_ZG162D-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE64_1": {
+ "head_code": "GE64_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE24MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE64_1_GE24MJ_ZGX165F/GE64_1_GE24MJ_ZGX165F-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE68_1": {
+ "head_code": "GE68_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 31.5,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE37MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG162D"
+ ],
+ "characters": [
+ "I-ZG162D-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE68_1_GE37MJ_ZG162D/GE68_1_GE37MJ_ZG162D-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE76_1": {
+ "head_code": "GE76_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE76_1/GE76_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE78_1": {
+ "head_code": "GE78_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C",
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 3,
+ "representative_image": "assets/I-Series/GE78_1/GE78_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE78_2": {
+ "head_code": "GE78_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE78_2/GE78_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE81_1": {
+ "head_code": "GE81_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE81_1/GE81_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE82_1": {
+ "head_code": "GE82_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE47MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [
+ "I-ZG175E-04"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/I-Series/GE82_1_GE47MJ_ZG175E/GE82_1_GE47MJ_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE86_1": {
+ "head_code": "GE86_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZGX165F"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE86_1/GE86_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE88_2": {
+ "head_code": "GE88_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE88_2_ZG170C/GE88_2_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE94_1": {
+ "head_code": "GE94_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE94_1/GE94_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE94_2": {
+ "head_code": "GE94_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE45MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE94_2/GE94_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE95_1": {
+ "head_code": "GE95_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_1/GE95_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE95_2": {
+ "head_code": "GE95_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_2/GE95_2-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE95_3": {
+ "head_code": "GE95_3",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_3/GE95_3-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE95_4": {
+ "head_code": "GE95_4",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_4_GE53MJ_ZG175E/GE95_4_GE53MJ_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE95_5": {
+ "head_code": "GE95_5",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_5_ZG175E/GE95_5_ZG175E-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE95_6": {
+ "head_code": "GE95_6",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_6_GE53MJ_ZG170C/GE95_6_GE53MJ_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE95_7": {
+ "head_code": "GE95_7",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE53MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE95_7_GE53MJ_ZG170C/GE95_7_GE53MJ_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE97_1": {
+ "head_code": "GE97_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard",
+ "Movable Jaw"
+ ],
+ "mj_face_codes": [
+ "GE07MJ"
+ ],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE97_1/GE97_1-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "GE98_1": {
+ "head_code": "GE98_1",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 30,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZG175E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/I-Series/GE98_1/GE98_1-101.jpg",
+ "price_range": [
+ 3899.0,
+ 3899.0
+ ],
+ "face_features": null
+ },
+ "GE98_2": {
+ "head_code": "GE98_2",
+ "line": "I-Series",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZG170C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/I-Series/GE98_2_ZG170C/GE98_2_ZG170C-101.jpg",
+ "price_range": [
+ 3599.0,
+ 3599.0
+ ],
+ "face_features": null
+ },
+ "KE01_1": {
+ "head_code": "KE01_1",
+ "line": "K-Series",
+ "neck_class": "slim",
+ "neck_cm": 27.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZK168B"
+ ],
+ "characters": [
+ "K-ZK168B-01"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/K-Series/KE01_1+ZK168B-1/KE01_1_ZK168B-101.jpg",
+ "price_range": [
+ 3869.1,
+ 3869.1
+ ],
+ "face_features": null
+ },
+ "KE02_1": {
+ "head_code": "KE02_1",
+ "line": "K-Series",
+ "neck_class": "slim",
+ "neck_cm": 27.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZK159D",
+ "ZK168B"
+ ],
+ "characters": [
+ "K-ZK159D-01",
+ "K-ZK168B-03"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/K-Series/KE02_1+ZK168B-1/KE02_1_ZK168B-101.jpg",
+ "price_range": [
+ 3869.1,
+ 3869.1
+ ],
+ "face_features": null
+ },
+ "KE03_1": {
+ "head_code": "KE03_1",
+ "line": "K-Series",
+ "neck_class": "slim",
+ "neck_cm": 27.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZK168B"
+ ],
+ "characters": [
+ "K-ZK168B-02"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/K-Series/KE03_1+ZK168B-2/KE03_1_ZK168B-101.jpg",
+ "price_range": [
+ 3869.1,
+ 3869.1
+ ],
+ "face_features": null
+ },
+ "ZFE01_1": {
+ "head_code": "ZFE01_1",
+ "line": "Fusion",
+ "neck_class": "standard",
+ "neck_cm": 31,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZF161D",
+ "ZF168B"
+ ],
+ "characters": [
+ "Fusion-ZF161D-01",
+ "Fusion-ZF168B-01"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/Fusion-Series/ZFE01_1+ZF168B/ZFE01_1+ZF168B-101.jpg",
+ "price_range": [
+ 4299.0,
+ 4299.0
+ ],
+ "face_features": null
+ },
+ "ZFE01_2": {
+ "head_code": "ZFE01_2",
+ "line": "Fusion",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZF169C"
+ ],
+ "characters": [
+ "Fusion-ZF169C-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/Fusion-Series/ZFE01_2+ZF169C/ZFE01_2+ZF169C-101.jpg",
+ "price_range": [
+ 4299.0,
+ 4299.0
+ ],
+ "face_features": null
+ },
+ "ZFE03_1": {
+ "head_code": "ZFE03_1",
+ "line": "Fusion",
+ "neck_class": "standard",
+ "neck_cm": 31,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZF168B"
+ ],
+ "characters": [
+ "Fusion-ZF168B-02"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/Fusion-Series/ZFE03_1+ZF168B/ZFE03_1+ZF168B-101.jpg",
+ "price_range": [
+ 4299.0,
+ 4299.0
+ ],
+ "face_features": null
+ },
+ "ZFE05_1": {
+ "head_code": "ZFE05_1",
+ "line": "Fusion",
+ "neck_class": "standard",
+ "neck_cm": 31,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Fair"
+ ],
+ "bodies": [
+ "ZF168B"
+ ],
+ "characters": [
+ "Fusion-ZF168B-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/Fusion-Series/ZFE05_1+ZF168B/ZFE05_1_ZF168B-101.jpg",
+ "price_range": [
+ 4299.0,
+ 4299.0
+ ],
+ "face_features": null
+ },
+ "ZX201_2": {
+ "head_code": "ZX201_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZX201_2_ZX172E/ZX201_2_ZX172E-102.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZX204_1": {
+ "head_code": "ZX204_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZX204_1_ZX172E/ZX204_1_ZX172E-102.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZX207_1": {
+ "head_code": "ZX207_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZX207_1_ZX172E/ZX207_1_ZX172E-105.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE200_1": {
+ "head_code": "ZXE200_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G",
+ "ZX165D"
+ ],
+ "characters": [
+ "SLE-ZX165D-04"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE200_1_ZX165D/ZXE200_1_ZX165D-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE200_2": {
+ "head_code": "ZXE200_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE200_2_ZX160J/ZXE200_2_ZX160J-104.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE200_3": {
+ "head_code": "ZXE200_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [
+ "SLE-ZX166K-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE200_3_ZX166K/ZXE200_3_ZX166K-101.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE200_W1": {
+ "head_code": "ZXE200_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE200_W1_ZX171C/ZXE200_W1_ZX171C-102.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE200_W2": {
+ "head_code": "ZXE200_W2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE200_W2_ZX172E/ZXE200_W2_ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE200_Z1": {
+ "head_code": "ZXE200_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE200_Z1_ZX164G/ZXE200_Z1_ZX164G-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE201_1": {
+ "head_code": "ZXE201_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J",
+ "ZX163E",
+ "ZX166K",
+ "ZX171C",
+ "ZX172E",
+ "ZX84J"
+ ],
+ "characters": [
+ "SLE-ZX163E-04",
+ "SLE-ZX166K-03",
+ "SLE-ZX172E-02"
+ ],
+ "product_count": 5,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE201_1_ZX172E/ZXE201_1_ZX172E-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE201_2": {
+ "head_code": "ZXE201_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE201_3": {
+ "head_code": "ZXE201_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D",
+ "ZX85G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE201_3_ZX85G/ZXE201_3_ZX85G-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE201_4": {
+ "head_code": "ZXE201_4",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX108J",
+ "ZX109G",
+ "ZX111K",
+ "ZX117E",
+ "ZX164G",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX164G-04"
+ ],
+ "product_count": 5,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE201_4_ZX164G/ZXE201_4_ZX164G-108.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE201_5": {
+ "head_code": "ZXE201_5",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX84J",
+ "ZX91E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE201_5_ZX84J/ZXE201_5_ZX84J-102.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE201_W2": {
+ "head_code": "ZXE201_W2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX153B",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX153B-01"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE201_W2_ZX153B/ZXE201_W2_ZX153B-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE201_Z1": {
+ "head_code": "ZXE201_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE201_Z1_ZX172E/ZXE201_Z1_ZX172E-103.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE202_1": {
+ "head_code": "ZXE202_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J",
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE202_1_ZX160J/ZXE202_1_ZX160J-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE202_2": {
+ "head_code": "ZXE202_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE202_Z1": {
+ "head_code": "ZXE202_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX160J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE202_Z1_ZX160J/ZXE202_Z1_ZX160J-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE203_1": {
+ "head_code": "ZXE203_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX108J",
+ "ZX109G",
+ "ZX111K",
+ "ZX117E",
+ "ZX160J",
+ "ZX164G",
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 7,
+ "representative_image": "assets/SLE-Series/ZXE203_1_ZX108J/ZXE203_1_ZX108J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE203_2": {
+ "head_code": "ZXE203_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K",
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE203_2_ZX166K/ZXE203_2_ZX166K-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE203_3": {
+ "head_code": "ZXE203_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX163E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE203_3_ZX163E/ZXE203_3_ZX163E-101.jpg",
+ "price_range": [
+ 1799.0,
+ 1799.0
+ ],
+ "face_features": null
+ },
+ "ZXE203_4": {
+ "head_code": "ZXE203_4",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX91E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE203_4_ZX91E/ZXE203_4_ZX91E-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE203_5": {
+ "head_code": "ZXE203_5",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX84J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE203_5_ZX84J/ZXE203_5_ZX84J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE203_W1": {
+ "head_code": "ZXE203_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX117E",
+ "ZX171C",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX172E-03"
+ ],
+ "product_count": 3,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE203_W1_ZX172E/ZXE203_W1_ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE203_Z1": {
+ "head_code": "ZXE203_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE203_Z1_ZX165D/ZXE203_Z1_ZX165D-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE204_1": {
+ "head_code": "ZXE204_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX108J",
+ "ZX109G",
+ "ZX111K",
+ "ZX160J",
+ "ZX163E",
+ "ZX164G",
+ "ZX166K",
+ "ZX172E",
+ "ZX91E"
+ ],
+ "characters": [
+ "SLE-ZX160J-04",
+ "SLE-ZX163E-03",
+ "SLE-ZX166K-02"
+ ],
+ "product_count": 9,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE204_1_ZX166K/ZXE204_1_ZX166k-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE204_2": {
+ "head_code": "ZXE204_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX84J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE204_2_ZX84J/ZXE204_2_ZX84J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE204_Z1": {
+ "head_code": "ZXE204_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE204_Z1_ZX172E/ZXE204_Z1_ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE205_1": {
+ "head_code": "ZXE205_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J",
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE205_1_ZX160J/ZXE205_1_ZX160J-102.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE205_2": {
+ "head_code": "ZXE205_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE205_2_ZX164G/ZXE205_2_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE205_Z1": {
+ "head_code": "ZXE205_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE205_Z1_ZX166K/ZXE205_Z1_ZX166K-102.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE206_1": {
+ "head_code": "ZXE206_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE206_1_ZX160J/ZXE206_1_ZX160J-101.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE206_2": {
+ "head_code": "ZXE206_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX172E",
+ "ZX86K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE206_2_ZX86K/ZXE206_2_ZX86K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE206_3": {
+ "head_code": "ZXE206_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX163E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE206_3_ZX163E/ZXE206_3_ZX163E-101.jpg",
+ "price_range": [
+ 1799.0,
+ 1799.0
+ ],
+ "face_features": null
+ },
+ "ZXE206_4": {
+ "head_code": "ZXE206_4",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX109G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE206_4_ZX109G/ZXE206_4_ZX109G-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE206_5": {
+ "head_code": "ZXE206_5",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX117E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE206_5_ZX117E/ZXE206_5_ZX117E-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE206_W1": {
+ "head_code": "ZXE206_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX109G",
+ "ZX153B"
+ ],
+ "characters": [
+ "SLE-ZX153B-02"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE206_W1_ZX153B/ZXE206_W1_ZX153B-120_195fc9d2-52b2-453a-b899-69d67c0ec99c.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE206_W2": {
+ "head_code": "ZXE206_W2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX117E",
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE206_W2_ZX117E/ZXE206_W2_ZX117E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE206_Z1": {
+ "head_code": "ZXE206_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX160J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE206_Z1_ZX160J/ZXE206_Z1_ZX160J-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE207_1": {
+ "head_code": "ZXE207_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE207_2": {
+ "head_code": "ZXE207_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE207_3": {
+ "head_code": "ZXE207_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE207_3_ZX164G/ZXE207_3_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE207_Z1": {
+ "head_code": "ZXE207_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX160J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE207_Z1_ZX160J/ZXE207_Z1_ZX160J-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE208_1": {
+ "head_code": "ZXE208_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE208_4": {
+ "head_code": "ZXE208_4",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX86K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE208_4_ZX86K/ZXE208_4_ZX86K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE208_5": {
+ "head_code": "ZXE208_5",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J",
+ "ZX85G",
+ "ZX91E"
+ ],
+ "characters": [
+ "SLE-ZX160J-03"
+ ],
+ "product_count": 3,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE208_5_ZX160J/ZXE208_5_ZX160J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE208_W1": {
+ "head_code": "ZXE208_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX171C"
+ ],
+ "characters": [
+ "SLE-ZX171C-04"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE208_W1_ZX171C/ZXE208_W1_ZX171C-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE208_Z1": {
+ "head_code": "ZXE208_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE208_Z1_ZX166K/ZXE208_Z1_ZX166K-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE209_1": {
+ "head_code": "ZXE209_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE209_1_ZX166K/ZXE209_1_ZX166K-101.jpg",
+ "price_range": [
+ 1799.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE209_2": {
+ "head_code": "ZXE209_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE209_2_ZX165D/ZXE209_2_ZX165D-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE209_W1": {
+ "head_code": "ZXE209_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE209_W1_ZX172E/ZXE209_W1_ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE209_Z1": {
+ "head_code": "ZXE209_Z1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX172E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE209_Z1_ZX172E/ZXE209_Z1_ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE210_1": {
+ "head_code": "ZXE210_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE210_2": {
+ "head_code": "ZXE210_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE211_1": {
+ "head_code": "ZXE211_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE211_1_ZX171C/ZXE211_1_ZX171C-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE211_2": {
+ "head_code": "ZXE211_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE211_2_ZX164G/ZXE211_2_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE212_1": {
+ "head_code": "ZXE212_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K",
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE212_1_ZX166K/ZXE212_1_ZX166K-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE212_2": {
+ "head_code": "ZXE212_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE212_2_ZX164G/ZXE212_2_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE212_W1": {
+ "head_code": "ZXE212_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE212_W1-ZX172E/ZXE212_W1-ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE212_W2": {
+ "head_code": "ZXE212_W2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX171C"
+ ],
+ "characters": [
+ "SLE-ZX171C-02"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE212_W2_ZX171C/ZXE212_W2_ZX171C-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE213_1": {
+ "head_code": "ZXE213_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K",
+ "ZX85G"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE213_1_ZX166K/ZXE213_1_ZX166K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE213_2": {
+ "head_code": "ZXE213_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D",
+ "ZX171C",
+ "ZX86K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE213_2_ZX86K/ZXE213_2_ZX86K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE214_1": {
+ "head_code": "ZXE214_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE214_2": {
+ "head_code": "ZXE214_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE215_1": {
+ "head_code": "ZXE215_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX108J",
+ "ZX109G",
+ "ZX111K",
+ "ZX117E",
+ "ZX165D",
+ "ZX166K",
+ "ZX171C",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX172E-01"
+ ],
+ "product_count": 6,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE215_1_ZX172E/ZXE215_1_ZX172E-108.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE215_2": {
+ "head_code": "ZXE215_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX84J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE215_2_ZX84J/ZXE215_2_ZX84J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE215_3": {
+ "head_code": "ZXE215_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX91E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE215_3_ZX91E/ZXE215_3_ZX91E-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE215_W1": {
+ "head_code": "ZXE215_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX171C",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX171C-03"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE215_W1_ZX171C/ZXE215_W1_ZX171C-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE216_1": {
+ "head_code": "ZXE216_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX108J",
+ "ZX109G",
+ "ZX111K",
+ "ZX117E",
+ "ZX163E",
+ "ZX164G",
+ "ZX85G"
+ ],
+ "characters": [
+ "SLE-ZX163E-01",
+ "SLE-ZX164G-02"
+ ],
+ "product_count": 7,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE216_1_ZX164G/ZXE216_1_ZX164G-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE216_2": {
+ "head_code": "ZXE216_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J",
+ "ZX84J"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE216_2_ZX160J/ZXE216_2_ZX160J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE216_3": {
+ "head_code": "ZXE216_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX109G",
+ "ZX165D",
+ "ZX86K"
+ ],
+ "characters": [
+ "SLE-ZX165D-01"
+ ],
+ "product_count": 3,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE216_3_ZX165D/ZXE216_3_ZX165D-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE216_4": {
+ "head_code": "ZXE216_4",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K",
+ "ZX91E"
+ ],
+ "characters": [],
+ "product_count": 2,
+ "representative_image": "assets/SLE-Series/ZXE216_4_ZX166K/ZXE216_4_ZX166K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE216_W1": {
+ "head_code": "ZXE216_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX171C",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX172E-04"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE216_W1_ZX172E/ZXE216_W1_ZX172E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE217_1": {
+ "head_code": "ZXE217_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J"
+ ],
+ "characters": [
+ "SLE-ZX160J-02"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE217_1_ZX160J/ZXE217_1_ZX160J-101_d32a9ded-3b83-4bc1-b5c3-0463117f63b0.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE217_2": {
+ "head_code": "ZXE217_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [
+ "SLE-ZX164G-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE217_2_ZX164G/ZXE217_2_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE217_4": {
+ "head_code": "ZXE217_4",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX84J"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE217_4_ZX84J/ZXE217_4_ZX84J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE217_5": {
+ "head_code": "ZXE217_5",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX86K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE217_5_ZX86K/ZXE217_5_ZX86K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE218_1": {
+ "head_code": "ZXE218_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX160J",
+ "ZX171C"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE218_1_ZX160J/ZXE218_1_ZX160J-102.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE218_2": {
+ "head_code": "ZXE218_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE218_2_ZX166K/ZXE218_2_ZX166K-101.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE218_W1": {
+ "head_code": "ZXE218_W1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 33,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX171C",
+ "ZX172E"
+ ],
+ "characters": [
+ "SLE-ZX171C-01"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE218_W1_ZX171C/ZXE218_W1_ZX171C-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE218_W2": {
+ "head_code": "ZXE218_W2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [],
+ "bodies": [
+ "ZX117E"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE218_W2_ZX117E/ZXE218_W2_ZX117E-101.jpg",
+ "price_range": null,
+ "face_features": null
+ },
+ "ZXE219_1": {
+ "head_code": "ZXE219_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX163E",
+ "ZX164G"
+ ],
+ "characters": [
+ "SLE-ZX163E-02",
+ "SLE-ZX164G-01"
+ ],
+ "product_count": 2,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE219_1_ZX164G/ZXE219_1_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE219_2": {
+ "head_code": "ZXE219_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [],
+ "product_count": 0,
+ "representative_image": null,
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE220_1": {
+ "head_code": "ZXE220_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE220_1_ZX166K/ZXE220_1_ZX166K-101.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE220_2": {
+ "head_code": "ZXE220_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE220_2_ZX164G/ZXE220_2_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE221_2": {
+ "head_code": "ZXE221_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE221_2_ZX164G/ZXE221_2_ZX164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE222_1": {
+ "head_code": "ZXE222_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [
+ "SLE-ZX165D-03"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE222_1_ZX165D/ZXE222_1_ZX165D-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE223_1": {
+ "head_code": "ZXE223_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX111K",
+ "ZX160J",
+ "ZX166K"
+ ],
+ "characters": [
+ "SLE-ZX160J-01"
+ ],
+ "product_count": 3,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE223_1_ZX160J/ZXE223_1_ZX160J-101.jpg",
+ "price_range": [
+ 1000.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE223_2": {
+ "head_code": "ZXE223_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX86K"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE223_2_ZX86K/ZXE223_2_ZX86K-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE223_3": {
+ "head_code": "ZXE223_3",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": null,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX85G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE223_3_ZX85G/ZXE223_3_ZX85G-101.jpg",
+ "price_range": [
+ 1000.0,
+ 1000.0
+ ],
+ "face_features": null
+ },
+ "ZXE224_1": {
+ "head_code": "ZXE224_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX164G"
+ ],
+ "characters": [],
+ "product_count": 1,
+ "representative_image": "assets/SLE-Series/ZXE224_1_ZG164G/ZXE224_1_ZG164G-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE224_2": {
+ "head_code": "ZXE224_2",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX165D"
+ ],
+ "characters": [
+ "SLE-ZX165D-02"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE224_2_ZX165D/ZXE224_2_ZX165D-108.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE226_1": {
+ "head_code": "ZXE226_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX166K"
+ ],
+ "characters": [
+ "SLE-ZX166K-04"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE226_1_ZX166K/ZXE226_1_ZX166K-101.jpg",
+ "price_range": [
+ 1600.0,
+ 2000.0
+ ],
+ "face_features": null
+ },
+ "ZXE231_1": {
+ "head_code": "ZXE231_1",
+ "line": "SLE 3.0",
+ "neck_class": "standard",
+ "neck_cm": 32.5,
+ "face_variants": [
+ "Standard"
+ ],
+ "mj_face_codes": [],
+ "skin_tones": [
+ "Tan"
+ ],
+ "bodies": [
+ "ZX170A"
+ ],
+ "characters": [
+ "SLE-ZX170A-01"
+ ],
+ "product_count": 1,
+ "representative_image": "assets/thumbs/SLE-Series/ZXE231_1_ZX170A/ZXE231_1_ZX170A-101.jpg",
+ "price_range": [
+ 2000.0,
+ 2000.0
+ ],
+ "face_features": null
+ }
+ }
+}
diff --git a/db/neck_compatibility.json b/db/neck_compatibility.json
new file mode 100644
index 0000000..11dfa73
--- /dev/null
+++ b/db/neck_compatibility.json
@@ -0,0 +1,184 @@
+{
+ "version": "1.0.0",
+ "_comment": "Neck-connector compatibility — the basis for interchangeable heads (PDR-011 §8). neck_class is the compatibility key; heads fit a body when their classes match (see `compatibility`). neck_class is derived from spec-card neck CIRCUMFERENCE (threshold 29.0cm) until a measured `neck_joint_mm` connector spec is supplied per body — fill neck_joint_mm to replace the estimate. Generated by scripts/build_neck_compat.py; consumed by build_heads.py and configurator.html.",
+ "generated_from": [
+ "db/body_measurements.json"
+ ],
+ "neck_slim_max_cm": 29.0,
+ "classes": {
+ "slim": {
+ "neck_circ_cm_max": 29.0,
+ "typical_lines": [
+ "K-Series"
+ ],
+ "connector": "narrow"
+ },
+ "standard": {
+ "neck_circ_cm_min": 29.0,
+ "typical_lines": [
+ "Fusion",
+ "I-Series",
+ "SLE 3.0"
+ ],
+ "connector": "standard"
+ }
+ },
+ "compatibility": {
+ "slim": [
+ "slim"
+ ],
+ "standard": [
+ "standard"
+ ]
+ },
+ "count": 21,
+ "bodies": {
+ "ZC165D": {
+ "line": "Classic",
+ "neck_circ_cm": null,
+ "neck_class": null,
+ "neck_joint_mm": null,
+ "class_basis": "line-default"
+ },
+ "ZF161D": {
+ "line": "Fusion",
+ "neck_circ_cm": null,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "line-default"
+ },
+ "ZF168B": {
+ "line": "Fusion",
+ "neck_circ_cm": 31,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZF169C": {
+ "line": "Fusion",
+ "neck_circ_cm": 32,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZG162D": {
+ "line": "I-Series",
+ "neck_circ_cm": 31.5,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZG170C": {
+ "line": "I-Series",
+ "neck_circ_cm": 33,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZG170D": {
+ "line": "I-Series",
+ "neck_circ_cm": 32,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZG175E": {
+ "line": "I-Series",
+ "neck_circ_cm": 30,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZGX165F": {
+ "line": "I-Series",
+ "neck_circ_cm": 30,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZK159D": {
+ "line": "K-Series",
+ "neck_circ_cm": 26.5,
+ "neck_class": "slim",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZK168B": {
+ "line": "K-Series",
+ "neck_circ_cm": 27.5,
+ "neck_class": "slim",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZS165D": {
+ "line": "Sculpt",
+ "neck_circ_cm": null,
+ "neck_class": null,
+ "neck_joint_mm": null,
+ "class_basis": "line-default"
+ },
+ "ZX153B": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": null,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "line-default"
+ },
+ "ZX160J": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 32,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZX163E": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": null,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "line-default"
+ },
+ "ZX164G": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 32.5,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZX165D": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 32.5,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZX166K": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 32,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZX170A": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 32.5,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZX171C": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 33,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ },
+ "ZX172E": {
+ "line": "SLE 3.0",
+ "neck_circ_cm": 32.5,
+ "neck_class": "standard",
+ "neck_joint_mm": null,
+ "class_basis": "measured-circumference"
+ }
+ }
+}
diff --git a/docs/data-requests/README.md b/docs/data-requests/README.md
new file mode 100644
index 0000000..dc6a5f1
--- /dev/null
+++ b/docs/data-requests/README.md
@@ -0,0 +1,49 @@
+# ZELEX — Manufacturer Data Request
+
+Two data points let the configurator (PDR-011) stop estimating and start using
+real specs. Please fill the `<-- FILL` columns in the two CSVs in this folder and
+return them. Pre-filled columns are what we already have — for context, do not
+change them.
+
+## 1. Neck joint spec — `neck-joint-request.csv` (21 bodies)
+
+**Why:** heads are interchangeable when their neck CONNECTOR matches. We currently
+estimate this from neck *circumference* (a soft-tissue proxy). The real connector
+spec makes it exact.
+
+| Column | What we need |
+|---|---|
+| `neck_joint_diameter_mm` | Diameter (mm) of the head-mount connector at the neck. |
+| `neck_joint_type` | Connector mechanism: screw / bayonet / magnet / peg / other. |
+| `interchange_group` | If the factory already groups connectors (e.g. "A"/"B"), the group id for this body. Optional. |
+
+Two bodies with the same diameter + type are physically interchangeable,
+regardless of product line.
+
+## 2. Per-head face features — `head-features-request.csv` (189 heads)
+
+**Why:** the configurator's *Face & Finish* options (eye colour, makeup, eyebrows,
+wig, freckles) are currently GLOBAL proposals — we have no per-head defaults or
+availability. Fill these to make each head show its true shipped finish and which
+options it actually supports. Rows are sorted by **priority** (1 = heads with a
+named character, i.e. the ones buyers see most) — fill those first if time is short.
+
+| Column | What we need |
+|---|---|
+| `default_eye_color` | Eye colour the head ships with. |
+| `eye_swappable` | Can the acrylic eyes be changed? Y/N. |
+| `default_makeup` | Factory makeup style (Natural / Glam / …). |
+| `eyebrows` | Painted or implanted brow hair. |
+| `default_wig_color` | Wig colour shipped. |
+| `wig_removable` | Removable wig? Y/N. |
+| `freckles_available` | Optional painted freckles offered? Y/N. |
+
+## Returning the data
+
+Return the filled CSVs as-is. We load `neck_joint_mm` into
+`db/neck_compatibility.json` (per body) and the face fields into the
+`face_features` slot in `db/heads.json` (per head) — no schema changes needed; the
+configurator picks them up automatically.
+
+> Regenerate these templates after any catalog change:
+> `python scripts/build_data_request.py`
diff --git a/docs/data-requests/head-features-request.csv b/docs/data-requests/head-features-request.csv
new file mode 100644
index 0000000..94793dc
--- /dev/null
+++ b/docs/data-requests/head-features-request.csv
@@ -0,0 +1,190 @@
+head_code,line,neck_class,movable_jaw (known),priority (1=has cast),default_eye_color <-- FILL,eye_swappable <-- FILL (Y/N),default_makeup <-- FILL,eyebrows <-- FILL (Painted/Implanted),default_wig_color <-- FILL,wig_removable <-- FILL (Y/N),freckles_available <-- FILL (Y/N),notes
+GE02_1,I-Series,standard,Y,1,,,,,,,,
+GE115_1,I-Series,standard,Y,1,,,,,,,,
+GE127_1,I-Series,standard,Y,1,,,,,,,,
+GE134_1,I-Series,standard,Y,1,,,,,,,,
+GE138_1,I-Series,standard,Y,1,,,,,,,,
+GE139_1,I-Series,standard,Y,1,,,,,,,,
+GE141_1,I-Series,standard,Y,1,,,,,,,,
+GE149_1,I-Series,standard,Y,1,,,,,,,,
+GE41_1,I-Series,standard,Y,1,,,,,,,,
+GE45_8,I-Series,standard,N,1,,,,,,,,
+GE47_1,I-Series,standard,N,1,,,,,,,,
+GE52_1,I-Series,standard,N,1,,,,,,,,
+GE53_1,I-Series,standard,N,1,,,,,,,,
+GE53_3,I-Series,standard,N,1,,,,,,,,
+GE60_1,I-Series,standard,Y,1,,,,,,,,
+GE68_1,I-Series,standard,Y,1,,,,,,,,
+GE82_1,I-Series,standard,Y,1,,,,,,,,
+KE01_1,K-Series,slim,N,1,,,,,,,,
+KE02_1,K-Series,slim,N,1,,,,,,,,
+KE03_1,K-Series,slim,N,1,,,,,,,,
+ZFE01_1,Fusion,standard,N,1,,,,,,,,
+ZFE01_2,Fusion,standard,N,1,,,,,,,,
+ZFE03_1,Fusion,standard,N,1,,,,,,,,
+ZFE05_1,Fusion,standard,N,1,,,,,,,,
+ZXE200_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE200_3,SLE 3.0,standard,N,1,,,,,,,,
+ZXE201_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE201_4,SLE 3.0,standard,N,1,,,,,,,,
+ZXE201_W2,SLE 3.0,standard,N,1,,,,,,,,
+ZXE203_W1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE204_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE206_W1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE208_5,SLE 3.0,standard,N,1,,,,,,,,
+ZXE208_W1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE212_W2,SLE 3.0,standard,N,1,,,,,,,,
+ZXE215_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE215_W1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE216_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE216_3,SLE 3.0,standard,N,1,,,,,,,,
+ZXE216_W1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE217_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE217_2,SLE 3.0,standard,N,1,,,,,,,,
+ZXE218_W1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE219_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE222_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE223_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE224_2,SLE 3.0,standard,N,1,,,,,,,,
+ZXE226_1,SLE 3.0,standard,N,1,,,,,,,,
+ZXE231_1,SLE 3.0,standard,N,1,,,,,,,,
+GE03_1,I-Series,standard,Y,2,,,,,,,,
+GE03_2,I-Series,standard,Y,2,,,,,,,,
+GE07_1,I-Series,standard,N,2,,,,,,,,
+GE07_3,I-Series,standard,N,2,,,,,,,,
+GE100_1,I-Series,standard,N,2,,,,,,,,
+GE109_1,I-Series,standard,N,2,,,,,,,,
+GE111_1,I-Series,standard,N,2,,,,,,,,
+GE111_2,I-Series,standard,N,2,,,,,,,,
+GE111_3,I-Series,standard,N,2,,,,,,,,
+GE113_1,I-Series,standard,Y,2,,,,,,,,
+GE114_1,I-Series,standard,Y,2,,,,,,,,
+GE116_1,I-Series,standard,Y,2,,,,,,,,
+GE122_1,I-Series,standard,N,2,,,,,,,,
+GE122_2,I-Series,standard,N,2,,,,,,,,
+GE123_1,I-Series,standard,N,2,,,,,,,,
+GE124_1,I-Series,standard,N,2,,,,,,,,
+GE124_2,I-Series,standard,N,2,,,,,,,,
+GE125_1,I-Series,standard,N,2,,,,,,,,
+GE125_2,I-Series,standard,N,2,,,,,,,,
+GE137_1,I-Series,standard,Y,2,,,,,,,,
+GE146_1,I-Series,standard,Y,2,,,,,,,,
+GE14_1,I-Series,standard,Y,2,,,,,,,,
+GE14_2,I-Series,standard,Y,2,,,,,,,,
+GE14_3,I-Series,standard,Y,2,,,,,,,,
+GE16_1,I-Series,standard,Y,2,,,,,,,,
+GE16_2,I-Series,standard,Y,2,,,,,,,,
+GE173_1,I-Series,standard,Y,2,,,,,,,,
+GE24_1,I-Series,standard,N,2,,,,,,,,
+GE45_1,I-Series,standard,N,2,,,,,,,,
+GE45_2,I-Series,standard,N,2,,,,,,,,
+GE45_5,I-Series,standard,N,2,,,,,,,,
+GE45_6,I-Series,standard,N,2,,,,,,,,
+GE45_7,I-Series,standard,N,2,,,,,,,,
+GE46_2,I-Series,standard,N,2,,,,,,,,
+GE46_3,I-Series,standard,N,2,,,,,,,,
+GE46_4,I-Series,standard,N,2,,,,,,,,
+GE46_5,I-Series,standard,N,2,,,,,,,,
+GE48_1,I-Series,standard,N,2,,,,,,,,
+GE48_2,I-Series,standard,N,2,,,,,,,,
+GE49_1,I-Series,standard,N,2,,,,,,,,
+GE49_2,I-Series,standard,N,2,,,,,,,,
+GE50_1,I-Series,standard,N,2,,,,,,,,
+GE51_2,I-Series,standard,N,2,,,,,,,,
+GE52_2,I-Series,standard,N,2,,,,,,,,
+GE53_2,I-Series,standard,N,2,,,,,,,,
+GE55_3,I-Series,standard,N,2,,,,,,,,
+GE58_1,I-Series,standard,N,2,,,,,,,,
+GE59_1,I-Series,standard,Y,2,,,,,,,,
+GE64_1,I-Series,standard,Y,2,,,,,,,,
+GE76_1,I-Series,standard,N,2,,,,,,,,
+GE78_1,I-Series,standard,N,2,,,,,,,,
+GE78_2,I-Series,standard,N,2,,,,,,,,
+GE81_1,I-Series,standard,N,2,,,,,,,,
+GE86_1,I-Series,standard,N,2,,,,,,,,
+GE88_2,I-Series,standard,N,2,,,,,,,,
+GE94_1,I-Series,standard,N,2,,,,,,,,
+GE94_2,I-Series,standard,Y,2,,,,,,,,
+GE95_1,I-Series,standard,Y,2,,,,,,,,
+GE95_2,I-Series,standard,Y,2,,,,,,,,
+GE95_3,I-Series,standard,Y,2,,,,,,,,
+GE95_4,I-Series,standard,Y,2,,,,,,,,
+GE95_5,I-Series,standard,Y,2,,,,,,,,
+GE95_6,I-Series,standard,Y,2,,,,,,,,
+GE95_7,I-Series,standard,Y,2,,,,,,,,
+GE97_1,I-Series,standard,Y,2,,,,,,,,
+GE98_1,I-Series,standard,N,2,,,,,,,,
+GE98_2,I-Series,standard,N,2,,,,,,,,
+ZX201_2,SLE 3.0,standard,N,2,,,,,,,,
+ZX204_1,SLE 3.0,standard,N,2,,,,,,,,
+ZX207_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE200_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE200_W1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE200_W2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE200_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE201_3,SLE 3.0,standard,N,2,,,,,,,,
+ZXE201_5,SLE 3.0,standard,N,2,,,,,,,,
+ZXE201_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE202_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE202_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE203_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE203_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE203_3,SLE 3.0,standard,N,2,,,,,,,,
+ZXE203_4,SLE 3.0,standard,N,2,,,,,,,,
+ZXE203_5,SLE 3.0,standard,N,2,,,,,,,,
+ZXE203_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE204_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE204_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE205_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE205_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE205_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_3,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_4,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_5,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_W2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE206_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE207_3,SLE 3.0,standard,N,2,,,,,,,,
+ZXE207_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE208_4,SLE 3.0,standard,N,2,,,,,,,,
+ZXE208_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE209_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE209_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE209_W1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE209_Z1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE211_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE211_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE212_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE212_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE212_W1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE213_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE213_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE215_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE215_3,SLE 3.0,standard,N,2,,,,,,,,
+ZXE216_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE216_4,SLE 3.0,standard,N,2,,,,,,,,
+ZXE217_4,SLE 3.0,standard,N,2,,,,,,,,
+ZXE217_5,SLE 3.0,standard,N,2,,,,,,,,
+ZXE218_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE218_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE218_W2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE220_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE220_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE221_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE223_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE223_3,SLE 3.0,standard,N,2,,,,,,,,
+ZXE224_1,SLE 3.0,standard,N,2,,,,,,,,
+GE101_1,I-Series,standard,N,2,,,,,,,,
+GE125_3,I-Series,standard,N,2,,,,,,,,
+GE139_2,I-Series,standard,N,2,,,,,,,,
+ZXE201_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE202_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE207_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE207_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE208_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE210_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE210_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE214_1,SLE 3.0,standard,N,2,,,,,,,,
+ZXE214_2,SLE 3.0,standard,N,2,,,,,,,,
+ZXE219_2,SLE 3.0,standard,N,2,,,,,,,,
diff --git a/docs/data-requests/neck-joint-request.csv b/docs/data-requests/neck-joint-request.csv
new file mode 100644
index 0000000..e6f063b
--- /dev/null
+++ b/docs/data-requests/neck-joint-request.csv
@@ -0,0 +1,22 @@
+body_code,line,neck_circ_cm (known),neck_class (current estimate),neck_joint_diameter_mm <-- FILL,neck_joint_type <-- FILL (screw/bayonet/magnet/peg),"interchange_group <-- FILL (factory connector group, optional)",notes
+ZC165D,Classic,,,,,,
+ZF161D,Fusion,,standard,,,,
+ZF168B,Fusion,31,standard,,,,
+ZF169C,Fusion,32,standard,,,,
+ZG162D,I-Series,31.5,standard,,,,
+ZG170C,I-Series,33,standard,,,,
+ZG170D,I-Series,32,standard,,,,
+ZG175E,I-Series,30,standard,,,,
+ZGX165F,I-Series,30,standard,,,,
+ZK159D,K-Series,26.5,slim,,,,
+ZK168B,K-Series,27.5,slim,,,,
+ZS165D,Sculpt,,,,,,
+ZX153B,SLE 3.0,,standard,,,,
+ZX160J,SLE 3.0,32,standard,,,,
+ZX163E,SLE 3.0,,standard,,,,
+ZX164G,SLE 3.0,32.5,standard,,,,
+ZX165D,SLE 3.0,32.5,standard,,,,
+ZX166K,SLE 3.0,32,standard,,,,
+ZX170A,SLE 3.0,32.5,standard,,,,
+ZX171C,SLE 3.0,33,standard,,,,
+ZX172E,SLE 3.0,32.5,standard,,,,
diff --git a/docs/pdr/PDR-011-declarative-configurator.md b/docs/pdr/PDR-011-declarative-configurator.md
new file mode 100644
index 0000000..3d78ae3
--- /dev/null
+++ b/docs/pdr/PDR-011-declarative-configurator.md
@@ -0,0 +1,366 @@
+# PDR-011: Declarative Configurator — Build-a-ZELEX from Catalog Data
+
+**Branch:** claude/zelex-config-ui-builder-rso32
+**Date:** 2026-06-06
+**Status:** Implemented — PDR + schema + worked examples + working `configurator.html` prototype
+
+---
+
+## Decision
+
+**Build the ZELEX configurator as a *declarative* tool: a UI generated from a data
+spec rather than hand-coded, where a buyer's selections form a JSON "build
+document" that resolves — through declared rules — to a catalogued body
+architecture, a SKU, a measurement signature, a Body Family, and a price.**
+
+The configurator must not let buyers invent arbitrary bodies. ZELEX's entire
+positioning is *documented measurement* — every body is a measured architecture,
+not a slider toy. So the body axes (line / height / cup) are **selectors that
+resolve to an existing `body_code`**, which then locks in the spec-card
+signature and family. Heads, faces, tone, and components compose on top to form a
+SKU. This keeps the catalog as the single source of truth and makes the tool
+honest about what is real (catalogued) versus bespoke (an inquiry, not a
+checkout).
+
+This package proves the model is sound before any UI is built:
+
+- `db/configurator_schema.json` — the declarative spec the UI is generated from.
+- `db/configurator_examples.json` — three strong-data bodies reverse-engineered
+ into build documents, with truthful resolved values.
+- This PDR — the method, the data grounding, and the rules.
+
+---
+
+## 1. Why declarative, and what "declarative" means here
+
+A hand-coded configurator hard-codes its options in markup and logic: a
+`